DOC PREVIEW
UB CSE 321 - Embedded and Realtime Operating Systems

This preview shows page 1 out of 4 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 4 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 4 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

1. Objectives and overview of the project:Prepare a simple hardware system and embed in it a minimal operating system. The minimal operating system will be enhanced in the subsequent projects by other features. We will use WRT54GL the wireless router from Linksys [1] and Embedded XINU operating system [2] for this purpose. Students will(i) study the architecture of WRT54GL wireless router,(ii) modify the WRT54GL hardware to upload embedded XINU (EXINU) operating systems, and2. Project EnvironmentNEXOS1 Project #1 – Booting up and Interacting with Embedded XINU Operating System CSE321: Embedded and Realtime Operating Systems Fall 2010Due date: 10/1/2009 (you need to demo it by then by attending recitations)1. Objectives and overview of the project:Prepare a simple hardware system and embed in it a minimal operating system. The minimal operating systemwill be enhanced in the subsequent projects by other features. We will use WRT54GL the wireless router fromLinksys [1] and Embedded XINU operating system [2] for this purpose. Students will (i) study the architecture of WRT54GL wireless router, (ii) modify the WRT54GL hardware to upload embedded XINU (EXINU) operating systems, and (iii) test the embedded operating system using simple C programs. (iv) modify the EXINU code to add new shell commands.2. Project Environment2.1 Operating system XINU XINU ("Xinu Is Not Unix") is a small, academic operating system developed at Purdue University by Dr.Douglas E. Comer in the early 1980s for the LSI-11 platform; it has now been ported to a variety of platforms.Embedded XINU is an update of this project which attempts to modernize the code base (to ANSI-compliant C)and port the system to a modern architecture (specifically the MIPS architecture). 2.2 Hardware WRT54GL We will use wireless router WRT54GL as a host for the software we will develop for enhancing the features of anembedded operating system. WRT54GL has a very interesting history the details of which can be found at [3].The WRT54G is notable for being the first consumer-level network device that had its firmware source codereleased to satisfy the obligations of the GNU GPL. This allows programmers to modify the firmware to changeor add functionality to the device. WRT54GL features a Broadcom MIPS processor BCM5352 (200-250Mhz), afour port Ethernet switch, 802.11b and 802.11g wireless LAN support, a Web interface for configuration of therouter, 16Mbytes of SDRAM and 4Mbytes of flash memory. Any modification to the router function itself has tobe done by updating the firmware on the flash memory. However we will load the embedded XINU image that wecreate in the SDRAM. See [4] more details on the memory layout of the SDRAM.Figure 1 Basic NEXOS Network to Upload Embedded XINU to WRT54GL1 NEXOS: Next Generation Embedded and Realtime Systems project partially funded by NSF DUE-CCLI-0737243Network connection Serial Communication IP: 192.168.0.130 IP: 192.168.0.101 12.3 Basic NEXOS Test Environment The lab environment will be supported by other hardware and software components to provide cross-compiling and networking support. In order to compile Embedded MIPS kernels on a workstation that is not itself a MIPS processor, it is necessary to build and install an appropriate cross compiler. Any time you modify the embedded XINU, the recompiled software will have to be reloaded into the WRT54GL system you are working on. A simpleand basic network configuration allocating IP address to the host with the cross-compiler, the wireless router that will host the embedded XINU and a common router that forms the network are shown in Figure 1. The Common Firmware Environment (CFE) [5] is the firmware developed by Broadcom for the BCM947xx SoC platform (among others). It is the first code that runs when the router boots and performs functions:- Initializes the system - Sets up a basic environment in which code can run - Optionally provides a command line interface non-standard usage - Loads and executes a kernel image So, in normal operation, a user will not see CFE working at all; it will load the LinkSys kernel and send it on its merry way without hesitation. For us, however, CFE is crucial, because it provides us with the ability to load an image over the network using TFTP [6]. 2.4 Expanded NEXOS Test EnvironmentThe WRT54G can be used alone at any workstation with a serial port and a network connection. Thisconfiguration may be suitable for very small laboratory installations concerned only with hardware systemsassignments, but to take maximum advantage of the power of our platform it is far more useful to collect manyWRT54G's as a pool of backends doled out by a central server. Particularly in the context of more advancedcourses in networking, it is best that this pool of backends be managed on a private network, isolated from theproduction network by a gateway.Figure 2 Expanded NEXOS environment with a central server2Figure 2 outlines the typical layout first used at Purdue and later nicknamed the warzone by the TinkerNet Project.A cadre of dedicated target machines resides on the private network (warzone) where students may load and run experimental kernels on demand. These dedicated, backend machines load a new O/S image from the central server across the network each time they reboot, allowing students to refresh the image frequently as they build their system.3. What to do?3.1 Prepare Hardware1. Study the various components of the environment discussed above. 2. Modify the Linksys WRT54GL hardware as follows: Obtain the parts as given in the list. Parts list:Quantity Part Name Details Part / Model Number 1 LinkSys WRT54GL Router 802.11b/g wireless broadband router Linksys WRT54GL 1 Ribbon cable 28 AWG, 10 conductor, 25' Jameco 643508CM 1 IDC socket connector 0.1”, 10 conductor Jameco 32491CM 1 IDC shrouded header 0.1”, 10 conductor Jameco 67811CM 1 RS232 Transmitter/Receiver IC 2DVR/2RCVR RS232 5V 20-DIP DigiKey MAX233CPP-ND1 DB9 Female 22AWG,SOLDER CUP Jameco 15771CM 1 DB9 Male 22AWG,SOLDER CUP Jameco 15747CM 3. Open the router.4. Attach the serial header.5. Wire serial header to MAX233A RS232 receiver/transmitter.6. Wire the DB9 connectors to MAX233A.Make sure you solder the socket before mounting the chip itself.3.2 Prepare software1. Download and cross-compile the embedded XINU code.2. Download TFTP


View Full Document

UB CSE 321 - Embedded and Realtime Operating Systems

Documents in this Course
Anomaly1

Anomaly1

48 pages

ProcSept9

ProcSept9

17 pages

LecSept2

LecSept2

30 pages

CRCNov23

CRCNov23

14 pages

Load more
Download Embedded and Realtime Operating Systems
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Embedded and Realtime Operating Systems and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Embedded and Realtime Operating Systems 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?