Title: uClinux course
1uClinux course
2Overview
- Day 1
- Survey of embedded operating systems - why
uclinux? - The uclinux environment - the directory structure
- Day 2
- Using the configuration tools for the kernel and
user applications - Adding user application to uClinux
- Day 3
- The cross compiling tool chain (gcc, as, ld,
objdump, objcopy) - Ripping apart a "Hello World" - it's not a simple
program! - Memory architecture of the arm7tdmi processor -
configuring uclinux for the arm - Day 4
- To "Boot loader" or not to "Boot loader"
- Hardware access and device drivers
- Day 5
- Debugging applicatgions with gdb
- Downloading applications to the development kit
using JTAG - Running bluetooth stacks on uclinux
3uClinux course
- Day 1 of 5
- Survey of embedded operating systems - why
uclinux?
4uClinux day 1 of 5 Why uclinux
- Why use an operating system
- Memory management
- Thread/process management
- Drivers for input devices such as keyboards,
mouse - Drivers for output devices such as screens,
sound, printers - File system management on disks/flash memory
- What is an embedded operating system
- Runs on small inexpensive microprocessors
- Runs in memory restricted environments even
without MMU - Often no hard drive or disk drive uses flash
based disk - Can run without any screen output or
keyboard/mouse input
5uClinux day 1 of 5 Why uclinux
- What embedded operating systems are available
- Vxworks - pathfinder on Mars (RTOS)
- Nucleus
- QNX (POSIX, RTOS)
- DOS
- How grown operating systems
- Redhat ecos (POSIX, uITRON)
- uClinux
6uClinux day 1 of 5 Why uclinux
7uClinux day 1 of 5 Why uclinux
- Until recently developers of small embedded
systems based on microprocessors lacking MMU
could not take advantage of Linux - uCliknux was started by Arcturus networks in 1997
- Implements Linux on MMU-less processors
- Publicly released back into open source as
alternative OS for the Palm Pilot in February
1998 - Ported to ARM, MIPS, SPARC, Hitachi SH, Motorolla
coldfire - Mature, robust operating system
- Supports large number of devices, filesystems and
network protocols - Large open source community adding features
8uClinux day 1 of 5 Why uclinux
- Large number of applications exist for Linux
which require little or no proting - Vert low cost no royalties
- uClinux may well represent the world's first,
most mature, and most commercially successful
embedded Linux distribution
9uClinux day 1 of 5 Why uclinux
Devices that use uClinux
10uClinux day 1 of 5 uClinux environment
Image.bin
11uClinux day 1 of 5 uClinux environment
12uClinux day 1 of 5 uClinux environment
Configure scripts e.g. menuconfig and xconfig
Documentation on e.g. adding platform and user
apps
Glibc source code
Binary images of uclinux ready to load onto
hardware
uC-libc source code
Linux-2.0.x kernel source code
Linux-2.4.x kernel source code
Contains all architecture settings such as memory
layouts
Driver source code for all peripherals
Romfs contains directory structure of uClinux
uClibc source code
Userland contains all user applications