Linux on the Motorola 680x0
Linux has been ported to 680x0 based machines. Amigas, Ataris and Macintoshes with the appropriate hardware support are the intended platforms. Only the 68020 (with 68851 MMU), 68030 and 68040 processors are currently supported. (A Memory Management Unit is required.) Versions of Linux/68k now run on various models of the Amiga and the Atari. The Amiga and Atari versions are not yet merged, but this will be completed shortly. The Atari version is based on the Amiga version.
Almost all of the x86-dependent code has been ported to run on the m680x0, including context switching, memory management, signals, “ptrace” support, “core” files and the “/proc” filesystem. The kernel supports Unix domain sockets, but does not yet support TCP/IP.
The Linux/68k kernel supports the Minix filesystem, the Linux ext2 filesystem, the ISO filesystem, and the Amiga Fast File System.
Patch 3 of version 0.08 of the Linux/68k kernel was released in May, 1994. This version is compatible with Linux/PC 0.99pl14. It provides support for a ram disk, the Amiga floppy drives, three popular Amiga SCSI controllers, and the IDE controller in the Amiga 4000. This version has a fast “console” full-screen VT100 emulation driver supporting various video modes. This console driver doesn't yet support multiple virtual consoles. There are drivers for the Amiga mouse and the Amiga parallel port. There are no serial drivers for the Amiga yet. This version is quite stable; it can be considered beta quality.
The Atari port includes the machine-independent support listed above, plus support for the Atari floppy drives, mouse, joystick, SCSI controller and the Atari Falcon IDE controller.
There is a “680x0” channel in the linux-activists mailing list which is used for some of the communications between the developers and other interested parties. Discussion also takes place on the “comp.unix.amiga” newsgroup on Usenet.
Just as this issue of Linux Journal went to the printer in late July, version 0.9 of Linux/68k was released. This version is derived from and equivalent to the Linux/PC kernel version 1.0.9.
In the longer term, it is hoped that the changes for the 680x0 support can be somehow folded back into the main Linux sources. In making these changes, care was taken to abstract out processor and platform dependencies. Hopefully this process will accelerate the effort that Linus Torvalds will be making to porting Linux to a Digital Equipment Corporation Alpha PC.
Hamish Macdonald Can be contacted at: (Hamish.Macdonald@bnr.ca)