This document outlines the course content for an Embedded Systems master's program course on Embedded and Linux Programming. The course covers topics like embedded C programming, mixing C and assembly, I/O programming, Linux kernel overview, porting and debugging Linux, and Linux device drivers. It is a 54-hour course divided into 6 sections that teach programming fundamentals, runtime environments, memory management, the Linux kernel, porting Linux, and Linux device drivers. References for further reading on embedded software and Linux programming are also provided.
This document outlines the course content for an Embedded Systems master's program course on Embedded and Linux Programming. The course covers topics like embedded C programming, mixing C and assembly, I/O programming, Linux kernel overview, porting and debugging Linux, and Linux device drivers. It is a 54-hour course divided into 6 sections that teach programming fundamentals, runtime environments, memory management, the Linux kernel, porting Linux, and Linux device drivers. References for further reading on embedded software and Linux programming are also provided.
Year I (Semester II) (W.E.F. January 2014) Subject Name: Embedded and Linux Programming (725402)
Course Content:
Sr. No. Course Content Hours 1 Embedded C Programming: Basic concepts of programming, Data Types in C, Bit operations and I/O operation, Pointers & Arrays, Structures, Data Structures 10 2 Programming and Run-time Environment: Mixing C and assembly, Basic Compilation Techniques, Compiling, Assembling, Linking, Debugging & Profiling 06 3 I/O Programming & Memory management: Synchronization, transfer rate, latency, Polled waiting loops, interrupt driven I/O, DMA, static and dynamic allocation, shared memory, recursive/reentrant functions 06 4 Linux Kernel Overview: Linux Kernel Overview, Cross compile environment GCC, Tool-chain, Executable and linkable format, Compiling and testing tool chain 07 5 Linux kernel and porting, debugging: Linux kernel architecture, Kernel memory management, Linux boot up sequence, Porting Linux, Linux system services, Boot Loader, Embedded File Systems 15 6 Linux Device Driver: Fundamentals of Device Driver, Device driver architecture, Character device driver, Installing Device Driver, Proc file-system 10 Total 54
Reference Book: 1. Embedded Software Primer by David Simon, 1 st Edition, Eighth Impression, Pearson Education, ISBN 9788177581546 2. Embedded Linux Primer by Christopher Hallinam,2 nd Edition, Prentice Hall Publication, ISBN 0137017839 3. Building Embedded Linux Systems by Karim Yaghmour, O'Reilly Publications, 2 nd
Edition, ISBN 780596529680 4. Embedded Real-time Systems Programming by Sri Ram Iyer and Pankaj Gupta, 1 st
Edition, Tata Mcgraw-Hill Publishing, ISBN 9780070482845 5th book 5th book Any good C book 5. Fundamentals of Embedded Software: Where C and Assembly meet by Daniel W lewis, 1 st Edition, Prentice hall, ISBN 0130615897 6. Advanced Linux Programming by Mark Mitchell, Jeffrey Oldham and Alex Samuel, 1 st
Edition, New Riders Publications, ISBN 0-7357-1043-0 Search this book online