What is ELKS?
ELKS is a project providing a Linux-like OS for systems based on the Intel IA16 architecture (16-bit processors: 8086, 8088, 80188, 80186, 80286, NEC V20, V30 and compatibles). Such systems are ancient computers (IBM-PC XT / AT and clones) as well as more recent SBCs, SoCs, and FPGAs.
Watch ELKS in action
- ELKS, a 16-bit no-MMU Linux on Amstrad PC 2086 (thanks @pawoswm-arm)
- Booting ELKS on an old 286 MB from 1,44MB floppy (thanks @xrayer)
- Epson PC Portable Q150A / Equity LT (Nec V30 8086 - 1989) (thanks Alejandro)
Screenshots
ELKS Networking showing netstat and process list
Running ELKS Basic on PC-9801UV21 (NEC V30 CPU)
Downloads
A full set of disk images are available for download, for you to try out ELKS: Downloads.
How to build
Full build instructions are here.
Wiki
Help on how to use ELKS, as well as technical tutorials, are available on our Wiki.
Documentation
More information is in the Documentation folder: Index of ELKS Documentation.
Resources
Other projects and resources interesting to ELKS and our programming community:
- Size Optimization Tricks A great article from Justine Tunney's blog showing how big things can be done without bloat.
- Blinkenlights A visual debugger shows 8086 instruction execution starting from a PC boot sector.
- gcc-ia16 TK Chia's gcc compiler targeted for 8086, maintained and used for the ELKS kernel and all its applications.
More information
Questions? Problems? Patches? Open an issue on the ELKS GitHub project!