- 1、本文档共129页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统课程设计指导书
赵伟华 梁红兵 刘真
2015年9月
计算机学院
目录
第一章 操作系统课程设计的内容与实施方法 - 3 -
1.1 操作系统课程设计总体要求 - 3 -
1.2 操作系统课程设计的内容 - 3 -
1.3 操作系统课程设计实施方案 - 4 -
第二章 基于DOS的多任务系统的实现 - 5 -
2.1 设计目的和内容要求 - 5 -
2.2 线程描述 - 6 -
2.3 线程的创建和撤消 - 8 -
2.4 线程调度设计 - 10 -
2.5 基本实例程序的实现 - 23 -
2.6 线程的阻塞和唤醒 - 26 -
2.7 线程的同步与互斥 - 26 -
2.8 利用消息缓冲队列通信机制实现线程间通信 - 27 -
第三章 简单文件系统的实现 - 32 -
3.1 设计目的和内容要求 - 32 -
3.2 预备知识 - 33 -
3.3实例系统的设计与实现 - 36 -
第四章:linux进程管理 - 47 -
4.1 设计目的和内容要求 - 47 -
一、设计目的 - 47 -
二、设计内容 - 47 -
三、思考 - 48 -
4.2 Linux基本使用: - 48 -
一、进入Linux系统和退出Linux系统 - 48 -
二、图形化界面 - 49 -
三、常用命令 - 50 -
四、Linux的在线帮助man - 73 -
五、vi和vim编辑器 - 75 -
六、Linux环境下C编程 - 79 -
七、gdb调试工具 - 81 -
4.3 linux内核模块的编程入门 - 83 -
一、模块编程步骤: - 84 -
二、模块编程举例: - 84 -
4.4 linux进程管理系统调用 - 87 -
一、 linux进程控制 - 87 -
二、进程通信 - 95 -
(一)Linux管道通信机制 - 95 -
(二)Linux消息队列通信机制 - 101 -
(三)linux共享内存通信 - 108 -
三、进程/线程同步(信号量) - 118 -
(一) System V信号量 - 118 -
(二) Posix信号量: - 119 -
操作系统课程设计
第一章 操作系统课程设计的内容与实施方法
1.1 操作系统课程设计总体要求
1.遵守机房纪律,服从机房调度。
2.课程设计的设计和上机调试要求独立完成,不能拷贝。
3.上机前,努力准备上机内容,并预先作一些情况分析。
4.仔细观察上机时出现的各种现象,记录上机的结果。
5.认真书写课程设计报告。报告中应包括:课程设计的目的及要求、程序的设计思想及流程图、程序调试中遇到的问题及分析、程序代码清单和结果分析;程序的不足之处及修改方案等。程序要带注释。
1.2 操作系统课程设计的内容
本次课程设计共设置了以下两个题目:
1.基于DOS的多任务系统的实现
DOS系统是一个典型的单用户单任务操作系统。“基于DOS的多任务系统的实现”的基本设计思想是设计一个运行在DOS系统中的应用程序,该应用程序能实现多线程机制,即能完成所有与线程管理有关的工作,包括线程创建与撤销、线程阻塞与唤醒、线程互斥与同步、线程调度、线程通信等。我们利用这些功能创建多个线程,并调度这些线程在CPU上并发执行,每个线程执行一个函数完成指定的功能。
2.简单文件系统的实现
文件系统是操作系统内核中非常重要的组成部分之一。一个相对完整的文件系统应该具备以下几个方面的功能:磁盘存储空间管理、目录管理、文件读写管理、文件保护与共享。由于对磁盘的存取操作必然涉及到磁盘驱动程序设计,为了降低设计难度,本实验的基本设计思想是在内存中申请一块存储空间作为虚拟磁盘,在其上建立一个类似于FAT的文件系统,所有对文件系统的操作都是在该虚拟磁盘空间中进行。为了保存该文件系统中的内容,如我们创建的目录、文件等,在退出文件系统的使用之前必须将整个虚拟磁盘上的内容以一个文件的形式全部保存到系统真正的磁盘上;以后想再次使用该文件系统时又必须首先从磁盘上读入这个文件的内容到内存中的虚拟磁盘上,然后才能继续使用。
1.3 操作系统课程设计实施方案
操作系统是计算机系统中最核心最重要的一组软件集合,用来控制系统中的所有硬件及其他软件的运行,各程序模块内部的控制流程及相互间的接口都很复杂。本课程设计虽然只是实现其中的一部分功能
文档评论(0)