Embedded Linux >> $ vi hello.sh
Linux OS running in embedded system is known as Embedded Linux. Linux os occupy only up to 100KB space in memory. Now days most ES based on 32 bit processor like ARM, PowerPC, ColdFire etc have sufficient amount of flash and RAM memory. For example if we consider ARM9 [CS-E9302] board from olimex it has following memory configuration…
— 32 MB SDRAM Memory
— 16 MB Flash Memory
Let us take one more example of a board from freescale Lite5200B Evaluation Board with processor PowerPC MPC5200 have 128 MB RAM and 32MB flash memory.
Above examples prove that linux operating system can be kept in ES. Actually linux is one of the favorite OS for ES. The reason behind this is following.
I. Linux is compact and occupy less space in memory.
II. Linux has real time operational capabilities. Linux is real time operating system after release of kernel 2.6.x. Linux kernel is also preemptive kernel.
III. Linux is fully configurable, it means you can use only those components which are desired and left others.
IV. Linux has support of virtual memory. This is special requirement of safety critical products like aeroplane, trains, nuclear reactor etc.
V. Linux has support of all major devices like USB, Webcam, Printer, various file systems like FAT,NFS, FFS etc.
VI. Linux is open source, so user can do full configuration at each level.
VII. ES are designed in order to keep at low price. This requirement makes linux more suitable OS, because it is free.
VIII. Linux is fully supported by community.
IX. Proprietary linux is also available by different vendors like Montavista, QNX, timesys, windriver etc.
X. Linux has support of more then 150 processors.
Features of Embedded Linux
I. Configurable kernel: Configurable features, Configurable size, Configurable functionality
II. Device Support: wide range of device are supported like USB, Ethernet etc.
III. Royalty Free:No need to pay royalty to for any type of product.
IV. Support for many embedded applications: Database (SQL Lite, Metalite), webserver (Boa, thttpd) Graphics (PEG, Nano )
V. Open Source: Source code can be customized for specific need of embedded system
Following are the essential for embedded linux setup:
1. Embedded system development board (like ARM9 board)
2. Host PC
3. Serial cable
4. Ethernet cross cable
5. Embedded linux kernel running in board
Features of Embedded Linux
Configurable kernel: Configurable features, Configurable size, Configurable functionality
Device Support: wide range of device are supported like USB, Ethernet etc.
Royalty Free:No need to pay royalty to for any type of product.
Support for many embedded applications: Database (SQL Lite, Metalite), webserver (Boa, thttpd) Graphics (PEG, Nano )
Open Source: Source code can be customized for specific need of embedded system
Benefit of using Embedded Linux:
There are so many benefits of using embedded linux. Let looks some of them.
1. Vendor independent
Using linux means you are no longer depend on particular vendor for supply of tools. In linux everything is available from open source community. Even service model of all linux vendors is almost same they used to provide linux kernel, libraries etc. So, user can easily switched from one vendor to another.
And even if user wants to go without vendor, every thing is freely available. But in that case of the work of integration, BSP development has to be done by use itself.
2. Easy availability of used tools
In embedded linux so many development tools and utilities are easily available. User can download them and use them freely. So this result in fast development time for embedded system products.
3. Various hardware supports
Linux community is very active. They regularly add support of new hardware. Linux is used in various research laboratories and universities worldwide, so linux is always upto date with latest hardware support.
4. Low cost development
By using linux in embedded system product, we can development low cost products. Linux development tools are free and easily available. Linux is royalty free. There is no need to pay royalty for making any number of products.