loading...

CS604 Operating System Assignment 1 Solution Fall 2013

Question 1: [Marks : 05]
Consider a computer system with two processes, P0 and P1. The CPU is switched from P0 to P1 when P0 finishes its CPU burst and needs to wait for an event or the CPU is switched from P1 to P0 when P1 finishes its CPU burst and needs to wait for an event. This means that when one process is using the CPU, the other is waiting for I/O operations. Write the name of technique and also justify with soled reason whether this technique increase the CPU utilization.

Solution: Process management is one of the major functions of the operating system; it involves creating processes and controlling their execution.


In most operating systems, several processes are stored in memory at the same time and the operating system (OS) manages the sharing of the CPU and other resources among the various processes.

This technique in the operating system is called multiprogramming. 

One of the requirements of multiprogramming is that the OS must allocate the CPU and other resources to the various processes in such a way that the CPUand other active resourcesare maintained busythe longest period possible.


If there is only one CPU in the computer system, then only one process can be in execution at any given time.

The other processes are ready, waiting for CPU service. Processes also request access to passive resources, such as memory.

Question 2: [Marks : 05]
Suppose you are a software designer in a company “XYZ” Your client give the following requirement to design a customized operating system
1. Operating system is easier to debug.
2. Operating system is capable to add new servicesto user space and as a result do not require modification of the kernel.
3. Operating system is easy to modify and changes affect only limited sections or modules of the system rather than touching all module or sections of the operating system.
4. Operating system provides a robust level of security.
You are required to propose an operating system by blending of different operating system structures in order to fulfill all of the above requirements.

Solution: 

1: Operating system is easier to debug.

Layered approach is used for this.

In this approach with proper hardware support, OS can be broken into pieces that are smaller and more appropriate than those allowed by the original MS DOS or UNIX system.

Through layered approach a system can be made modular. The bottom layer (Layer 0) is the hardware; the highest layer (Layer N) is the user interface.

The main advantage of layered approach is simplicity of construction and debugging. The layered approach simplifies the debugging and system verification.

The first constructed system in this way was THE (Techniche Hogeschool Eindhoven) operating system by Dijkstra (1968) and IBM’s OS/2 is examples of layered operating systems.

2.  Operating system is capable to add new services to user space and as a result do not require modification of the kernel.

Micro Kernel approach is used.

The main function of the micro kernel is to provide a communication facility between the client program and the various services that are also running in the user space.

The benefits of the micro kernel approach include the ease of extending the OSAll new services are added to user space and consequently do not require modification of the kernel. When the kernel does have to be modified, the changes tend to be fewer because the micro kernel is a smaller kernel. The resulting OS is easier to port from one hard ware

Design to another. It also provides more security and reliability since most services are running as user rather than kernel processes. Mach, MacOS X Server, QNX, OS/2, and Windows NT are examples of microkernel based operating systems. Various types of services can be run on top of the Windows NT microkernel, thereby allowing applications developed for different platforms to run under Windows NT

3.  Operating system is easy to modify and changes affect only limited sections or modules of the    

     System rather than touching all module or sections of the operating system.

Micro Kernel

When the kernel does have to be modified, the changes tend to be fewer because the micro kernel is a smaller kernel. The resulting OS is easier to port from one hard ware design to another. It also provides more security and reliability since most services are running as user rather than kernel processes. Mach, MacOS X Server, QNX, OS/2, and Windows NT are examples of microkernel based operating systems

4.  Operating system provides a robust level of security.

For robust virtual machines are best.

There are two primary advantages to using virtual machines:

First by completely protecting system resources the virtual machine provides a robust level of security.

Second the virtual machine allows system development to be done without disrupting normal system operation.

Conclusion:

I will design an operating system which will blend of layered approach, micro kernel and virtual machine structure.

DOWNLOAD SOLUTION HERE
loading...