Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
E

elks

> 编程语言
Open source

Embeddable Linux Kernel Subset - Linux for 8086

1.7K stars0 likes0 views
WebsiteGitHub

About

Embeddable Linux Kernel Subset - Linux for 8086

# What is ELKS? ELKS is a project providing an early fork of the Linux OS for systems based on the Intel IA16 architecture (16-bit processors: 8086, 8088, 80188, 80186, 80286, NEC V20, V30 and compatibles). Such systems can be ancient computers (IBM-PC XT / AT and clones) as well as more recent SBCs, SoCs, FPGAs, as well as modern 80386+ x86 desktops. ELKS supports networking, graphics, ia16-elf-gcc, OpenWatcom C and its own native C compiler, and installation to HDD using both MINIX and MSDOS FAT filesystems. ## Memory requirements * Stock images require 512k RAM * ELKS requires 256k RAM to run, 512k to be really useful * No hardware MMU required * ROM-based systems can run in 128k RAM ## Try ELKS online You can [play with ELKS online](https://copy.sh/v86/?profile=elks) thanks to the v86 emulator. Login with "root" and no password. Go to the bin folder and try the different commands available. Try nxtetris. Start the game by pressing "n". ## Watch ELKS in action - [Can an IBM PC Portable Run Linux with Ethernet?](https://www.youtube.com/watch?v=tN7DgIWkdTo) (thanks The Phintage Collector) - [ELKS 0.9.1 and Nano-X on a 286](https://www.youtube.com/watch?v=FM1HRQYnvJk) (thanks Clean Retro Tech) - [This Floppy Disk is a WEB SERVER](https://www.youtube.com/watch?v=efglR_2Hy4Y) (thanks Action Retro) - [ELKS, a 16-bit no-MMU Linux on Amstrad PC 2086](https://www.youtube.com/watch?v=eooviN1SdQ8) (thanks @pawoswm-arm) - [Booting ELKS on an old 286 MB from 1,44MB floppy](https://www.youtube.com/watch?v=6rwlqmdebxk) (thanks @xrayer) - [Epson PC Portable Q150A / Equity LT (Nec V30 8086 - 1989)](https://youtu.be/ZDffBj6zY-w?t=687) (thanks Alejandro) - [ELKS on ESP32 through IBM PC emulator](https://www.youtube.com/watch?v=Tr2yMjrgP8o) (thanks @fdivitto) ## Screenshots ELKS running on QEMU Nano-X running on ELKS Olivetti M24 8086 CPU ELKS Networking showing netstat and process list Running ELKS Basic on PC-9801UV21 (NEC V30 CPU) Running Matrix and vi on multiple consoles Of course Doom Telnet to an old BBS ## Downloads A full set of disk images are available for download, for you to try out ELKS: [Downloads](https://github.com/ghaerr/elks/releases). ## How to build Full build instructions are [here](https://github.com/ghaerr/elks/blob/master/BUILD.md). ## Wiki Help on how to use ELKS, as well as technical tutorials, are available on our [Wiki](https://github.com/ghaerr/elks/wiki). ## Documentation More information is in the Documentation folder: [Index of ELKS Documentation](https://htmlpreview.github.io/?https://github.com/ghaerr/elks/blob/master/Documentation/index.html). ## Resources Other projects and resources interesting to ELKS and our programming community: - [8086 toolchain](https://github.com/ghaerr/8086-toolchain) A full C toolchain capable of running on Linux, macOS and natively on ELKS, featuring C compiler and preprocessor, as86 assembler, ld86 linker, disassembler, make, and a complete C library. - [blink16](https://github.com/ghaerr/blink16) A visual 8086 emulator and debugger capable of booting the ELKS kernel for symbolic debugging, as well as an emulator for ELKS executables. - [Size Optimization Tricks](https://justine.lol/sizetricks/) A great article from Justine Tunney's blog showing how big things can be done without bloat. - [gcc-ia16](https://github.com/tkchia/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!

GitHub Issues· 0 open

View all on GitHub

No open issues yet, or sync has not completed.

Highlights

  • •Stock images require 512k RAM
  • •ELKS requires 256k RAM to run, 512k to be really useful
  • •No hardware MMU required
  • •ROM-based systems can run in 128k RAM
  • •Can an IBM PC Portable Run Linux with Ethernet? (thanks The Phintage Collector)
  • •ELKS 0.9.1 and Nano-X on a 286 (thanks Clean Retro Tech)
  • •This Floppy Disk is a WEB SERVER (thanks Action Retro)
  • •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)

> Tags

C8018680868086-architecture8088

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言