This course is extensive and contains many advanced concepts. The range of modules covers a full introduction to C, real-time and embedded systems concepts through to the design and implementation of real time embedded or standalone systems based on real-time operating systems and their device drivers. Real time Linux (RTLinux) and eVC++ is used as an example of such a system. The modules include an introduction to the development of WinCE5.0 device drivers or Linux device drivers.
Predominantly intended to be taught to development teams at customer sites it is not expected that any one course would cover the full range of modules in a typical four and half months of period. The course covers all of the important features of the C language as well as a good grounding in the principles and practices of real-time systems development including the POSIX threads (pthreads) specification.
The design of the modules is intended to provide an excellent working knowledge of the C language and its application to serious real time or embedded systems. Those wanting in-depth training specifically on RTLinux or Linux kernel internals or WinCE5.0 or GSM/GPRS should contact us to discuss their requirements; this set of modules is geared more towards providing the groundwork for approaching those domains rather than as in-depth training on a specific approach.
The course contains essential information for anyone developing embedded systems such as real-time control systems, mobile device, PDAs and similar applications. This course is based on many years experience of teaching C, extensive industrial programming experience and also participation in the ANSI X3J11 and BSI standards bodies that produced the standard for C. We focus on the needs of day-to-day users of the language with the emphasis being on practical use and delivery of reliable software.