Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chien-Chung Shen CIS/UD

Similar presentations


Presentation on theme: "Chien-Chung Shen CIS/UD"— Presentation transcript:

1 Chien-Chung Shen CIS/UD cshen@udel.edu
Chapter 13 Address Space Chien-Chung Shen CIS/UD

2 Lack of Memory Abstraction
Earlier systems did not provide much of an abstraction of (physical) memory OS == library that sat in memory starting from physical address 0 One running program (process) that sat in memory starting from physical address 64K

3 Multiprogramming Multiple concurrent processes
increase utilization of CPU time sharing & interactive Expensive to save/restore contents in memory when context switching so leave processes in memory and switch between them One critical issue protection

4 Address Space Abstraction of physical memory
Running program’s view of physical memory: contain all the memory state of running program The process is NOT in memory at physical addresses 0 through 16KB Virtual address vs. physical address Address spaces of threads ? How to virtualize memory ? How can the OS build this abstraction of a private, potentially large address space for multiple running processes (all sharing memory) on top of a single, physical memory?

5 Principle of Isolation
Isolation is a key in building reliable systems If two entities are properly isolated from each other, this implies that one can fail without affecting the other OS strives to isolate processes from each other and in this way prevent one from harming the other By using memory isolation, OS further ensures that running programs cannot affect the operation of the underlying OS By walling off pieces of the OS from other pieces of the OS, microkernel may provide greater reliability than monolithic kernel design

6 Goals of Virtualized Memory
Transparency virtualized memory is implemented in a way that is invisible to (hard to be noticed by) the running program program behaves as if it has its own private physical memory OS and hardware do all the work to multiplex memory among many different processes, and hence implement the illusion Efficiency time (not much slower) and space (not much more space) Protection protect process from one another and the OS itself from processes enables isolation among processes; each process should be running in its own isolated cocoon, safe from the ravages of other faulty or event malicious processes

7 Virtualized Memory Any address you can see as a programmer of a user-level program is a virtual address Only the OS, through its tricky techniques of virtualizing memory, that knows where in the physical memory of the machine these instructions and data values lie If you print out an address in a program, it’s a virtual one, an illusion of how things are laid out in memory; only the OS (and the hardware) knows the real truth Virtualized memory is responsible for providing the illusion of a large, sparse, private address space to programs, which hold all of their instructions and data therein OS, with hardware help, will take each of these virtual memory references, and turn them into physical addresses which can be presented to the physical memory to fetch the desired information OS will do this for many processes at once, making sure to protect programs from one another, as well as protect the OS


Download ppt "Chien-Chung Shen CIS/UD"

Similar presentations


Ads by Google