Operating System Interview Questions

Operating System Interview Questions

16 mins read4.8K Views Comment
Updated on Sep 12, 2023 18:25 IST

In this article you will find important operating system questions which are likeable to be asked in interview.

2022_05_1-1.jpg

Here’s the list of top Operating system interview questions that you can face in upcoming interviews or exams. This article will give you a basic understanding of different concepts of operating systems.

Also, Explore Functions of Operating System

Q 1. What is an operating system?

Answer: 

The operating system is a software program that facilitates computer hardware to communicate and operate with the software by being the intermediate layer between hardware and software. Without OS, a computer can’t be run and will be useless.

Also explore: What is an operating system?

Recommended online courses

Best-suited Operating Systems courses for you

Learn Operating Systems with these high-rated online courses

– / –
200 hours
– / –
2 months
2 K
20 hours
– / –
3 months
– / –
6 months
3.54 K
1 month
Free
8 hours
2.4 K
6 months

Q 2. What are the main functions of an operating system?

Answer:

  • It makes sure that a computer system act as a manager performing well by managing its computational activities.
  • It helps in the execution of programs.
  • Memory management
  • Device management

Also read: Functions of operating system

Q 3.  What Is Demand Paging?

Answer :

Whenever any process’s page is demanded, the CPU looks in RAM first, and if not found, the OS brings the missing pages from the disk into the RAM. This is a lazy evaluation as only those pages are swapped, which were demanded by the process from secondary storage to main memory.

Also read: Working of Demand Paging in Operating System

Q 4. What are the different types of operating systems?

Answer:

  • Distributed operating systems
  • Batched operating systems
  • Real-time operating systems
  • Timesharing operating systems
  • Multi-programmed operating systems

Also read: Types of operating system

Q 5. What is Kernel?

Answer:

A kernel is considered the most critical part of a computer operating system, acting as the heart of the operating system that provides the OS’s essential services. With the operating system, Kernel is also loaded into memory and remains in memory until the operating system is not shut. It performs various tasks such as memory management, risk management, and task management. 

Also read: Kernel and its types

Q 6. What is a critical section in the operating system?

Answer:

The critical section problem is an important issue to consider when designing operating systems. There are a number of ways to prevent the critical section problem from occurring. One is to have each process wait until the other has finished its critical section before starting its own. Another is to have the operating system check for conflicts and give priority to one process over another.

Q 7. What Is Virtual Memory?

Answer :

Virtual memory is a memory management technique for letting processes execute outside of memory. This is very useful, especially if an executing program cannot fit in the physical memory.

Virtual memory is a volatile memory(temporary)created on a storage drive. Usually, when we open many applications or work on those applications, the RAM is required to execute these applications. But what if RAM is low still you manage to work on those applications. How? In that case, the operating system takes part of the secondary storage device(hard disk), which will now act as RAM until the processes are running.

Also read:Virtual Memory with Real-life analogy

Q 8. What is a deadlock?

Answer:

Deadlock is a blockage situation where each process is waiting for another resource that is acquired by some other process and is holding a resource already. In short, they are waiting for another process to get finished and release the resource.

Consider an example when two cars are coming toward each other on the same track, and there is only one track. None of them can move once they are in front of each other. These two cars will be in a deadlock situation. 

Also read: Deadlock in the operating system

Q 9. What is a thread?

Answer:

A thread is a lightweight process having some of the properties of processes. A single process can have different threads. Threads introduce parallelism and improve the application through it. For example, multiple tabs can be different threads in a browser. MS word uses multiple threads. One thread is for formatting the text. Another thread is to process inputs, etc. 

Also read: Threads and Multi-Threading: Operating system

Q 10. What are the necessary conditions for deadlock?

Answer:

  1. Mutual Exclusion: Only one process can use a resource at a time (Nonsharable resources) 
  2. Hold and Wait: When a process holds at least one resource and waits for other resources. 
  3. No Preemption: Unless the process releases the resource itself, no other resource can it from it.
  4. Circular Wait: A set of processes wait for each other in a circular turn. 

