操作系统课设

操作系统课设

ID:26232350

大小:752.00 KB

页数:44页

时间:2018-11-25

操作系统课设_第1页
操作系统课设_第2页
操作系统课设_第3页
操作系统课设_第4页
操作系统课设_第5页
资源描述:

《操作系统课设》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、WORD格式可编辑课程设计报告课程名称:计算机操作系统专业班级:学号:姓名:指导教师:报告日期:计算机科学与技术学院专业知识整理分享WORD格式可编辑目录1实验目的22实验环境23实验内容23.1实验一23.2实验二23.3实验三23.4实验四(选做)33.5实验五(选做)34设计与实现34.1实验一34.2实验二104.3实验三144.4实验四205心得体会43专业知识整理分享WORD格式可编辑1实验目的·掌握Linux操作系统的使用方法;·了解Linux系统内核代码结构;·掌握实例操作系统的实现方

2、法;2实验环境本次课程设计采用的操作系统环境是windows8、Ubuntu双系统,Ubuntu系统版本号为14.04,内核版本号为linux3.13.0;采用的编程环境为CodeBlocksIDE和QtCreator。3实验内容3.1实验一掌握Linux操作系统的使用方法,包括键盘命令、系统调用;掌握在Linux下的编程环境。(1)编写一个C程序,其内容为实现文件拷贝的功能。(2)编写一个C程序,其内容为分窗口同时显示三个并发进程的运行结果。要求用到Linux下的图形库(GTK/Qt)。3.2实验二

3、掌握系统调用的实现过程,通过编译内核方法,增加一个新的系统调用,另编写一个应用程序,调用新增加的系统调用。实现的功能是:文件拷贝。3.3实验三掌握增加设备驱动程序的方法。通过模块方法,增加一个新的设备驱动程序,其功能可以简单。(实现字符设备的驱动)专业知识整理分享WORD格式可编辑1.1实验四(选做)了解和掌握/proc文件系统的特点和使用方法(1)了解/proc文件的特点和使用方法;(2)监控系统状态,显示系统中若干部件使用状态;(3)用图形界面实现系统监控状态;1.2实验五(选做)设计并实现一个模

4、拟的文件系统。多用户的多级目录的文件系统设计。多用户、多级目录、login(用户登录)、系统初始化(建文件卷,提供登录模块)、文件的创建、文件的打开、文件的读写、文件关闭、删除文件、创建目录(建立子目录)、改变当前目录、列出文件目录、退出。2设计与实现2.1实验一2.1.1实验要求掌握Linux操作系统的使用方法,包括键盘命令、系统调用;掌握在Linux下的编程环境。2.1.2具体实现本实验内容是用CodeBlocksIDE实现的,该软件整合了函数库和编译器,因此使用起来非常方便。(1)编写一个C程序

5、,其内容为实现文件拷贝的功能。在windows操作系统上实现的文件拷贝功能一般使用fopen、fread、fwrite三个来自标准C函数库的函数执行对文件的打开、读、写操作,而本次实验要求使用Linux系统的系统调用open、read、write实现上述三个操作。用到的主要头文件如下:stdio.h——标准输入输出头文件专业知识整理分享WORD格式可编辑string.h——字符串处理相关头文件unistd.h——Linux系统调用头文件,比如read、writefcntl.h——包含open系统调用e

6、rrno.h——包含一些调试错误时用到的变量具体实现思路:打开两个文件(分别是源文件和目标文件,可以是任意字符流形式存储的文件,包括文本文件、照片等),调用read函数读取源文件的内容,将read的返回值作为while循环的判断条件,当返回值大于0(即还未读取完毕源文件中的内容)时,调用write执行向目标文件写的操作,否则跳出循环,表示源文件已经被拷贝到目标文件,然后调用close关闭源文件和目标文件。代码编写完成后,在CodeBlocks上编译运行即可。程序运行之前,桌面上只有“教程.docx”,

7、运行之后,桌面上新建了“教程副本.docx”,并且“教程.docx”中的内容被复制到了“教程副本.docx”,程序运行结果如下所示:详细代码见4.1.3。(2)编写一个C程序,其内容为分窗口同时显示三个并发进程的运行结果。要求用到Linux下的图形库(GTK/Qt)。本次实验使用的图形库是跨平台的开发工具Qt。首先下载Qt的安装包并安装。专业知识整理分享WORD格式可编辑Qt安装完之后,先新建一个Qt控制台应用MAIN作为主进程,用于调用三个并发的子进程。在主进程的main函数中,使用fork创建三个

8、子进程,若进程创建成功(即fork函数返回值等于0),则使用execv函数进入对应的子进程(get、copy、put)。主进程程序编写完成后,再新建三个QtWidgetsApplication,分别作为三个子进程get、copy、put(所实现的功能并不是拷贝)。由于三个子进程窗口显示的内容形式一模一样,所以以子进程get为例。get进程的窗口显示了一下四个内容:当前时间、子进程名称、子进程的pid和父进程MAIN的pid。用Qt的对象QDateTime

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

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

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