Flylib.com

Books Software

 
 
 

Section 4.4. Obtaining a Linux Kernel


4.4. Obtaining a Linux Kernel

In general, you can obtain an embedded Linux kernel for your hardware platform in three ways: You can purchase a suitable commercial embedded Linux distribution; you can download a free embedded distribution, if you can find one suitable for your particular architecture and processor; or you can find the closest open -source Linux kernel to your application and port it yourself. We discuss Linux porting in Chapter 16, "Porting Linux."

Although porting an open source kernel to your custom board is not necessarily difficult, it represents a significant investment in engineering/development resources. This approach gives you access to free software, but deploying Linux in your development project is far from free, as we discussed in Chapter 1, "Introduction." Even for a small system with minimal application requirements, you need many more components than just a Linux kernel.

4.4.1. What Else Do I Need?

This chapter has focused on the layout and construction of the Linux kernel itself. As you might have already discovered , Linux is only a small component of an embedded system based on Linux. In addition to the Linux kernel, you need the following components to develop, test, and launch your embedded Linux widget:

  • Bootloader ported to and configured for your specific hardware platform

  • Cross-compiler and associated toolchain for your chosen architecture

  • File system containing many packagesbinary executables and libraries compiled for your native hardware architecture/processor

  • Device drivers for any custom devices on your board

  • Development environment, including host tools and utilities

  • Linux kernel source tree enabled for your particular processor and board

These are the components of an embedded Linux distribution.



4.5. Chapter Summary

  • The Linux kernel is more than 10 years old and has become a mainstream, well-supported operating system for many architectures.

  • The Linux open source home is found at www.kernel.org. Virtually every release version of the kernel is available there, going all the way back to Linux 1.0.

  • We leave it to other great books to describe the theory and operation of the Linux kernel. Here we discussed how it is built and identified the components that make up the image. Breaking up the kernel into understandable pieces is the key to learning how to navigate this large software project.

  • This chapter covered the kernel build system and the process of modifying the build system to facilitate modifications.

  • Several kernel configuration editors exist. We chose one and examined how it is driven and how to modify the menus and menu items within. These concepts apply to all the graphical front ends.

  • The kernel itself comes with an entire directory structure full of useful kernel documentation. This is a helpful resource for understanding and navigating the kernel and its operation.

  • This chapter concluded with a brief introduction to the options available for obtaining an embedded Linux distribution.

4.5.1. Suggestions for Additional Reading

Linux Kernel HOWTO:
www.tldp.org/HOWTO/Kernel-HOWTO

Kernel Kbuild documentation:
http:// sourceforge .net/projects/kbuild/

The Linux Documentation Project:
www.tldp.org/

Tool Interface Standard (TIS) Executable and Linking Format (ELF) Specification,
Version 1.2
TIS Committee, May 1995

Linux kernel source tree:
…/Documentation/kbuild/makefiles.txt

Linux kernel source tree:
…/Documentation/kbuild/kconfig-language.txt

Linux Kernel Development, 2nd Edition
Rovert Love
Novell Press, 2005