Operating System Interview Questions
1) Explain the main purpose of an operating system?
• One is that it is designed to make sure a computer system performs well
by managing its computational activities.
• Another is that it provides an environment for the development and exe-
cution of programs.
2) What is demand paging?
Demand paging is a system wherein area of memory that are not currently being
used are swapped to disk to make room for an application’s need.
3) What are the advantages of a multiprocessor system?
With an increased number of processors, there is considerable increase in
throughput. It can also save more money because they can share resources.
Finally, overall reliability is increased as well.
4) What is kernel?
Kernel is the core of every operating system. It connects applications to the
actual processing of data. It also manages all communications between software
and hardware components to ensure usability and reliability.
5) What are real-time systems?
Real-time systems are used when rigid time requirements have been placed on
the operation of a processor. It has well defined and fixed time constraints.
6) What is virtual memory?
Virtual memory is a memory management technique for letting processes exe-
cute outside of memory. This is very useful especially in an executing program
cannot fit in the physical memory.
7) Describe the objective of multiprogramming.
The main objective of multiprogramming is to have process running at all times.
With this design, CPU utilization is said to be maximized.
8 ) What are time sharing systems?
In a Time sharing system, the CPU executes multiple jobs by switching among
them, also known as multitasking. This process happens so fast that users can
actually interact with each program while it is running.
9) What is SMP?
SMP is short for Symmetric MultiProcessing, and is the most common type
of multiple-processor systems. In this system, each processor runs an identical
copy of the operating system, and these copies communicate with one another
as needed.
1
10) How are server systems classified?
Server systems can be classified as either computer-server systems or file server
systems. In the first case, an interface is made available for clients to send
requests to perform an action. In the second case, provisions are available for
clients to create, access and update files.
11) What is asymmetric clustering?
In asymmetric clustering, a machine is in a state known as hot standby mode
where it does nothing but to monitor the active server. That machine takes the
active server’s role should the server fails.
12) What is a thread?
A thread is a basic unit of CPU utilization. In general, a thread is composed of
a thread ID, program counter, register set and the stack.
13) Give some benefits of multithreaded programming.
– there is an increased responsiveness to the user
– resource sharing within the process
– economy
– utilization of multiprocessing architecture
14) Briefly explain FCFS.
FCFS is short for First-come, first-served, and is one type of scheduling algo-
rithm. In this scheme, the process that requests the CPU first is allocated the
CPU first. Implementation is managed by a FIFO queue.
15) What is RR scheduling algorithm?
RR (round-robin) scheduling algorithm is primarily aimed for time-sharing sys-
tems. A circular queue is setup in such a way that the CPU scheduler goes
around that queue, allocating CPU to each process for a time interval of up to
around 10 to 100 milliseconds.
16) What necessary conditions can lead to a deadlock situation in a
system?
Deadlock situations occur when four conditions occur simultaneously in a sys-
tem:
- Mutual exclusion
- Hold and Wait
- No preemption
- Circular wait.
17) Enumerate the different RAID levels.
RAID 0 – Non-redundant striping
RAID 1 – Mirrored Disks
RAID 2 – Memory-style error-correcting codes
2
RAID 3 – Bit-interleaved Parity
RAID 4 – Block-interleaved Parity
RAID 5 – Block-interleaved distributed Parity
RAID 6 – P+Q Redundancy
18) Describe Banker’s algorithm
Bankers Algorithm
Banker’s algorithm is one form of deadlock-avoidance in a system. It gets its
name from a banking system wherein the bank never allocates available cash in
such a way that it can no longer satisfy the needs of all of its customers.
19) What factors determine whether a detection-algorithm must be
utilized in a deadlock avoidance system?
One is that it depends on how often a deadlock is likely to occur under the
implementation of this algorithm. The other has to do with how many processes
will be affected by deadlock when this algorithm is applied.
20) Differentiate logical from physical address space.
Logical address refers to the address that is generated by the CPU.
Physical address refers to the address that is seen by the memory unit.
21) How does dynamic loading aid in better memory space utiliza-
tion?
With dynamic loading, a routine is not loaded until it is called. This method
is especially useful when large amounts of code are needed in order to handle
infrequently occurring cases such as error routines.
22) What are overlays?
Overlays are used to enable a process to be larger than the amount of memory
allocated to it. The basic idea of this is that only instructions and data that
are needed at any given time are kept in memory.
23) What is the basic function of paging?
Paging is a memory management scheme that permits the physical-address space
of a process to be noncontiguous. It avoids the considerable problem of having
to fit varied sized memory chunks onto the backing store.
24) What is fragmentation?
Fragmentation is memory wasted. It can be internal if we are dealing with
systems that have fixed-sized allocation units, or external if we are dealing with
systems that have variable-sized allocation units.
25) How does swapping result in better memory management?
During regular intervals that are set by the operating system, processes can
be copied from main memory to a backing store, and then copied back later.
Swapping allows more processes to be run that can fit into memory at one time.
3
26) Give an example of a Process State.
– New State – means a process is being created
– Running – means instructions are being executed
– Waiting – means a process is waiting for certain conditions or events to occur
– Ready – means a process is waiting for an instruction from the main processor
– Terminate – means a process is done executing
27) What is a socket?
A socket provides a connection between two applications. Each endpoint of a
communication is a socket.
28) What is Direct Access Method?
Direct Access method is based on a disk model of a file, such that it is viewed
as a numbered sequence of blocks or records. It allows arbitrary blocks to be
read or written. Direct access is advantageous when accessing large amounts of
information.
29) When does trashing occur?
Trashing refers to an instance of high paging activity. This happens when it is
spending more time paging instead of executing.
30) What is the best page size when designing an operating system?
The best paging size varies from system to system, so there is no single best
when it comes to page size. There are different factors to consider in order to
come up with a suitable page size, such as page table, paging time, and its effect
on the overall efficiency of the operating system.
31) When designing the file structure for an operating system, what
attributes are considered?
Typically, the different attributes for a file structure are naming, identifier, sup-
ported file types, and location for the files, size, and level of protection.
32) What is root partition?
Root partition is where the operating system kernel is located. It also contains
other potentially important system files that are mounted during boot time.
33) What are device drivers?
Device drivers provides a standard means of representing I/O devices that
maybe manufactured by different companies. This prevents conflicts whenever
such devices are incorporated in a systems unit.
34) What are the primary functions of VFS?
VFS, or Virtual File System, separates file system generic operations from their
implementation by defining a clean VFS interface. It is also based on a file-
4
representation structure known as vnode, which contains a numerical designator
needed to support network file systems.
35) What are the different types of CPU registers in a typical oper-
ating system design?
– Accumulators
– Index Registers
– Stack Pointer
– General Purpose Registers
36) What is the purpose of an I/O status information?
I/O status information provides info about which I/O devices are to be allocated
for a particular process. It also shows which files are opened, and other I/O
device state.
37) What is multitasking?
Multitasking is the process within an operating system that allows the user
to run several applications at the same time. However, only one application is
active at a time for user interaction, although some applications can run “behind
the scene”.
38) What are some pros and cons of a command line interface?
A command line interface allows the user to type in commands that can imme-
diately provide results. Many seasoned computer users are well accustomed to
using the command line because they find it quicker and simpler. The main
problem with a command line interface is that users have to be familiar with
the commands, including the switches and parameters that come with it. This
is a downside for people who are not fond of memorizing commands.
39) What is caching?
Caching is the processing of utilizing a region of fast memory for a limited data
and process. A cache memory is usually much efficient because of its high access
speed.
40) What is spooling?
Spooling is normally associated with printing. When different applications want
to send an output to the printer at the same time, spooling takes all of these
print jobs into a disk file and queues them accordingly to the printer.
41) What is an Assembler?
An assembler acts as a translator for low level language. Assembly codes, writ-
ten using mnemonic commands are translated by the Assembler into machine
language.
42) What are interrupts?
5
Interrupts are part of a hardware mechanism that sends a notification to the
CPU when it wants to gain access to a particular resource. An interrupt handler
receives this interrupt signal and “tells” the processor to take action based on
the interrupt request.
43) What is GUI?
GUI is short for Graphical User Interface. It provides users with an inter-
face wherein actions can be performed by interacting with icons and graphical
symbols. People find it easier to interact with the computer when in a GUI
especially when using the mouse. Instead of having to remember and type
commands, users just click on buttons to perform a process.
44) What is preemptive multitasking?
Preemptive multitasking allows an operating system to switch between software
programs. This in turn allows multiple programs to run without necessarily
taking complete control over the processor and resulting in system crashes.
45) Why is partitioning and formatting a prerequisite to installing an
operating system?
Partitioning and formatting creates a preparatory environment on the drive so
that the operating system can be copied and installed properly. This includes al-
locating space on the drive, designating a drive name, determining and creating
the appropriate file system structure.
46) What is plumbing / piping?
It is the process of using the output of one program as an input to another. For
example, instead of sending the listing of a folder or drive to the main screen,
it can be piped and sent to a file, or sent to the printer to produce a hard copy.
47) What is NOS?
NOS is short for Network Operating System. It is a specialized software that
will allow a computer to communicate with other devices over the network,
including file/folder sharing.
48) Differentiate internal commands from external commands.
Internal commands are built-in commands that are already part of the operating
system. External commands are separate file programs that are stored in a
separate folder or directory.
49) Under DOS, what command will you type when you want to list
down the files in a directory, and at the same time pause after every
screen output?
a) dir /w
b) dir /p
c) dir /s
d) dir /w /p
6
Answer: d) dir /w /p
50) How would a filenamed EXAMPLEFILE.TXT appear when
viewed under the DOS command console operating in Windows 98?
The filename would appear as EXAMPL~1.TXT . The reason behind this is that
filenames under this operating system is limited to 8 characters when working
under DOS environment.