Hi all,

I guess you might be interested. 

In cooperation with Advanced Research and Competency Developement
Institute, we are organizing a seminar on embedded linux. Quick info:

Course Name:           Fundamentals of Embedded Linux
Schedule:              22-24, 30-31 July 2004
Course Fee:            PHP 17,000
Place:                 Lower Ground Floor of Informatics
                       International College Building, Indo-China Drive,
Northgate Cyberzone, Alabang, Muntinlupa City
Lecturers:             Rowel Atienza and Manuel Ramos


Below is the course desciption. 

For reservations please contact Ms. Christina Bautista with email address:
[EMAIL PROTECTED], cc: Ms. Edith del Rosario with email address:
[EMAIL PROTECTED] or fax to SEIPI office at 844-9037 on or before 12 July
2004. Please make all check payments payable to ADVANCED RESEARCH AND
COMPETENCY DEVELOPMENT INSTITUTE, INC.

thanks,
rowel

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXxx

Fundamentals of Embedded Linux

July 2004, Advanced Research and Competency Development 
Institute, Inc.

 Course Description

The five-day course covers the key components needed in 
building Linux for embedded systems. The coverage 
includes the Linux OS environment, cross-development 
tools, kernel, root filesystem, memory technology 
devices (MTD), bootloader and network services. At the 
end of the course, each participant is expected to 
build his/her own bootable single floppy disk Linux 
system for a PC with common network services (e.g. 
telnet and web servers).

 Overview

The worldwide trend to shift the development of 
embedded systems to a highly scalable, well-supported 
and reliable open-source operating system, Linux, has 
created a huge demand for developers in embedded Linux. 
Fundamentals of Embedded Linux, the first in the three 
key modules, will arm engineers and programmers with a 
well-rounded understanding of how to customize Linux to 
a target hardware. Seven experiments will equip the 
participants with hands-on experience to understand key 
components of an embedded Linux system.

 Objectives

* To give examples of real-world consumer products 
  built on embedded Linux

* To understand key components of an embedded Linux system

* To learn how to build a customized Linux for a target hardware

* To gain basic understanding of licensing issues in 
  using open-source software

 Who Should Attend

Engineers, programmers, instructors and students with 
knowledge on software/hardware design and C language.

 Course Materials

A CD and a printed copy of lecture notes and 
experiments will be provided in advance. The CD 
contains example source codes used in the lecture and 
experiments and open-source tools, utilities and 
software targeted for embedded Linux. Each participant 
will be provided with a Linux PC for the hands-on experiment.

 Course Outline

 Day 1: Overview of Embedded Linux

* Motivation in using Linux for embedded system design. 
  Examples of consumer products built on embedded 
  Linux. Overview of embedded systems (cpu, memory, 
  i/o, bus, real-time vs non-real-time, etc.). Basic 
  understanding of licensing issues (GPL, LGPL, BSD, 
  Mozilla, etc.). 1hr.

 Day 1: Linux OS Environment

* Linux distributions for embedded systems 
  (redhat/fedora, debian, montavista, etc.). Boot 
  process (bootloader, kernel, init, rc, daemons, 
  shell, X, login, security, etc. ), files, 
  directories, devices, filesystem, commands, services, 
  text editor (vi), shell scripting (sh, sed, awk). 3hrs.

* Experiment 1: vi and shell scripting. 4hrs.

 Day 2: Development Tools and Kernel

* GNU Cross-Platform Toolchain, binutils (ar, strip, 
  objdump, etc.), compiler (gnu gcc/g++), C library 
  (glibc, uClibc). 2hrs.

* Experiment 2: Building your own development tools. 4hrs.

* Kernel configuration, build process and installation. 2hrs.

 Day 3: Kernel and Root Filesystem

* Experiment 3: Kernel configuration, build process and 
  installation. 2hrs.

* Root filesystem structure, C library, kernel modules 
  and image, device files, systems applications 
  (busybox, tinylogin), system initialization (init). 2hrs.

