BC0042 Solved
-
Upload
vipul-desai -
Category
Documents
-
view
218 -
download
0
Transcript of BC0042 Solved
-
7/29/2019 BC0042 Solved
1/14
BC0042 Operating Systems
Question1: What are the services provided by Operating Systems? Explain briefly.
Answer:
Program Execution
The purpose of a computer systems is to allow the user to execute programs. So the operating
systems provides an environment where the user can conveniently run programs. The user does
not have to worry about the memory allocation or multitasking or anything. These things are
taken care of by the operating systems.
Running a program involves the allocating and deallocating memory, CPU scheduling in case of
multiprocess. These functions cannot be given to the user-level programs. So user-level
programs cannot help the user to run programs independently without the help from operating
systems.
I/O Operations
Each program requires an input and produces output. This involves the use of I/O. The operating
systems hides the user the details of underlying hardware for the I/O. All the user sees is that the
I/O has been performed without any details. So the operating systems by providing I/O makes it
convenient for the users to run programs.For efficiently and protection users cannot control I/O
so this service cannot be provided by user-level programs.
File System Manipulation
The output of a program may need to be written into new files or input taken from some files.
The operating systems provides this service. The user does not have to worry about secondary
storage management. User gives a command for reading or writing to a file and sees his her task
accomplished. Thus operating systems makes it easier for user programs to accomplished their
task.
This service involves secondary storage management. The speed of I/O that depends on
secondary storage management is critical to the speed of many programs and hence I think it is
best relegated to the operating systems to manage it than giving individual users the control of it.It is not difficult for the user-level programs to provide these services but for above mentioned
reasons it is best if this service s left with operating system.
Communications:There are instances where processes need to communicate with each other to
exchange information. It may be between processes running on the same computer or running on
the different computers. By providing this service the operating system relieves the user of the
-
7/29/2019 BC0042 Solved
2/14
worry of passing messages between processes. In case where the messages need to be passed to
processes on the other computers through a network it can be done by the user programs.
Error Detection:An error is one part of the system may cause malfunctioning of the complete
system. To avoid such a situation the operating system constantly monitors the system for
detecting the errors. This relieves the user of the worry of errors propagating to various part ofthe system and causing malfunctioning.This service cannot allowed to be handled by user
programs because it involves monitoring and in cases altering area of memory or deallocation of
memory for a faulty process. Or may be relinquishing the CPU of a process that goes into an
infinite loop. These tasks are too critical to be handed over to the user programs. A user program
if given these privileges can interfere with the correct (normal) operation of the operating
systems.
-
7/29/2019 BC0042 Solved
3/14
Question2: What is Micro-kernel? What are the benefits of Micro-kernel?
Answer: As UNIX expanded the kernel became large and difficult to manage. Inthemed-1980s, researches at Carnegie Mellon University developed an operating
system called Mach that modularized the kernel using the microkernel
approach.This method structures the operating system by removing all nonessential
components from the Kernel and implementing then as system and user level
programs.The result is a smaller Kernel.There is a little consensus regarding which
services should remain in the kernel and which should be implemented un user
space. Typically, however micro-kernels provide minimal process and memory
management,in addition to a communication facility.The main function of the
microkernel is to provide a communication facility between the client program and
the various services that are also running in user space.communication is provided
by message passing. On benefit of the microkernel approach is ease of extending
the operating system.All new services are added to user space and consequently donot require modification of the kernel.Several contemporary operating system have
used the microkernel approach.
-
7/29/2019 BC0042 Solved
4/14
Question 3. Draw the diagram for Unix Kernel components and explain about each
components Briefly
Answer:
The figure is divided into three modes: user mode, kernel mode and hardware. Theuser mode contains user program which can access the services of the kernel
components using system call interface.
The kernel mode has four major components: system calls, file subsystem process
control subsystem, and hardware control. The system calls are interface between
user programs and file and process control subsystems. The file subsystem isresponsible for file I/O management through device drivers.
The process control subsystem contains scheduler, Inter-process communication
and memory management. Finally the hardware control is the interface between
these two subsystems and hardware.
-
7/29/2019 BC0042 Solved
5/14
Question4: Explain seven state process models used for OS with necessary diagram.
Answer:
Following are the transitions which occur in the above seven state model.
Blocked to Blocked/suspend: If there are now ready processes in the mainmemory, at least one blocked process is swapped out to make room for another
process that is not blocked.
Blocked/Suspend to Blocked: If a process is terminated making space in the main
memory, and if there is any high priority process which is blocked but suspended,anticipating that it will become free very soon, the process is bought in to the
main memory.
Blocked/Suspend to Ready/Suspend, if the event occurs on which the process waswaiting, as there is no space in the main memory
Ready/Suspend to Ready: If there are no ready processes in the main memory,operating system has to bring one in main memory, and operating system has to
bring one in main memory to continue the execution. Sometimes this transition
takes place even there are ready processes in main memory but having lower
priority than one of the processes in Ready/Suspend state. So the high priority
process is brought in the main memory.
Ready to Ready/suspend: Normally the blocked processes are suspended by theoperating system but sometimes to make large block free, a ready process may be
suspended, In this case normally the low priority processes are suspended.
New to Ready/Suspend: When a new process is created. It should be added to theready state. But sometimes sufficient memory may not be available to allocate to
the newly created process. In this case, The new process is sifted to ready/suspend
-
7/29/2019 BC0042 Solved
6/14
Question5. Define process and threads and differentiate between them.
Answer:Aprocess is an environment in which a program executes.The location of the processdepends on memory management scheme being used.In the simplest case,A process ismaintained in the secondary memory,and to manage this process,atleast small part of thisprocess is maintained in this memory.
Whereas AThread is a single sequence stream within in a process.Because threads have someof the properties of processes,They are sometimes called lightweight processes.In aprocess,thread allow multiple execution of streams.
SIMILARITIES
Like processes threads share CPU and only one thread isrunning at a time.
Like process, Threads within processes executesequentially.
Like processes, thread can create children.
And like process, if one thread is blocked, another threadcan run
DIFFERENCES
Unlike processes, threads are notindependent of one another
Unlike processes, all thread can access
every address in the task
Unlike processes, threads are designed to
assist on another, might or might not
assist one another because process may
originate from different users
Advantages of thread over multiple processes
Content Switching: threads are veryinexpensive to create and destroy, and they
are inexpensive to represent. For example
they require space to store, The PC the SP
and the general purpose registers, but they
do not require space to share memory
information.
Sharing: Threads allow the sharing of a lotresources that cannot be shared in process,
for example, sharing code section, data
section, operating resources like open file
etc.
Disadvantage of threads over
Multiple processes
Blocking:The major disadvantages if
that if the kernel is single threaded a
system call of one thread will block the
whole process and CPU may be idle
during the blocking period.
Security: Since there is an extensive
sharing among threads there is apotential problem of security. It is quite
possible that one thread over writes the
stack of another thread. Although it is
very unlikely since threads are meant to
cooperate on a single task
-
7/29/2019 BC0042 Solved
7/14
-
7/29/2019 BC0042 Solved
8/14
Question6:What is a virtual memory? What are its significance in Operatingsystem?
Answer: Virtual memory refers to the technology in which somespace in hard disk is used as an extension of main memory sothat a user program need not worry if its size extends of mainmemory. If that does happen, at any happen any time only a partof the program will reside in main memory, and other parts willotherwise remain on hard disk and may be switched into memorylater in needed.
This mechanism is similar to the two level memory hierarchy weonce discussed before, including cache and main memorybecause the principal of locality is also a basis here with virtualmemory, If a piece of process that is needed is not in a full mainmemory, Then another piece will be swapped out and the formerbe bought in. As we know he access to hard disk is timeconsuming compared to the access to main memory, thus thereference to the virtual memory space on hard disks willdeteriorate the system performance significantly. Fortunately the
principle of locality holds
-
7/29/2019 BC0042 Solved
9/14
-
7/29/2019 BC0042 Solved
10/14
-
7/29/2019 BC0042 Solved
11/14
-
7/29/2019 BC0042 Solved
12/14
-
7/29/2019 BC0042 Solved
13/14
-
7/29/2019 BC0042 Solved
14/14