关于地址转换在计算机操作系统中,地址转换是存储管理的一个主要功能。所谓地址转换就是将用户的逻辑地址转换成内存的物理地址,完成地址重定位。需要指出的是,地址转换是操作系统的地址变换机构自行完成的,无需用户干预,这样我们使用操作系统时,才方便而可靠。在这一章里,介绍的存储管理有分区管理(包括固定分区和可变分区)、分页管理、分段管理和段页式管理,其中分页管理的地址转换是重点和难点。下面,我们结合三个例题对地址转换作详细地分析。【例 1】考虑一个由 8 个页面,每页有 1024 个字节组成的逻辑空间,把它装入到有32 个物理块的存储器中,问: (1)逻辑地址需要多少二进制位表示? (2)物理地址需要多少二进制位表示?分析 在分页存储管理中,逻辑地址结构如下图所示。 它由两个部分组成:前一部分表示该地址所在页面的页号 p;后一部分表示页内地址(页内位移)d。页号的地址位数决定了页的多少,假设页号有 20 位,则地址空间中最多可容纳的页面数为 220,即 1MB 个页面。页内地址位数确定了每页的大小,若页内地址为12 位,则每页大小为 212,即 2KB。同理,物理地址中块号的地址位数决定了块的数量。由于页式存储管理内存空间块的大小与页面大小相同,所以物理地址中块内地址与逻辑地址中的页内地址位数相同。 解 因 为 页 面 数 为 8=23 , 故 需 要 3 位 二 进 制 数 表 示 。 每 页 有 1024 个 字 节 ,1024=210,于是页内地址需要 10 位二进制数表示。32 个物理块,需要 5 位二进制数表示(32=25)。(1)页的逻辑地址由页号和页内地址组成,所以需要 3+10=13 位二进制数表示。(2)页的物理地址由块号和页内地址的拼接,所以需要 5+10=15 位二进制数表示。【例 2】若在一分页存储管理系统中,某作业的页表如下所示。已知页面大小为1024 字节,试将逻辑地址 1011,2148,4000,5012 转化为相应的物理地址。页号块号01232316 分析 页式存储管理的地址结构是一维的,即逻辑地址(或物理地址)只用一个数值即可表示。若给定逻辑地址 A,页面的大小为 L,则页号 p 和页内地址 d 可根据下式求得:p=int [A/L] d=A mod L其中,int 是取整函数(取数值的整数部分),mod 是取余函数(取数值的余数部分)。下图显示了页式管理系统的地址转换机构。页号 p页内地址 d页表的作用是实现从页号到物理块号的地址映射。以逻辑地址的页号检索页表,...