题目ID:proj0

题目内容:

题目二:适合本校特点的实验指导教程(文档/代码框架/测例/参考实现) 在各自高校现有OS课程实验的基础上,进一步完成如下目标:

改进实验指导文档 实验代码框架 实验用的测试用例 实验的参考实现 注意事项:

可基于本校课程中已有的实验内容。 能够与操作系统的原理、概念对应起来。 重点要求是要完成一步一步完成的开发/fix bug等的阶段性描述和基于git的阶段性代码,便于其他学校的老师和同学一步一步地学习。 不是以难度作为最终评价目标,而是以适合各自高校实验作为最终评价目标

本项目面向吉林大学的操作系统实验课程

由于目前实验课教程比较老旧,本项目旨在更新吉林大学实验课教程,以更好与新时代接轨,同时帮助学生进一步了解所学知识,将知识化作真实的实践,提高学生对操作系统的了解。

主要包括如下六个实验。

一、文件的物理组织

实验目的 1.1 实现软件形式的文件物理组织,包括:

  • 顺序结构
  • 链接结构
  • 索引结构
  • 散列结构
  • 倒排结构

1.2 了解软件的文件物理组织的具体实现。

二、互斥锁

实验目的 1.1 实现软件形式的互斥锁,包括:

  • 2 进程(线程)互斥锁,Dekker 和 Peterson 算法;
  • N 进程(线程)互斥锁,Lamport 和 Eisenberg-Mcguire 算法;

1.2 了解软件互斥锁与内核互斥锁的区别。

三、文件的保护

实验目的 1.1 实现的文件保护,包括:

  • 存取控制矩阵
  • 访问权限说明
  • 多级目录

1.2 了解文件保护的具体实现。

四 文件内存所需的目录

实验目的 1.1 实现的文件的内存目录,包括:

  • 系统打开文件表
  • 用户打开文件表

1.2 了解文件的内存目录的具体实现,了解系统打开文件表和用户打开文件表之间的联系,进一步了解文件系统。

五 设备的分配和去配

实验目的: 1.1.实现设备的分配和去配,包括:

  • 用c++实现设备的分配
  • 用c++实现设备的去配

1.2.了解操作系统的设备管理内容,了解设备分配和去配的实现原理。

六 死锁避免(银行家算法)

实验目的 1.1 实验银行家算法,深入了解死锁避免的细节

本项目还未全部完成,还在不断完善中