欢迎来到天天文库
浏览记录
ID:1778567
大小:39.50 KB
页数:5页
时间:2017-11-13
《操作系统作业-20110421》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、操作系统作业(2011-04-21):1、假定某采用页式存储管理的系统中,主存容量为1MB,被分成256块,块号为0,1,2,……255。现有一个共4页(页号为0,1,2,3)的作业被依次装入到主存的第2,4,1,5块中。请回答:(1)主存地址应该用多少位来表示?(2)作业每一页的长度为多少字节?逻辑地址中的页内地址部分应占用多少位?(3)画出页表并给出作业中每一页占用的主存块起始地址。(4)若作业执行中要从第0页的第75单元和第3页的第548单元读信息,那么,实际应从主存的哪两个单元读信息?请把应访问的主存绝对地址用十六进制数表示。[分析]由于主存容量为1M,而1M等于2的20次方,因
2、而主存地址应用20位来表示。1M的主存空间被分成256块,因而每一块的长度为2的20次方/2的8次方=2的12次方=4096(字节)。在页式存储管理的系统中,作业信息分页的大小应该与主存分块的大小一致,故作业每一页的长度应为4096个字节。于是,逻辑地址中的页内地址部分应占12位。因为主存块的大小为4096个字节(4K字节),块的编号从0开始,主存的绝对地址也是从0开始的,故每个主存块的起始地址为: 块长*块号=4K*块号现作业被分成四页(页号为0,1,2,3)且分别装入到第2,4,1,5块中。那么,这四页信息所在主存块起始地址应依次为:8K,16K,4K,20K。作业执行时应把逻辑
3、地址转换成绝对地址,地址转换的一般公式为: 绝对地址=块号*块长+页内地址利用二进制乘法的特性,只要把根据页号从页表中查得的块号作为高地址部分,把逻辑地址中的页内地址作为低地址部分,就能得到对应的绝对地址。根据本题的假设,主存地址共20位,页内地址占用了12位,因而,高地址部分占8位,低地址部分占12位。若作业执行中要从第0页第75单元读信息,则实际应从主存第2块的第兀单元去读信息。于是,高地址部分为块号2,用8位二进制码表示为:00000010;低地址部分为单元号(页内地址)75,用12位二进制码表示为000001001011;形成的20位绝对地址为:000000100000010
4、010if。同样地,当要从第3页的第548单元读信息时,实际应从主存第5块的第548单元去读信息。于是,高地址部分应为块号5,低地址部分应为单元号548,用二进制码表示的20位绝对地址就应该为:00000101001000100100。题中要求把绝对地址用二进制编码的十六进制数来表示,即把每四位二进制码作为一个十六进制的数,其对应关系为: 二进制编码 十六进制编码 0000 0 0001 1 0010 2 0011 3 0100 4 0101 5 0110
5、6 0111 7 1000 8 1001 59 1010 A 1011 B 1100 C 1101 D 1110 E 1111 F因而,第0页第75单元的绝对地址可表示为:0204B第3页第548单元的绝对地址可表示为:05224[题解](1)主存地址应该用20位来表示。(2)作业每一页的长度应为2的12次方=4096个字节,逻辑地址中的页内地址部分应占用12位。(3)作业中每一页占用主存块的起始地址为: 页号 起始地址
6、 0 8K 1 16K 2 4K 3 20K(4)若作业执行中要从第0页的第75单元读信息,则实际应从主存的第2块第75单元读,应访问的主存绝对地址用二进制编码的十六进制数表示为对204B。若要从第3页的第548单元读信息,则实际应从主存的第5块第548单元读,应访问的主存绝对地址用二进制编码的十六进制数表示为:05224。1、兄弟俩共用一个账号,他们都可以用该账号到任何一家联网的银行自动存款或取款。假定银行的服务系统由“存款”和“取款”两个并发进程组成,且规定每次的存款额和取款额总是为100元。若进程结构如下:beginamount:integer;
7、amount:=0;cobeginProcessSAVEm1:integer;beginm1:=amount;m1:=m1+100;amount:=m15end;ProcessTAKEm2:integer;beginm2:=amount;m2:=m2-100;amount:=m2end;coend;end;请回答下列问题:(1)请估计该系统工作时会出现怎样的错误?为什么?(2)若哥哥先存了两次钱,但在第三次存钱时弟弟却正在取钱,则该
此文档下载收益归作者所有