操作系统之QQ作业-15

1.已知某台计算机可寻址空间为4GB,采用分段管理主存,最大段容量为1MB。每个作业最多可包含256个段。请回答下列问题:
[1] 保存逻辑地址至少需要多少个存储单元?请说明原因。
[2] 物理地址的位宽是多少?
[3] 段表项至少需要多少个二进制位表示?
[4] 每个进程可使用的最大存储空间是多少?
[5] 若某个进程被分配到主存的段有三个,段基地址分别是0x2、0x100、0xffff0。那么该进程访问的逻辑地址为[0x1,0x100]的数据,保存在哪个主存单元?(请图示说明重定位的过程)
2.试比较覆盖、交换和虚拟内存三种技术的区别。

1)一个作业最多可包含256个段,则2^8=256.则相应的段号为8位
最大段内容量为1MB,则1MB=2^10kb,可知段内地址位数为10位
又因为分段系统中的逻辑地址由段号和段内地址组成,则可以得出逻辑地址为18位
一般来说,存储单元由八位二进制组成,则此处应该有2^18-3个存储单元。
经过计算2^15=32768个存储单元。
2)最大段内容量为1MB,1MB=2^20B,则物理地址的位宽为20b
3)可寻址空间为4GB,则可用32位表示整个可寻址空间,段号是8位,段内地址是10位。由于,段表项长度相同,段号可以是隐含的,不占存储空间,则段表项可以为10+32=42位。因此,段表项至少需要42个二进制位表示。
4)已知逻辑地址为18位,则每个进程可使用的最大存储空间是2^18B=256kb
5)段基地址+段内地址=物理地址(段内地址10位)
0x2=21=2,则相关为00000010
0x100=16
16=256,则100000000
0xfff0=65520,则1111111111110000
第一个逻辑地址0x1 00000000 0000000001
0x2对应的应该为00000000 0000000011,则保存在0x3单元中
0x100对应的应该为00000000 0100000001,则保存在0x101单元中
0xfff0对应的应该为1111111111110000 01,则保存在0x3ffc1单元中
第二个逻辑地址0x100 00000000 0100000000
0x2对应的应该为00000000 0100000010,则保存在0x102单元中
0x100对应的应该为00000000 1000000000,则保存在0x200单元中
0xfff0对应的应该为10000000011110000,则保存在0x100f0单元中

覆盖技术:用来解决“程序大小超过物理内存总和”的问题,将程序分为多个段,常用的段常驻内存,不常用的在需要时调入内存,是在同一个程序或者进程中完成的。
交换技术:发生在许多进程运行且内存吃紧的时候,表现为系统将内存中某些进程暂时换出外存,把外存中某些已具备条件的进程换入内存的动态调度。
虚拟内存技术:操作系统虚拟性的一个体现,实际的物理内存大小并没有改变,只是在逻辑上进行了扩充。
区别:覆盖是在同一个程序或者进程中完成的,交换是在不同进程或者作业之间的,虚拟内存则是就内存总体而言的,相应的简化了内存管理,为每个进程创建了独立的虚拟空间,具有多次性、对换性、虚拟性。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

想去见见你

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值