xref: /DragonOS/README_EN.md (revision 4316306c607e2786d6ad0aa791c5fe198cc6a1a0)
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## Websites
10- Home Page  **[DragonOS.org](https://dragonos.org)**
11- Documentation  **[docs.DragonOS.org](https://docs.dragonos.org)**
12- BBS  **[bbs.DragonOS.org](https://bbs.dragonos.org)**
13 
14
15## Development Environment
16
17GCC>=8.0
18
19qemu==6.2
20
21grub==2.06
22
23## How to run?
24
251. clone the project
26
272. Run the <u>run.sh</u>
28
29## To do list:
30
31- [x] multiboot2
32
33- [x] printk
34
35- [x] Simple exception capture and interrupt handling
36
37- [x] APIC
38
39- [x] Primary memory management unit
40
41- [x] SLAB memory pool
42
43- [x] PS/2 Keyboard and mouse driver
44
45- [x] PCI bus driver
46
47- [ ] USB Driver
48
49- [x] SATA Hard disk driver(AHCI)
50
51- [ ] Driver Framework
52
53- [ ] Network card driver
54
55- [ ] Internet protocol stack
56
57- [ ] Graphics driver
58
59- [x] First process
60
61- [x] Process management
62
63- [ ] IPC
64
65- [x] First system call function
66
67- [x] Start dragonos on the physical platform (There is a bug which can make the computer automatically reboot on AMD processor)
68
69- [x] Multi core boot
70
71- [ ] Multi core scheduling and load balancing
72
73- [x] FAT32 file system
74
75- [x] virtual file system
76
77- [x] Parsing ELF file format
78
79- [x] Floating point support
80
81- [x] Implementation of system call library based on POSIX
82
83- [x] Shell
84
85- [x] Kernel stack backtracking
86
87- [ ] Dynamic loading module
88
89## Contribute code
90
91If you are willing to develop this project with me, please email me first~
92
93## List of contributors
94
95fslongjin
96
97## Contact with me
98
99Email:longjin@RinGoTek.cn
100
101Blog:[longjin666.cn](https://longjin666.cn)
102
103## Reward
104
105If 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. The donated funds will be used for website, forum community maintenance and all purposes related to the project.
106
107[The reward webpage](https://longjin666.cn/?page_id=54)
108
109## Sponsors
110
111- 悟
112- [TerryLeeSCUT · GitHub](https://github.com/TerryLeeSCUT)
113
114## Open source statement
115
116This 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!
117**What we support:** using this project to create greater value and contribute code to this project under the condition of abiding by the agreement.
118**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.
119If 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!
120
121## References
122
123This project refers to the following materials. I sincerely give my thanks to the authors of these projects, books and documents!
124
125- Implementation of a 64 bit operating system, Tian Yu (POSTS&TELECOM  PRESS)
126
127- Principle and implementation of modern operating system, Chen Haibo, Xia Yubin (China Machine Press)
128
129- [SimpleKernel](https://github.com/Simple-XX/SimpleKernel)
130
131- [osdev.org](https://wiki.osdev.org/Main_Page)
132
133- Multiboot2 Specification version 2.0
134
135- ACPI_6_3_final_Jan30
136
137- the GNU GRUB manual
138
139- Intel® 64 and IA-32 Architectures Software Developer’s Manual
140
141- IA-PC HPET (High Precision Event Timers) Specification
142
143- [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))
144
145- [GuideOS](https://github.com/Codetector1374/GuideOS)
146