




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
操作系统课程设计操作系统课程设计 一 课程设计题目一 课程设计题目 实现一个模拟操作系统 二 课程设计的目的二 课程设计的目的 通过模拟操作系统原理的实现 加深对操作系统工作原理理解 进一步了解操作系统的实现方法 并可练习合作完成系统的团队精神和提高程序设计能力 三 小组人数三 小组人数 建议 3 4 人一组共同完成模拟系统的实现 四 编程语言四 编程语言 建议使用 VC VB C Java 等 Windows 环境下的程序设计语言 以借助这些语言环境来模拟硬件 的一些并行工作 五 课程设计内容五 课程设计内容 模拟采用多道程序设计方法的单用户操作系统 该操作系统包括进程管理 存储管理 设备管理 文件管理和用户接口四部分 六 课程设计具体要求和内容六 课程设计具体要求和内容 1 文件管理和用户接口 文件管理和用户接口 文件管理和用户接口部分实现的主要是单用户的磁盘文件管理部分 包括文件的逻辑结构 物理结 构 目录 磁盘分配回收 文件的保护和用户接口的实现 文件的逻辑结构文件的逻辑结构 文件的逻辑结构采用流式结构 文件的内容均采用文本文件 系统中有两种文件 一种是存放任意字符的文件 一种是可执行文件 可执行文件的内容就是模拟 系统内进程的程序体 文件中要有一种特定命令的 可执行 文件 该文件中的命令有 x 给 x 赋值一位数 x x 加 1 x x 减 1 第一个 为 A B C 中某个设备 第二个 为一位数 表示使用设备的时间 由于没有实际设 备 所以无法知道设备何时工作完成 所以假定一个数 这个数随着系统时间增加而递减 减到 0 时 认为是设备工作完成 end 表示文件结束 同时将结果写入文件 out 其中包括文件路径名和 x 的值 磁盘模拟磁盘模拟 用一个文件 disk1 模拟磁盘 c 用一个文件 disk2 模拟磁盘 d 两个磁盘一样大小 磁盘的每个盘块 64 字节 模拟磁盘共有 128 块 第 0 1 块存放文件分配表 第 2 块存放根目录 其余存放子目录和文件 目录结构目录结构 目录结构采用树型目录结构 目录项内容 8 个字节 目录名 文件名 3 个字节 扩展名 2 个字节 可执行文件扩展名为 ex 目录没有扩展名 目录 文件属性 1 字节 1 位标识是文件还是目录 1 位标识只读还是非只读 1 位是隐藏属性 标识显示还是不显示 起始盘块号 1 个字节 文件长度 1 字节 目录没有长度 根目录 根目录位置固定 为磁盘第 2 块 大小固定 共 8 项 子目录 位置不固定 大小不固定 磁盘分配磁盘分配 磁盘的分配采用链接结构 显式链接 的分配 系统采用文件分配表方式记录磁盘空间的使用情况 和链接结构的指针 因为磁盘有 128 块 所以文件分配表中一项需要 1 字节 而磁盘有 128 块 因而需要 128 项 所以 模拟磁盘空间中的第 0 1 块被用来存放文件分配表 磁盘空闲存储空间管理磁盘空闲存储空间管理 磁盘空闲存储空间管理采用位示图方法 位示图和显示链接的指针合在一起组成文件分配表 占用磁盘空间第 0 1 块 用户接口用户接口 用户接口提供用户命令接口 要求实现以下命令 创建文件 create 存在同名文件 询问是否覆盖 拷贝文件 copy 可同名拷贝 也可更名拷贝 删除文件 delete 移动文件 move 注意磁盘内和磁盘间文件移动的不同 显示文件 type 编辑文件 edit 改变文件属性 change 建立目录 makdir 改变目录路径 chadir 删除空目录 rdir 删除目录 deldir 磁盘格式化命令 format 运行可执行文件 可执行文件的文件名 创建进程 上述命令在实际系统中都是需要建立进程才可以实现的 这里由于模拟系统的能力达不到 所以除 运行可执行文件需要建立进程外 其他指令执行不必在模拟系统中建立进程 可直接执行 7 屏幕显示 如图 1 屏幕显示要求包括 用户命令接口 用于系统运行时用户输入命令 磁盘目录显示 要求显示磁盘的树型目录结构 磁盘使用情况 显示磁盘每一个磁盘块的空间是占用还是空闲 2 存储管理 存储管理 存储管理部分主要实现主存空间的分配和回收 存储保护 1 模拟系统中 内存部分分为两部分 一部分是系统区 这里只存放进程控制块和主存分配表 一 部分是用户区 这里主要是对用户区的管理 系统区包括 PCB 区域 主存空间分配表 位示图 用户区用数组模拟 大小为 512 字节 存储管理采用页式存储管理方式 2 主存用户区主存块大小为 16 字节 页表放在用户区内 3 屏幕显示 如图 1 要求包括 正在运行进程CPU 时间片 就绪队列 进程名 等待队列 进程名 等待时间 正在执行的指令 主存用户区使用情况 设备使用情况 是否分配 占用 进程 等待进程 用户命令接口 磁盘目录结构 磁盘使用情况 执行进程 中间结果 进程 执行 完 显示 结果 系统时间 主存使用情况示意图 哪些主存块已分配 哪些主存块未分配 以不同的颜色表示 正在执行的进 程对应的指令存放的位置以特殊颜色显示 图 1 课程设计屏幕显示内容 3 设备管理 设备管理 设备管理主要包括设备的分配和回收 1 模拟系统中有 A B C 三种独占型设备 A 设备 3 个 B 设备 2 个 C 设备 1 个 2 因为模拟系统比较小 因此只要设备表设计合理即可 3 采用先来先服务分配策略 采用设备的安全分配方式 4 屏幕显示 如图 1 要求包括 每个设备是否被使用 哪个进程在使用该设备 哪些进程在等待使用该设备 4 进程管理 进程管理 进程管理主要包括进程调度 进程的创建和撤销 进程的阻塞和唤醒 中断作用的实现 硬件工作的模拟硬件工作的模拟 中央处理器的模拟 用函数 CPU 该函数不能有参数 模拟中央处理器 该函数主要负责解释 可执行文件 中的命令 x 给 x 赋值一位数 x x 加 1 x x 减 1 第一个 为 A B C 中某个设备 第二个 为一位数 表示使用设备的时间 end 表示文件结束 同时将结果写入文件 out 其中包括文件路径名和 x 的值 CPU 只能解释指令寄存器 IR 中的指令 一个进程运行时要根据进程执行的位置 将对应的指令存放 到指令寄存器中 主要寄存器的模拟 用全局变量模拟重要寄存器 如 CPU 重要寄存器 程序状态寄存器 PSW 处理机的状态 条件标志 指令寄存器 IR 保存当前正在执行的一条指令 程序计数器 PC 下一条要执行的指令的地址 数据 缓冲寄存器 DR 暂存由内存读出或向内存存入的一条指令或一个数据字 等 中断的模拟 I 中断的发现应该是硬件的工作 这里在函数 CPU 中加检测 PSW 的方式来模拟 在 CPU 函数中 每执行一条指令之前 先检查 PSW 判断有无中断 若有进行中断处理 然后 再运行解释指令 CPU 函数应该不断循环执行的 模拟中断的种类和中断处理方式 程序结束程序结束 执行指令 end 形成的中断 软中断 将结果写入文件 out 其中包括文件路径名和 x 的值 调用进程撤销原语撤销进程 然后进行进程调度 时间片到时间片到 当相对时钟寄存器值减到 0 时 将正在运行进程的 CPU 现场保存在进程控制块中 然后进行进程调度 I O 中断中断 设备完成输入输出 将输入输出完成的进程唤醒 将等待该设备的一个进程同时唤 醒 时钟的模拟 系统中的绝对时钟和相对时钟用全局变量模拟 绝对时钟用来记录开机以后的时间 相对时钟用来 存放进程可执行的时间片 在进程调度时设置初值 随系统时间的增值 1 而减值 1 减到 0 时 发出时钟 中断 这里的系统时钟并不是计算机真正的时钟 这里所说的时间只是一个单位 例如使用 VB 中的时钟控 件实现 每触发一次 timer 事件 绝对时钟增 1 表示增加一个时间单位 绝对时钟减 1 表示时间片消 耗一个 进程控制块进程控制块 进程控制块内容包括进程标识符 处理机状态信息 如主要寄存器内容 进程调度信息 如进程状 态 进程优先级 进程调度所需的其他信息 阻塞原因 进程控制信息 如进程程序和数据的地址 本模拟系统最多容纳 10 个进程块 PCB 区域用数组模拟 进程控制块根据内容的不同组成不同的队列 空白进程控制块链 就绪队列和阻塞队列 正在运行 的进程只有一个 系统初始时只有空白进程控制块链 进程调度进程调度 采用时间片轮转调度算法 时间片为 5 进程调度函数的主要工作是 将正在运行的进程保存在该进程对应进程控制块中 从就绪队列中选择一个进程 将这个进程中进程控制块中记录的各寄存器内容恢复到 CPU 各个寄存器内 闲逛进程 建立一个闲逛进程 当就绪队列为空时 系统调用该进程运行 当有进程就绪时 就调度就绪进程 运行 闲逛进程什么也不做 只是起到系统能正常运转的作用 例如 windows 中的 idle 进程 进程控制进程控制 建立四个函数模拟进程创建 撤销 阻塞和唤醒四个原语 进程创建 create 进程创建的主要工作是 第一步 申请空白进程控制块 第二步 申请主存空间 申请成功 装入主存 第三步 初始化进程控制块 第四步 将进程链入就绪队列 进程撤销 destory 进程撤销的主要工作是 第一步 回收进程所占内存资源 第二步 回收进程控制块 第三步 在屏幕上显示进程执行结果 进程撤销 进程阻塞 b
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年烘焙师初级考试必-备知识点梳理
- 2025年医学行业招聘面试预测题解析及备考指南
- 2025年计算机等级考试题库及解析含编程与设计
- 申请书课件教学课件
- 2025年物资供应链安全管理面试技巧与模拟题
- 创意英语教学课件
- 包耳旁教学课件
- 创意教学课件制作教程
- 江苏苏州2020-2024年中考满分作文67篇
- 儿童教学互动课件制作
- 2025至2030中国超前和靶向药物输送行业发展趋势分析与未来投资战略咨询研究报告
- 信号与系统(第2版)课件 1.0 绪论
- VTE的预防及护理
- 护理伦理的概论
- 中文版儿童睡眠习惯问卷CSHQ 含评分维度
- GB/T 45482-2025企业综合能耗确权核算通则
- 临时用电JSA分析表
- 如何提高护士对患者病情掌握的知晓率
- 议论文阅读训练 (针对初一学生)附答案
- 固定式压力容器年度检查报告
- 塑胶模具术语中英文对照1
评论
0/150
提交评论