You May Like – Difference Between Paging And Segmentation

Q 11. What are the examples of operating systems?

Answer:

  • Windows
  • MS-DOS
  • Linux
  • macOS
  • Android
  • iOS etc

Q 12. What do you mean by a process?

Answer:

A program, when executed, is known as a process. There are two types of processes:

  • User Processes
  • Operating System Processes

Also read: Process management in the operating system

Q 13. What are the different states of a process?

Answer:

  • New State: It is the first State of a process. This is the state where the process is just created.
  • Ready State: After process creation, the process is supposed to be executed. But it is first put into the ready queue, where it waits for its turn to get executed. 
  • Ready Suspended State: Sometimes, when many processes come into a ready state, then due to memory constraints, some processes are shifted from a ready State to a ready suspended State.
  • Running State: One process from the ready state queue is put into the running state queue by the CPU for execution. And that process will be now in a running state.
  • Waiting or Blocked state: If during execution, the process wants to do I/O operation like writing on file, or some more priority process might come. Then the running process will go in a blocked or waiting state.

Also read: Process scheduling in the operating system

Q 14. What is the advantage of a multiprocessor system?

Answer:

Multiprocessing systems have different processors performing different tasks. If the system has more processors, there will be a considerable increment in throughput. So it is cost-effective and reliable also because they can share resources.

Q 15. What is thrashing?

Answer:

Thrashing is a state in the virtual memory scheme when the processor is not doing any work or executing instructions instead of spending most of its time swapping pages. Data is rapidly exchanged on the hard disks. Thrashing happens as the main memory gets filled, so additional pages should be swapped in and out of the virtual memory. This causes high hard disk access. It can lead to the collapse of the hard drive of the computer.

Q 16. What is RAID? What are the different RAID levels?

Answer:

A redundant Array of Independent Disks(RAID) is used to store the same data redundantly to improve the overall performance.

Following are the different RAID levels:

RAID 0 – Striped Disk Array without fault tolerance.

In this data is stripped between different disks and you can access data at the It offers the best performance, but it does not provide fault tolerance.

RAID 1Mirroring and duplexing

This provides fault tolerance as data is stored on different disks. If one fails then data can be accessed from another drive.

RAID 3Bit-interleaved Parity

Raid 3 is not used much. Data is divided evenly and stored on two or more disks, plus there is a dedicated drive for parity storage.

RAID 5Block-interleaved distributed Parity

Data is divided evenly and stored on two or more disks, plus parity is distributed in different drives.

RAID 6 P+Q Redundancy.

Data is divided evenly and stored on two or more disks, plus parity is distributed in two different drives.

Q 17. What is Banker’s algorithm?

Answer:

It is the deadlock-avoidance method. It is named on the banking system where the bank allocates available cash in such a manner that it can satisfy the requirements of all of its customers by subtracting the loan amount from the total amount of money the bank has. In the same way in the operating system, when a new process is to be executed, it requires some resources. So banker’s algorithm needs to know how many resources the process could possibly request, how many resources are being held by processes and how many resources the system has. And accordingly, resources are being assigned if available resources are more than requested resources in order to avoid deadlock.

Q 18. What is Belady’s Anomaly? 

Answer:

Belady’s anomaly is an anomaly with some page replacement policies where on increasing the number of page frames, there is an increase in the number of page faults. It occurs when the First in First Out page replacement is used. 

Q 19. What is the primary function of paging?

Answer:

Answer: To solve the problem of internal or external fragmentation, we can either compact the memory, making the large free memory blocks, or implement a paging scheme that allows a program’s memory to be non-contiguous, thus permitting a program to be allocated physical memory whenever it is available. So paging is a memory management scheme that removes the requirement of contiguous physical memory allocation.

Also read: Paging in Operating System (OS): Real-life analogy

Q 20. Difference between logical from physical address space.

Answer:

Logical address  Physical address
A logical address is a virtual address generated by the CPU. A physical address is generated by the MMU(Memory management unit).
It is the address of data or instruction used by the program. A physical address is a location in a memory unit mapped to the corresponding logical addresses.
Is not visible to the user Is visible to the user

