- Mastering Linux Kernel Development
- Raghu Bharadwaj
- 229字
- 2021-07-08 09:47:12
The illusion called address space
Modern-day computing platforms are expected to handle a plethora of processes efficiently. Operating systems thus must deal with allocating unique memory to all contending processes within the physical memory (often finite) and also ensure their reliable execution. With multiple processes contending and executing simultaneously (multi-tasking), the operating system must ensure that the memory allocation of every process is protected from accidental access by another process.
To address this issue, the kernel provides a level of abstraction between the process and the physical memory called virtual address space. Virtual address space is the process' view of memory; it is how the running program views the memory.
Virtual address space creates an illusion that every process exclusively owns the whole memory while executing. This abstracted view of memory is called virtual memory and is achieved by the kernel's memory manager in coordination with the CPU's MMU. Each process is given a contiguous 32 or 64-bit address space, bound by the architecture and unique to that process. With each process caged into its virtual address space by the MMU, any attempt by a process to access an address region outside its boundaries will trigger a hardware fault, making it possible for the memory manger to detect and terminate violating processes, thus ensuring protection.
The following figure depicts the illusion of address space created for every contending process:

- ASP.NET Web API:Build RESTful web applications and services on the .NET framework
- Instant Apache Stanbol
- 軟件測試項目實戰(zhàn)之性能測試篇
- JS全書:JavaScript Web前端開發(fā)指南
- Amazon S3 Cookbook
- Python漫游數(shù)學王國:高等數(shù)學、線性代數(shù)、數(shù)理統(tǒng)計及運籌學
- Java Web程序設計任務教程
- 數(shù)據(jù)結構與算法分析(C++語言版)
- Bootstrap 4 Cookbook
- 用案例學Java Web整合開發(fā)
- R語言數(shù)據(jù)可視化:科技圖表繪制
- 運維前線:一線運維專家的運維方法、技巧與實踐
- 深度學習原理與PyTorch實戰(zhàn)(第2版)
- 人人都能開發(fā)RPA機器人:UiPath從入門到實戰(zhàn)
- Elasticsearch搜索引擎構建入門與實戰(zhàn)