支持自动评测的操作系统内核实验 全国大学生系统能力大赛 —— 操作系统赛 官网与支撑平台
实验过程的自动评测和管理
- 在线虚拟实验环境
-
借助虚拟机管理平台实现多节点实验服务器快速部署,避免了软件版本冲突问题,节约学生安装实验环境花费的时间,随时随地在线流畅使用。实验后能够长期保存学生实验过程资料。
- 内核实验自动评测
-
利用git和虚拟机,实现作业自动发布、提交、编译、运行、评测,并将测试结果、可能发生错误的代码反馈给学生,整个过程不需要人工参与。
- 实验过程自动化管理
-
操作系统内核实验是一个互相衔接的体系,学生通过了某个实验评测,系统自动发布下一次实验的内容, 让有能力的同学尽早开始高难度实验,实现个体差异化培养,提升整体实验课效果。
- 师资培训服务
-
联合新工科联盟,每年暑期举办师资培训班, 2019《操作系统课程设计》师资培训 在线开课




小型操作系统实验体系
采用分层设计原则,设计了6个相互关联的操作系统实验,学生可以从简单到复杂,最终构造出一个相对完整的操作系统。 每个操作系统实验都设置多个不同难度级别的挑战性任务,并自动评测,节省教师工作量的同时,让学生获得内核开发的成就感。
- 实验1:启动和系统初始化
-
通过分析硬件启动过程,理解操作系统内核的链接、加载和重定位。通过实现一个串口输出函数。
- 实验2:内存管理实验
-
理解MIPS内存布局,实现操作系统对物理内存和虚拟内存空间的管理。
- 实验3:进程管理
-
实现时钟中断处理程序,编写进程创建、进程中止和进程调度程序,实现进程管理。
- 实验4:系统调用
-
掌握MIPS 平台上系统调用的实现方法,实现相关系统调用。
- 实验5:文件系统
-
实现一个简单的文件系统,掌握文件系统的实现方法。
- 实验6:命令解释程序
-
实现一个具有基本功能的命令解释程序,将6部分链接起来,使之成为一个可运行的操作系统。
操作系统内核实验详细介绍
操作系统实验清单
操作系统实验涵盖了从内核实验、系统编程、操作系统应用的完整实验体系,按照难度梯度分为4大类实验:操作系统内核实验、操作系统模拟实验、操作系统编程实验以及操作系统应用实验。
实验分类 | 实验名称 | 实验内容 | 实验手册 | 实验代码 |
---|---|---|---|---|
操作系统内核实验 |
内核、Boot和printf | 通过分析硬件启动过程,理解操作系统内核的链接、加载和重定位。通过实现一个串口输出函数。 | ||
内存管理 | 理解MIPS内存布局,实现操作系统对物理内存和虚拟内存空间的管理。 | |||
进程与异常 | 实现时钟中断处理程序,编写进程创建、进程中止和进程调度程序,实现进程管理。 | |||
系统调用与fork | 掌握MIPS 平台上系统调用的实现方法,实现相关系统调用。同时,实现fork函数。 | |||
文件系统 | 实现一个简单的文件系统,掌握文件系统的实现方法。 | |||
管道与Shell | 实现一个具有基本功能的命令解释程序,将6部分链接起来,使之成为一个可运行的操作系统。 | |||
操作系统模拟实验 |
进程管理 | 在模拟框架内,补充进程管理相关数据结构,实现进程创建、运行原语。 | ||
处理机调度(进程调度) | 在模拟框架内,实现5类常见处理机(进程)调度算法。 | |||
分区存储管理 | 在模拟框架内,补充分区存储管理相关数据结构,实现分区存储管理的3类算法。 | |||
段式存储管理 | 在模拟框架内,实现段式存储管理的分配、回收算法,实现对多进程的支持。 | |||
请求页式存储管理 | 在模拟框架内,实现请求页式存储管理的3类页面置换算法,并分析这3类算法在不同情况下的表现。 | |||
设备管理 | 在模拟框架内,实现设备管理相关数据结构,实现设备分配、回收算法。 | |||
文件管理 | 在模拟框架内,实现磁盘块的分配算法和回收算法。实现小型文件系统需要的基本接口,并可进行演示。 | |||
操作系统应用实验 |
Bash脚本实验 | Bash变量,Bash传递参数,Bash数组,Bash运算符,Bash中字符串处理,Bash逻辑运算,Bash算数运算,Bash分支语句,Bash循环语句,Bash函数,Bash输入输出重定向,开机启动脚本。 |