Introduction During the course of a semester at Algonquin college in the CST8244 Real-Time Programming class, I built a Client - Server based bidirectional Real-Time Application on QNX operating System. This was a project in which I learnt about and applied knowledge associated with:
-
Characterize a Real Time Operating System.
- Real Time System Definition.
- Differentiate hard, soft and firm Real-Time systems.
-
Use the QNX Operating System to develop Real Time Applications
- Describe the component structure of the QNX Neutrino Operating System.
- Explain the scheduling algorithms used in the QNX Neutrino OS.
- Start QNX Neutrino in a virtual machine and navigate around the QNX Momentics IDE to perform file.
- Management, source code creation, compiling and linking programs.
- Use the Momentics IDE environment to run and interact with programs within the QNX OS.
- Use QNX Momentics to check file status, process, program and system status.
- Define Process, Thread and their relationship to each other.
- Clearly explain and use the internals of Inter Process Communication (IPC) messages as applied in QNX Neutrino.
- Define and use mutexes and semaphores
- Differentiate between POSIX and non-POSIX functions in QNX Neutrino.
-
Explain and utilize timing and interrupts to be able to create a Real Time system.
- Explain the concepts of interrupt driven systems.
- Explain how to use signals or pulses to have processes or threads respond to interrupts.
- Explain the different types of timers used in a Real Time system.