Presentation is loading. Please wait.

Presentation is loading. Please wait.

Presented by: GREG UNGERER Lineo Inc 825 Stanley St Woolloongabba Qld 4102 Australia Ph: +61 7 3435 2888 Building x86 Based.

Similar presentations


Presentation on theme: "Presented by: GREG UNGERER Lineo Inc 825 Stanley St Woolloongabba Qld 4102 Australia Ph: +61 7 3435 2888 Building x86 Based."— Presentation transcript:

1 Presented by: GREG UNGERER gerg@lineo.com Lineo Inc 825 Stanley St Woolloongabba Qld 4102 Australia Ph: +61 7 3435 2888 www.lineo.com Building x86 Based Embedded Linux Systems (C) Copyright 2001, Lineo Inc (www.lineo.com)www.lineo.com

2 1. What is an Embedded System? 2. Why x86 CPU's and Linux 3. Howto (booting, kernel, libraries, apps, etc) 4. Demos 5. Thoughts 6. References PRESENTATION OUTLINE (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com

3 "Computing system used within some device or product whose primary function is not to be a computer ” • minimal hardware • reduced/simple or no user interface • physical and cost constraints  " hidden"” from user What is an Embedded System? (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com

4 • not technical reasons! • well understood, documented and common • multiple silicon vendors • wide range of performance and price points • flow down from PC/workstations Why x86 CPU? (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com

5 • source code available • low cost, no license fees • tools freely available (and modifiable) • advanced functionality and features • huge range of software available • active development community • standardized and well known API sets Why use Open Source? (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com

6 • no video console • no mass storage (no hard drive) • minimal RAM • FLASH or ROM as non-volatile storage • how to boot? • how to debug (kernel, apps, etc)? Problems? (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com

7 • x86 boot is complicated (backwards compatibility) • license a conventional BIOS ($$$) • develop your own BIOS (boot loader) • flexible (can use with other OS) • fast • support FLASH and miscellaneous hardware • augment Linux kernel with a loader System Boot (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com

8 • very minimal changes required • configure to suit hardware • remove unwanted drivers • may need to develop new drivers for new hardware Linux Kernel (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com

9 • FLASH or ROM for file store • MTD (Memory Technology Driver) • ROMfs filesystem for read only • JFFS/JFFS2 for real read/write filesystem in FLASH • cramfs in newest Linux kernels • RAM disks can be useful FLASH and Filesystems (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com

10 • Glibc is common choice • very large ~1.5MB • can be leaned up with special tools • uC-libc • light weight ~0.2MB • not a full implementation of standard libc • shared libraries a good thing Libraries (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com

11 • standard Linux apps mostly • some specialized applications around • busybox - standard file and system utilities • sash - small shell • roll your own or use packaged binaries Applications (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com

12 • be very carefull of host build environment  don ’ t use local header files  don ' t link against local libraries • standard gcc/gas/ld tool chain • as86/bcc for boot loader (real mode x86) Tools (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com

13 • VPN router • NAS box Demos (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com

14 • you can do embedded with x86  don ' t expect a PC/Workstation when you do • think small Thoughts (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com

15 • Linux Documentation http://www.linuxdoc.org • Embedded applications (busybox, sash and more) http://www.opensource.lineo.com • MTD driver pages http://www.linux-mtd.infradead.org REFERENCES (C) Copyright 2001, Lineo (www.lineo.com)www.lineo.com


Download ppt "Presented by: GREG UNGERER Lineo Inc 825 Stanley St Woolloongabba Qld 4102 Australia Ph: +61 7 3435 2888 Building x86 Based."

Similar presentations


Ads by Google