ETH 780 Information Security
Download
Report
Transcript ETH 780 Information Security
uClinux course
1
Overview
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
Author: D L Johnson
2
uClinux course
Day 1 of 5
Survey of embedded operating systems - why uclinux?
3
uClinux 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
Author: D L Johnson
4
uClinux 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
Author: D L Johnson
5
uClinux day 1 of 5 Why uclinux
Author: D L Johnson
6
uClinux 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
Author: D L Johnson
7
uClinux 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
Author: D L Johnson
8
uClinux day 1 of 5 Why uclinux
Devices that use uClinux
Author: D L Johnson
9
uClinux day 1 of 5 uClinux environment
Kernel
uClibc
Userland
Cross compiler and linker
Image.bin
Author: D L Johnson
10
uClinux day 1 of 5 uClinux environment
Author: D L Johnson
11
uClinux 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
Author: D L Johnson
12