【正文】
gnated A: in DOS and /dev/fd0 in Linux). The BIOS then tries to execute this sector. On most bootable disks, sector 0, cylinder 0 contains either: ? Code from a boot loader such as LILO, which locates the kernel, loads it, and executes it to start the boot proper ? The start of an operating system kernel, such as Linux If a Linux kernel has been raw copied to a diskette, a hard drive, or another media, the first sector of the disk will be the first sector of the Linux kernel itself. This first sector will continue the boot process by loading the rest of the kernel from the boot device. Step 2. The boot loader You will use a boot loader like LILO to operate the boot process. It allows the development and production platforms to coexist on the same hardware and permits switching from one to the other just by rebooting. The LILO boot loader is loaded by the bios. It then loads kernels or the boot sectors of other operating systems. It also provides a simple mand line interface to interactively select the item to boot with its options. See Resources for more information on LILO. Step 3. The kernel The kernel checks the hardware and mounts the root device and then looks for the init program on the root filesystem and executes it. Step 4. Init Init is the parent of all other processes that will run on your Linux OS. It will watch its child processes and start, stop, relaunch them if needed. Init takes all information from /etc/inittab. Step 5. Inittab The file /etc/inittab/ refers to scripts named /etc/rc... to do the system setup. It also has 8 entries for the getty tool to handle the login process. Step 6. The login process There is one getty available in the inittab file for each console allowed for the users. Getty will launch /bin/login to verify the user password. Step 7. Creating a new partition From the LFSHOWTO (see Resources): Before we can build our new Linux system, we need to have an empty Linux partition on which we can build our new system. If you already have a Linux Native partition available, you can skip this step and the following one. Start the fdisk program (or cfdisk if you prefer that program) with the appropriate hard disk as the option (like /dev/hda if you want to create a new partition on the primary master IDE disk). Create a Linux Native partition, write the partition table, and exit the (c)fdisk program. If you get the message that you need to reboot your system to ensure that the partition table is updated, then please reboot your system now before continuing. Step 8. Creating an ext2 file system on the new partition From the LFSHOWTO (see Resources): To create a new ext2 file system we use the mke2fs mand. Give $LFS as the only option, and the file system will be created. From now on I39。s take a look at what Linux has to offer as an embedded system, and why it39。s HardHat Linux. Powered by a PowerPCbased puting engine and matching I/O card, Linux Pla es in a colorful translucent case with a touchscreen and access to digital and analog I/O. Eurotech: Eurotech provides embedded PC SBC and sponsors ETLinux, a plete Linux system designed to run on small industrial puters and based on glibc . Microprocess Ingenierie: Microprocess develops, produces, and sells standard and customized products for the industrial and embedded market. Microprocess has a global activity in realtime software and great expertise in systems integration. Its products, like the 740 PowerPC pactPCI board, can be ordered with a standard distribution of Linux or an Embedded Linux version. Moreton Bay: Moreton Bay is releasing their NETtel 2520 and NETtel 2500 range 5 of Linuxbased Inter routers. These small, easytoconnect intelligent router solutions are engineered to offer a simple, secure, and affordable extrafriendly Virtual Private Network (VPN) for flat works. The NETtel router family runs an Embedded Linux kernel. A development kit is available。讓我們看一下 Linux 用作嵌入式系統(tǒng)需要提供哪些功能,以及它在目前可用的選擇中最具吸引力的原因所在。例如,用于 Linux 的設(shè)備驅(qū)動(dòng)程序要比用于商業(yè)操作系統(tǒng)的設(shè)備驅(qū)動(dòng)程序多,如網(wǎng)絡(luò)接口卡( NIC)驅(qū)動(dòng)程序以及并口和串口驅(qū)動(dòng)程序。給他們指定進(jìn)程 ID 或者數(shù)字標(biāo)識(shí)符為的是讓操作系統(tǒng)跟蹤正在執(zhí)行的程序和這些程序的相關(guān)聯(lián)的優(yōu)先等級(jí)。而這些模塊運(yùn)行的內(nèi)核空間正是操作系統(tǒng)實(shí)現(xiàn)調(diào)度策略、硬件中斷異常和執(zhí)行程序的部分。只要有 500 K 的內(nèi)存,一個(gè)有網(wǎng)絡(luò)棧和基本實(shí)用程序的完全的 Linux 系統(tǒng)就可以在一臺(tái) 8 位總線( SX)的 Intel 386 微處理器上運(yùn)行的很好了。 esac done run the files in /etc/ [ d /etc/ ] amp。s helpful to look at Linux as a continuum in this context, ranging from a strippeddown microkernel with memory management, task switching and timer services to a fullblown server supporting a plete range of file system and work services. A minimal Embedded Linux system needs just three essential elements: ? A boot utility ? The Linux microkernel, posed of memory management, process management and timing services ? An initialization process To doing anything useful while remaining minimal, you also need to add: ? Drivers for hardware ? One or more application processes to provide the needed functionality As additional requirements bee necessary, you might also want: ? A file system (perhaps in ROM or RAM) ? TCP/IP work stack 4 ? A disk for storing semitransient data and swap capability ? A 32bit internal CPU (required by all plete Linux systems) Four. Hardware platform options Choosing the best hardware can be plex because of internal pany politics, prejudices, legacies of other projects, a lack of plete or accurate information, and cost, which should take into account the total product costs and not just the CPU itself. Sometimes a fast, inexpensive CPU can bee expensive once bus logic and the delays necessary to make it work with other peripherals are considered. To calculate the necessary speed of a CPU for any given project, start with a realistic view of how fast the CPU needs to run to acplish a given task and triple it. Also, determine how fast the bus nee