Operating Systems Junior
Explain the concept of a deadlock in the context of operating systems.
Select the correct answer
A deadlock is a type of error that happens when there is a mismatch in process priorities.
A deadlock occurs when a process terminates unexpectedly without releasing its resources.
A deadlock is a mechanism used to synchronize processes in an operating system.
A deadlock is a situation where two or more processes are unable to proceed because each is waiting for the other to release resources.
What is a page fault?
Select the correct answer
A page fault occurs when a program exceeds its allocated memory limit.
A page fault occurs when a program tries to access data that is not currently in physical memory.
A page fault is a security mechanism to prevent unauthorized access to memory.
A page fault happens when there is an error in the paging file of the operating system.
Explain the difference between preemptive and non-preemptive scheduling.
Select the correct answer
Preemptive scheduling allows the operating system to interrupt and switch processes, while non-preemptive scheduling does not.
Preemptive scheduling is a hardware feature, while non-preemptive scheduling is a software feature.
Preemptive scheduling runs processes in the background, while non-preemptive scheduling runs processes in the foreground.
Preemptive scheduling is used only for high-priority tasks, while non-preemptive scheduling is for low-priority tasks.
What is a shell in the context of operating systems?
Select the correct answer
A shell is a type of hardware that connects peripherals to a computer.
A shell is a graphical user interface for designing software applications.
A shell is a command-line interpreter that provides an interface for users to interact with the operating system.
A shell is an operating system feature that manages system memory.
Explain the concept of a semaphore.
Select the correct answer
A semaphore is a hardware component that manages memory in a computer.
A semaphore is a function used to execute threads in a specific order.
A semaphore is a signaling mechanism used to control access to shared resources in concurrent programming.
A semaphore is a programming language used for developing concurrent applications.
What is a mutex, and why is it important in concurrent programming?
Select the correct answer
A mutex is a synchronization primitive used to prevent multiple threads from accessing a shared resource concurrently.
A mutex is a type of variable used to store multiple values in concurrent programming.
A mutex is a function that schedules tasks in concurrent programming.
A mutex is an error-checking mechanism in concurrent programming.
Explain the concept of a file system and its components.
Select the correct answer
A file system is a protocol used for transferring files over the internet.
A file system organizes and manages files on a storage device and includes components such as directories, files, and metadata.
A file system is a software application used to edit text files.
A file system is the hardware component that stores data in a computer.
What is virtual memory?
Select the correct answer
Virtual memory is a memory management technique that provides an idealized abstraction of the storage resources.
Virtual memory is a type of hard disk used for temporary storage.
Virtual memory is the physical RAM installed on the computer.
Virtual memory refers to the virtual storage space provided by cloud services.
Explain the difference between a process and a thread.
Select the correct answer
A process runs in the background, while a thread runs in the foreground.
A process is a function within a program, while a thread is a program that runs independently.
A process and a thread are the same, both being the smallest unit of execution in a system.
A process is an independent program in execution, while a thread is a lightweight process that exists within a process.
What is an operating system?
Select the correct answer
An operating system manages hardware and software resources on a computer.
An operating system is a hardware component that speeds up computing tasks.
An operating system is a type of application software used for browsing the internet.
An operating system is used to write and compile code in various programming languages.