/QNX-Client-Server

Used the QNX Operating System to develop Client - Server Real Time Application

Primary LanguageC

QNX-Client-Server

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.