操作系统课程设计(生产者-消费者,存储管理,虚拟存储器

上传者: winernathan | 上传时间: 2020-01-03 11:41:19 | 文件大小: 122KB | 文件类型: rar
《操作系统原理》实验指导书 实验一 生产者-消费者模型模拟进程调度 一、实验任务 1、在WINDOWS 2000环境下,创建一个控制台进程,此进程包括4个线程:2个生产者线程和2个消费者线程。 2、用信号量机制解决进程(线程)的同步与互斥问题。 二、实验目的 1.掌握基本的同步互斥算法,理解生产者和消费者模型。 2.了解Windows 2000/XP中多线程的并发执行机制,线程间的同步和互斥。 3.学习使用Windows 2000/XP中基本的同步对象,掌握相应的API。 三、实验要求 1.生产者消费者对缓冲区进行互斥操作。 2.缓冲区大小为10,缓冲区满则不允许生产者生产数据,缓冲区空则不允许消费者消费数据。 3.生产者消费者各循环操作50次。 四、设计思路和采取的方案 1.利用windows提供的API函数CreateSemaphore()创建信号量对象; CreateThread()创建线程; WaitForSingleObject()执行P操作; ReleaseSemaphore()执行V操作; WaitForMultipleObjects()主进程等待线程的结束等函数进行设计。 2.在Windows中,常见的同步对象有:信号量(Semaphore)、互斥量(Mutex) 。 使用这些对象都分为三个步骤,一是创建或者初始化; 接着请求该同步对象,随即进入临界区,这一步对应于互斥量的上锁;最后释放该同步对象,这对应于互斥量的解锁。这些同步对象在主进程中创建,在其子线程中都可。 实验二 存储管理 一、目的和要求 1. 实验目的 (1)掌握时间片轮换的进程调度算法; (2)掌握带优先级的进程调度算法; (3)选用面向对象的编程方法。 2、实验学时:2学时 3、实验要求 (1)自定义PCB的数据结构; (2)使用带优先级的时间片轮转法调度进程,每运行一个时间片,优先级减半。 (3)命令集 A)create 随机创建进程,进程的优先级与所需要的时间片随机决定; B)ps 查看当前进程状态 C)sleep 命令将进程挂起 D)kill 命令杀死进程 E)quit命令退出 二、实验内容 根据教师指定的实验课题,完成设计、编码、测试工作。 实验三 虚拟存储器 一、目的和要求 1. 实验目的 (1)掌握先进先出页面置换算法; (2)掌握随机替换页面置换算法; (3)掌握OPT页面置换算法; (4)掌握最近最少使用页面置换算法; (5)熟悉抖动现象及其产生原理; (6)熟悉C/C++编程。 2、实验学时:2学时 3、实验要求 (1)进程占用内存空间共640K,页面大小是1K/2K/4K/8K; (2)随机生成256个页面置换次序; (3)用于分配页面大小的内存总空间是32K; (4)给出四种页面置换算法的换页过程,并计算各自的缺页率。 二、实验内容 编写程序,使用四种不同的页面替换策略算法进行页面替换。分别是先进先出,随机替换,时钟页面替换,最近最久未使用页面替换,并计算缺页率。

文件下载

资源详情

[{"title":"( 6 个子文件 122KB ) 操作系统课程设计(生产者-消费者,存储管理,虚拟存储器","children":[{"title":"操作系统","children":[{"title":"存储管理.cpp <span style='color:#111;'> 4.34KB </span>","children":null,"spread":false},{"title":"生产者-消费者模型模拟进程调度.doc <span style='color:#111;'> 62.00KB </span>","children":null,"spread":false},{"title":"虚拟存储器.cpp <span style='color:#111;'> 6.57KB </span>","children":null,"spread":false},{"title":"生产者-消费者模型模拟进程调度.cpp <span style='color:#111;'> 3.12KB </span>","children":null,"spread":false},{"title":"虚拟存储器.doc <span style='color:#111;'> 109.00KB </span>","children":null,"spread":false},{"title":"存储管理——基本分页存储管理.doc <span style='color:#111;'> 84.50KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}]

评论信息

  • cike_dmc :
    写的蛮详细的,思路清晰,但是就是运行界面不是很好看。
    2014-11-06
  • Leopold刘 :
    生产者消费者在VC上运行没问题,思路清晰,代码简洁
    2014-05-10
  • wang159753741852963 :
    存储管理部分没用到进程,没帮上忙,但是写的挺详细的
    2014-01-16
  • 只为下载2013 :
    虽然少了我想要的clock算法,但还是不错的
    2013-12-08
  • Z757026167 :
    程序的编写非常详细,虽然功能方面并不全面
    2013-06-28

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明