awesome-repositories.com
Blog
MCP
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
yourtion avatar

yourtion/30dayMakeOS

0
View on GitHub↗
6,412 stele·1,463 fork-uri·C·7 vizualizărigithub.com/yourtion/YOS↗

30dayMakeOS

30dayMakeOS is an educational hobby operating system project designed for the x86 architecture. It implements a monolithic kernel and a custom bootloader that transitions the CPU from real mode to 32-bit protected mode to enable flat memory addressing.

The project focuses on low-level system development, featuring a custom graphics driver for direct pixel-buffer rendering and window management without an existing operating system. It includes an x86 bootloader that loads the kernel from disk into memory.

The system covers core kernel capabilities including round-robin task scheduling for process multitasking, page-table memory isolation, and bitmap-based memory allocation. It also implements hardware interrupt handling via an interrupt descriptor table, a file system for disk storage, and a command-line interface for user interaction.

Features

  • OS Internals Education - Provides a step-by-step implementation of an operating system for educational purposes, focusing on kernel internals.
  • Kernel Development - Provides a full implementation of a monolithic kernel from scratch, including scheduling, memory, and interrupts.
  • CPU Task Scheduling and Preemption - Implements a round-robin task scheduler to ensure fair CPU distribution across active processes.
  • Round-Robin Schedulers - A scheduler that ensures fair CPU distribution by assigning fixed time slices to processes in a circular order.
  • Monolithic Kernels - Implements a monolithic kernel architecture where all core services operate in kernel space.
  • Graphics Rendering Engines - Implements a low-level rendering engine to display pixels, text, and windows directly to the screen.
  • Boot Sector Loaders - Includes a custom bootloader that reads the first 512 bytes from disk into memory to start the OS.
  • CPU Schedulers - Implements a kernel-level CPU scheduler to enable concurrent execution of multiple processes.
  • Graphics Drivers - Implements a kernel-level graphics driver for direct pixel manipulation and window rendering.
  • Input Interrupt Handling - Configures interrupt descriptor tables and buffers to process keyboard and mouse signals.
  • Disk Image Bootloaders - Implements a custom bootloader to load the kernel from disk into memory.
  • x86 Bootloaders - Includes a custom x86 bootloader that loads the kernel and transitions the CPU from real mode to 32-bit protected mode.
  • Input Device Drivers - Provides a driver layer that processes electrical signals from keyboards and mice to enable interaction.
  • Interrupt Handling - Implements a system that responds to external hardware signals by executing corresponding service routines.
  • Low-Level System Operations - Implements low-level memory management through page tables and bitmap allocators.
  • System Call Interfaces - Implements a software interrupt mechanism allowing user applications to request kernel services for file I/O and window management.
  • Interrupt Vector Handlers - Configures an interrupt descriptor table to map hardware signals to specific handler functions for input events.
  • Hardware-Based Memory Protection - Uses hardware-level privilege and memory boundaries to restrict application access to critical system memory.
  • Paged Memory Management - Implements page-table based memory paging to ensure strict isolation between concurrent processes.
  • Page Table Translators - Provides mechanisms for converting logical addresses to physical addresses using page tables to ensure process isolation.
  • Processor Mode Transitions - Transitions the CPU from 16-bit real mode to 32-bit protected mode to enable flat memory addressing.
  • x86 Kernel Implementations - Provides a complete low-level kernel implementation specifically targeting the x86 architecture.
  • Operational Mode Switching - Performs the assembly-level transition from real mode to protected mode during system initialization.
  • Command Line Interfaces - Implements a terminal-based command-line interface for executing built-in system utilities.
  • System Command Interfaces - Provides a system interface for launching applications and interacting with the kernel via a command line.
  • Bare-Metal Graphics - Writes low-level C routines to render pixels and windows directly to the screen.
  • Disk Image File System Management - Implements a file system for performing core storage operations and organizing directories on a physical disk.
  • Executable Program Loading - Provides mechanisms for parsing and loading executable user-space programs into memory.
  • Bitmap Allocators - Uses a bitmap-based approach to track and manage physical memory blocks for dynamic allocation.
  • System Memory Allocation - Provides a system-level memory allocation layer to organize resources for process execution.
  • Bitmap Allocators - Implements a bitmap-based memory allocator to track available and used physical memory blocks.
  • Pixel Buffer Rendering - Renders graphical interfaces by directly manipulating low-level memory pixel buffers.

Istoric stele

Graficul istoricului de stele pentru yourtion/30daymakeosGraficul istoricului de stele pentru yourtion/30daymakeos

Căutare AI