* Experiment 4: Building a root filesystem-putting 
  everything together to build a single-floppy Linux. 4hrs.

 Day 4: Network Services

* Network services: inetd, xinetd, snmp, telnet, http, 
  dhcp, ssh. 3hrs.

* Experiment 5: Setting up telnet and web servers in 
  the single floppy Linux. 4hrs.

 Day 5: Memory Technology Devices

* Flash, DoC, CompactFlash, floppy disk, hard disk, 
  filesystem (ext2, ext3, jffs2, cramfs, minix, etc.). 2hrs.

* Experiment 6: Building different filesystems on a 
  floppy disk/USB flash. 2hrs.

 Day 5: Bootloader

* Lilo, grub, network boot (tftp and nfs). 2hrs.

* Experiment 7: Adding a bootloader in the single 
  floppy Linux. 2hrs.

 Lecturers:

Rowel O. Atienza: Currently, a Ph.D. (Systems 
Engineering) candidate at the Australian National 
University. He claims to have developed the world's 
first active gaze tracking system and the algorithm for 
determining the precise 3D location of an object a 
person is looking at. He holds a MEng (1998) from the 
National University of Singapore where he worked on a 
walking algorithm for a four-legged robot. Rowel 
obtained his BSEE (1993- cum laude) from the University 
of the Philippines-Diliman. He honed his experience in 
Linux in the field of robotics and computer vision and 
from more than 3 years of work as a UNIX/Linux systems 
administrator at ANU. Rowel is currently an Assistant 
Professor at UP-Diliman Dept. of Electrical and 
Electronics Engineering and an embedded Linux 
consultant at Eazix Inc. He has published several 
international conference papers and a journal paper in 
the field of fuzzy logic, robotics and multimodal 
interfaces. Contact him at: [EMAIL PROTECTED] 

Manuel C. Ramos Jr.: Currently an Associate Professor 
at the Department of Electrical and Electronics 
Engineering of the University of the 
Philippines-Diliman. He obtained his Ph.D. and M.S. 
degrees from Purdue University, and his BSEE degree 
from the University of the Philippines. His research 
interests include robotics and control. Contact him at: 
[EMAIL PROTECTED]

 Other Embedded Linux Modules:

Linux Systems Programming: The course is designed to 
train each participant to develop his/her own 
application programs in Linux. Topics include: 
development environment (gnu C/C++ compiler, makefile, 
binutils, debugger), processes (fork and its variants), 
i/o (select, poll), files and directories, signals, 
time and timers, Posix threads, critical sections and 
semaphores, mutex, basic network programming (tcp/ip 
client-server), X toolkit programming (Xt/fltk on X11 
and/or flnx on microwindows). Pre-requisite: C but 
topics in X toolkit programming may require some 
knowledge of C++  

Linux Device Driver: The course is designed to train 
each participant in Linux device driver programming. At 
the end of the course each participant will gain 
sufficient skills to develop drivers for pci and usb 
devices. Topics include: overview (kernel structure, 
classes of devices, etc.), basic utilities (modprobe, 
insmod, lsmod, rmmod, dmesg, etc.), portable data 
types, char device (open, close, read and write 
capabilities), debugger, enhanced char device (blocking 
i/o, poll, select and ioctl capabilities), resource 
management, kernel level time and timers, basic memory 
management (kmalloc, vmalloc, ioremap, etc.), i/o ports 
and memory ports, interrupt handling, advance memory 
management (mmap, kiobuf, dma), pci and usb device 
drivers, block and network devices. Pre-requisite: C

--
Philippine Linux Users' Group (PLUG) Mailing List
[EMAIL PROTECTED] (#PLUG @ irc.free.net.ph)
Official Website: http://plug.linux.org.ph
Searchable Archives: http://marc.free.net.ph
.
To leave, go to http://lists.q-linux.com/mailman/listinfo/plug
.
Are you a Linux newbie? To join the newbie list, go to
http://lists.q-linux.com/mailman/listinfo/ph-linux-newbie

Reply via email to