qnx real time operating system n.
Skip this Video
Loading SlideShow in 5 Seconds..
QNX ® real-time operating system PowerPoint Presentation
Download Presentation
QNX ® real-time operating system

Loading in 2 Seconds...

play fullscreen
1 / 15

QNX ® real-time operating system - PowerPoint PPT Presentation

  • Uploaded on


I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'QNX ® real-time operating system' - afi

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
qnx real time operating system

QNX® real-time operating system

Prepared By: Farhan Saeed

Submitted To: Professor Marius Soneru

QNX® real-time operating system











QNX® real-time operating system

  • In this report I have tried to cover mostly the architectural issues of QNX RTOS V4.
  • For over 20 years, QNX Software Systems has been setting up the standard for a real-time operating system
  • Real-time applications, for instance, depend on the operating system to handle multiple events within fixed time constraints.

QNX® real-time operating system

the micro kernel
The Micro kernel
  • IPC - the Micro kernel supervises the routing of messages
  • Low-level network communication - the Micro kernel delivers all messages destined for processes on other nodes
  • Process scheduling - the Micro kernel’s scheduler decides which process will execute next
  • First-level interrupt handling - all hardware interrupts and faults are first routed through the Micro kernel, then passed on to the appropriate driver or system manager

QNX® real-time operating system

interprocess communication
Interprocess communication

The QNX Micro kernel supports three essential types of IPC:

  • Messages- the fundamental form of IPC in QNX. They provide synchronous communication between cooperating processes where the process sending the message requires proof of receipt and potentially a reply to the message.
  • Proxies- a special form of message. They're especially suited for event notification where the sending process doesn't need to interact with the recipient.
  • Signals- a traditional form of IPC. They're used to support asynchronous interprocess communication.

QNX® real-time operating system

the process manager
The Process Manager
  • The Process Manager is responsible for creating new processes in the system and managing the most fundamental resources associated with a process
  • QNX supports three process-creation primitives:
  • fork()  The fork() primitive creates a new process that is an exact image of the calling process.
  • exec()The exec() primitive replaces the calling process image with a new process image.
  • spawn()The spawn() primitive creates a new process as a child of the calling process. It can avoid the need to fork() and exec(), resulting in a faster and more efficient means for creating new processes.

QNX® real-time operating system

the process manager1
The life cycle of a process

CREATION : Creating a process consists of allocating a process ID for the new process and setting up the information that defines the environment of the new process.

LOADING : A loader thread does the loading of process images. The loader code resides in the Process Manager, but the thread runs under the process ID of the new process.

EXECUTION: Once the program code has been loaded, the process is ready for execution; it begins to compete with other processes for CPU resources.

TERMINATION : A process is terminated in either of two ways:

a signal whose defined action is to cause process termination is delivered to the process

the process invokes exit(), either explicitly or by default action when returning from main()

The Process Manager

QNX® real-time operating system

the process manager2
A process is always in one of the following states

READY - the process is capable of using the CPU (i.e. it isn't waiting for any event to occur).

BLOCKED - the process is in one of the following blocked states:

HELD - the process has received a SIGSTOP signal. Until it's removed from the HELD state, a process isn't eligible to use the CPU;

WAIT-blocked - the process has issued a wait() or waitpid() call to wait for status from one or more of its child processes.

DEAD - the process has terminated but is unable to send its exit status to its parent because the parent hasn't issued a wait() or waitpid(). A DEAD process is also known as a zombie process.

The Process Manager

QNX® real-time operating system

the file system manager
The File system Manager
  • The Filesystem Manager (Fsys) provides a standardized means of storing and accessing data on disk subsystems.
  • QNX implements at least six types of files; five of these are managed by Fsys:
  • Regular files - consist of randomly accessible sequences of bytes and have no other predefined structure.
  • Directories - contain the information needed to locate regular files; they also contain status and attribute information for each regular file.

QNX® real-time operating system

the file system manager1
The File system Manager
  • Symbolic links - contain a pathname to a file or directory that is to be accessed in place of the symbolic link file. These files are often used to provide multiple paths to a single file.
  • Pipes and FIFOs - serve as I/O channels between cooperating processes.
  • Block special files - refer to devices, such as disk drives, tapes, and disk drive partitions. These files are normally accessed in a manner that hides the hardware characteristics of the device from applications.
  • The Device Manager manages the sixth file type, the character special file. Other managers may manage other file types

QNX® real-time operating system

the device manager
The Device Manager
  • The QNX Device Manager (Dev) is the interface between processes and terminal devices. These terminal devices are located in the I/O namespace with names starting with /dev.
  • The Device Manager process (Dev) manages the flow of data to and from the QNX application processes.
  • The hardware interface is managed by individual driver processes.
  • Data flows between Dev and its drivers through a set of shared memory queues for each terminal device

QNX® real-time operating system

the network manager
The Network Manager
  • The Network Manager (Net) gives QNX users a seamless extension of the operating system's powerful messaging capabilities.
  • Communicating directly with the Micro kernel, the Network Manager enhances QNX's message-passing IPC by efficiently propagating messages to remote machines
  • Network Manager responsibilities
    • The Network Manager is responsible for propagating the QNX messaging primitives across a local area network. The standard messaging primitives used in local messaging are used unmodified in remote messaging. In other words, there's no special "network" Send(), Receive(), or Reply().

QNX® real-time operating system

the network manager1
The Network Manager
  • TCP/IP networking
    • QNX's inherent network support implements a LAN that relies on its own proprietary protocol and is optimized to provide a fast, seamless interface between QNX computers.
    • But to communicate with non-QNX systems, QNX uses the industry-standard set of networking protocols collectively known as TCP/IP.
    • TCP/IP ManagerThe QNX TCP/IP Manager is derived from the Berkeley BSD 4.3 stack.

QNX® real-time operating system

the network manager2
The Network Manager
  • QNX supports the following
  • Socket API is the standard API for TCP/IP programming in the Unix world
  • NFS you graft remote filesystems - or portions of them - onto your local namespace. Files on remote systems appear as part of your local QNX file system
  • SMB –Sever message block which is used by a number of different servers such as Windows NT, Windows 95, and Windows for Workgroups, LAN Manager, and Samba. The SMB fsys file system allows a QNX client to transparently access remote drives residing on such servers

QNX® real-time operating system

  • In concluding remarks I would like to say that QNX RTOS has modern client-server architecture and is completely message-based. The system is robust. QNX also qualifies as a fault-tolerant, fully distributed operating system.

QNX® real-time operating system