[go: up one dir, main page]

0% found this document useful (0 votes)
38 views32 pages

OS Module 1 Complete Solutions

The document provides an overview of operating systems, detailing distinctions between various types such as batch systems, time-sharing systems, hard and soft real-time systems, and distributed operating systems. It outlines the main purposes of an operating system, including resource management, user interface establishment, and application service execution. Additionally, it discusses the roles of CPU idleness, interrupts versus exceptions, and the essential properties of different operating systems.

Uploaded by

nitinsamazing
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
38 views32 pages

OS Module 1 Complete Solutions

The document provides an overview of operating systems, detailing distinctions between various types such as batch systems, time-sharing systems, hard and soft real-time systems, and distributed operating systems. It outlines the main purposes of an operating system, including resource management, user interface establishment, and application service execution. Additionally, it discusses the roles of CPU idleness, interrupts versus exceptions, and the essential properties of different operating systems.

Uploaded by

nitinsamazing
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 32

OPERATING SYSTEMS

MODULE 1

PART-A

1. Distinguish between batch systems and time sharing systems.

Batch Systems:

● There is no direct interaction between the user and the computer.

● Users have to submit a job to a computer operator.

● Then the computer operator places a batch of several jobs on an I/P


device.

● Jobs are batched together by type of language and requirements.

● Then a special program, the monitor, manages the execution of each


program in the batch.

● The monitor is always a main memory and available for execution.

Time Sharing Systems:

● These are very similar to multiprogramming systems and an extension


of multiprogramming systems.

● The prime focus is on minimising the response time, while in


multiprogramming the prime focus is to maximise the CPU usage.

● It allows multiple users to share computers simultaneously.

● A program loaded into memory and executed, it performs a short period


of time either before completion or to complete I/O.
● This short period of time during which the user gets the CPU is known
as time slice, time slot or quantum.

The main difference between Multiprogrammed Batch Systems and Time-Sharing


Systems is that in case of Multiprogrammed batch systems, the objective is to
maximise processor use, whereas in Time-Sharing Systems, the objective is to
minimise response time.

2. Distinguish between hard real time systems and soft real time systems

S.N Hard Real-Time System Soft Real-Time System


O

A hard-real time system is a A soft real-time system is a


system in which a failure to system in which one or more
meet even a single deadline failures to meet the deadline are
1. may lead to complete or not considered complete system
appalling system failure. failure, but that performance is
considered to be degraded.

In a hard real-time system, In a soft real-time system, the


2. the size of a data file is small size of the data file is large.
or medium.

In this system, response time In this system, response time is


3. is predefined that is in a higher.
millisecond.

A hard-real time system has A soft real-time system has less


4. more utility. utility.
5. A hard real-time system has A soft real-time system has
short databases. enlarged databases.

Peak load performance In a soft real-time system, peak


6. should be predictable. load can be tolerated.

7. In this system, safety is In this system, safety is not


critical. critical.

Hard real-time systems have Soft real-time systems have long


8. short term data integrity. term data integrity.

A hard real-time system is A Soft real-time system is less


9. very restrictive. restrictive.

In case of an error in a hard In a soft real-time system,


real-time system, the computation is rolled back to a
10. computation is rolled back. previously established
checkpoint to initiate a recovery
action.

All users of hard real-time All users of soft real-time


11. systems get validation when systems do not get validation.
needed.

Satellite launch, Railway DVD players, telephone


12. signalling systems, and switches, electronic games,
Safety-critical systems are Linux, and many other OS
good examples of a hard provide a soft real-time system.
real-time system.
3. What are the three main purposes of an operating system?

1) Manage the computer’s resources, such as the CPU, memory, disk drives
and printers.

2) Establish a user interface.

3) Execute and provide services for applications software.

4. What is a distributed operating system? What are the advantages of a


distributed operating system?

DOS:

● A distributed operating system (DOS) is an essential type of operating


system. Distributed systems use many central processors to serve
multiple real-time applications and users. As a result, data processing
jobs are distributed between the processors.

● It connects multiple computers via a single communication channel.


Furthermore, each of these systems has its own processor and
memory. Additionally, these CPUs communicate via high-speed buses
or telephone lines. Individual systems that communicate via a single
channel are regarded as a single entity. They're also known as loosely
coupled systems.

● This operating system consists of numerous computers, nodes, and


