还剩5页未读,继续阅读
文本内容:
操作系统课程设计任务书班级_______________学号_______________姓名_______________指导教师___________电子与信息工程学院计算机科学系1目的和意义通过本次课程设计,全面综合掌握操作系统、数据结构、C/C++或J__a等编程语言及其__环境;对《操作系统》课程及相关知识巩固理解,建立完善相关知识体系;进一步提高分析问题和解决问题能力;培养程序设计与实现和文档书写的动手能力包括加深对操作系统概念、算法、原理和理论的全面系统理解综合运用《操作系统》及其他课程相关知识完成设计任务,深入理解操作系统在计算机系统中的地位和作用,了解《操作系统》课程在计算机专业课程体系中的地位和作用对所选题目进行分析与设计,培养分析问题和解决问题能力采用C/C++、J__a等语言完成设计任务,进一步熟练掌握语言知识,锻炼和提高程序设计能力,培养实践能力2任务概述
2.1参加班级参加本次课程设计的班级为计软11-
1、
22.2设计安排本次课程设计时间为1周,即2013-01-15~2013-01-22具体安排为16周周二动员、任务分配17周周一起完成设计内容及报告18周周二前提交报告及程序18周周五前答辩本次课程设计计软11-1计软11-
22.3成绩评定及要求本次课程设计成绩构成为文档40%+程序30%+答辩30%具体要求如下文档要求按照设计说明书格式书写程序可采用C/C++或J__a语言实现,要求提交程序源代码及__环境说明文件文档和程序要求__完成,如有雷同情况,成绩一律为不及格无故不参加设计者、参加无文档或程序者成绩评定为不及格答辩未通过者成绩评定为不及格4设计题目以下题目任选其一
4.1进程管理设计并实现一个可完整演示操作系统中进程的表示PCB、进程状态及转换、进程调度和进程同步及死锁过程的演示系统实验目的进程是操作系统中最重要、最核心的概念,贯穿于《操作系统》课程的始终,也是现代操作系统的核心通过本设计加深对进程概念的理解,理解并发的本质含义掌握进程调度算法,各算法性能的比较分析并发进程间的制约关系,掌握解决同步问题的方法分析死锁产生的条件,掌握死锁的预防和避免方法准备知识程序设计语言(C/C++/J__a)数据结构(结构体、链表、队列等)进程概念并发与异步进程调度及相关算法进程同步、__量、管程、经典进程同步问题死锁的必要条件、死锁的预防和避免设计内容
1、设计并实现表示进程的数据结构PCB
2、实现以下算法1)进程调度及状态转换设计并实现进程的状态转换模型,包括就绪队列、CPU、阻塞队列等模拟进程状态的转换,至少包含就绪、运行和阻塞三种状态,随机产生或者手工输入导致进程状态转换的__(如进程到达、进程终止、请求I/O、I/O完成、出现高优先级进程、时间片到等),显示各__发生后进程的状态随机产生或者手工输入进程调度条件(包括到达时间、服务时间、优先级等),演示至少两种调度算法(先来先服务算法、短作业优先算法、高响应比优先算法、时间片算法、抢占优先级算法、非抢占优先级算法)的调度过程及各进程周转时间、带权周转时间、平均周转时间、平均带权周转时间2)进程同步__量(记录型、AND型或__量集)或管程的实现选择任一经典进程同步问题(生产者-消费者问题、读者-写者问题、哲学家进餐问题)实现之随机产生进程同步条件检验上面的实现算法完成进程同步任务,如对生产者-消费者问题分别产生一组到达时间随机的生产者进程和消费者进程,显示各时间点(如进程执行P、V操作前后以及进入或离开临界区等时刻)各进程的状态及缓冲区和各__量的值对读者-写者问题分别产生到达时间随机的读者和写者进程,显示各时间点(如进程执行P、V操作前后以及进入或离开临界区等时刻)各进程的状态及读者、写者列表和各__量的值对哲学家进程问题哲学家开始进餐的时间随机,显示各时间点(如进程执行P、V操作前后以及进入或离开临界区等时刻)哲学家和筷子的状态及各__量的值3)死锁处理设计和实现进程队列和资源队列模型设计和实现避免死锁的银行家算法对以下条件进程__xAllocationABCABCP0753010P1322200P2902302P3222211P4433002用上面实现的银行家算法说明以下进程资源请求是否应该予以满足(输出执行过程及最终结果)P1Request1(1,0,2)P4Request4(3,3,0)P0Request0(0,2,0)
3、设计必要的UI,接收进程相关参数的输入(如,进程调度及状态转换中的进程名、到达时间、服务时间、优先级;进程同步中的缓冲区大小;死锁中的资源使用及分配情况和资源请求等),显示执行过程及结果(如,进程调度及状态转换中各调度算法的计算过程及选择的结果、每次调度后就绪队列、阻塞队列和运行中的进程情况、每次调度后各进程的状态、是否有抢占发生;进程同步中各进程__量状态及值;死锁中算法每部的运行过程及结果等)可采用命令行、桌面版或者Web版形式
4.2内存管理设计并实现一个可完整演示操作系统中请求分页系统的内存分配、地址变换、页面置换等过程的演示系统通过本设计理解内存分页机制掌握页面置换算法理解虚拟存储器的实现过程准备知识程序设计语言(C/C++/J__a)数据结构(结构体、链表、队列等)基本分页存储管理方式虚拟存储器概念请求分页存储管理方式页面置换算法设计内容设计和实现基本分页存储管理的数据结构(包括物理块、页、进程空间、页表等的模拟)实现基于固定分配局部置换策略的分页式存储分配实现最佳、先进先出、LRU置换算法(栈式和寄存器方式任选其一)用上面实现的算法以至少三组以上的页面请求序列,从缺页率角度比较页面置换算法的性能设计必要的UI,接收用户输入的运行参数(页和物理课大小、逻辑和物理地址空间大小、进程驻留集大小、置换算法选择、页面请求序列等),输出运行过程及结果(每个页面请求前后页表情况、快表情况、内存使用情况、被置换页面的选择过程及结果等)可采用命令行、桌面版或者Web版形式操作系统课程设计说明书班级_______________学号_______________姓名_______________指导教师___________电子与信息工程学院计算机科学系1设计题目2设计思路3功能模块图4主要程序流程图5程序说明包括__及运行环境说明、代码结构等内容6主要代码。