ESD 401T -  Embedded Linux  
 

Indicative contents

  • Introduction to general purpose OS, Generic Architecture of an Embedded Linux System, Linux history and Linux Architecture Overview, Thread and Process Context, Context switching, Process Management – Signal, interrupts, Timers, Scheduling, booting – Types of boot Configuration, Types of boot loaders, Memory Management – Paging, process address space, page fault handling, File Systems – Virtual file system Case Study: Linux Proc File System, Kernel module, basics for writing Device Driver, System calls handler and service routines, Implementation of system call
    Making Embedded Linux by reconfiguration of Linux kernel - Host/Target Development Setup, Architecture Support, Bus and Interfaces, I/O, Storage (MTD), General Purpose Networking
    Porting Linux over Target using Embedix or PCS: - Tool chain building, building kernel Image, creating root file system, binary image formation, deployment over the target.

     

Module Resources

  • Essential reading
    1. Course notes
  • Recommended Reading
    1. Maurice J. Bach, The Design of the UNIX Operating System, Prentice Hall, ISBN: 0-13-201757-1, 1986.
    2. KARIM YAGHMOUR, “building embedded Linux System”, O’RELLY publication, ISBN 81-7366-659-8
    3. Michael Beck, Linux Kernel Internals, Addison-Wesley, ISBN: 0-201-33143-8, 1997.
    4. Robert Love, “Linux kernel development”, Novell press, ISBN 81-297-0959-7
    5. Alessandro Rubini, Linux Device Drivers, O'Reilly & Associates, ISBN: 1-56592-292-1, 1998.
    6. Alessandro Rubini and Jonathan Corbet, Linux Device Drivers, O'Reilly & Associates, 2nd Edition, ISBN: 0-59600-008-1, 2001
    7. Samuel J. Leffler, Marshall Kirk McKusick, Michael J. Karels, John S. Quarterman, The Design and Implementation of the 4.3 BSD UNIX Operating System, Addison-Wesley, ISBN: 0-201-06196-1, 1989
    8. Marshall Kirk McKusick, Keith Bostic, Michael J. Karels, John S. Quarterman, The Design and Implementation of the 4.4 BSD UNIX Operating System, Addison-Wesley, ISBN: 0-201-54979-4, 1996
    9. Uresh Vahalia, Unix internals - the new frontiers, Prentice Hall, ISBN: 0-13-101908-2, 1996.
    10. Scott Maxwell, Linux Core Kernel Commentary. Guide to Insider's Knowledge on the Core Kernel of the Linux Code, Coriolis, ISBN: 1-57610-469-9, 1999.