sites joined together via LAN/WAN lines. It enables the distribution of
full systems on a couple of centre processors, and it supports many
real-time products and different users. Distributed operating systems
can share their computing resources and I/O files while providing users
with virtual machine abstraction.

Advantages:
There are various advantages of the distributed operating system. Some of them are
as follow:

● It may share all resources (CPU, disk, network interface, nodes, computers,
and so on) from one site to another, increasing data availability across the
entire system.

● It reduces the probability of data corruption because all data is replicated


across all sites; if one site fails, the user can access data from another
operational site.

● The entire system operates independently of one another, and as a result, if


one site crashes, the entire system does not halt.

● It increases the speed of data exchange from one site to another site.

● It is an open system since it may be accessed from both local and remote
locations.

● It helps in the reduction of data processing time.

● Most distributed systems are made up of several nodes that interact to make
them fault-tolerant. If a single machine fails, the system remains operational.

5. Explain why you think that idleness in CPU occurs.

A computer processor is described as idle when it is not being used by any


program. Every program or task that runs on a computer system occupies a
certain amount of processing time on the CPU. If the CPU has completed all
tasks it is idle.

Modern processors use idle time to save power. Some programs are designed
to appear to make use of CPU idle time, meaning that they run at a low priority
(but slightly higher than idle priority) so as not to impact programs that run at
normal priority. This allows non-crucial background programs to only run
when it would not affect the performance of other applications. Many
operating systems, for example Windows, Linux, and macOS will run an idle
task, which is a special task loaded by the OS scheduler on a CPU when there
is nothing for the CPU to do.

6. Explain the difference between interrupt and exception.

Interrupt is one of the classes of Exception. There are 4 classes of Exception-


interrupt, trap, fault and abort. Though, interrupt belongs to exceptions still
there are many differences between them.

Interrupt:

The term Interrupt is usually reserved for hardware interrupts. They are
program control interruptions caused by external hardware events. Here,
external means external to the CPU. Hardware interrupts usually come from
many different sources such as timer chip, peripheral devices (keyboards,
mouse, etc.), I/O ports (serial, parallel, etc.), disk drives, CMOS clock,
expansion cards (sound card, video card, etc). That means hardware
interrupts almost never occur due to some event related to the executing
program.

Exception:

Exception is a software interrupt, which can be identified as a special handler


routine. Exceptions can be identified as an automatically occurring trap.
Generally, there are no specific instructions associated with exceptions (traps
are generated using a specific instruction). So, an exception occurs due to an
“exceptional” condition that occurs during program execution

Interrupt Exception

These are Hardware interrupts. These are Software interrupts.

Occurrences of hardware interrupts This is not a true case in terms of


usually disable other hardware Exception.
interrupts.
These are asynchronous external These are synchronous internal
requests for service (like keyboard requests for service based upon
or printer needs service). abnormal events (think of illegal
instructions, illegal address,
overflow etc).

Being asynchronous, interrupts can Being synchronous, exceptions


occur at any place in the program. occur when there is an abnormal
event in your program like, divide
by zero or illegal memory location.

These are normal events and These are abnormal events and
shouldn’t interfere with the normal often result in the termination of a
running of a computer. program

7. Differentiate between tightly coupled systems and loosely coupled


systems.

Loosely Coupled Multiprocessor System

● In this system, every processor has its own memory module.


● It is efficient when there is less interaction between tasks running on
different processors.
● There are no memory conflicts in general.
● It is considered as a Message transfer system (MTS).
● It is less expensive.
● It has a low data rate. It has distributed memory.
● They are usually seen in distributed computing systems

Tightly Coupled Multiprocessor System

● In this system, the processors share memory modules.


● It is efficient when used with real-time processing.
● It provides high speed.
● It has memory conflicts.
● They are connected through networks such as PMIN, IOPIN, ISIN.
● It has a high data rate.
● It is expensive.
● It is usually seen in parallel processing systems.

8. Explain Is OS is a resource manager. If so justify your answer

● Operating system is a resource allocator which manages all resources


