This course is the study of fundamentals of design and implementation of real-time operating systems. Most embedded computer systems have dedicated microprocessors as their computational and controlling elements and run real-time operating systems. This course covers concepts, programming languages, tools, hardware, and methodologies used in the construction of real-time operating systems and their peripheral components. Topics include: applications of real-time operating systems; communications between PC computers and embedded systems; fundamental concepts of scheduling (multitasking and interruptions); introduction of basic hardware components used in most real-time operating systems; Hardware description language[VHDL]; and the writing of a real-time operating system [RTOS] using industrial standard C language, debugging, and loading the code to the target hardware.
- Know the characteristics and application areas of embedded systems and real-time operating systems; understand the basic components of embedded computer systems and their interactions among different components (including hardware and software).
- Demonstrate expertise in reading peer reviewed papers in real-time operating systems and explain them in writing.
- Understand and modify Window programs that communicate to peripheral devices such as parallel port, etc. and write code that to be loaded to real hardware or to control the simulator.
- Use circuitry diagrams to represent and modify logic.
- Use electronic equipment's to debug hardware, load the compiled code onto the target system by using chip programmer, etc.
- Use hardware design language VHDL to design and verify embedded systems.
- Use software simulator and in-circuit hardware to test and debug C code written for embedded systems.
- Write application code and system code for different types of real-time operating systems.