NEW
Font size
WorksheetsOperating System Concepts
Total questions: 20
Worksheet time: 10mins
What is the primary purpose of an operating system?
Running applications
Managing hardware resources
Providing a graphical user interface
Enabling network connectivity
Which component of an operating system is responsible for managing memory?
Kernel
Shell
Compiler
Scheduler
What is the role of the scheduler in an operating system?
Handling user input
Managing I/O operations
Allocating CPU time to processes
Creating virtual machines
What is the purpose of a context switch in an operating system?
To switch between user mode and kernel mode
To transfer data between processes
To save and restore the state of a process
To allocate memory to processes
Which scheduling algorithm ensures that each process gets an equal amount of CPU time?
Round-Robin
First-Come, First-Served (FCFS)
Shortest Job Next (SJN)
Priority-based
What is the difference between preemptive and non-preemptive scheduling?
Preemptive scheduling can run multiple processes simultaneously, while non-preemptive cannot.
Preemptive scheduling allows processes to voluntarily release the CPU, while non-preemptive does not.
Preemptive scheduling can interrupt running processes, while non-preemptive cannot.
Preemptive scheduling is used in real-time systems, while non-preemptive is used in general-purpose systems.
What is the key difference between a monolithic kernel and a microkernel?
Monolithic kernel is more secure than a microkernel.
Microkernel is smaller and less complex than a monolithic kernel.
Monolithic kernel allows direct communication between kernel components.
Microkernel provides better performance for multitasking.
What is the main advantage of using virtual memory in an operating system?
Increased RAM capacity
Faster access to secondary storage
Better security for sensitive data
The illusion of having more physical memory than actually available
What is a deadlock in an operating system?
A state where a process is waiting for a resource held by another process, creating a circular chain of dependencies.
A state where a process has no work to do and waits indefinitely.
A situation where multiple processes are competing for CPU time.
A state where a process is executing in kernel mode.
Which of the following is NOT a basic process state in the process life cycle?
Running
Ready
Terminated
Stopped
What is the purpose of an operating system's shell?
To manage memory allocation
To manage user accounts and permissions
To provide a graphical user interface
To act as an interface for users to interact with the system through commands
What is the role of a device driver in an operating system?
To manage the execution of tasks
To handle external interrupts
To translate high-level programming languages into machine code
To provide an interface for hardware peripherals
Which component of an operating system is responsible for handling system calls and managing user interactions?
Kernel
Shell
Device drivers
Scheduler
Which scheduling algorithm provides the highest average turnaround time?
First-Come-First-Served (FCFS)
Shortest Job Next (SJN)
Round Robin (RR)
Priority Scheduling
Which memory management scheme allows programs to be executed even if they are not fully loaded into memory?
Virtual Memory
Paging
Segmentation
Demand Paging
Which of the following is an example of a non-preemptive scheduling algorithm?
Shortest Job Next (SJN)
Round Robin (RR)
Priority Scheduling
Multilevel Queue Scheduling
Which memory management scheme allows processes to be allocated memory in non-contiguous blocks?
Segmentation
Paging
Virtual Memory
Swapping
Which of the following is an example of a real-time operating system (RTOS)?
Linux
Windows
Android
VxWorks
The method used by the operating system to control access to a shared resource by multiple processes is called:
Synchronization
Memory mapping
Page swapping
Process scheduling
Which of the following is true regarding threads in multithreading?
Threads do not share the same address space.
Threads share the same address space.
Threads run independently without any coordination.
Threads cannot be created dynamically during runtime.
