项目简介
针对国内操作系统实验环节的不足,本项目拟开发一个集成的操作系统课程实验平台,为学生操作系统实验提供全方位的支持
系统目标和定位
-
提供并发程序设计和执行支持
系统拥有一个小型并发程序设计语言,利用该语言,学生可以编写并发程序,并在实验平台上能够得以运行并观察运行结果。 该语言的执行模式为解释执行。
-
实验平台核心部分为一个简化版的操作系统
该操作系统具备现代操作系统的主要特征,即具备进程管理与调度、存储管理、虚拟设备管理等,能为小型并发程序执行提供支持。 操作系统在设计上,要求具备良好的扩充机制,允许用户定制进程管理、存储管理等部分的策略和算法。
个人任务
任务分为10个模块,每人一个模块
小型并发程序语言设计 --- 李宗耀
- 支持各种简单数据类型
- 持各种算术运算及逻辑运算
- 提供支持程序语句的3中基本结构
- 支持定义共享变量
- 支持并发程序设计
- 支持函数和基本的输入输出
词法分析器和语法分析器 --- 张立鹏
-
词法分析器
- 词法分析器的功能输入源程序,按照构词规则分解成一系列单词符号。
- 单词是语言中具有独立意义的最小单位,包括关键字、标识符、运算符、界符和常量等
-
语法分析器
- 通过接受词法分析程序识别出来的单词符号串,判断它们是否是由某种语言的文法产生,同时进行语法检查
中间代码生成器 --- 刘永康
- 中间代码生成
- 中间代码文件格式定义
- 目标代码(字节码)的生成
shell环境 --- 张瑞
- 实验平台为用户提供的控制接口
- 通过该接口,实现对程序管理、执行、进程的查看、管理和系统状态监控等
- 支持多窗口,类似Linux环境下的终端
进程管理 --- 雷雨
- 创建进程(包括程序载入)
- 进程调度 (实现一种进程管理策略和进程调用算法)
- 当进程消失,回收进程空间
- 在进程管理上,允许用户通过标准接口,自定义进程管理策略和进程调度算法(OSPF的系统目标)
内存管理 --- 李文君
- 虚拟物理内存的管理(大小可定制)、分配、回收、保护和共享,以及内存状态的统计。
- 定义接口,允许用户确定内存管理策略和内存分配与回收算法(OSPF的系统目标)
程序执行 --- 孙刚
- 对中间代码形式的用户程序进行解释执行(支持需要支持函数调用和系统调用)
- 创建虚拟CPU(注意,可以定制CPU个数)
- CPU定制方案:多线程多CPU,类似线程池的概念
- 支持现场保存和恢复功能
I/O支持 --- 陈露纹
- 文件读写的支持
- 文件支持部分可直接利用宿主计算机的文件系统,如果时间允许,可以自行定义和开发
- 类似虚拟机的镜像文件,把文件当作一个磁盘,实现虚拟磁盘上的文件操作
- 自定义文件系统和宿主文件系统之间的映射
系统调用 --- 韩佩言
- 系统提供基本的输入设备(键盘)和输出设备(显示器)
- 信号量机制的实现
- 共享内存的实现
实验平台控制 --- 李宗耀
- 环境、资源、及公共数据结构的初始化
- 负责整体规划设计和日常管理
目前知道就这么多,可能有很多地方什么描述不清楚 大家可以留言或者咱们qq群讨论