Operating System Interview Question and Answers
1.
|
What is an operating system?
|
|
An
operating system is a program that acts as an intermediary between the user
and the computer hardware. The purpose of an OS is to provide a convenient
environment in which user can execute programs in a convenient and efficient
manner. It is a resource allocator responsible for allocating system
resources and a control program which controls the operation of the computer
hardware.
|
2.
|
Why paging is used?
|
|
Paging
is solution to external fragmentation problem which is to permit the logical
address space of a process to be noncontiguous, thus allowing a process to be
allocating physical memory wherever the latter is available.
|
3.
|
Explain the concept of the batched operating systems?
|
|
In
batched operating system the users gives their jobs to the operator who sorts
the programs according to their requirements and executes them. This is time
consuming but makes the CPU busy all the time.
|
4.
|
What is purpose of different operating systems?
|
|
The
machine purpose workstation individual usability &resources utilization
mainframe optimize utilization of hardware PC support complex games, business
application Hand held PCs Easy interface & min. power consumption.
|
5.
|
What is virtual memory?
|
|
Virtual
memory is hardware technique where the system appears to have more memory
that it actually does. This is done by time-sharing, the physical memory and
storage parts of the memory one disk when they are not actively being used.
|
6.
|
What is Throughput, Turnaround time, waiting time and Response time?
|
|
Throughput : number of processes that complete their execution per time
unit.
Turnaround time : amount of time to execute a particular process. Waiting time : amount of time a process has been waiting in the ready queue. Response time : amount of time it takes from when a request was submitted until the firstresponse is produced, not output (for time-sharing environment). |
7.
|
What are the various components of a computer system?
|
|
§ The hardware
§ The operating system
§ The application
programs
§ The users.
|
8.
|
What is a Real-Time System?
|
|
A real
time process is a process that must respond to the eventswithin a certain
time period. A real time operating system is an operating system that can run
realtime processes successfully.
|
9.
|
Explain the concept of the Distributed systems?
|
|
Distributed
systems work in a network. They can share the network resources,communicate
with each other.
|
10.
|
What is SCSI?
|
|
SCSI - Small
computer systems interface is a type of interface used for computer
components such as hard drives, optical drives, scanners and tape drives. It
is a competing technology to standard IDE (Integrated Drive Electronics).
|
11.
|
What is a sector?
|
|
Smallest
addressable portion of a disk.
|
12.
|
What are the different operating systems?
|
|
§ Batched operating
systems
§ Multi-programmed
operating systems
§ Timesharing operating
systems
§ Distributed operating
systems
§ Real-time operating
systems.
|
13.
|
What is busy waiting?
|
|
The
repeated execution of a loop of code while waiting for an event to occur is
called busy waiting.
|
14.
|
What are system calls?
|
|
System
calls provide the interface between a process and the operating system.
System calls for modern Microsoft windows platforms are part of the win32
API, which is available for all the compilers written for Microsoft windows.
|
15.
|
What are various scheduling queues?
|
|
§ Job queue
§ Ready queue
§ Device queue
|
16.
|
What are java threads?
|
|
Java is
one of the small number of languages that support at the language level for
the creation and management of threads. However, because threads are managed
by the java virtual machine (JVM), not by a user-level library or kernel, it
is difficult to classify Java threads as either user- or kernel-level.
|
17.
|
What are types of threads?
|
|
§ User thread
§ Kernel thread
|
18.
|
What is a semaphore?
|
|
It is a
synchronization tool used to solve complex critical section problems. A
semaphore is an integer variable that, apart from initialization, is accessed
only through two standard atomic operations: Wait and Signal.
|
19.
|
What is a deadlock?
|
|
Deadlock
is a situation where a group of processes are all blocked and none of them
can become unblocked until one of the other becomes unblocked. The simplest
deadlock is two processes each of which is waiting for a message from the
other.
|
20.
|
What is cache memory?
|
|
Cache
memory is random access memory (RAM) that a computer microprocessor can
access more quickly than it can access regular RAM. As the microprocessor
processes data, it looks first in the cache memory and if it finds the data
there (from a previous reading of data), it does not have to do the more
time-consuming reading of data.
|
21.
|
What is thrashing?
|
|
It is a
phenomenon in virtual memory schemes when the processor spends most of its
time swapping pages, rather than executing instructions. This is due to an
inordinate number of page faults.
|
22.
|
What are the states of a process?
|
|
§ New
§ Running
§ Waiting
§ Ready
§ Terminated
|
23.
|
What is a binary semaphore?
|
|
A binary
semaphore is one, which takes only 0 and 1 as values. They are used to
implement mutual exclusion and synchronize concurrent processes.
|
24.
|
What is a job queue?
|
|
When a
process enters the system it is placed in the job queue.
|
25.
|
What is a ready queue?
|
|
The
processes that are residing in the main memory and are ready and waiting to
execute are kept on a list called the ready queue.
|
26.
|
What are turnaround time and response time?
|
|
Turnaround
time is the interval between the submission of a job and its completion.
Response time is the interval between submission of a request, and the first response to that request. |
27.
|
What are the operating system components?
|
|
§ Process management
§ Main memory management
§ File management
§ I/O system management
§ Secondary storage
management
§ Networking
§ Protection system
§ Command interpreter
system
|
28.
|
What is mutex?
|
|
Mutex is
a program object that allows multiple program threads to share the same
resource, such as file access, but not simultaneously. When a program is
started a mutex is created woth a unique name. After this stage, any thread
that needs the resource must lock the mutex from other threads while it is
using the resource. the mutex is set to unlock when the data is no longer
needed or the routine is finished.
|
29.
|
What is Marshalling?
|
|
The
process of packaging and sending interface method parameters across thread or
process boundaries.
|
30.
|
What are residence monitors?
|
|
Early
operating systems were called residence monitors.
|
31.
|
Why thread is called as a lightweight process?
|
|
It is
called light weight process to emphasize the fact that a thread is like a
process but is more efficient and uses fewer resources( n hence “lighter”)and
they also share the address space.
|
32.
|
What are operating system services?
|
|
§ Program execution
§ I/O operations
§ File system
manipulation
§ Communication
§ Error detection
§ Resource allocation
§ Accounting
§ Protection
|
33.
|
What is a process?
|
|
A
program in execution is called a process. Or it may also be called a unit of
work. A process needs some system resources as CPU time, memory, files, and
i/o devices to accomplish the task. Each process is represented in the
operating system by a process control block or task control block
(PCB).Processes are of two types
Operating system processes User processes |
34.
|
What are the different job scheduling in operating systems?
|
|
Scheduling
is the activity of the deciding when process will receive the resources they
request.
FCFS ---> FCSFS stands for First Come First Served. In FCFS the job that has been waiting the longest is served next. Round Robin Scheduling--->Round Robin scheduling is a scheduling method where each process gets a small quantity of time to run and then it is preempted and the next process gets to run. This is called time-sharing and gives the effect of all the processes running at the same time Shortest Job First ---> The Shortest job First scheduling algorithm is a nonpreemptive scheduling algorithm that chooses the job that will execute the shortest amount of time. Priority Scheduling--->Priority scheduling is a scheduling method where at all times the highest priority process is assigned the resource. |
35.
|
What is dual-mode operation?
|
|
In order
to protect the operating systems and the system programs from the
malfunctioning programs the two mode operations were evolved
System mode User mode. |
36.
|
What is a device queue?
|
|
A list
of processes waiting for a particular I/O device is called device queue.
|
37.
|
What are the different types of Real-Time Scheduling?
|
|
Hard
real-time systems required to complete a critical task
within a guaranteed amount of time.
Soft real-time computing requires that critical processes receive priority over less fortunate ones. |
38.
|
What is starvation ?
|
|
Starvation
is a resourcemanagement problem where a process does not get the resources it
needs for a long time because the resources are being allocated to other
processes.
|
39.
|
What is a long term scheduler & short term schedulers?
|
|
Long
term schedulers are the job schedulers that
select processes from the job queue and load them into memory for execution.
The Short term schedulers are the CPU schedulers that select a process form the ready queue and allocate the CPU to one of them. |
40.
|
What is fragmentation?
|
|
Fragmentation
occurs in a dynamic memory allocation system when many of the free blocks are
too small to satisfy any request.
|
41.
|
What is context switching?
|
|
Transferring
the control from one process to other process requires saving the state of
the old process and loading the saved state for new process. This task is
known as context switching.
|
42.
|
What is relative path and absolute path?
|
|
Absolute
path--
Exact path from root directory.
Relative path-- Relative to the current path. |
43.
|
What are the disadvantages of context switching?
|
|
Time
taken for switching from one process to other is pure over head. Because the
system does no useful work while switching. So one of the solutions is to go
for threading when ever possible.
|
44.
|
What is the state of the processor, when a process is waiting for some
event to occur?
|
|
Waiting
state
|
45.
|
What is the difference between Primary storage and secondary storage?
|
|
Main
memory - only large storage media that the CPU can access directly.
Secondary storage - extension of main memory that provides large nonvolatile storage capacity. |
46.
|
What is process synchronization?
|
|
A
situation, where several processes access and manipulate the same data
concurrently and the outcome of the execution depends on the particular order
in which the access takes place, is called race condition. To guard against
the race condition we need to ensure that only one process at a time can be
manipulating the same data. The technique we use for this is called process
synchronization.
|
47.
|
What is a data register and address register?
|
|
Data
registers - can be assigned to a variety of functions by the programmer.
They can be used with any machine instruction that performs operations on
data.
Address registers - contain main memory addresses of data and instructions or they contain a portion of the address that is used in the calculation of the complete addresses. |
48.
|
What are deadlock prevention techniques?
|
|
§ Mutual exclusion
§ Hold and wait
§ No preemption
§ Circular wait
|
49.
|
What is the difference between Complier and Interpreter?
|
|
An
interpreter reads one instruction at a time and carries out the actions
implied by that instruction. It does not perform any translation. But a
compiler translates the entire instructions.
|
50.
|
What is a Safe State and what is its use in deadlock avoidance?
|
|
When a
process requests an available resource, system must decide if immediate
allocation leaves the system in a safe state. System is in safe state if
there exists a safe sequence of all processes. Deadlock Avoidance : ensure
that a system will never enter an unsafe state.
|
51.
|
What is the difference between microkernel and macro kernel?
|
|
Micro-Kernel : A micro-kernel is a minimal operating system that performs
only the essential functions of an operating system. All other operating
system functions are performed by system processes.
Monolithic : A monolithic operating system is one where all operating system code is in a single executable image and all operating system code runs in system mode. |
52.
|
What is DRAM?
|
|
Dynamic
Ram stores the data in the form of Capacitance, and Static RAM stores the
data in Voltages.
|
53.
|
What are the different functions of Scheduler?
|
|
Scheduler
deals with the problem of deciding which of the process in the ready queue is
to be allocated the CPU. Short Term Schedulers, Long Term Schedulers
|
54.
|
What is a trap and trapdoor?
|
|
Trapdoor
is a secret undocumented entry point into a program used to grant access
without normal methods of access authentication. A trap is a software
interrupt, usually the result of an error condition.
|
55.
|
What are local and global page replacements?
|
|
Local
replacement means that an incoming page is brought in only to the relevant
process' address space. Global replacement policy allows any page frame from
any process to be replaced. The latter is applicable to variable partitions
model only.
|
56.
|
What is cache-coherency?
|
|
In a multiprocessor
system there exist several caches each may containing a copy of same variable
A. Then a change in one cache should immediately be reflected in all other
caches this process of maintaining the same value of a data in all the caches
s called cache-coherency.
|
57.
|
What are the benefits of multithreaded programming?
|
|
§ Responsiveness
§ Resources sharing
§ Economy
§ Utilization of
multiprocessor architectures.
|
No comments:
Post a Comment