and decides between conflicting requests for efficient and fair
resources.
● The operating system provides for an orderly and controlled allocation
of the processors, memories, and I/O devices among the various
programs in the bottom-up view.
● Now-a-days all modern computers consist of processors, memories,
timers, network interfaces, printers, and so many other devices.
● Operating system allows multiple programs to be in memory and run at
the same time. Resource management includes multiplexing or sharing
resources in two different ways: in time and in space.
● In time multiplexed, different programs take a chance of using CPU.
First one tries to use the resource, then the next one that is ready in the
queue and so on. For example: Sharing the printer one after another.
● In space multiplexing, Instead of the customers taking a chance, each
one gets part of the resource. For example − Main memory is divided
into several running programs, so each one can be resident at the same
time.

Refer lecture notes pg.no 2-3

9. Discuss the view of an operating system as a resource manager.


● Operating system is a resource allocator manages all resources and
decides between conflicting requests for efficient and fair resources.
● The operating system provides for an orderly and controlled allocation
of the processors, memories, and I/O devices among the various
programs in the bottom-up view.
● Now-a-days all modern computers consist of processors, memories,
timers, network interfaces, printers, and so many other devices.
● Operating system allows multiple programs to be in memory and run at
the same time. Resource management includes multiplexing or sharing
resources in two different ways: in time and in space.
● In time multiplexed, different programs take a chance of using CPU.
First one tries to use the resource, then the next one that is ready in the
queue and so on. For example: Sharing the printer one after another.
● In space multiplexing, Instead of the customers taking a chance, each
one gets part of the resource. For example − Main memory is divided
into several running programs, so each one can be resident at the same
time.

Refer lecture notes pg.no 2-3

10.Define essential properties of the following types of Operating system:

i) Batch operating system

In a Batch operating system, the user does not have direct access to the
computer and cannot directly interact with it either.

In this type of OS, jobs are prepared for each user, and all those jobs have
been imprinted or stored in the punch card-like structure, which is submitted
to the computer operator.

This kind of operating system mostly works on offline devices and once the
punch card is submitted to the computer operator, the computer works
according to the code or program written on the card.

ii) Interactive operating system

In an Interactive operating system, there is a direct interaction between the


user and the computer. Mostly, all personal computers use Interactive
operating systems. In this kind of operating system, the user enters some
command in the system and the system works according to it.
iii) Time sharing operating system

It is similar to the multiprogramming system with some additional extensions


and also known as Multitasking OS. In a Time sharing OS, the system is
capable of handling multiple jobs simultaneously and here the processing time
is shared among all the users.

With Time sharing OS, users at different locations or terminals can access the
same computer at the same time. Here, the CPU uses the switching
mechanism that helps it to switch from one job to another so that each job
gets equal processing time.

iv) Real time operating system

An RTOS is a data processing system whose response time to the input is very
short. RTOS is also known as the brain of the real-time system because of its
immediate response to the input.

The response to the input in RTOS is displayed in a specific time period.


Though the time period is very short it does not show any kind of disparity.
There are 2 types of Real-Time operating systems:

● Hard Real-Time System: In a Hard Real-Time system, if the response


takes more time than the specified time interval, the system will fail. The
secondary storage is also limited in these systems.
● Soft Real-Time System: The Soft Real-Time system does not fail the
program even if the response takes more time than the specified time. It
would just show the output, however, it can compromise the accuracy
of the response.

v) Distributed operating system

In this operating system, different computers interact with one another and
communicate in order to exchange data. The Internet works on this system
where everyone is linked with each other to communicate. It can also be
termed as the Networking operating system, which supports a high level of
communication.

A Distributed OS uses multiple processors to perform multiple real-time


applications on the user terminal. In this system, the processor does not share
the memory because each CPU has its own local memory.

PART-B

1. Define an operating system. State and explain the basic functions or


services of an operating system

A program that acts as an intermediary between a user of a computer and the


computer hardware.

Operating system is a resource allocator manages all resources and decides


between conflicting requests for efficient and fair resources.

Operating system is a control program that controls execution of programs to


prevent errors and improper use of the computer.

Functions:

● Memory Management: It is also an important function of the operating