Q 21. What is a multiprocessor system, and what are the advantages of using it.

Answer:

When a computer system has two or more CPUs, all CPUs share RAM. This system is also known as a tightly coupled or parallel system. The process is divided into different subprocesses, and other processors get different subprocesses to work.

Advantages of multiprocessor system

  1. Increased Throughput: Throughput will increase on using different processors at a time. This leads to shorter response times, and more work is done in less time.
  1. Reduced Cost: Using Multiprocessor systems is more cost-effective than using multiple single processors as it shares resources like devices and memory.
  1. Increased reliability: Multiprocessor systems are more reliable, so the system will still work if one processor fails. 

Q 22. Explain the main functions of file management in OS?

Answer:

  1. Creating and deleting files/ directories-It maintains an optimal file structure for storing files in the memory.
  2. Providing I/O support for multi-users-It provides devices for inputting and outputting data.
  3. Ensuring data in the file is correct-It ensures that the data is not corrupted before storing it.
  4. Back up and restoration of files on storage media-It takes backup of memory and can restore the file in case it is deleted.
  5. Tracking data location-A file is not stored in a contiguous way. It can be stored in different blocks on the disk(non-contiguous way). So there is a need to track in which block which part of the file is stored.
  6. Storing data-It decides where to store the data in memory.

Also read: File System in Operating System

Q 23. What Does Device Driver Mean?

Answer:

It is a software application that allows a computer’s operating system to communicate with other peripheral devices such as printers, sound cards, and graphic cards. In short, it facilitates communication between two devices. 

In previous days, device drivers were written for specific hardware peripherals and operating systems. To recognize the device user had to install the right driver for that particular device manually. But today, most operating systems include a library of plug-n-play drivers using which devices get connected automatically with an operating system.

2022_05_image-258.jpg

Q24. What is cache memory?

Answer:

Cache memory is a small-sized memory that is volatile. That means its contents are stored temporarily. Cache memory is small in size, so it is faster than main memory and secondary memory, as its size is small. So accessing data from cache memory is fast. Whenever the CPU wants to access any data, it first checks the cache memory. If the data is not there in cache memory, the CPU goes to the main memory. 

Also read: Working of Cache Memory in Computer

Q 25. What is spooling?

The full form of SPOOL is simultaneous peripheral operations online. In Spooling, the data is gathered temporarily and executed by the program or device. For e.g., in a printer, we give different printing commands to the printer here. Spooling keeps all the jobs into a disk file and queues them in the order these printing commands were received. Spooling is based on the First in, First out principle. This means the request that comes first will be processed first, and the request which comes later will be processed after that. 

Q 26. What is multiprogramming, and what is the main objective.

Answer:

In multiprogramming, multiple processes are loaded into its main memory (acquire the job pool) and the operating system picks task one by one and start executing them. The following process from the job pool is picked up when the program is not getting executed or requires I/O. In the case of multiple jobs in a ready state, which job to choose is decided through CPU Scheduling. It never leaves a CPU idle and maximizes CPU usage.

Objectives of multiprogramming 

It manages the resources of the system. 

A multiprogramming operating system can execute multiple programs using only one processor machine. 

Also read: Difference Between Multiprogramming and Multitasking

Also read: Difference Between Multiprocessing and Multiprogramming

Q 27. Explain the Booting and Bootstrap program in an operating system.

Answer:

When the computer is turned on, some initial programs are required to run. These initial programs are called bootstrap programs. These programs are stored in ROM or EEPROM. Boostrap program will load the Kernel into RAM.

The process of loading the operating system/kernel is called the booting process.

Q 28. Explain compaction.

Answer:

The free space is broken into different pieces when the processes are loaded and removed from the memory. These free spaces are there in a scattered way. So to store the process, we need to compact these scattered pieces of memory to form a large chunk of memory in case any large process comes in. This process of combining scattered fragments of memory is called compaction.

Q 29. What is the difference between a page and a frame?

Answer:

