Skip to content

Commit 3bea393

Browse files
authored
Create README.md
1 parent 15d8c27 commit 3bea393

1 file changed

Lines changed: 67 additions & 0 deletions

File tree

README.md

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
# PeachOS64 — Build a Modern 64-Bit Operating System From Scratch
2+
3+
This repository is the companion source code for **Part 2 of the PeachOS series**.
4+
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**.
5+
6+
In **Part 2**, we take the project to the next level:
7+
🚀 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**.
8+
9+
---
10+
11+
[![Get the Course](https://img.shields.io/badge/Get%20the%20Course-Discount%20Link-blue?style=for-the-badge&logo=appveyor)](https://dragonzap.com/course/developing-a-multithreaded-kernel-from-scratch-part-two-module-one?coupon=KERNELPART2DISCOUNT)
12+
13+
14+
## What You’ll Learn in This Course
15+
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.
16+
17+
### 🔹 Module 1 Overview
18+
- **Graphics & Display**
19+
- Capture and control the UEFI framebuffer (draw pixels directly to screen).
20+
- Load images & fonts.
21+
- Build a terminal that renders text using pixel-based fonts.
22+
- Create the graphical subsystem beneath the terminal:
23+
- Relative drawing anywhere on screen.
24+
- Hierarchical graphics (parent/child offsets).
25+
- Composable UI elements.
26+
27+
- **Memory Management**
28+
- Rebuild the heap allocator using the UEFI/BIOS E820 memory map.
29+
- Multi-heap system with intelligent allocation.
30+
- Paging-based **memory defragmenter** to solve fragmentation.
31+
32+
- **Disk & Partitions**
33+
- Extend FAT16 filesystem to support multiple **GPT partitions**.
34+
- Mount each partition as a virtual drive.
35+
- Abstract the disk system for modern SSD/PCIe storage support.
36+
37+
**By the end of Module 1, you’ll have:**
38+
- A 64-bit kernel bootable on modern UEFI hardware.
39+
- A pixel-based terminal with a full graphical foundation.
40+
- Advanced heap allocator + defragmentation support.
41+
- A multi-partition disk subsystem ready for GPT/SSD storage.
42+
43+
---
44+
45+
### 🔮 Coming in Module 2 (ETA: Dec 2025)
46+
- Standard C library in userspace (`fopen`, `fread`, etc.) via `isr80h`.
47+
- Full **windowing system** with interactive GUI elements.
48+
- NVMe SSD driver (high-speed storage).
49+
- PCI/PCIe enumeration & bridge support.
50+
- Run **real user programs** on your OS — contribute to the shared GitHub repo of student applications!
51+
52+
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.
53+
54+
---
55+
56+
## 📚 Take the Course
57+
This repo contains the **source code**, but the **course** walks you through every line of it step by step.
58+
👉 [Enroll Here](https://dragonzap.com/course/developing-a-multithreaded-kernel-from-scratch-part-two-module-one?coupon=KERNELPART2DISCOUNT) and start building your own OS today.
59+
60+
### 🎉 Special Discount
61+
If you purchase **Module 1** before **Module 2** is released, you’ll get **Module 2 for just €34.99** (or equivalent in your currency).
62+
Simply email **daniel@dragonzap.com** with proof of purchase. Module 2 is estimated to be released in December 2025
63+
64+
---
65+
66+
## License
67+
This code is provided for **educational purposes** as part of the PeachOS course under GPL license See the license file.

0 commit comments

Comments
 (0)