system. The memory cannot be managed without an operating system.
● Loading and execution: A program is loaded in the memory before it can
be executed. Operating systems provide the facility to load programs in
memory easily and then execute them.
● Data security: data is an important part of a computer system. The
operating system protects the data stored on the computer from illegal
use, modification or deletion.
● Disk management: operating system manages the disk space. It
manages the stored files and folders in a proper way.
● Process management: CPU can perform one task at one time. If there
are many tasks, the operating system decides which task should get the
CPU.
● Device controlling: the hardware devices are controlled with the help of
small software called device drivers. It keeps track of all devices
connected to the system.
● Job accounting : Operating system Keeps track of time and resources
used by various tasks and users, this information can be used to track
resource usage for a particular user or group of users.
● Error detecting aids : Operating system constantly monitors the system
to detect errors and avoid the malfunctioning of computer system.

2. Explain the differences between multiprogramming and time- sharing


systems

Multiprogramming systems:

Multiprogramming OS is an ability of an operating system that executes more


than one program using a single processor machine.

More than one task or program or jobs are present inside the main memory at
one point of time.

Buffering and spooling can overlap I/O and CPU tasks to improve the system
performance but it has some limitations that a single user cannot always keep
CPU or I/O busy all the time

· The operating system picks up and begins to execute one of the jobs from
memory.

· Once this job needs an input and output operation the operating system
switches to another job.

Time sharing systems:


· These are very similar to multiprogramming systems and an extension of
multiprogramming systems.

· The prime focus is on minimising the response time, while in


multiprogramming the prime focus is to maximise the CPU usage.

· It allows multiple users to share computers simultaneously.

· A program loaded into memory and executes, it performs a short period of


time either before completion or to complete I/O.

· This short period of time during which the user gets the CPU is known as
time slice, time slot or quantum.

3. Explain how operating system services are provided by system calls.

A system call is a method for a computer program to request a service from


the kernel of the operating system on which it is running. A system call is a
method of interacting with the operating system via programs. A system call is
a request from computer software to an operating system's kernel.

There are various situations where you must require system calls in the
operating system. Following of the situations are as follows:

I. It is required when a file system wants to create or delete a file.

II. Network connections require the system calls to send and receive data
packets.

III. If you want to read or write a file, you need to make system calls.

IV. If you want to access hardware devices, including a printer, scanner, you
need a system call.

V. System calls are used to create and manage new processes.


4. Describe the operating system structures.

General purpose operating system is a very large program.

· Various ways to structure ones:

. Simple structure: MS-DOS is written to provide the most functionality


in the least space. Not divided into modules. Although MS-DOS has
come to be structured, its interfaces and levels of functionality are not
well separated.

. More complex: The UNIX OS consists of 2 parts:

Systems programs.

The kernel consists of everything below the sys-call interface &


above the hardware. A large no.of function for one level.

. Layered (an abstraction): The OS is divided into a no. of layers, each


built on top of lower layers. The bottom layer is the hardware, the
highest is the user interface. With modularity, layers are selected such
that each uses functions and services of only lower level layers.

. Microkernel: Moves as much from kernel into user interface. Mach is


an example of a microkernel. Communication takes place between user
modules using message passing.

5. Distinguish between user mode and kernel mode operations of the


operating System

. User mode: When a computer application is running, it is in the user mode.


These are application programs so the computer is in user mode. When the
process is in user mode and requires any hardware resource, that request is
sent to the kernel. As there is a limited access to hardware in this mode, it is
known as less privileged mode, slave mode or restricted mode.
· Kernel mode: A kernel is a software program which is used to access
hardware components of a computer system. Kernel works as a middleware
software for hardware and application software/user programs. Kernel mode
is generally reserved for low level trusted functions of the operating system.
When the process is executing in user mode and if that process requires
hardware resources such as RAM, printer etc, that process should send a
request to the kernel. These requests are sent through system calls.

6. Define the essential properties of the operating systems.

The essential properties of the different types of operating systems are as


follows −

● Batch Operating system

In a Batch operating system, the user does not have direct access to the
computer and cannot directly interact with it either.

In this type of OS, jobs are prepared for each user, and all those jobs
have been imprinted or stored in the punch card-like structure, which is
submitted to the computer operator.

This kind of operating system mostly works on offline devices

Jobs with similar needs are batched together and run through the
computer as a group by an operator or automatic job sequencer.
Performance is increased by attempting to keep CPU and I/O devices
busy at all times through buffering, off line operation, spooling and
multiprogramming.

● Interactive operating system

The system is composed of many short transactions where the results


of the next transaction may be predictable. The response time needs to
be short because the user submits and waits for the result.
● Time sharing Operating system

This system uses CPU scheduling and multiprogramming to provide


