本项目基于Java开发,旨在构建一个操作系统的核心功能模拟器,涵盖进程管理、内存分配及文件操作等模块,为学习者提供直观理解操作系统原理的平台。
模拟一个采用多道程序设计方法的单用户操作系统,该系统包含进程管理、存储管理、设备管理和文件管理系统以及用户接口四大部分。
1. 进程管理部分负责实现简单的 CPU 功能,包括指令读取、解析与执行等,并控制系统的时钟和节拍。此外,它还处理主要寄存器的使用情况,进行进程调度、创建及撤销操作;同时支持进程阻塞和唤醒机制以及中断功能。
2. 存储管理部分将系统划分为系统区和用户区两大部分,负责内存空间分配与回收工作,并采取动态分区存储管理和首次适配策略来实现存储保护措施。
3. 设备管理系统涵盖设备的申请、释放等操作。该模块能够支持进程阻塞及唤醒机制,并且通过设置倒计时的方式管理设备使用时间长度。
4. 文件系统部分实现了进入退出目录、新建文件和删除文件等功能,同时可以创建新的 exe 文件并读取现有文件内容;此外还提供显示整个磁盘上的文件目录树结构以及查看磁盘利用率的功能(未使用的空间以红色表示,已占用的空间则用蓝色标记)。
5. 用户接口模块用于展示进程执行过程中的各种状态信息、数据统计结果及内存与硬盘的使用状况。用户可以在此界面输入各类命令来操作文件系统,并且该部分会响应用户的请求并反馈相应的处理结果。
测试数据包括正确和错误类型的输入及其对应的输出示例,以帮助验证系统的功能性和健壮性。