100 likes | 243 Views
Enforcing Modularity. Client / Service. module per computer module per Virtual computer. Virtual memory. Virtual processor. Kernel. Why VM:. -A can overwrite B’s memory. Mem. code. μProc. Mod A. ST R1,B. data. Mod B. Virtual Memory. VA VM Physical. Addr. VA. Address
E N D
Enforcing Modularity Client / Service module per computer module per Virtual computer Virtual memory Virtual processor Kernel
Why VM: -A can overwrite B’s memory Mem code μProc. Mod A ST R1,B data Mod B
Virtual Memory VA VM Physical Addr VA Address Space code Memory code code code Disk
Simplified VM Hardware Mem PA VA VM (MMU) LD VA, R1 μProc. pmar VA PA “page map address reg”
20 bit 12 bit 212= 4096 words 32 bit VA Page # Offset Page PA Mem Page 4096 bytes
Supervisory Module -Kernel Kernel AS μProc. maps only kernel can change PMAR pmar user / kernel
Supervisor Call -SVC Set U / K K Set PMAR to kernel map Save PC PC addr gate SVC gate malloc
Kernel –Trusted intermediary producer (put) Consumer (get) Graphics ES IPC Net Graphics
AS A AS B Memory Code A Code 1 Code B Lib 1 Lib 1,2 Code 2