Custom kernel
Physical memory manager (4 KiB frame bitmap), paging and virtual memory, E820 memory map, NX support and register protection.
PollikOS is a custom operating system: from an assembly bootloader, through its own kernel and file system, all the way to a windowed desktop with a web browser. No Linux, no ready-made frameworks. Every pixel and every system call has its origin right here.
PollikOS is not currently available for download. This is a showcase page for the project.
PollikOS was born out of curiosity: how does a computer really work from the moment power is switched on? It started as a two-stage bootloader querying the BIOS for a memory map and grew into a complete system with multitasking, ELF64 user processes, its own file system and a modern, animated graphical interface.
The project is developed methodically: every change is documented, and key features are verified with automated end-to-end tests in QEMU, with simulated mouse and keyboard input, screenshots and data persistence checks after a hard reboot.
Physical memory manager (4 KiB frame bitmap), paging and virtual memory, E820 memory map, NX support and register protection.
User programs as static ELF64 files, native SYSCALL instruction, custom ABI, scheduler, standard streams and per-process working directory.
A custom file system with VFS, launching programs by path, safe format migration and automatic backups.
Windows with smooth, reversible animations, a Dock with app pinning, multi-icon dragging, context menus and a Trash.
RTL8139 driver, DHCP, IPv4, UDP, DNS and TCP. A browser with HTML parser, CSS cascade, JavaScript and HTTPS (BearSSL, TLS 1.2).
Light and dark themes with matching wallpapers, accent colors and instant switching without re-decoding images.
A port of the TinyCC compiler and the road to self-hosting: compiling programs directly inside PollikOS.
A Media SDK and MP4 (H.264) video playback right inside the system, without help from the host.
Stage 1 and Stage 2 in assembly: BIOS E820 memory map, VBE graphics mode, CPU checks (Long Mode, NX, PAE, SYSCALL).
GDT/IDT/TSS, PMM and VMM, interrupts, timer, dedicated IST stacks for NMI and double fault.
Disk, PS/2, network card, framebuffer and PollikFS behind a VFS layer.
ELF64 loader, processes, scheduler and a stable system call ABI.
Window manager, surface compositor, Dock, top bar and applications.
A complete, small and documented stack, from the first boot instruction to pixels on screen. Every layer can be read, explained and changed.
Features are backed by automated QEMU tests and measurements with documented methodology, not marketing claims.
From bootloader to HTTPS browser and a C compiler port in one coherent codebase, showing what a focused team can ship.
PollikOS is a hobby and educational project. Graphics are rendered by the CPU (no GPU acceleration), the browser supports a practical subset of web standards, and the system is tested mainly in the QEMU emulator. Every performance result in the documentation comes with its measurement method, with no marketing promises.
Have questions about PollikOS, want to talk about the project or just share your feedback? Write to us!