1# DragonOS 2 3**Languages** [中文](README.md)|English 4 5 6 7This project is a operating system running on computer which is in X86_ 64 Architecture . The DragonOS is currently under development! 8 9## Development Environment 10 11GCC>=8.0 12 13qemu==6.2 14 15grub==2.06 16 17## How to run? 18 191. clone the project 20 212. Run the <u>run.sh</u> 22 23## To do list: 24 25- [x] multiboot2 26 27- [x] printk 28 29- [x] Simple exception capture and interrupt handling 30 31- [x] APIC 32 33- [x] Primary memory management unit 34 35- [x] SLAB memory pool 36 37- [x] PS/2 Keyboard and mouse driver 38 39- [x] PCI bus driver 40 41- [ ] USB Driver 42 43- [x] SATA Hard disk driver(AHCI) 44 45- [ ] Driver Framework 46 47- [ ] Network card driver 48 49- [ ] Internet protocol stack 50 51- [ ] Graphics driver 52 53- [x] First process 54 55- [x] Process management 56 57- [ ] IPC 58 59- [x] First system call function 60 61- [x] Start dragonos on the physical platform (There is a bug which can make the computer automatically reboot on AMD processor) 62 63- [x] Multi core boot 64 65- [ ] Multi core scheduling and load balancing 66 67- [x] FAT32 file system 68 69- [x] virtual file system 70 71- [x] Parsing ELF file format 72 73- [x] Floating point support 74 75- [ ] Implementation of system call library based on POSIX 76 77- [ ] Shell 78 79- [ ] Kernel stack backtracking 80 81- [ ] Dynamic loading module 82 83## Contribute code 84 85If you are willing to develop this project with me, please email me first~ 86 87## List of contributors 88 89fslongjin 90 91## Contact with me 92 93Email:longjin@RinGoTek.cn 94 95Blog:[longjin666.cn](https://longjin666.cn) 96 97## Reward 98 99If you like, click the link below and buy me a cup of coffee ~ please leave your GitHub ID in the payment remarks and I will post it to this page 100 101[The reward webpage](https://longjin666.cn/?page_id=54) 102 103## Sponsors 104 105- 悟 106- [TerryLeeSCUT · GitHub](https://github.com/TerryLeeSCUT) 107 108## Open source statement 109 110This project adopts GPLv2 LICENSE for open source. You are welcome to use the code of this project on the basis of abiding by the open source license! 111**What we support:** using this project to create greater value and contribute code to this project under the condition of abiding by the agreement. 112**What we condemn**: any non-compliance with the open source license. Including but not limited to: plagiarizing the code of the project as your graduation project and other academic misconduct, as well as commercial closed source use without payment. 113If you find any violation of the open source license, we welcome you to send email feedback! Let's build an honest open source community together! 114 115## References 116 117This project refers to the following materials. I sincerely give my thanks to the authors of these projects, books and documents! 118 119- Implementation of a 64 bit operating system, Tian Yu (POSTS&TELECOM PRESS) 120 121- Principle and implementation of modern operating system, Chen Haibo, Xia Yubin (China Machine Press) 122 123- [SimpleKernel](https://github.com/Simple-XX/SimpleKernel) 124 125- [osdev.org](https://wiki.osdev.org/Main_Page) 126 127- Multiboot2 Specification version 2.0 128 129- ACPI_6_3_final_Jan30 130 131- the GNU GRUB manual 132 133- Intel® 64 and IA-32 Architectures Software Developer’s Manual 134 135- IA-PC HPET (High Precision Event Timers) Specification 136 137- [skiftOS]([GitHub - skiftOS/skift: A hobby operating system built from scratch in modern C++. Featuring a reactive UI library and a strong emphasis on user experience.](https://github.com/skiftOS/skift)) 138 139- [GuideOS](https://github.com/Codetector1374/GuideOS) 140