Address space: Difference between revisions
From Rice Wiki
No edit summary |
No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 12: | Line 12: | ||
* Protection: that only it can access | * Protection: that only it can access | ||
* Virtual memory: that is large | * Virtual memory: that is large | ||
'''Multiprogramming''' allows multiple processes in memory at a time. This is motivated by the observation that most processes would only require a small bit of memory at a time. | '''Multiprogramming''' allows multiple processes in memory at a time. This is motivated by the observation that most processes would only require a small bit of memory at a time. '''Address translation''' by the [[MMU]] is used to avoid conflicting addresses by using symbolic addresses to represent physical addresses. | ||
[[Category:Operating System]] | [[Category:Operating System]] |
Latest revision as of 18:43, 4 October 2024
The address space of a process usually consists of three segments
- Stack
- Data
- Code
Typically, stack and data segments are dynamic.
Address space abstracts physical memory in the following three ways:
- Address independence: Each process has its own memory
- Protection: that only it can access
- Virtual memory: that is large
Multiprogramming allows multiple processes in memory at a time. This is motivated by the observation that most processes would only require a small bit of memory at a time. Address translation by the MMU is used to avoid conflicting addresses by using symbolic addresses to represent physical addresses.