Main Page

From Embedded Xinu
Jump to navigation Jump to search

About Embedded XINU

Embedded XINU is an ongoing research and implementation project in the area of Operating Systems and Embedded Systems. Its goal is to port the XINU Operating System to the MIPS platform by specifically targeting LinkSys WRT54GL routers. While this project is still in progress, our prototype laboratory environment is already being used as the platform for courses in Operating Systems, Hardware Systems, Embedded Systems, and Compilers. We're also working on support for Networking and Internetworking classes.

The Embedded XINU project was conceived and is supervised by Dr. Dennis Brylow and is being conducted by both graduate and undergraduate students in the Math, Statistics, & Computer Science department of Marquette University in Milwaukee, Wisconsin. The first major phase of work on Embedded XINU began in the Summer of 2006.

Guides to Replicate Our Work

In this section we are developing instructions so that other groups can benefit from the work we are doing. These guides can be followed more or less in order to create a relatively inexpensive platform for a custom operating system. As our work develops further, there will be more XINU-specific information.

  1. Install OpenWRT
  2. Modify the Linksys hardware
  3. Connect to a modified router
  4. Run your own code
  5. Build a pool of backends
  6. Running XINU

Internal Documentation

After this point is our "scratchpad" of information collected mostly during Summer 2006 as research and experimentation was done. It is possible that there is more detailed information here on a few topics, but it is less organized and not as ready for public consumption.

Project Outline

  • Goals
  1. Infect WRT54GL Routers with a XINU kernel
  2. Develop XINU to a point where it can control the router's basic functions
  3. Use this platform for a course in embedded systems and/or networking

More Research

  • TODO: (concrete tasks)
    • XINU Tasks
      • Complete wired NIC driver.
      • Start on wireless NIC driver and "RoboSwitch".
      • Integrate XINU TCP/IP stack.
  • TOTHINK: (abstract goals and wishlists)
    • Learn more about the memory structure and underlying hardware.
    • How should the loader discover hardware parameters if CFE does not implement device enumeration?
    • How do we safely access flash memory without bricking the router?

Useful Links