欢迎来到天天文库
浏览记录
ID:14459543
大小:176.00 KB
页数:9页
时间:2018-07-28
《支持内存不连续分配》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1.多道程序设计是指允许多个作业(程序)同时进入计算机系统的主存并启动交替计算的方法。操作系统引入多道程序设计的优点:一是提高CPU、主存和设备的利用率;二是提高系统的吞吐率,使单位时间内完成的作业数增加;三是充分发挥系统的并行性,设备与设备之间、CPU与设备之间均可并行工作。其主要缺点是延长作业的周转时间。2.为了解决CPU与设备之间速度不匹配的矛盾,及协调逻辑记录大小与物理记录大小不一致的问题,提高CPU和设备的并行性,减少I/O操作对CPU的中断次数,放宽对CPU中断响应时间的要求因此引入缓冲技术。基本思想是:当进程执行
2、写操作输出数据时,先向系统申请一个输出缓冲区,然后,将数据送至缓冲区,若是顺序写请求,则不断地把数据填入缓冲区,直到装满为止,此后,进程可以继续计算,同时,系统将缓冲区的内容写到设备上。当进程执行读操作输入数据时,先向系统申请一个输入缓冲区,系统将设备上的一条物理记录读至缓冲区,然后根据要求,把当前所需要的逻辑记录从缓冲区中选出并传送给进程。2使用为试图实现主存的分配与回收源码:#include#include#include#includeusingna
3、mespacestd;boolblock[8][8];//位表vectorpage;//页表vector>work;//记录作业的页表intsel;voidinit()//初始化{intt;memset(block,0,sizeof(bool));vectorv;for(t=0;t<6;t++)block[0][t]=1;block[1][1]=1;block[1][3]=1;block[1][5]=1;block[3][0]=1;block[3][7]=1;for(t=0;t<64
4、;t++){if(block[t/8][t%8])v.push_back(t);}work.push_back(v);}voidscreen(){//操作提示函数cout<>sel;}voidadd_work(){//作业调入,内存申请函数cout<<"请输入作业的大小"<>length;vectornow;for(t=0,sum=0;t<64;t++)/
5、/寻找内存剩余的块数if(!block[t/8][t%8])sum++;if(sum6、(){//作业撤销if(work.size()==0){cout<<"无作业可供删除"<>sel;for(inti=0;i7、成!"<8、for(j=0;j
6、(){//作业撤销if(work.size()==0){cout<<"无作业可供删除"<>sel;for(inti=0;i7、成!"<8、for(j=0;j
7、成!"<8、for(j=0;j
8、for(j=0;j
此文档下载收益归作者所有