Explorează mai multe repository-uri excelente

Descrie ce ai nevoie în limbaj simplu — AI-ul sortează mii de proiecte open source selectate în funcție de relevanță.

Start searching with AI

Întrebări frecvente

Ce face yourtion/30daymakeos?

30dayMakeOS is an educational hobby operating system project designed for the x86 architecture. It implements a monolithic kernel and a custom bootloader that transitions the CPU from real mode to 32-bit protected mode to enable flat memory addressing.

Care sunt principalele funcționalități ale yourtion/30daymakeos?

Principalele funcționalități ale yourtion/30daymakeos sunt: OS Internals Education, Kernel Development, CPU Task Scheduling and Preemption, Round-Robin Schedulers, Monolithic Kernels, Graphics Rendering Engines, Boot Sector Loaders, CPU Schedulers.

Care sunt câteva alternative open-source pentru yourtion/30daymakeos?

Alternativele open-source pentru yourtion/30daymakeos includ: mit-pdos/xv6-public — xv6 is a Unix-like educational operating system designed for teaching kernel concepts. It is implemented as an… s-matyukevich/raspberry-pi-os — This project is a bare-metal operating system developed for ARM64 architecture. It serves as a low-level… cirosantilli/x86-bare-metal-examples — This project is a collection of minimal operating systems, bootloaders, and hardware drivers used to demonstrate… phil-opp/blog_os — This project is a freestanding kernel written in Rust that boots on x86 hardware without a standard library. It serves… nuta/operating-system-in-1000-lines — This project is an educational operating system kernel designed to demonstrate the fundamental architectural… 0xax/linux-insides — This project is a technical reference and educational guide focused on the internal architecture of the Linux kernel.…

Alternative open-source pentru 30dayMakeOS

Proiecte open-source similare, clasificate după numărul de funcționalități comune cu 30dayMakeOS.
  • mit-pdos/xv6-publicAvatar mit-pdos

    mit-pdos/xv6-public

    9,466Vezi pe GitHub↗

    xv6 is a Unix-like educational operating system designed for teaching kernel concepts. It is implemented as an instructional kernel for x86 and RISC-V architectures, featuring a virtual memory manager and support for symmetric multiprocessing. The system is designed to demonstrate core OS principles through a simplified re-implementation of Unix Version 6. It provides a controlled environment for studying system calls, trap handling, and process lifecycles. Its capability surface covers process management, including scheduling and context switching, and memory management via page tables for

    C
    Vezi pe GitHub↗9,466
  • s-matyukevich/raspberry-pi-osAvatar s-matyukevich

    s-matyukevich/raspberry-pi-os

    13,854Vezi pe GitHub↗

    This project is a bare-metal operating system developed for ARM64 architecture. It serves as a low-level implementation of kernel engineering, focusing on the fundamental construction of an OS from the hardware level up. The system is distinguished by its comprehensive approach to ARM64 processor control, featuring a red-black tree task scheduler and a hierarchical page table system for virtual memory management. It implements a sophisticated privilege model that handles transitions between kernel and user modes, ensuring process isolation through address space splitting and exception level m

    Carmarmv8assembler
    Vezi pe GitHub↗13,854
  • cirosantilli/x86-bare-metal-examplesAvatar cirosantilli

    cirosantilli/x86-bare-metal-examples

    5,306Vezi pe GitHub↗

    This project is a collection of minimal operating systems, bootloaders, and hardware drivers used to demonstrate low-level x86 system programming and hardware interfacing. It serves as a kernel development toolkit and a system programming lab designed for testing architecture concepts and hardware behavior within a system emulator. The repository provides reference implementations for creating bootable disk images and loading kernel stages. It includes guides for implementing protected mode transitions, memory paging, interrupt descriptor tables, and symmetric multiprocessing on x86 hardware.

    Assemblyassemblybare-metalbaremetal
    Vezi pe GitHub↗5,306
  • phil-opp/blog_osAvatar phil-opp

    phil-opp/blog_os

    17,518Vezi pe GitHub↗

    This project is a freestanding kernel written in Rust that boots on x86 hardware without a standard library. It serves as a low-level system implementation focusing on the creation of a bare metal operating system. The system implements a bootable disk image toolchain that transforms source code into binaries compatible with a bootloader. It features a custom memory allocator for dynamic memory management and an x86 kernel implementation that includes paging, interrupt handling, and VGA text mode. The project covers several core capability areas, including low-level memory management through

    HTMLkerneloperating-systemrust
    Vezi pe GitHub↗17,518
Vezi toate cele 30 alternative pentru 30dayMakeOS→