Programs are stored on secondary storage(hard disk), which is divided into fixed-sized blocks called pages, and in the same way, the main memory is divided into blocks of the same size(as pages) called frames. The “page” is the smallest unit of memory, managed by the computer’s operating system, either in a physical form or virtual. 

So, in short, we can say Physical memory is divided into FRAME, and logical memory is divided into PAGE.

Also read: Difference between process and thread

Q 30. What is context switching?

Answer:

It is the process of switching the CPU from one process to another. Suppose the CPU is executing a program(in running state)is suspended by the CPU, and the CPU executes another process present in the ready state. This switching is so fast that it gives an illusion of simultaneous execution of processes by the CPU. In this case, the old process state is saved before loading the new process. One thing to remember is that no work is done during context switching.

Q 31. How is memory management done in an operating system?

Answer:

Memory management is the primary function of an operating system which is responsible for coordinating and controlling the computer memory by doing the following:

  1. Storing the program in specific locations. 
  2. Keeping track of which program is allocated.
  3. Keeping track of how much memory and which memory location is allocated. 
  4. Tracks the free memory status and accordingly allocates the memory to another process.
  5. It also ensures that another process should not corrupt memory(allocated to process).

Also read: Memory management in Operating system

Q32. Explain round robin with an example.

Answer:

The round-robin algorithm is a scheduling algorithm that is often used in operating systems. The basic idea behind the Algorithm is to give each process a fixed amount of time to execute and then move on to the next cycle. This ensures that all processes get a fair share of the CPU time. This fair share of time is called a time slice.

Let’s understand with an example-

Suppose we have three processes, A, B, and C, that need to be scheduled. We give each process a time slice of 2 seconds. Process A gets to run for 2 seconds, then process B gets to run for 2 seconds, and then process C gets to run for 2 seconds. After that, we start again from process A. This ensures that all processes get a fair share of the CPU time.

Process Burst time
P1 4
P2 6
P3 2

Q33. How to prevent deadlock?

Answer:

1. Mutual Exclusion

When you have sharable resources, there will be no fight for resources, which will prevent deadlock conditions.

2. Hold and Wait

In this condition, a process holding resources is waiting for other resources. But there are ways to eliminate this condition:

  1. When process beforehand specifies the resources it requires. In this way, the process doesn’t have to wait for allocation. 
  2. By releasing all the resources the process is currently holding and then making a new request. 

Note: If the process releases all resources, that can lead to problems as there will be some processes that are not required by any other process.

3. No preemption

Preemption means temporary interruption of program execution. Normally processes can’t be preempted. Suppose some process P1 wants a resource R1 held by process P2. This situation will lead to a deadlock state. But to avoid deadlock, the process P2 is preempted, and resource R1 could be released and given to process P1. Then we can prevent deadlock.

Note: This can lead to an inconsistent state.

4. Circular Wait

We can eliminate this circular wait condition by giving priority to each resource. A process accesses the resources in the increasing order of priority. If a request is made for a low-priority resource(being held by some other resource), the request will be considered invalid.

What are the functions of operating system?

1.It provides an interface between the hardware and applications, enabling users to interact with the computer. The primary functions of an operating system include allocating resources, scheduling tasks, providing security, and managing user accounts.

2. The operating system manages the computer’s memory and processes, allowing applications to run efficiently. It also allows multiple applications to run concurrently.

3. It provides a user interface, enabling users to interact with the computer. It also manages user accounts, providing security and access control.

4. The operating system also manages the computer’s storage and file system, allowing users to store, organize, and access data on a computer. It controls input and output devices, such as printers and scanners, and provides network services, allowing users to connect to other devices over a network.

Also read: Functions of Operating System

Conclusion

In this article, almost all important topics are covered in the form of questions. Tried listing out an important question that can be asked in interviews or exams. If these questions helped you a bit then please share this article with your friends who are preparing for an interview.

About the Author

This is a collection of insightful articles from domain experts in the fields of Cloud Computing, DevOps, AWS, Data Science, Machine Learning, AI, and Natural Language Processing. The range of topics caters to upski... Read Full Bio