wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

QNX architecture Quiz 1

Total questions: 40

Worksheet time: 16mins

Name
Class
Date
1.

What is the core of the QNX operating system called?

a)

a) Monolithic Kernel

b)

b) Real-Time Executive

c)

c) procnto

d)

d) System Library

2.

In a traditional Real-Time Executive, how do all modules share memory?

a)

a) They use separate address spaces.

b)

b) They share the same address space.

c)

c) They communicate via message passing.

d)

d) They use virtual memory exclusively.

3.

How is the kernel protected from applications in a traditional Monolithic kernel OS?

a)

a) Applications run in the same memory space as the kernel.

b)

b) Applications are processes in protected memory space.

c)

c) The kernel contains all drivers.

d)

d) Driver development is simple.

4.

In the QNX OS, if something goes wrong in a process, how does it affect the kernel?

a)

a) It will cause the kernel to crash.

b)

b) It will require a full system reboot.

c)

c) It would not affect the kernel.

d)

d) It will only affect other applications in the same memory space.

5.

What are the two architecturally different components of procnto?

a)

a) Microkernel and Resource Manager

b)

b) Microkernel and Process Manager

c)

c) Scheduler and System Library

d)

d) Shared Objects and OS Services

6.

Which component of procnto primarily handles threads and IPC?

a)

a) The Process Manager

b)

b) The "Neutrino" microkernel

c)

c) The System Library

d)

d) Resource Managers

7.

Which component of procnto primarily handles processes and memory?

a)

a) The "Neutrino" microkernel

b)

b) The Process Manager

c)

c) Shared Objects

d)

d) The Scheduler

8.

What is the process ID (pid) of the first process in the QNX system?

a)

a) 0

b)

b) 1

c)

c) 100

d)

d) It varies depending on the system.

9.
  • Which of the following is not listed as an example of a process in QNX?

a)
  • a) Disk Drivers

b)
  • b) Network Stack

c)
  • c) GUI components

d)
  • d) Kernel calls

10.

What is a "thread" defined as in QNX?

a)

a) A program loaded into memory.

b)

b) An entity that owns resources.

c)

c) A single flow of execution or control.

d)

d) A shared object.

11.

How do programs deal with the microkernel in QNX?

a)

a) By sending messages directly.

b)

b) By using special library routines called "kernel calls".

c)

c) By directly accessing kernel memory.

d)

d) By using POSIX signals.

12.

Threads within a process share all the process resources.

a)

a) True

b)

b) False

13.

What is a "process" defined as in QNX?

a)

a) A single flow of execution or control.

b)

b) A program loaded into memory.

c)

c) A kernel object.

d)

d) A shared library.

14.

What happens when a thread makes a kernel call?

a)

a) It switches to running user code.

b)

b) It runs at a lower privilege level.

c)

c) It will run at an elevated privilege level.

d)

d) It loses its priority and scheduling algorithm.

15.

How many microkernel threads are there per CPU core in QNX?

a)

a) One

b)

b) Two

c)

c) Three

d)

d) Four

16.

Which of the following is not a form of Interprocess Communication (IPC) provided by the QNX microkernel?

a)

a) Messages

b)

b) Pulses

c)

c) Shared memory

d)

d) Signals

17.

What are QNX Pulses primarily used for?

a)

a) Exchanging information between processes.

b)

b) Delivering notification to a process.

c)

c) Interrupting a process for termination.

d)

d) Queued data delivery.

18.

What is the priority range for threads in QNX?

a)

a) 0 (high) to 255 (low)

b)

b) 0 (low) to 255 (high)

c)

c) 1 (low) to 100 (high)

d)

d) It varies based on the system configuration.

19.

Which priority level is reserved for IPI ISTs?

a)

a) 0

b)

b) 254

c)

c) 255

d)

d) 10

20.

What is the lowest priority level (0) reserved for in QNX scheduling?

a)

a) IPI ISTs

b)

b) In-kernel ISTs

c)

c) Idle threads

d)

d) User applications

21.

What does SMP stand for in the context of multicore systems?

a)

a) Single MultiProcessing

b)

b) Symmetrical MultiProcessing

c)

c) System Management Protocol

d)

d) Software Multitasking Platform

22.

