主存作为虚存的Cache:页表 USTC 0 1 2 虚存:在辅存中 valid-invalie3 磁盘交换区 0 A frame bit swap space 分页:虚实页大小相等。 4 A B 全相联:虚页可在内存的任意 0 4 5 位置 6 虚实映射:按页表查找 2 6 页表:在内存中。大小? 3 E 4 8 写操作:写回。一致性? 5 8 F OS在创建进程时,为其建立 6 G 10 7 页表和磁盘上的VA空间。 H 11 由OS+MMU管理,对程序员 12 logical memory 和编译器透明! 13 14 15 PhysicalMemory *Valid--Invalid(PRESENT,pagefault),reference(替换),dirty
主存作为虚存的Cache:页表 虚存:在辅存中 分页:虚实页大小相等。 全相联:虚页可在内存的任意 位置 虚实映射:按页表查找 页表:在内存中。大小? 写操作:写回。一致性? OS在创建进程时,为其建立 页表和磁盘上的VA空间。 由OS+MMU管理,对程序员 和编译器透明! *Valid-Invalid(PRESENT,pagefault),reference(替换),dirty 磁盘交换区 swap space
虚实地址转换 内 Virtual address 3130292827 …15141312111098…3210 Virtual page number Page offset 虚页大小=内存页卡磁盘块(n扇区) Block/frame/page/sector Translation 292827 15141312111098… 3210 Physical page number Page offset Physical address 图5-26
虚实地址转换 虚页大小= 内存页= 磁盘块(n 扇区) Block/frame/page/sector 图5-26
页表:虚实映射,权限控制 VIrtual page 由OS为进程创建和维护 number RV FIGURE 5.28 Page table -存储于内存中OS地址空间 Physical page or Physlcal memory ·普通用户无法访问 Valid disk address 一页表基址寄存器PTBR PTE格式:page table entry -控制位VCD: ● ● ·Valid:装入,缺页异常 DIsk storage -未装入页:disk地址 ·Ref/used/Count ·Dirty -Access Rights:非法异常 M盘机号 柱面号 磁头号扇区号 read/write/modify/exe 。 页共享保护(限制其他进程权限) 一} 物理页地址 page frame number(PFN) ·Disk address 外页表(disk map) VPN(虚页号)is the index of PT M:装入位(mount),指示是否已从第二级辅 存(离线)中装入
页表:虚实映射,权限控制 • 由OS为进程创建和维护 – 存储于内存中OS地址空间 • 普通用户无法访问 – 页表基址寄存器PTBR • PTE格式:page table entry – 控制位VCD: • Valid:装入,缺页异常 – 未装入页:disk地址 • Ref/used/Count • Dirty – Access Rights:非法异常 • read/write/modify/exe • 页共享保护(限制其他进程权限) – 物理页地址 • page frame number (PFN) • Disk address • VPN(虚页号)is the index of PT 外页表(disk map) M:装入位(mount),指示是否已从第二级辅 存(离线)中装入 RV FIGURE 5.28
多进程 》 A大 A virtual address ·进程状态 page number offset PC+GPRs+SP+PTBR 1 0 0 0 1 1 进程切换 2 3 3 3 -更新PTBR Address Space Page Table of User-1 of User-1 2 User 1 VA1 os pages Page Table User 2 VA1 Page Table User 3 VA1 Page Table free
多进程 • 进程状态 – PC+GPRs+SP+PTBR • 进程切换 – 更新PTBR