计算机操作系统课设操作系统课程设计报告.doc

计算机操作系统课设操作系统课程设计报告.doc

  1. 1、本文档共88页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机操作系统课设操作系统课程设计报告

课 程 实 验 报 告 题目: 操作系统原理 专业班级: 信息安全 1302 班 学 号: 姓 名: 指导教师: 报告日期: 2016年29日 计算机科学与技术学院 目 录 1. 初探Linux编程环境 1 1.1. 实验目的 1 1.2. 实验内容 1 1.2.1. 实验一 1 1.2.2. 实验二 1 1.3. 实验设计 1 1.3.1. 实验一 1 1.3.2. 实验二 2 1.4. 实验环境 3 1.5. 实验步骤 3 1.5.1. 实验一 3 1.5.2. 实验二 3 1.6. 调试记录 4 1.6.1. 实验一 4 1.6.2. 实验二 4 1.7. 实验结果 5 1.7.1. 实验一 5 1.7.2. 实验二 6 2. 通过编译内核的方式为Linux增加系统调用 8 2.1. 实验目的 8 2.2. 实验内容 8 2.3. 实验设计 8 2.4. 实验环境 8 2.5. 实验步骤 8 2.6. 调试记录 10 2.7. 实验结果 11 3. 编写设备驱动程序 13 3.1. 实验目的 13 3.2. 实验内容 13 3.3. 实验设计 13 3.4. 实验环境 14 3.5. 实验步骤 14 3.6. 调试记录 15 3.7. 实验结果 15 4. 实现系统监控程序 17 4.1. 实验目的 17 4.2. 实验内容 17 4.3. 实验设计 18 4.4. 实验环境 22 4.5. 实验步骤 22 4.6. 调试记录 22 4.7. 实验结果 23 5. 设计模拟文件系统 28 5.1. 实验目的 28 5.2. 实验内容 28 5.3. 实验设计 28 5.4. 实验环境 33 5.5. 实验步骤 34 5.6. 调试记录 34 5.7. 实验结果 34 6. 附注:程序清单 39 6.1. 文件拷贝程序 39 6.2. 多进程多窗口实验 40 6.3. 编译内核添加系统调用 41 6.4. 编写模块 43 6.5. 任务监视器 49 6.6. 模拟文件系统 64 初探Linux编程环境 实验目的 掌握Linux操作系统的使用方法包括键盘命令系统调用掌握在Linux下的编程环境了解在Linux如何进行多线程编程以及图形编程实验内容 实验一 编写一个C程序其内容为实现文件拷贝的功能要求使用系统调用openread、write。 实验二 编写一个C程序其内容为分窗口同时显示三个并发进程的运行结果要求用到Linux下的图形库Gtk/Qt)。 实验设计 实验一 所谓文件拷贝就是将源文件的内容全部拷贝到新的文件中产生一个与源文件一模一样的副本 在Linux系统中文件拷贝的功能比较简单,其核心流程如11所示 图 11 文件拷贝核心算法 实验二 本实验中,我首先写了一个“主控程序”,用来创建三个进程来启动另外的三个窗口程序,这三个窗口程序中,有两个是单一的窗口程序,而第三个窗口程序则又创建了4个进程来进行不同的计算操作。 “主控程序”非常简单,就是使用了3个fork系统调用来创建3个新的进程再在进程中使用execl()函数来调用我已经编制完成的三个窗口程序 三个窗口程序中前两个单一的窗口程序都非常简单窗口中显示一个图片文件它的实现方式就是将图片加载进程序的资源中然后在窗口中添加一个QLabel再用QLabel显示这个图像第二个窗口文件是在窗口的QLabel控件中动态显示当前时间它是使用了QTimer这个定时器给它设置一个回调函数 相比起前两个窗口程序第三个稍微复杂一些它是在程序中创建了4个进程并且申请了其中这图 12所示。而窗口程序中线程获取各子进程的计算结果以及向子进程发出退出信号等的方式与子进程中对共享内存区的操作相同,因此这里就不再列出窗口程序中的代码流程了。 图 12 第三个窗口程序中子进程的执行流程实验环境 VMware虚拟机,2G内存,2个CPU核心,40G虚拟硬盘空间 操作系统 64位Ubuntu 14.04.3,内核版本0-49-generic 编译器: 64位 4.8.4 文本编辑器emacs 24.5.1 图形界面开发环境 5.5.1 for Linux 64-bit 实验步骤 实验一 首先我查询了openread、write这三个系统调用的相关资料了解了它们的大概用法 编译时使用命令cc –o copy copy.c。 经过多次不同的测试结果表明程序运行正常实验二 执行程序进行测试,结果表明程序运行正常。 调试记录 实验一 程序可以创建目标文件但是目标文件中总是没有数据 出错原因 经过仔细检查发现是在使用ope

您可能关注的文档

文档评论(0)

almm118 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档