Porting Embedded Xinu to an Alternative Architecture

1832 Words4 Pages

ABSTRACT In this paper we discuss porting the Embedded Xinu operating system (OS) to the 8-bit Arduino Mega 1280 due to its ability to meet several constraints. A 64-bit Linux environment and associated tools are used to develop Xinu for the AVR. The steps to port Xinu can be split into several different steps. The final Xinu image for the Arduino is 35 KB in size without any compiler optimizations. We discovered interesting features of the platform such as the division of SRAM and are in a position to improve compatibility with existing Xinu files. However, there are many pieces of the Xinu for the AVR missing such as interrupt handlers, asynchronous serial driver, priority scheduling, and a better memory allocation function. General Terms Design. Keywords Xinu INTRODUCTION In recent years, several colleges and universities have adopted Embedded Xinu, a modest OS developed in 1984 at Purdue University. Using Embedded Xinu provides a homogeneous form of teaching at a low cost to implement. Due to its simple design, Xinu is ideal for courses on operating systems, embedded devices, networking, and compilers. Xinu currently operates a wide array of devices including the DEC PDP-11, Motorola(R) 68000, Intel(R) x86, and MIPS IV architectures. Porting Xinu to a scaled-down alternative architecture is advantageous for a number of reasons. First, diversification of the hardware will make the transition to Embedded Xinu easier which is especially true for colleges and universities that already employ AVR processors in other course work. Next, the 8-bit Arduino Mega from ATMEL(R) provides several unique and interesting challenges. The AVR is disparate from all other platforms that Xinu presently operates on. For instance... ... middle of paper ... ...nted. A asynchronous serial driver and more output ports would allow for better performance. Variable optimizations for the 8-bit architecture could be made throughout the code to make Xinu for the AVR more efficient. ACKNOWLEDGMENTS My thanks to Dr. Dennis Brylow and Team Xinu for all of their help this summer. Works Cited [1]Ardunio Website. 2010. http://www.arduino.cc/. [2]Atmega640/1280/1281/2560/2561 Preliminary. 448 pages, Revision L. 2007. http://www.atmel.com/dyn/resources/prod_documents/doc0856.pdf. [3]AVR C Runtime Library. 2010. http://savannah.nongnu.org/projects/avr-libc/. [4]AVR Instruction Set. 160 pages, Revision I. 2010. http://www.atmel.com/dyn/resources/prod_documents/doc0856.pdf. [5]AVR Libc website. 2009. http://www.nongnu.org/ar-libc/. [6]Comer, Douglas and Brylow, Dennis. Embedded Xinu. 2010. http://xinu.mscs.mu.edu/Main_Page/.

Open Document