It is easy to see why Linux would be a natural choice for embedded x86 hardware designs. There are many issues that arise when trying to embed Linux on these systems though. Issues such as operating from FLASH or ROM memory, booting the system, no mass storage, no console (headless systems), and operating with limited resources such as RAM.
This tutorial will cover solutions to the many problems, and the many and varied options that exist for creating x86 based embedded hardware systems. Particular emphasis will be given to the pratical issues, for example booting, programming FLASH, filesystem options and debugging remote hardware.