Computer Science MCQS

Computer Science MCQ with detailed explanations for students & freshers preparing for entrance exams, various tests, interviews, competitive exams like GATE exam, interview, competitive examination and entrance exam.

The main memory accommodates __

A. a) cpu
B. b) user processes
C. c) operating system
D. d) all of the mentioned
Correct answer is: C. c) operating system
c) operating system

The main memory primarily accommodates the operating system. It stores the core components of the OS, which are essential for managing the computer's resources and controlling its operations. While user processes and parts of the CPU (registers, cache) also reside in memory, the operating system is the primary occupant and manager of main memory.

Swapping _ be done when a process has pending I/O, or has to execute I/O operations only into operating system buffers.

A. a) must never
B. b) maybe
C. c) can
D. d) must
Correct answer is: A. a) must never
a) must never

Swapping a process with pending I/O or one that is executing I/O operations into operating system buffers is not advisable because:

Inconsistency: If a process is swapped out while waiting for I/O, the I/O completion might occur while the process is not in memory. This can lead to data inconsistency.

Overhead: Continuously swapping processes in and out due to I/O operations can introduce significant overhead, impacting system performance.

To avoid these issues, operating systems typically employ techniques like buffering or double buffering to handle I/O operations without requiring process swapping.

A deadlock avoidance algorithm dynamically examines the __ to ensure that a circular wait condition can never exist.

A. a) operating system
B. b) resources
C. c) system storage state
D. d) resource allocation state
Correct answer is: D. d) resource allocation state
This means it looks at the current allocation of resources to processes and the maximum resource needs of each process to determine if granting a resource request would lead to a deadlock. By analyzing this information, the algorithm can prevent deadlock by denying requests that could potentially create a circular wait.

The Banker's Algorithm is a classic example of a deadlock avoidance algorithm.

 For an effective operating system, when to check for deadlock?

A. a) every time a resource request is made at fixed time intervals
B. b) at fixed time intervals
C. c) every time a resource request is made
D. d) none of the mentioned
Correct answer is: A. a) every time a resource request is made at fixed time intervals
Checking for deadlock every time a resource request is made is the most effective approach.

This is because:

Early detection: It allows for immediate identification of potential deadlocks, preventing them from escalating.

Resource optimization: By detecting deadlocks early, the system can take corrective actions, such as process termination or resource preemption, to avoid system-wide issues.

Efficient resource utilization: Continuously monitoring resource requests helps in optimizing resource allocation and preventing deadlocks.

While checking at fixed intervals might be less computationally expensive, it increases the risk of missing deadlock conditions, especially if the interval is too long.

Therefore, checking for deadlock at every resource request offers the best balance between efficiency and deadlock prevention.

The FCFS algorithm is particularly troublesome for __

A. a) operating systems
B. b) multiprocessor systems
C. c) time sharing systems
D. d) multiprogramming systems
Correct answer is: C. c) time sharing systems
FCFS (First Come First Served) is particularly troublesome for time-sharing systems.

In time-sharing systems, multiple users share the CPU, and each user expects a quick response. FCFS, where processes are executed in the order they arrive, can lead to long wait times for users whose processes are behind long-running ones. This results in poor responsiveness and user dissatisfaction.

To address this, time-sharing systems typically use scheduling algorithms like Round Robin or Priority scheduling, which provide better fairness and responsiveness.

The portion of the process scheduler in an operating system that dispatches processes is concerned with __

A. a) assigning ready processes to waiting queue
B. b) assigning running processes to blocked queue
C. c) assigning ready processes to CPU
D. d) all of the mentioned
Correct answer is: C. c) assigning ready processes to CPU
The portion of the process scheduler that dispatches processes is concerned with assigning ready processes to the CPU.

This means it's responsible for selecting which process from the ready queue will be allocated the CPU for execution.

Transient operating system code is a code that __

A. a) stays in the memory always
B. b) never enters the memory space
C. c) comes and goes as needed
D. d) is not easily accessible
Correct answer is: C. c) comes and goes as needed
Transient operating system code is code that comes and goes as needed. It's not permanently resident in memory. This type of code is often used for specific tasks or functions that are not required continuously. For example, device drivers or certain system utilities might be loaded into memory only when needed and then unloaded to free up memory space for other processes.

When a process is in a “Blocked” state waiting for some I/O service. When the service is completed, it goes to the __

A. a) Terminated state
B. b) Suspended state
C. c) Running state
D. d) Ready state
Correct answer is: D. d) Ready state
When a process is in a "Blocked" state waiting for I/O, it goes to the Ready state once the I/O operation completes.

A process enters the Blocked state when it needs to wait for an external event, such as I/O completion. Once the wait is over, the process is ready to resume execution and is moved to the Ready state. It then competes with other ready processes for the CPU.

Cascading termination refers to the termination of all child processes if the parent process terminates __

A. a) Normally or abnormally
B. b) Abnormally
C. c) Normally
D. d) None of the mentioned
Correct answer is: A. a) Normally or abnormally
Cascading termination occurs when both normal and abnormal termination of a parent process leads to the termination of all its child processes.

 In a timeshare operating system, when the time slot assigned to a process is completed, the process switches from the current state to?

A. a) Suspended state
B. b) Terminated state
C. c) Ready state
D. d) Blocked state
Correct answer is: C. c) Ready state
Ready state.

When a process's time slot ends, it means the process is still able to run but needs to wait for its turn again. So, it moves to the ready state, indicating it's prepared to resume execution as soon as the CPU becomes available.

Scroll to Top