# dreamportdev/Osdev-Notes

A book that explore how to write an Operating System from scratch

Repository: https://github.com/dreamportdev/Osdev-Notes
Canonical: https://ross.abutalabs.com/products/osdev-notes
Homepage: https://codeberg.org/dreamportdev/Osdev-Notes
Language: Markdown
License: NOASSERTION
License Family: other
Topics: osdev, os, programming, assembly, x86-64, c, kernel, kernel-development, kernel-hacking, operating-system-learning, operating-systems, operating-systems-project, os-development, hobby-kernel, hobby-os-kernel, operating-system-development, osdev-tutorial, osdevtutorial
Last push: 2026-08-29T00:33:45+00:00

## Health v2 (maintenance only)
Score: 79/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 100, release rhythm 39, longevity 100
- inputs: {"age_days": 1866, "days_push": 5, "days_rel": 193, "gap_med": 264.0, "n_releases_24m": 3}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1140, forks 84 (observed 2026-09-01T02:14:00.965131+00:00)

## What it is
An open-source book (written in Markdown, published as PDF and print) that teaches how to write an operating system kernel from scratch for x86-64. It covers building and booting a kernel, boot protocols like Limine, GDT, interrupts, memory management, scheduling, userspace, and IPC.

## Use cases
- learn how to write an operating system from scratch
- build a hobby kernel for x86-64
- understand bootloaders and boot protocols like Limine
- learn kernel memory management and paging
- understand interrupts, GDT, and APIC
- get started with osdev in C and assembly
- learn how to load and run ELF binaries in userspace

## When to choose
- you want a free, structured, chapter-by-chapter guide to kernel development
- you are targeting x86-64 with C and assembly
- you want up-to-date coverage of modern boot protocols like Limine
- you prefer learning by following a real kernel project's evolution

## When to avoid
- you need a production-grade OS or driver framework rather than a tutorial
- you target architectures other than x86-64
- you want an interactive course with exercises and grading rather than a book

## Facets
- artifact type: learning-resource
- maturity: active
- function: documentation, developer-tools
- domain: operating-systems, tutorials, education, programming-languages
- platform: cross-platform
- tags: osdev, kernel-development, book, assembly, c, bootloaders, limine, markdown, x86-64

## Member repositories
- dreamportdev/Osdev-Notes (main) score 79

## Provenance
- Observed fields: from GitHub, fetched 2026-09-01T02:14:00.965131+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T06:36:14.472066+00:00, confidence not recorded.
  - readme: https://github.com/dreamportdev/Osdev-Notes (fetched 2026-09-01T02:14:00.965131+00:00, sha e5b2d6160103)
  - homepage: https://codeberg.org/dreamportdev/Osdev-Notes (fetched 2026-08-29T12:41:39.716297+00:00, sha 8d42d0e5776d)
  - site_page: https://codeberg.org/dreamportdev/Osdev-Notes/src/branch/master/00_Introduction/03_AboutTheAuthors.md (fetched 2026-08-29T12:41:39.730024+00:00, sha b1e458d5b059)
  - site_page: https://docs.codeberg.org/getting-started/faq (fetched 2026-08-29T12:41:39.722129+00:00, sha 7ffd1ab1d66b)
  - site_page: https://docs.codeberg.org/getting-started/what-is-codeberg (fetched 2026-08-29T12:41:39.719464+00:00, sha fe3047f34c81)
  - site_page: https://docs.codeberg.org (fetched 2026-08-29T12:41:39.733512+00:00, sha 3c642f9d47c9)
  - site_page: https://codeberg.org/dreamportdev/Osdev-Notes/src/branch/master/99_Appendices/E_Cross_Compilers.md (fetched 2026-08-29T12:41:39.731668+00:00, sha b1e458d5b059)
  - site_page: https://codeberg.org/dreamportdev/Osdev-Notes/releases (fetched 2026-08-29T12:41:39.724968+00:00, sha 7902dbbb30f9)
  - site_page: https://codeberg.org/dreamportdev/Osdev-Notes/releases/tag/latest-master (fetched 2026-08-29T12:41:39.728286+00:00, sha b1e458d5b059)
- Data as of 2026-08-30T08:39:29.467469+00:00.
