1
1
Checkout my 64-bit operating system I wrote from scratch here: https://github.com/nibblebits/PeachOS64BitModuleTwo/tree/main
2
+

3
+
<hr />
2
4
3
5
# PeachOS64 — Build a Modern 64-Bit Operating System From Scratch
4
6
5
7
6
8
<p align="center">
7
9
<a href="https://dragonzap.com/offer/developing-a-multithreaded-kernel-from-scratch-part-two-full-series">
8
10
<img width="650" alt="PeachOS Part Two Kernel Dev Series Click To Obtain" src="https://github.com/user-attachments/assets/4022f9b3-a409-4b57-9454-eddec561fa18" />
9
11
</a>
10
12
</p>
11
13
12
14
This repository is the companion source code for **Part 2 of the PeachOS series**.
13
15
In [Part 1](https://dragonzap.com/course/developing-a-multithreaded-kernel-from-scratch?coupon=GITHUBKERNELDISCOUNT), we built **PeachOS**, a fully functioning **32-bit multitasking operating system**.
14
16
15
17
In **Part 2**, we take the project to the next level:
16
18
🚀 Building a **64-bit multi-threaded kernel** that runs in long mode with a **graphical user interface (GUI)** capable of rendering **interactive, clickable, draggable windows**.
17
19
18
20
---
19
21
20
22
[](https://dragonzap.com/course/developing-a-multithreaded-kernel-from-scratch-part-two-module-one)
21
23
22
24
[](https://dragonzap.com/course/developing-a-multithreaded-kernel-from-scratch-part-two-module-two)
23
25
24
26
[](https://dragonzap.com/offer/developing-a-multithreaded-kernel-from-scratch-part-two-full-series)
25
27
26
28
## What You’ll Learn in This Course
27
29
This isn’t just theory—you’ll build a complete, modern OS step by step, starting from the bootloader all the way to a graphical desktop environment.
28
30
29
31
### 🔹 Module 1 Overview
30
32
- **Graphics & Display**
31
33
- Capture and control the UEFI framebuffer (draw pixels directly to screen).
32
34
- Load images & fonts.
33
35
- Build a terminal that renders text using pixel-based fonts.
34
36
- Create the graphical subsystem beneath the terminal:
35
37
- Relative drawing anywhere on screen.
36
38
- Hierarchical graphics (parent/child offsets).
37
39
- Composable UI elements.
38
40
39
41
- **Memory Management**
40
42
- Rebuild the heap allocator using the UEFI/BIOS E820 memory map.
41
43
- Multi-heap system with intelligent allocation.
42
44
- Paging-based **memory defragmenter** to solve fragmentation.
43
45
44
46
- **Disk & Partitions**
45
47
- Extend FAT16 filesystem to support multiple **GPT partitions**.
46
48
- Mount each partition as a virtual drive.
47
49
- Abstract the disk system for modern SSD/PCIe storage support.
48
50
49
51
✅ **By the end of Module 1, you’ll have:**
50
52
- A 64-bit kernel bootable on modern UEFI hardware.
51
53
- A pixel-based terminal with a full graphical foundation.
52
54
- Advanced heap allocator + defragmentation support.
53
55
- A multi-partition disk subsystem ready for GPT/SSD storage.
54
56
55
57
---
56
58
57
59
### 🔮 Module 2 Now Released
58
60
- Standard C library in userspace (`fopen`, `fread`, etc.) via `isr80h`.
59
61
- Full **windowing system** with interactive GUI elements.
60
62
- NVMe SSD driver (high-speed storage).
61
63
- PCI/PCIe enumeration & bridge support.
62
64
- Faster program loading due to disk streamer cacheing
63
65
- Run **real user programs** on your OS — contribute to the shared GitHub repo of student applications!
64
66
65
67
By the end of Part 2, you’ll have built a **multi-threaded, 64-bit, GUI operating system** from scratch—bootable on real hardware and extensible enough to run user applications.
66
68
67
69
---
68
70
69
71
70
72
[](https://dragonzap.com/course/developing-a-multithreaded-kernel-from-scratch-part-two-module-two)
71
73
72
74
73
75
## 📚 Take the Course
74
76
This repo contains the **source code**, but the **course** walks you through every line of it step by step.
75
77
👉 [Enroll Here Module 1](https://dragonzap.com/course/developing-a-multithreaded-kernel-from-scratch-part-two-module-one) and start building your own OS today.
76
78
👉 [Enroll Here Module 2](https://dragonzap.com/course/developing-a-multithreaded-kernel-from-scratch-part-two-module-two) and start building your own OS today.
77
79
78
80
79
81
---
80
82
81
83
LICENSE: All source code in this repository is licensed udner GPLv2 license you must follow the license terms if you need help understanding the terms contact daniel@dragonzap.com
82
84
83
85
84
86
## License
85
87
This code is provided for **educational purposes** as part of the PeachOS course under GPL license See the license file.