economical interactive use of the system. The CPU switches rapidly
from one user to another. Instead of having a job defined by spooled
card images, each program reads its next control card from the
terminal, and output is normally printed immediately to the screen.

● Real-time operating system

Often used in a dedicated application, this system reads information


from sensors and must respond within a fixed amount of time to ensure
correct performance.

● Network operating system

It provides operating system features across a network such as file


sharing.

● Symmetric Multiprocessing (SMP)

It is used in systems where there are multiple CPUs each running the
same copy of the operating system. Communication takes place across
the system bus.

● Distributed Operating system

This system distributed computation among several physical


processors. The processors do not share a memory or a clock. Instead,
each processor has its own local memory. They communicate with each
other through various communication lines, like high-speed buses or
LAN.
7. Explain the architecture of an operating system.

An operating system is a program that acts as an interface between a user of


a computer and the computer resources. The purpose of an operating system
is to provide an environment in which a user may execute programs.

Hardware

The hardware consists of the memory, CPU, arithmetic-logic unit, various bulk
storage devices, I/O, peripheral devices and other physical devices.

Kernel

In computing, the kernel is the central component of most computer operating


systems; it is a bridge between applications and the actual data processing
done at the hardware level. The kernel's responsibilities include managing the
system's resources (the communication between hardware and software
components). Usually as a basic component of an operating system, a kernel
can provide the lowest-level abstraction layer for the resources (especially
processors and I/O devices) that application software must control to perform
its function. It typically makes these facilities available to application
processes through inter-process communication mechanisms and system
calls.
Shell

A shell is a piece of software that provides an interface for users to an


operating system which provides access to the services of a kernel. The name
shell originates from shells being an outer layer of interface between the user
and the innards of the operating system (the kernel). [Wikipedia]

Operating system shells generally fall into one of two categories:


command-line and graphical. Command-line shells provide a command-line
interface (CLI) to the operating system, while graphical shells provide a
graphical user interface (GUI)

Refer here

8. Distinguish between multiprogramming, multitasking and multiprocessing.

Multiprogramming: In this the operating system picks up and begins to


execute one of the jobs from memory. Once this job needs an I/O operation,
the operating system switches to another job (CPU and OS are always busy).
Jobs in the memory are always less than the number of jobs on disk(Job
Pool). If several jobs are ready to run at the same time, then the system
chooses which one to run through the process of CPUScheduling.

In a Non-multiprogrammed system, there are moments when the CPU sits idle
and does not do any work. In a Multiprogramming system, the CPU will never
be idle and keeps on processing.

Multitasking: A multitasking operating system (OS) is one that can work on


more than one task at a time by switching between the tasks very rapidly. The
tasks may all pertain to a single user or to multiple users. A multitasking OS
can save the current state of each user and task so that it does not lose its
place when it comes back to a task to resume its work. This allows the system
to switch smoothly between tasks.
Multiprocessing: consists of several processors that share a common physical
memory. Higher computing power & speed. All processors operate under a
single OS. Multiplicity of the processor & how they act together are
transparent to the others. It enhanced performance. Execution of several tasks
by different processors concurrently. System divides tasks into many subtasks
and then these subtasks can be executed in parallel in different processors.

9. Describe briefly about Batch programming

There is no direct interaction between the user and the computer.

· Users have to submit a job to a computer operator.

· Then the computer operator places a batch of several jobs on an I/P device.

· Jobs are batched together by type of language and requirements.

· Then a special program, the monitor, manages the execution of each


program in the batch.

· The monitor is always a main memory and available for execution.

10.Define MultiTasking and MultiThreading?


● Multi Tasking: A multitasking operating system (OS) is one that can work on
more than one task at a time by switching between the tasks very rapidly. The
tasks may all pertain to a single user or to multiple users. A multitasking OS
can save the current state of each user and task so that it does not lose its
place when it comes back to a task to resume its work. This allows the system
to switch smoothly between tasks.

● Multi Threading: Multithreading is the ability of a program or an operating


system program to manage its use by more than one user at a time and to
even manage multiple requests by the same user without having to have
multiple copies of the programming running in the computer. Majority of
programs written nowadays run as a single thread. These tasks cannot be
executed by the program at the same time. A process is a program being
executed. A process can be further divided into independent units known as
threads.

