计算机操作系统-课设-操作系统课程的设计.docxVIP

计算机操作系统-课设-操作系统课程的设计.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机操作系统-课设-操作系统课程的设计

课 程 设 计 报 告课程名称: 操作系统 专业班级: 学 号: 姓 名: 指导教师: 报告日期: 03.10.2016 计算机科学与技术学院目录1 实验目的12 实验内容13 实验设计23.1实验一23.1.1 文件拷贝23.1.2 并发进程分窗口显示43.2实验二43.3实验三53.4实验四54 实验环境75 实验步骤75.1实验一75.1.1文件拷贝75.1.2 并发进程分窗口显示85.2实验二95.3实验三135.4实验四136 实验心得237 参考文献248 程序清单258.1 实验一258.1.1 文件拷贝258.1.2 并发进程分窗口显示258.2 实验二268.3 实验三278.3.1 驱动文件278.3.2 测试文件318.3.3 Makefile318.4 实验四32Mainwindow.h32Mainwindow.cpp331 实验目的掌握Linux操作系统的使用方法;了解Linux系统内核代码结构;掌握实例操作系统的实现方法。2 实验内容1、掌握Linux操作系统的使用方法,包括键盘命令、系统调用;掌握在Linux下的编程环境。 编一个C程序,其内容为实现文件拷贝的功能(使用系统调用); 编一个C程序,其内容为分窗口同时显示三个并发进程的运行结果。要求用到Linux下的图形库。 2、掌握系统调用的实现过程,通过编译内核方法,增加一个新的系统调用。另编写一个应用程序,使用新增加的系统调用。(1) 内核编译、生成,用新内核启动;(2) 新增系统调用实现:文件拷贝或P、V操作。3、掌握增加设备驱动程序的方法。通过模块方法,增加一个新的设备驱动程序,其功能可以简单。实现字符设备的驱动4、使用GTK/QT实现系统监控器(选做)了解/proc文件的特点和使用方法;监控系统状态,显示系统中若干部件使用情况;用图形界面实现系统监控状态。5、设计并实现一个模拟的文件系统(选做)(1)基于一大文件(10M或100M),模拟磁盘;(2)格式化,建立文件系统管理数据结构;(3)基本操作,实现文件、目录相关操作。3 实验设计3.1实验一3.1.1 文件拷贝要实现文件拷贝功能,主要用到的函数是open、write、read。?以前在windows下写C语言打开文件常用的fopen,此时不能用,因为fopen是ANSIC标准中的C语言库函数,在不同的系统中应该调用不同的内核api?;所以应该直接使用linux中的系统函数open。?设计思路:由命令行参数获取2个文件名,根据其文件名和路径分别打开该2个文件,设置一个循环,从源文件复制N个字节到目的文件,直到源文件指针到文件尾,最后关闭2个文件。?Windows环境下的文件拷贝功能已再熟悉不过,C语言中通过几个fopen,fread,fclose函数对文本文件进行读写操作即可完成简单文件的复制。本次试验时不再使用之前的方式,而使用linux下的函数open()、read()、write()函数,对于这几个函数的使用说明如下:open()函数函数定义:int open( const char * pathname,int flags); 参数说明:参数pathname 指向欲打开的文件路径字符串。下列是参数flags 所能使用的标志位:  O_RDONLY 以只读方式打开文件  O_WRONLY 以只写方式打开文件  O_RDWR 以可读写方式打开文件。  上述三种标志位是互斥的,也就是不可同时使用,但可与下列的标志位利用OR(|)运算符组合。  O_CREAT 若欲打开的文件不存在则自动建立该文件。  O_EXCL 如果O_CREAT 也被设置,此指令会去检查文件是否存在。文件若不存在则建立该文件,否则将导致打开文件错误。此外,若O_CREAT与O_EXCL同时设置,并且欲打开的文件为符号连接,则会打开文件失败。  O_NOCTTY 如果欲打开的文件为终端机设备时,则不会将该终端机当成进程控制终端机。  O_TRUNC 若文件存在并且以可写的方式打开时,此标志位会令文件长度清为0,而原来存于该文件的 资料也会消失。  O_APPEND 当读写文件时会从文件尾开始移动,也就是所写入的数据会以附加的方式加入到文件后面。  O_NONBLOCK 以不可阻断的方式打开文件,也就是无论有无数据读取或等待,都会立即返回进程之中。  O_NDELAY 同O_NONBLOCK。  O_SYNC 以同步的方式打开文件。  O_NOFOLLOW 如果参数pathname 所指的文件为一符号连接,则会令打开文件失败。  O_DIRECTORY 如果参数pathname 所指的文件并非为一目录,则会令打开文件失败。 参数mode 组合 此为Linux2.2以后特有的标志位,以避免一些系统

文档评论(0)

qiwqpu54 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档