支持内存不连续分配

支持内存不连续分配

ID:14459543

大小:176.00 KB

页数:9页

时间:2018-07-28

支持内存不连续分配_第1页
支持内存不连续分配_第2页
支持内存不连续分配_第3页
支持内存不连续分配_第4页
支持内存不连续分配_第5页
资源描述:

《支持内存不连续分配》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

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(sum

6、(){//作业撤销if(work.size()==0){cout<<"无作业可供删除"<>sel;for(inti=0;i

7、成!"<

8、for(j=0;j

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。