GeckOS

Unix type Operating System for 6502 processor

Operating system

GeckOS

GeckOS Shell

Developer| André Fachat
OS family| Unix-like
Working state| Historic
Source model| Open source
Latest release| 2.1.1 / January 25, 2024; 15 months ago (2024-01-25)
Latest preview| 2.0.9 / October 6, 2013; 11 years ago (2013-10-06)
Repository| github.com/fachat/GeckOS-V2
Platforms| MOS Technology 6502
Kernel type| Microkernel
License| GPLv2
Official website| 6502.org

* Free and open-source software portal

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.

## Overview

[edit]

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.[citation needed]

Binary compatibility with the LUnix operating system can be attained when the lib6502 shared library is used.[citation needed]

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.[citation needed] This can be increased to sixteen tasks when stack snapshotting is enabled, although this is done at the expense of some system speed.[citation needed]

A webserver is integrated into the SLIP daemon.[3]

## Unix on 6502 architecture

[edit]

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

[edit]

### Footnotes

[edit]

1. ^ Holmer (2019c), pp. 1, 8.
2. ^ Holmer (2019c), p. 8.
3. ^ a b Weßling (2019), 3.9 Betriebssyteme.
4. ^ Fachat (2013).
5. ^ Fachat (2013), Download, Architecture.
6. ^ Holmer (2019a), 1m.
7. ^ Holmer (2019b), 2-5m.
8. ^ Holmer (2019a), 3m.

### Sources

[edit]

* 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.

## External links

[edit]

* Analysis, building instructions

* v
* t
* e

Hobbyist operating systems

* AROS
* BareMetal
* EmuTOS
* FiwixOS
* GeckOS
* HelenOS
* KolibriOS
* MenuetOS
* Phantom OS
* Redox
* SerenityOS
* SharpOS
* SkyOS
* Syllable Desktop
* SymbOS
* TempleOS
* ToaruOS

* Category
* List

* v
* t
* e

Unix and Unix-like operating systems and compatibility layers

* Architecture
* Filesystem
* History
* Philosophy
* Security
* Shell

Operating
systems|

| BSD|

* 386BSD
* FreeBSD
* NetBSD
* OpenBSD
* DragonFly BSD
* Darwin
* macOS
* iOS
* audioOS
* iPadOS
* tvOS
* watchOS
* bridgeOS
* DYNIX
* NeXTSTEP
* SunOS
* Ultrix

|

Linux|

* Android
* Arch
* ChromeOS
* Debian
* Fedora
* Gentoo
* Red Hat
* Slackware
* SUSE
* Ubuntu
* Other distributions

System V|

* A/UX
* AIX
* HP-UX
* IRIX
* OpenServer
* Solaris
* OpenSolaris
* Illumos
* Tru64 UNIX
* UnixWare

Other|

* Coherent
* Domain/OS
* GNU
* Hurd
* LynxOS
* Minix
* MOS
* OSF/1
* QNX
* BlackBerry 10
* Research Unix
* SerenityOS
* Xenix
* more...

Compatibility
layers|

* Cygwin
* Darling
* Eunice
* GNV
* Interix
* MachTen
* Microsoft POSIX subsystem
* MKS Toolkit
* PASE
* P.I.P.S.
* PWS/VSE-AF
* UNIX System Services
* UserLAnd Technologies
* Windows Services for UNIX
* Windows Subsystem for Linux

* Italics indicate discontinued systems.  Category
* Commons

*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template