11. Draw and explain the architecture of windows 2000 and traditional UNIX

Windows 2000 is an operating system first released by Microsoft in February


2000.Code-named Janus during development, Windows 2000 is based on the
Windows NT kernel, and is sometimes referred to as Windows NT 5.0.
Windows 2000 contains over 29 million lines of code, mainly written in C++
with over 8 million of those lines written for drivers. Windows 2000 is by far
one of the largest commercial projects ever built.

Windows 2000 included advanced features and had overall better support for
computer hardware.
Some of the significant features of Windows 2000 Professional are:
● Support for FAT16, FAT32, and NTFS.
● Increased uptime of the system and significantly fewer OS reboot
scenarios.
● Windows Installer tracks applications and recognizes and replaces
missing components.
● Protects memory of individual apps and processes to avoid a single app
bringing the system down.
● Encrypted file systems protect sensitive data.
12. State the differences between system call and system program.

System program: These are the programs that are used and required to run
the system - machine, input output devices and other connected peripherals.
They are also known as System softwares.

System calls: System calls are the calls made by the applications or the
processors for a particular execution of a code block; also known as interrupts
in a computer. You can call the CPU to execute your program with a high
priority and execute other commands later.

System Call System Program

Allow the user process to request Creates an environment for


the services of the operating programs to develop and execute.
system.

Defines interface to the services of Defines a user interface of the


the operating system. operating system.

It satisfies the low-level request of It satisfies the high-level request of


the user program. the user program.

Invokes the services of the Initiates a sequence of system calls


operating system. to satisfy a user request.

Usually written in C and C++. But System programs are written in


where direct hardware access is high-level languages only.
required the call is written using
assembly level language.

Process control, file manipulation, File management, status information,


device manipulation, information file modification,
maintenance, communications, and Programming-language support,
protection. program loading and execution,
communication

13. Distinguish between the client-server and peer-to-peer models of


distributed systems.
Client Server Peer-to-peer

There is a specific server and Clients and servers are not


specific clients connected to the distinguished; each node acts as
server. client and server.

The client requests for service and Each node can request for services
the server responds with the service. and can also provide the services.

The data is stored in a centralised Each peer has its own data.
server.

When several clients request for the As the services are provided by
services simultaneously, a server several servers distributed in the
can get bottlenecked. peer-to-peer system, a server is not
bottlenecked.

The client-server is expensive to Peer-to-peer are less expensive to


implement. implement.

Client-Server is more stable and Peer-to-Peer suffers if the number of


scalable. peers increases in the system.

14. Explain types of System calls.

Here are the types of system calls −

● Process Control: These system calls deal with processes such as


process creation, process termination etc.
● File Management: These system calls are responsible for file
manipulation such as creating a file, reading a file, writing into a file etc.
● Device Management: These system calls are responsible for device
manipulation such as reading from device buffers, writing into device
buffers etc.
● Information Maintenance: These system calls handle information and its
transfer between the operating system and the user program.
● Communication: These system calls are useful for interprocess
communication. They also deal with creating and deleting a
communication connection.

15. Describe the kernel structure of the operating system.

Kernel is the core of the operating system. Kernel controls everything in a


computer.

Different types of Kernel Architecture are:

Monolithic architecture

In Monolithic kernel mode, the operating system runs in a single address


space. Monolithic kernel has all the operating system functions or services
within a single kernel. This single kernel will run as a single process in a single
address space in memory. Monolithic architecture enables higher
performance, however less flexible for modifications to add new features or
enhance existing features.

Ex: All Linux distributions, Android uses a modified Linux Kernel.

Microkernel architecture
Microkernel architecture is an architecture with kernel having the basic
interaction with hardware and the basic Inter-Process Communication
mechanisms. All the other Operating System services exist outside the Kernel.
Microkernel provides the flexibility to add new features or modify existing
features while slightly affecting performance as it increases the amount of
interactions between kernel and user mode features.

Ex: Mach, OKL4, Codezero, Fiasco.OC, PikeOS, seL4, QNX

Hybrid Kernel architecture

Hybrid architecture tries to get the best features of both monolithic kernels as
well as microkernels. Hybrid kernel aims to have optimal performance and the
flexibility to modify and upgrade kernel services.
Ex: Apple IOS, Apple macOS for desktop machines uses hybrid architecture

