1# DragonOS 2 3**Languages** 中文|[English](README_EN.md) 4 5 6 7这是一个运行于x86_64平台的64位操作系统。目前正在开发之中! 8 9## 开发环境 10 11GCC>=8.0 12 13qemu==6.2 14 15grub==2.06 16 17## 如何运行? 18 191. clone本项目 20 212. 运行命令 bash run.sh 22 23## To do list: 24 25- [x] multiboot2 26 27- [x] printk 28 29- [x] 简单的异常捕获及中断处理 30 31- [x] APIC 32 33- [x] 初级内存管理单元 34 35- [x] SLAB内存池 36 37- [x] PS/2 键盘、鼠标驱动 38 39- [x] PCI 总线驱动 40 41- [ ] usb驱动 42 43- [x] SATA硬盘驱动(AHCI) 44 45- [ ] 驱动程序框架 46 47- [ ] 网卡驱动 48 49- [ ] 网络协议栈 50 51- [ ] 图形驱动 52 53- [x] 第一个进程 54 55- [x] 进程管理 56 57- [ ] IPC进程间通信 58 59- [x] 第一个系统调用函数 60 61- [x] 在物理平台上启动DragonOS(AMD处理器上存在自动重启的问题) 62 63- [x] 多核启动 64 65- [ ] 多核调度及负载均衡 66 67- [x] FAT32文件系统 68 69- [x] VFS虚拟文件系统 70 71- [ ] 解析ELF文件格式 72 73- [x] 浮点数支持 74 75- [ ] 基于POSIX实现系统调用库 76 77- [ ] Shell 78 79- [ ] 内核栈反向跟踪 80 81- [ ] 动态加载模块 82 83## 贡献代码 84 85如果你愿意跟我一起开发这个项目,请先发邮件到我的邮箱~ 86 87## 贡献者名单 88 89fslongjin 90 91## 联系我 92 93我的邮箱:longjin@RinGoTek.cn 94 95我的博客:[longjin666.cn](https://longjin666.cn) 96 97## 赞赏 98 99如果你愿意的话,点击下面的链接,请我喝杯咖啡吧~请在付款备注处留下您的github ID,我会将其贴到这个页面 100 101[捐赠 | 龙进的博客](https://longjin666.cn/?page_id=54) 102 103## 赞赏者列表 104 105- 悟 106- [TerryLeeSCUT · GitHub](https://github.com/TerryLeeSCUT) 107 108## 开放源代码声明 109 110本项目采用GPLv2协议进行开源,欢迎您在遵守开源协议的基础之上,使用本项目的代码! 111 112**我们支持**:遵守协议的情况下,利用此项目,创造更大的价值,并为本项目贡献代码。 113 114**我们谴责**:任何不遵守开源协议的行为。包括但不限于:剽窃该项目的代码作为你的毕业设计等学术不端行为以及商业闭源使用而不付费。 115 116若您发现了任何违背开源协议的使用行为,我们欢迎您发邮件反馈!让我们共同建设诚信的开源社区。 117 118## 参考资料 119 120本项目参考了以下资料,我对这些项目、书籍、文档的作者表示感谢! 121 122- 《一个64位操作系统的实现》田宇(人民邮电出版社) 123 124- 《现代操作系统 原理与实现》陈海波、夏虞斌(机械工业出版社) 125 126- [SimpleKernel](https://github.com/Simple-XX/SimpleKernel) 127 128- [osdev.org](https://wiki.osdev.org/Main_Page) 129 130- Multiboot2 Specification version 2.0 131 132- ACPI_6_3_final_Jan30 133 134- the GNU GRUB manual 135 136- Intel® 64 and IA-32 Architectures Software Developer’s Manual 137 138- IA-PC HPET (High Precision Event Timers) Specification 139