XINU stands for Xinu Is Not Unix -- although it shares concepts and even names with Unix, the internal design differs completely. Xinu is a small, elegant operating system that supports dynamic process creation, dynamic memory allocation, network communication, local and remote file systems, a shell, and device-independent I/O functions. The small size makes Xinu suitable for embedded environments.
A completely revised and reorganized version of textbook is now available. D. Comer, Operating System Design - The Xinu Approach, Linksys Version, CRC Press, 2011, ISBN 978-1-4398-8109-5.
|
1980-81 | 1981-82 | 1982-83 | 1983-85 | 1985-86 | 1985- | 1986 | 1987 | 1989 | 1988-90 | 1990-91 | 1992 | 1990s | 2008 | 2010-11 | 2011 | |||
|
|||||||||||||||||||
The Xinu lab located in the Computer Science Department at Purdue University is used for both teaching and research. The lab is divided into a set of front-end machines (standard workstations running Linux) and a set of back-end machines (machines that are only used to download and test code). Each of the back-end machines has three connections: a connection to an Ethernet switch that provides access to the Internet, a connection to a rebooter device that can reboot the machine when needed, and a connection from the console serial port to a multiplexer. Software in the lab automates back-end allocation, download, and console interaction, making it easy for a student to compile an operating system image, allocate an unused back-end, establish a window that connects to the back-end console port, download the compiled image into the memory of the back-end, and run the image. The lab makes it easy for students to experiment with operating systems and protocol software.
There are several versions of Xinu available for platforms such as an x86,
MIPS, and ARM.
In our lab, we use two computers for Xinu: a conventional computer used to compile
a Xinu image, and second,, otherwise idle, back-end computer, into which we download
and run the image.
The current version of the Xinu textbook uses a Linksys E2100L router as a backend.
The E2100L is relatively inexpensive, and commercially available.
The E2100L contains firmware that can download an image from a TFTP server and place
the image in memory.
Thus, one can purchase an E2100L and plugsh it into an Ethernet switch along with a PC
running Linux.
THe Linux computer must run a TFTP server, which allows the E2100L to download an
image and run it.
If you do not wish to purchase an E2100L (or are relunctant to hook up hardware), we
have a version of Xinu that runs in a Virtual Machine (VM) environment, which
means it can run on a conventional computer with no extra hardware.
In fact, there are two VM versions: one fro VMWare and one for Virtual Box.
The Virtual Box platform is especially attractive because it is available
for free download.
If your company has used Xinu in the past or is using Xinu at present, send a note to xinu-info@cs.purdue.edu and we will include your company in the list below.
If your university has used Xinu in the past or is using Xinu at present, send a note to xinu-info@cs.purdue.edu and we will include your university in the list below.         "The Xinu book is the best operating systems book
on the market becuase it removes the black magic and explains how to build an OS from the ground up. It's not like other books I tried to read -- they gave me a headache. I have already started telling friends how great it is."
-- David Bafumba-Lokilo, Ecole PolytechniqueExperimenting With Xinu
Code Available For Download:
Xinu in Industry
Xinu in Universities
What Others Are Saying
de Montreal