王凯祺:2016级多进程操作系统实验报告与设计
需积分: 0 144 浏览量
更新于2024-08-05
收藏 511KB PDF 举报
本次实验六的主题是关于多进程操作系统的实现,它属于计算机科学与技术专业的一门实践课程,由数据科学与计算机学院的2016级学生王凯祺在2018年4月13日完成。实验的主要目标包括:
1. **内核实现**:通过内核编程,构建一个支持多进程的二状态模型,即每个进程可以处于运行或就绪状态,了解进程的基本构造方法和时间片轮转调度的过程。这涉及对进程控制块(PCB,Process Control Block)的管理,它是操作系统用于存储进程状态和资源信息的数据结构。
2. **控制台命令**:设计并实现解释多进程的控制台命令,能够动态创建和管理进程,比如启动、暂停和终止等,以及展示系统调用的服务功能,确保进程之间的交互性和系统服务的可用性。
3. **进程调度与输出**:在原型操作系统中,需要创建至少四个进程,并通过时间片轮转调度实现它们的并发执行。每个进程的输出应占据屏幕的1/4区域,以可视化进程运行情况。此外,输出应该具有动感效果,以便于观察程序的执行状态。
4. **简化代码**:为了提高代码效率,删除了上一实验中的8h时钟中断功能,将其重新用于进程切换。同时,为了避免影响内核和用户程序的交互,选择保持BIOS的9h中断原样,而非上一实验中的自定义版本。
5. **实验步骤**:实验分为设计思路和实现两部分。首先,引导程序启动后加载内核,将其视为进程并初始化进程控制块。接着,在时钟中断响应时,管理进程状态转移,保存当前运行进程的寄存器状态,并切换到下一个就绪进程。设计的进程控制块结构包含必要的寄存器状态和标识进程状态的信息。
6. **参考资料**:实验者参考了MASM6.1指引手册来确定需要保存的寄存器列表,包括主寄存器、段寄存器和指令指针寄存器,以及标志寄存器。
这个实验不仅锻炼了学生的编程技能,也深入理解了操作系统核心原理,如进程管理和调度,为后续的实验项目打下了坚实的基础。
2022-08-03 上传
2022-08-03 上传
2022-08-03 上传
2022-08-03 上传
2022-08-03 上传
2022-08-03 上传
2022-08-03 上传
2022-08-08 上传
2022-08-08 上传
萌新小白爱学习
- 粉丝: 24
- 资源: 311
最新资源
- 高清艺术文字图标资源,PNG和ICO格式免费下载
- mui框架HTML5应用界面组件使用示例教程
- Vue.js开发利器:chrome-vue-devtools插件解析
- 掌握ElectronBrowserJS:打造跨平台电子应用
- 前端导师教程:构建与部署社交证明页面
- Java多线程与线程安全在断点续传中的实现
- 免Root一键卸载安卓预装应用教程
- 易语言实现高级表格滚动条完美控制技巧
- 超声波测距尺的源码实现
- 数据可视化与交互:构建易用的数据界面
- 实现Discourse外聘回复自动标记的简易插件
- 链表的头插法与尾插法实现及长度计算
- Playwright与Typescript及Mocha集成:自动化UI测试实践指南
- 128x128像素线性工具图标下载集合
- 易语言安装包程序增强版:智能导入与重复库过滤
- 利用AJAX与Spotify API在Google地图中探索世界音乐排行榜