GeckOS
GeckOS is a multitasking operating system for MOS 6502, and compatible processors such as the MOS 6510.[1] The GeckOS operating system is one of the few successful attempts to implement a Unix-like operating system on the 6502 architecture.
Developer | André Fachat |
---|---|
OS family | Unix-like |
Working state | Historic |
Source model | Open source |
Latest release | 2.1.0 / July 18, 2020 |
Latest preview | 2.0.9 / October 6, 2013 |
Repository | github |
Platforms | MOS Technology 6502 |
Kernel type | Microkernel |
License | GPLv2 |
Official website | 6502.org |
Overview
The system offers some Unix-like functionality including pre-emptive multitasking, multithreading, semaphores, signals, binary relocation, TCP/IP networking via SLIP, and a 6502 standard library.[2][3][4]
GeckOS includes native support for the Commodore PET (32 KB and 96 KB models), Commodore 64 and the CS/A65 homebrew system.[5] Due to the platform independent nature of the kernel code, GeckOS is advertised as an extremely easy OS to port to alternative 6502 platforms.
Binary compatibility with the LUnix operating system can be attained when the lib6502 shared library is used.
Due to the small fixed-location stack of the 6502, and because an external MMU is rarely provided, multitasking is somewhat limited.[6] The OS supports a maximum of four tasks when a shared stack space is used. This can be increased to sixteen tasks when stack snapshotting is enabled, although this is done at the expense of some system speed.
Unix on 6502 architecture
While early versions of Unix ran on for example early model PDP-11 computers that were comparable to Commodore 64 in terms of memory and processor performance there were architecture differences in terms of lack of a kernel mode, only 3 8-bit registers versus eight 16-bit general registers, and a fixed stack. These architectural limitations make implementing a Unix-like operating system on the 6502 challenging.[7]
The possible non-exhaustive list of other viable Unix-like implementations on 6502 are LUnix, Asterix (Chris Baird) and ACE (Chris "Polar" Baird). GeckOS arguably is more complete in some respects, with ACE being stronger in terms of standard Unix utilities but weaker in the operating system area.[8]
References
Footnotes
- Holmer (2019c), pp. 1, 8.
- Holmer (2019c), p. 8.
- Weßling (2019), 3.9 Betriebssyteme.
- Fachat (2013).
- Fachat (2013), Download, Architecture.
- Holmer (2019a), 1m.
- Holmer (2019b), 2-5m.
- Holmer (2019a), 3m.
Sources
- Weßling, Holger (2019). Das Bastler-Handbuch für den THEC64 Mini (in German). Andrews UK Limited. OCLC 1099619858.
- Fachat, André (13 October 2013). "GeckOS/A65 V2.0". 6502.org. Retrieved 15 May 2021.
- Holmer, Glenn (30 September 2019a). GeckOS: a Unix-like 6502 operating system. Vintage computer Festival Midwest. Archived from the original on 21 December 2021. Retrieved 15 May 2021 – via YouTube.
- Holmer, Glenn (7 December 2019b). Hacking GeckOS (Speech). World of Commodore. Toronto, Canada. Retrieved 15 May 2021.
- Holmer, Glenn (7 December 2019c). "Hacking GeckOS" (PDF). Retrieved 15 May 2021.