BarinkOS/features.md

2.6 KiB

TODO list

Basics

Setup Cross-Compiler Multiboot to kernel \ Printing string to the screen \ Printing values/numbers to the screen \ Basic Terminal \ Extend Multiboot implementation \ Output to serial port \ Move to protected mode \ Enable CMOS clock \ Time measurement (PIC &| PIT) \ Detect CPU speed \ Interrupt / exception system (API) \ PCI support \ ATA PIO Mode support \ FAT Filesystem \ Virtual filesystem \ Keyboard support ( P/S2 Keyboard) \ Physical memory management \ Paging \ Virtual memory management \ The heap: allocating memory at runtime (malloc and free) is almost impossible to go without. \ Enable SIMD Extensions (SSE) PCI support \ ATA PIO Mode support \ USTAR Filesystem ( For its simplicity this is very likely the first filesystem the OS is going to support) \ ACPI support ( Or some other basic way to support shutdown, reboot and possibly hibernation ) \ ATAPI support \ Memory Management (MMU) Hardware Management system Preemptive multi tasking \ Processes \ Threads Scheduling (SRV2 Unix OR Priority Based Round Robin) \ System V ABI compliance (partially) \ POSIX compliance (partially) \ RPC - for interprocess communication \ Sync primitives - Semaphores, Mutexes, spinlocks et al. \

ACPI support
ATAPI support \

Basic Window server/client
EXT2 Filesystem USTAR Filesystem
FAT16 Filesystem \