How are READY threads tracked in QNX's cluster-based scheduling?

a)

a) Globally in a shared queue.

b)

b) Per-core ready queues.

c)

c) Per-cluster.

d)

d) In a database.

23.

What function can be used to change which cluster a thread belongs to (core affinity)?

a)

a) ChangeThreadCluster()

b)

b) ThreadSetAffinity()

c)

c) ThreadCtl()

d)

d) SetCoreMask()

24.

What are the two main runnable states for threads in QNX?

a)

a) Running and Blocked

b)

b) Running and Ready

c)

c) Active and Inactive

d)

d) Preempted and Idle

25.

Which scheduling algorithm allows a thread to run until it blocks or is preempted?

a)

a) Round-Robin (RR)

b)

b) Sporadic

c)

c) FIFO (First In First Out)

d)

d) High-priority IST

26.

Which scheduling algorithm in QNX allows a thread to give up the CPU to other threads at the same priority after running for a specific time slice?

a)

a) FIFO

b)

b) Round-Robin (RR)

c)

c) Sporadic

d)

d) High-priority IST

27.

What happens to a preempted thread in QNX?

a)

a) It is terminated.

b)

b) It is placed at the end of the READY list.

c)

c) It is placed at the head of the READY list on its cluster.

d)

d) It becomes blocked.

28.

Which component of QNX is responsible for loading ELF executables and managing address spaces?

a)

a) The Microkernel

b)

b) Resource Managers

c)

c) The Process Manager

d)

d) The System Library

29.

What is a "resource manager" in QNX?

a)

a) A program that only manages hardware.

b)

b) A program that extends the operating system by creating a name in the pathname space and providing a POSIX interface.

c)

c) A part of the microkernel that handles file I/O.

d)

d) A system daemon that provides network services.

30.

What is the correct order of the QNX boot sequence?

a)

a) startup code -> IPL code -> procnto -> boot script

b)

b) IPL code -> procnto -> startup code -> boot script

c)

c) IPL code -> startup code -> procnto -> boot script

d)

d) BIOS -> procnto -> boot script -> startup code

31.

What is the primary function of the QNX Microkernel?

a)

a) To manage hardware resources directly.

b)

d) To execute user applications.

c)

b) To provide a POSIX-compliant interface.

d)

c) To handle interprocess communication and scheduling.

32.

Which of the following best describes the role of Resource Managers in QNX?

a)

c) They are responsible for thread scheduling.

b)

b) They provide services to applications through a defined interface.

c)

d) They handle low-level hardware interrupts.

d)

a) They manage the kernel's memory allocation.

33.

What is the maximum number of threads that can be created per process in QNX?

a)

d) It is system-dependent.

b)

c) 256

c)

b) 128

d)

a) 64

34.

Which function is used to create a new thread in QNX?

a)

a) ThreadCreate()

b)

b) CreateThread()

c)

c) NewThread()

d)

d) ThreadSpawn()

35.

What is the role of the QNX Scheduler?

a)

c) To handle device drivers.

b)

d) To manage file systems.

c)

b) To determine the order of thread execution.

d)

a) To manage memory allocation.

36.

What is the primary function of the QNX microkernel?

a)

a) To manage hardware resources directly.

b)

d) To execute application code.

c)

b) To provide a minimal set of services for process and thread management.

d)

c) To handle user interface components.

37.

How does QNX handle priority inversion in thread scheduling?

a)

c) By preempting all threads.

b)

b) By temporarily elevating the priority of the blocked thread.

c)

a) By ignoring lower priority threads.

d)

d) By using a round-robin scheduling algorithm.

38.

What is the purpose of the QNX message-passing mechanism?

a)

d) To execute system calls.

b)

c) To handle file I/O operations.

c)

b) To manage memory allocation.

d)

a) To allow threads to communicate and synchronize with each other.

39.

What is the primary role of the QNX Process Manager?

a)

c) To schedule threads for execution.

b)

b) To handle process creation and termination.

c)

d) To provide interprocess communication.

d)

a) To manage memory allocation.

40.

What is the function of the QNX Resource Manager?

a)

a) To manage system memory.

b)

d) To execute application code directly.

c)

b) To provide a POSIX interface for device drivers.

d)

c) To handle user input and output.