项目简介
yogaOS 是基于 x86 架构的玩具操作系统内核,运用 C 语言开发。此项目从简单到复杂逐步实现操作系统基本特性,展现操作系统的进程管理、内存管理、文件系统等基础功能,目前支持优先级和时间片调度、页式虚拟内存管理,且计划支持多架构。
项目的主要特性和功能
- 进程管理:支持优先级和时间片调度,可实现多任务调度。
- 内存管理:采用页式虚拟内存管理,支持物理内存分配与回收,使用伙伴系统进行物理内存管理。
- 系统接口:部分实现 POSIX 标准的系统接口,如
sleep()
和getpid()
。 - 文件系统:已初步设计文件系统框架,但未完全实现。
- 硬件支持:当前支持 x86 架构,未来计划支持多架构。
- 驱动支持:实现键盘驱动、控制台驱动等基本硬件驱动。
- 进程间通信:实现基于
request
的进程间通信机制。
安装使用步骤
假设用户已下载本项目的源码文件:
1. 编译代码:使用 C 编译器(如 GCC)编译项目中的 C 代码,生成可执行文件。
bash
make
2. 运行系统:在支持 x86 架构的硬件或虚拟机中运行生成的可执行文件。
bash
qemu-system-x86_64 -kernel yogaOS
3. 调试与测试:根据项目提供的开发日志和功能描述,进行系统调试和功能测试。
注意事项
- 该项目为玩具操作系统内核,适合用于学习和研究操作系统原理,不建议用于生产环境。
- 由于涉及底层系统编程,建议用户具备一定的操作系统和计算机架构知识背景。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】