ghaerr/elks 是一个托管在 GitHub 上的开源项目,主要使用 C 编写,采用 Other 许可证,目前获得 1.7k 个 Star、173 次 Fork。
仓库全名
ghaerr/elks
开源许可证
Other
Star 数
1.7k
Fork 数
173
未关闭 Issue
31
README 摘要
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…
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 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”.
Other projects and resources interesting to ELKS and our programming community:
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 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 A great article from Justine Tunney’s blog showing how big things can be done without bloat.
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!
评论