Home
| Calendar
| Mail Lists
| List Archives
| Desktop SIG
| Hardware Hacking SIG
Wiki | Flickr | PicasaWeb | Video | Maps & Directions | Installfests | Keysignings Linux Cafe | Meeting Notes | Linux Links | Bling | About BLU |
Linux/Alpha Progress Report Part 1 - Overview November 14, 1994 Jim Paradis Alpha Migration Tools Group Digital Equipment Corporation NEW EMAIL ADDRESS: paradis at amt.tay1.dec.com 1.0 INTRODUCTION - WHAT IS LINUX/ALPHA? The Linux FAQ (Frequently-Asked-Questions) list describes Linux as follows: Linux is a Unix clone for 386/486-based PCs, written from scratch by Linus Torvalds, with assistance from a loosely-knit team of hackers across the Net. It aims towards POSIX compliance. It has all the features you would expect in a modern fully-fledged Unix, including true multitasking, virtual memory, shared libraries, demand loading, shared copy-on-write executables, proper memory management and TCP/IP networking. It uses the hardware features of the 386 processor family (TSS segments et al) to implement these features. It is distributed under the GNU General Public License Although the distributed Linux kernel depends heavily on the x86 processor architecture, it is feasible to port it to other architectures. Indeed, ports are currently in progress to the Alpha, 680x0, PowerPC, MIPS, and possibly other architectures. Linux/Alpha is my port of the Linux operating system to the Digital Alpha architecture. 2.0 OVERVIEW OF LINUX/ALPHA Linux/Alpha is a port of Linux to the Digital Alpha RISC microprocessor. It is based on the Linux V1.0 kernel. Linux V1.0 was current when I started the project. To limit the number of variables, I decided to stick with a single version while developing the Alpha-specific pieces. Although the Linux V1.0 kernel provides more than enough functionality for our current needs, we might investigate subsequently leapfrogging to the most-current stable kernel when Linux/Alpha is stable. Linux/Alpha is a 32-bit operating system. Except for those cases where the kernel must interface with the Alpha hardware, no kernel data type is wider than 32 bits. As far as C programmers are concerned pointers and longs are 32 bits. The decision to remain with 32-bit data types was based on our group's experience with migrating legacy software to a 64-bit environment. By not changing the size of any data types, those parts of Linux that are unaffected by the port (such Linux/Alpha Progress Report Page 2 as the file system code) should continue to work without modification. Changing the data type size would require significant code review to ensure that all data types are used correctly. Note that 64-bit quantities are still available for computation through the use of "long long" and "long double" C data types. Thus, the only limitation of a 32-bit operating system is the unavailability of 64-bit pointers. On PC-class machines, with at most a few tens of megabytes of physical memory, this should not be a significant restriction for the forseeable future. Linux/Alpha is primarily aimed at PC-class Alpha platforms that support ISA, VLB, and PCI devices. Support for other devices and platforms is possible in the future. Contribution of drivers for other platforms is always welcome. +-------------------------------------------------------------+ Jerry Feldman Unix Systems - Development Engineering Mailstop: ZKO3-3/Y25 DTN:381-2970 Digital Equipment Corp. EXT:(603)881-2970 110 Spitbrook Rd. ip(DEC): gaf at zk3.dec.com Nashua, NH 03062-9987 enet: QUARRY::GAF Internet(HOME):gaf at palantir.newton.ma.us +-------------------------------------------------------------+
BLU is a member of BostonUserGroups | |
We also thank MIT for the use of their facilities. |