16. Discuss about evolution of operating system

Operating system is divided into four generations, which are explained as


follows −

● First Generation (1945-1955) It is the beginning of the development of


electronic computing systems which are substitutes for mechanical
computing systems. Because of the drawbacks in mechanical
computing systems like, the speed of humans to calculate is limited and
humans can easily make mistakes. In this generation there is no
operating system, so the computer system is given instructions which
must be done directly.

Example − Type of operating system and devices used is Plug Boards.

● Second Generation (1955-1965) The Batch processing system was


introduced in the second generation, where a job or a task that can be
done in a series, and then executed sequentially. In this generation, the
computer system is not equipped with an operating system, but several
operating system functions exist like FMS and IBSYS.
Example − Type of operating system and devices used is Batch
systems.

● Third Generation (1965-1980) The development of the operating system


was developed to serve multiple users at once in the third generation.
Here the interactive users can communicate through an online terminal
to a computer, so the operating system becomes multi-user and
multiprogramming. Example − Type of operating system and devices
used is Multiprogramming.
● Fourth Generation (1980-Now) In this generation the operating system
is used for computer networks where users are aware of the existence
of computers that are connected to one another.
● At this generation users are also comforted with a Graphical User
Interface (GUI), which is an extremely comfortable graphical computer
interface, and the era of distributed computing has also begun.

17. Explain about system calls between user mode and kernel mode.
18. Compare Multiprogramming and Multitasking

19. Explain various types of computer systems?

A computer is a device that transforms data into meaningful information. It


processes the input according to the set of instructions provided to it by the user
and gives the desired output. Computers are of various types and they can be
categorised in two ways on the basis of size and on the basis of data handling
capabilities.

So, on the basis of size, there are five types of computers:

1. Supercomputer
2. Mainframe computer
3. Minicomputer
4. Workstation
5. PC (Personal Computer)
1. Supercomputer:

When we talk about speed, then the first name that comes to mind when thinking of
computers is supercomputers. They are the biggest and fastest computers(in terms
of speed of processing data). Supercomputers are designed such that they can
process a huge amount of data, like processing trillions of instructions or data just in
a second. This is because of the thousands of interconnected processors in
supercomputers. It is basically used in scientific and engineering applications such
as weather forecasting, scientific simulations, and nuclear energy research. It was
first developed by Roger Cray in 1976.

2. Mainframe computer:

Mainframe computers are designed in such a way that it can support hundreds or
thousands of users at the same time. It also supports multiple programs
simultaneously. So, they can execute different processes simultaneously. All these
features make the mainframe computer ideal for big organisations like banking,
telecom sectors, etc., which process a high volume of data in general.

3. Minicomputer:

Minicomputer is a medium size multiprocessing computer. In this type of computer,


there are two or more processors, and it supports 4 to 200 users at one time.
Minicomputers are used in places like institutes or departments for different work
like billing, accounting, inventory management etc. It is smaller than a mainframe
computer but larger in comparison to the microcomputer.

4. Workstation:

Workstation is designed for technical or scientific applications. It consists of a fast


microprocessor, with a large amount of RAM and high speed graphic adapter. It is a
single-user computer. It generally used to perform a specific task with great
accuracy.
5. PC (Personal Computer):

It is also known as a microcomputer. It is basically a general-purpose computer and


designed for individual use. It consists of a microprocessor as a central processing
unit(CPU), memory, input unit, and output unit. This kind of computer is suitable for
personal work such as making an assignment, watching a movie, or at the office for
office work, etc. For example, Laptops and desktop computers.

20. Compare user mode and kernel mode.

PART-C

1. Define Operating Systems.

2. Define Distributed Systems.

3. How is user mode different from kernel mode?


4. Define a Multiprocessor system?

5. Define System call?

6. Define interrupt?

7. Define Time Sharing Systems?

8. Write the various types of OS components?

9. List any four functions of the Operating system?

10. Define Kernel.

11. Define a real time operating system.

12. Define Virtual Machine?

13. Explain how protection is provided for the hardware resources by the
operating system.

14. Discuss about batch systems?

15. Explain about a parallel distributed system?

16. Discuss about OS architecture?

17. Discuss about protection and security by OS?

18. What are the advantages of layered structure?

19. Define Virtual Memory? Describe the use of fork () and exec () system calls?

You might also like