Difference between revisions of "OpenWRT"

From Embedded Xinu
Jump to navigation Jump to search
(Starting with some basics)
 
(added related links and edited)
Line 1: Line 1:
OpenWRT is essentially a Linux distribution for embedded systems, specifically routers.  It has an incredibly modular structure which allows it to build easily for dozens of different devices and makes package selection easy.  It also makes browsing around its source relatively difficult.  When you first download a copy of "White Russian", the stable branch of OpenWRT, you don't have a linux kernel, or even a toolchain, but you have its unique build system, which is everything you need to build a firmware image.  As far as we can tell it:
+
OpenWRT is essentially a Linux distribution for embedded systems, specifically routers.  It has an incredibly modular structure which allows it to build easily for dozens of different devices and makes package selection easy.  It also makes browsing around its source relatively difficult.  When you first download a copy of "White Russian", the stable branch of OpenWRT, you don't have a linux kernel, or even a toolchain, but you have its unique build system, which is everything you need to build a firmware image.  As far as we can tell the build process follows these steps:
  
* Downloads the correct toolchain
+
* Download the correct toolchain
* Builds the toolchain
+
* Build the toolchain
* Downloads a linux kernel
+
* Download a linux kernel
* Downloads your selected packages
+
* Download selected packages
* Uses the toolchain to build the kernel / packages
+
* Use the toolchain to build the kernel / packages
* Smushes everything together into several flavors of executable (depending on which file system you desire)
+
* Smush everything together into several flavors of executable (depending on file system)
* Also creates versions with proper Linksys headers so that they can be uploaded though the web interface as "legit" firmware upgrades
+
* Also create versions with proper Linksys headers so that they can be uploaded though the web interface as "legit" firmware upgrades
  
 
So though the precious bounty is not in the original download, once you complete the build process, the build system leaves the linux source behind in the '''build_mipsel''' directory, and the toolchain is left waiting to be swiped as well.
 
So though the precious bounty is not in the original download, once you complete the build process, the build system leaves the linux source behind in the '''build_mipsel''' directory, and the toolchain is left waiting to be swiped as well.
 +
 +
The Embedded XINU project has used OpenWRT's linux source extensively as a reference in our work on implementing XINU for MIPS.
 +
 +
== Related Links ==
 +
* http://www.openwrt.org - OpenWRT home page
 +
* http://wiki.openwrt.org/OpenWrtDocs/Hardware/Linksys/WRT54GL - information on our primary router

Revision as of 17:01, 20 June 2007

OpenWRT is essentially a Linux distribution for embedded systems, specifically routers. It has an incredibly modular structure which allows it to build easily for dozens of different devices and makes package selection easy. It also makes browsing around its source relatively difficult. When you first download a copy of "White Russian", the stable branch of OpenWRT, you don't have a linux kernel, or even a toolchain, but you have its unique build system, which is everything you need to build a firmware image. As far as we can tell the build process follows these steps:

  • Download the correct toolchain
  • Build the toolchain
  • Download a linux kernel
  • Download selected packages
  • Use the toolchain to build the kernel / packages
  • Smush everything together into several flavors of executable (depending on file system)
  • Also create versions with proper Linksys headers so that they can be uploaded though the web interface as "legit" firmware upgrades

So though the precious bounty is not in the original download, once you complete the build process, the build system leaves the linux source behind in the build_mipsel directory, and the toolchain is left waiting to be swiped as well.

The Embedded XINU project has used OpenWRT's linux source extensively as a reference in our work on implementing XINU for MIPS.

Related Links