Download as pdf or txt
Download as pdf or txt
You are on page 1of 19

OPERATING SYSTEM

UNIT 1: OVERVIEW OF OPERATING SYSTEM


1.1 Concept of operating system
An Operating System (OS) is an interface between a computer user and computer hardware. An
operating system is a software which performs all the basic tasks like file management, memory
management, process management, handling input and output, and controlling peripheral devices
such as disk drives and printers.
An operating system is software that enables applications to interact with a computer's hardware.
The software that contains the core components of the operating system is called the kernel.
The primary purposes of an Operating System are to enable applications (software's) to interact
with a computer's hardware and to manage a system's hardware and software resources.
Some popular Operating Systems include Linux Operating System, Windows Operating System,
VMS, OS/400, AIX, z/OS, etc. Today, Operating systems is found almost in every device like
mobile phones, personal computers, mainframe computers, automobiles, TV, Toys etc.

Definitions
An operating system is a program that acts as an interface between the user and the computer hardware
and controls the execution of all kinds of programs.

• Components of operating system:


There are various components of an Operating System to perform well defined tasks. Though most
of the Operating Systems differ in structure but logically they have similar components. Each
component must be a well-defined portion of a system that appropriately describes the functions,
inputs, and outputs.
There are following 8-components of an Operating System:
1. Process Management
2. I/O Device Management
3. File Management
4. Network Management
5. Main Memory Management
6. Secondary Storage Management
7. Security Management
8. Command Interpreter System

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

1. Process Management
A process is program or a fraction of a program that is loaded in main memory. A process
needs certain resources including CPU time, Memory, Files, and I/O devices to accomplish
its task. The process management component manages the multiple processes running
simultaneously on the Operating System.
The operating system is responsible for the following activities in connection with process
management:
• Create, load, execute, suspend, resume, and terminate processes.
• Switch system among multiple processes in main memory.
• Provides communication mechanisms so that processes can communicate with each other.
• Provides synchronization mechanisms to control concurrent access to shared data to keep
shared data consistent.

2. I/O Device Management

• One of the purposes of an operating system is to hide the peculiarities of specific hardware
devices from the user. I/O Device Management provides an abstract level of H/W devices
and keep the details from applications to ensure proper use of devices, to prevent errors,
and to provide users with convenient and efficient programming environment.
• Following are the tasks of I/O Device Management component:
• Hide the details of H/W devices
• Manage main memory for the devices using cache, buffer, and spooling
• Maintain and provide custom drivers for each device.

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

3. File Management

• File management is one of the most visible services of an operating system. Computers can
store information in several different physical forms; magnetic tape, disk, and drum are the
most common forms.
• A file is defined as a set of correlated information and it is defined by the creator of the
file. Mostly files represent data, source and object forms, and programs. Data files can be
of any type like alphabetic, numeric, and alphanumeric.
• A file is a sequence of bits, bytes, lines or records whose meaning is defined by its creator and
user.
• The operating system implements the abstract concept of the file by managing mass storage
device, such as types and disks. Also files are normally organized into directories to ease
their use. These directories may contain files and other directories and so on.
• The operating system is responsible for the following activities in connection with file
management:
• File creation and deletion
• Directory creation and deletion
• The support of primitives for manipulating files and directories
• Mapping files onto secondary storage
• File backup on stable (nonvolatile) storage media

4. Network Management

• The definition of network management is often broad, as network management involves


several different components. Network management is the process of managing and
administering a computer network. A computer network is a collection of various types of
computers connected with each other.
• Network management comprises fault analysis, maintaining the quality of service,
provisioning of networks, and performance management.
• Network management is the process of keeping your network healthy for an efficient
communication between different computers.
• Following are the features of network management:
• Network administration
• Network maintenance
• Network operation
• Network provisioning
• Network security

5. Main Memory Management

• Memory is a large array of words or bytes, each with its own address. It is a repository of
quickly accessible data shared by the CPU and I/O devices.
• Main memory is a volatile storage device which means it loses its contents in the case of
system failure or as soon as system power goes down.
• The main motivation behind Memory Management is to maximize memory utilization on the
computer system.
• The operating system is responsible for the following activities in connections with
memory management:
• Keep track of which parts of memory are currently being used and by whom.
• Decide which processes to load when memory space becomes available.
• Allocate and deallocate memory space as needed.

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

6. Secondary Storage Management

• The main purpose of a computer system is to execute programs. These programs, together
with the data they access, must be in main memory during execution. Since the main
memory is too small to permanently accommodate all data and program, the computer
system must provide secondary storage to backup main memory.

• Most modern computer systems use disks as the principle on-line storage medium, for both
programs and data. Most programs, like compilers, assemblers, sort routines, editors,
formatters, and so on, are stored on the disk until loaded into memory, and then use the
disk as both the source and destination of their processing.
• The operating system is responsible for the following activities in connection with disk
management:
• Free space management
• Storage allocation
• Disk Scheduling

7. Security Management

• The operating system is primarily responsible for all task and activities happen in the
computer system. The various processes in an operating system must be protected from
each other’s activities. For that purpose, various mechanisms which can be used to ensure
that the files, memory segment, cpu and other resources can be operated on only by those
processes that have gained proper authorization from the operating system.
• Security Management refers to a mechanism for controlling the access of programs, processes, or
users to the resources defined by a computer controls to be imposed, together with some means of
enforcement.
• For example, memory addressing hardware ensure that a process can only execute within
its own address space. The timer ensure that no process can gain control of the CPU without
relinquishing it. Finally, no process is allowed to do it’s own I/O, to protect the integrity of
the various peripheral devices.

8. Command Interpreter System

• One of the most important component of an operating system is its command interpreter.
The command interpreter is the primary interface between the user and the rest of the
system.
• Command Interpreter System executes a user command by calling one or more number of
underlying system programs or system calls.
• Command Interpreter System allows human users to interact with the Operating System and
provides convenient programming environment to the users.
• Many commands are given to the operating system by control statements. A program which
reads and interprets control statements is automatically executed. This program is called
the shell and few examples are Windows DOS command window, Bash of Unix/Linux or
C-Shell of Unix/Linux.
• Allocate/de-allocate resources properly to prevent or avoid deadlock situation.

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

♦ Views of operating system


An operating system is a construct that allows the user application programs to interact with
the system hardware. Operating system by itself does not provide any function but it provides
an atmosphere in which different applications and programs can do useful work.
The operating system can be observed from the point of view of the user or the system. This
is known as the user view and the system view respectively. More details about these are
given as follows −

1. User View:
The user view depends on the system interface that is used by the users. The different types
of user view experiences can be explained as follows −

• If the user is using a personal computer, the operating system is largely designed to make
the interaction easy. Some attention is also paid to the performance of the system, but there
is no need for the operating system to worry about resource utilization. This is because the
personal computer uses all the resources available and there is no sharing.
• If the user is using a system connected to a mainframe or a minicomputer, the operating
system is largely concerned with resource utilization. This is because there may be multiple
terminals connected to the mainframe and the operating system makes sure that all the
resources such as CPU, Memory, I/O devices etc. are divided uniformly between them.
• If the user is sitting on a workstation connected to other workstations through networks,
then the operating system needs to focus on both individual usage of resources and sharing
though the network. This happens because the workstation exclusively uses its own
resources but it also needs to share files etc. with other workstations across the network.
• If the user is using a handheld computer such as a mobile, then the operating system handles
the usability of the device including a few remote operations. The battery level of the device
is also taken into account.
There are some devices that contain very less or no user view because there is no interaction
with the users. Examples are embedded computers in home devices, automobiles etc.

2. System View:

According to the computer system, the operating system is the bridge between applications
and hardware. It is most intimate with the hardware and is used to control it as required.
The different types of system view for operating system can be explained as follows:

• The system views the operating system as a resource allocator. There are many resources
such as CPU time, memory space, file storage space, I/O devices etc. that are required by
processes for execution. It is the duty of the operating system to allocate these resources
judiciously to the processes so that the computer system can run as smoothly as possible.

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

• The operating system can also work as a control program. It manages all the processes and
I/O devices so that the computer system works smoothly and there are no errors. It makes
sure that the I/O devices work in a proper manner without creating problems.
• Operating systems can also be viewed as a way to make using hardware easier.
• Computers were required to easily solve user problems. How ever it is not easy to work
directly with the computer hardware. So, operating systems were developed to easily
communicate with the hardware.
• An operating system can also be considered as a program running at all times in the
background of a computer system (known as the kernel) and handling all the application
programs. This is the definition of the operating system that is generally followed.

1.2. Different types of operating system


1. Batch Operating System
Batch system process is collection of jobs. The jobs were executed in batches. People used
to have a single computer known as a mainframe. Users using batch operating systems do
not interact directly with the computer. Each user prepares their job using an offline device
like a punch card and submitting it to the computer operator. Jobs with similar requirements
are grouped and executed as a group to speed up processing. Once the programmers have
left their programs with the operator, they sort the programs with similar needs into batches.
The batch operating system grouped jobs that perform similar functions. These job groups
are treated as a batch and executed simultaneously. A computer system with this operating
system performs the following batch processing activities:

• A job is a single unit that consists of a preset sequence of commands, data, and programs.
• Processing takes place in the order in which they are received, i.e., first come, first serve.
• These jobs are stored in memory and executed without the need for manual information.
• When a job is successfully run, the operating system releases its memory.

Advantages:
There are various advantages of the Batch Operating System. Some of them are as follows:

• It isn't easy to forecast how long it will take to complete a job; only batch system processors
know how long it will take to finish the job in line.
• This system can easily manage large jobs again and again.
• The batch process can be divided into several stages to increase processing speed.
• When a process is finished, the next job from the job spool is run without any user
interaction.

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

Disadvantages:
There are various disadvantages of the Batch Operating System. Some of them are as follows:

• When a job fails once, it must be scheduled to be completed, and it may take a long time
to complete the task.
• Computer operators must have full knowledge of batch systems.
• The batch system is quite difficult to debug.
• The computer system and the user have no direct interaction.
• If a job enters an infinite loop, other jobs must wait for an unknown period of time.

2. Multiprogramming Operating System


A multiprogramming operating system may run many programs on a single processor
computer. If one program must wait for an input/output transfer in a multiprogramming
operating system, the other programs are ready to use the CPU. As a result, various jobs
may share CPU time. However, the execution of their jobs is not defined to be at the same
time period.
When a program is being performed, it is known as a "Task", "Process", and "Job".
Concurrent program executions improve system resource consumption and throughput as
compared to serial and batch processing systems.
The primary goal of multiprogramming is to manage the entire system's resources. The key
components of a multiprogramming system are the file system, command processor,
transient area, and I/O control system. As a result, multiprogramming operating systems
are designed to store different programs based on sub-segmenting parts of the transient
area. The resource management routines are linked with the operating system core
functions.

Advantages:
The advantages of multiprogramming operating system are as follows −
• CPU utilization is high because the CPU is never goes to idle state.
• Memory utilization is efficient.
• CPU throughput is high and also supports multiple interactive user terminals.

Disadvantages:
The disadvantages of multiprogramming operating system are as follows −

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

• CPU scheduling is compulsory because lots of jobs are ready to run on CPU
simultaneously.
• User is not able to interact with jobs when it is executing.
• Programmers also cannot modify a program that is being executed.

3. Multitasking operating system (Time-Shared OS):


It is a logical extension of a multiprogramming system that enables the execution of multiple
programs simultaneously. In an operating system, multitasking allows a user to perform more than
one task simultaneously. Multiple tasks are also known as processes that share similar processing
resources like a CPU. The operating system keeps track of where you are in each of these jobs and
allows you to transition between them without losing data.
Early OS could execute various programs at the same time, although multitasking was not fully
supported. As a result, a single software could consume the entire CPU of the computer while
completing a certain activity. Basic operating system functions, such as file copying, prevented
the user from completing other tasks, such as opening and closing windows. Fortunately, because
modern operating systems have complete multitasking capability, numerous programs can run
concurrently without interfering with one other. In addition, many operating system processes can
run at the same time.

Advantages:
Timesharing:
Time-sharing is the main concept and benefit of MOS. All tasks are given a suitable amount of
time and no waiting time occurs for the CPU.

Handle multiple users:


Multiple users running multiple programs can be best handled by MOS. All programs run smoothly
without a glitch in performance. All users of OS are given a suitable amount of time.

Protected memory:
Memory is better managed in MOS. Unauthorized applications are not given permission to overuse
memory.

Efficient virtual memory:


If any program has long waited time due to any I/O interrupt, that program is shifted to virtual
memory. After completion of the I/O operation, the program comes back to RAM. The process of
virtual memory management is nicely handled in MOS.

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

Disadvantages:
Limitation of memory:
When a computer user opens many programs at a time, the computer becomes slow. The reason
behind is that many programs are loaded into main memory and CPU cannot give good time for
each program and response time of completing the job becomes higher. Computers with low RAM
usually face this problem. One solution to this is to increase your RAM capacity.

Limitation of the processor:


If the processor is slow in the Computer then it can process programs slow and manage multiple
programs takes longer time. Some heavy programs cannot run smoothly on the slow processor
because they need more processing powers.

CPU heat up:


By doing multitasking, the processor becomes busy all the time and CPU heats up. To solve this
problem, you have to attach the cooling system to your CPU. This normally happens when you
play heavy games on your PC.

4. Multiprocessor system:
Multiprocessor system means, there are more than one processor which work parallel to perform
the required operations. It allows the multiple processors, and they are connected with physical
memory, computer buses, clocks, and peripheral devices.
The main objective of using a multiprocessor operating system is to increase the execution
speed of the system and consume high computing power.

There are two types of multi- Processor :


1. Symmetric multi-processing:
• In symmetric multi-processing, no of homogeneous processor are running.
• In symmetric multi-processing system, two or more processors are connected to a
single shared main memory.
• System that treat all CPUs equally are called SMP system.
• Each processor uses different data and program but sharing some common
resources like memory, I/O device, etc.

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

• In SMP, all processor are at the same level. They work in peers. There is no Master-
Slave relation in between the processor.

2. Asymmetric multi-processing:
• The processors in asymmetric multiprocessing have a master-slave relationship,
with one master processor controlling the other slave processors. The slave
processors may receive specified tasks from the master processor or receive
processes from the master processor. The master processor manages the data
structure. The master processor manages the scheduling of processes, I/O
processing, and other system operations.
• If a master processor fails, one of the slave processors assumes control of the
execution. If one slave processor fails, the other slave processor takes over. It is
simple since the data structure and a single processor controls all system actions.
Assume there are four CPUs named C1, C2, C3, and C4. C4 is the master processor
and allocates tasks to the other CPUs. If C1 is assigned process P1, C2 is assigned
process P2, and C3 is assigned process P3. Each processor will only work on the
processes that have been assigned to them.

Advantages:
• Increased reliability: Due to the multiprocessing system, processing tasks can be
distributed among several processors. This increases reliability as if one processor fails;
the task can be given to another processor for completion.
• Increased throughout: As several processors increase, more work can be done in less
• The economy of Scale: As multiprocessors systems share peripherals, secondary storage
devices, and power supplies, they are relatively cheaper than single-processor systems.

Disadvantages:
• Multi-processor system is more complex in both hardware and software.
• Additional CPU cycles are required to managed the co-operation so per-CPU efficiency
goes down.

Difference between Symmetric and Asymmetric Multi-processing:

Sr. No. Key Asymmetric Symmetric


Multiprocessing Multiprocessing

CPU All processors are not All processors are same


1
equal in precedence. in precedence.
OS Task OS task is done by master OS task can be done by
2
processor. any processor.
Communication No communication All processor
Overhead overhead between communicates to each
3 processors as they are other using shared
controlled by master memory.
processor.
Process Scheduling Master-Slave approach is A ready queue of
4
used. processes is used.

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

Cost Asymmetric Symmetric


5 multiprocessing is multiprocessing is
cheaper to implement. costlier to implement.
Design Complexity Asymmetric Symmetric
6 multiprocessing is simpler multiprocessing is
to design. complex to design.

5. Distributed Operating system:


A distributed system is a collection of physically separate, possibly heterogeneous, computer
systems that are networked to provide users with access to the various resources that the system
maintains. Distributed systems depend on networking for their functionality. Networks vary by the
protocols used, the distances between nodes, and the transport media. TCP/IP is the most common
network protocol, and it provides the fundamental architecture of the Internet. Most operating
systems support TCP/IP, including all general-purpose ones.
A local-area network (LAN) connects computers within a room, a building, or a campus. A wide-
area network (WAN) usually links buildings, cities, or countries. A global company may have a
WAN to connect its offices worldwide, for example. These networks may run one protocol or
several protocols. The continuing advent of new technologies brings about new forms of networks.
For example, a metropolitan-area network (MAN) could link buildings within a city. Bluetooth
and 802.11 devices use wireless technology to communicate over a distance of several feet, in
essence creating a personal-area network (PAN) between a phone and a headset or a smartphone
and a desktop computer. The media to carry networks are equally varied. They include copper
wires, fiber strands, and wireless transmissions between satellites, microwave dishes, and radios.
When computing devices are connected to cellular phones, they create a network. Even very short-
range infrared communication can be used for networking. At a rudimentary level, whenever
computers communicate, they use or create a network. These networks also vary in their
performance and reliability. Some operating systems have taken the concept of networks and
distributed systems further than the notion of providing network connectivity. A computer running
a network operating system acts autonomously from all other computers on the network, although
it is aware of the network and is able to communicate with other networked computers.
A distributed operating system provides a less autonomous environment. The different computers
communicate closely enough to provide the illusion that only a single operating system controls
the network.

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

Advantages:
• With resource sharing facility, a user at one site may be able to use the resources available
at another.
• Speedup the exchange of data with one another via electronic mail.
• Failure of one site in a distributed system doesn’t affect the others, the remaining sites can
potentially continue operating.
• Better service to the customers.
• Reduction of the load on the host computer.
• Reduction of delays in data processing.

Disadvantages:
• Security problem due to sharing
• Some messages can be lost in the network system
• Bandwidth is another problem if there is large data then all network wires to be replaced
which tends to become expensive
• Overloading is another problem in distributed operating systems
• If there is a database connected on local system and many users accessing that database
through remote or distributed way then performance become slow
• The databases in network operating is difficult to administrate then single user system

6. Real time operating system (RTOS):


The real-time operating systems are used in real-time systems where the time constraints are fixed
and followed strictly. This means that the time for processing and responding is very small.
Moreover, the system should perform the given task in a fixed time otherwise, it results in a system
failure.
Response Time is the time within which the system takes the input, processes the data, and gives
the results. Moreover, they are used in systems like robots, missile launches, airplanes, etc.

a. Hard Real Time Operating System:


In Hard RTOS, all critical tasks must be completed within the specified time duration, i.e., within
the given deadline. Not meeting the deadline would result in critical failures such as damage to
equipment or even loss of human life.
Let's take an example of airbags provided by carmakers along with a handle in the driver's seat.
When the driver applies brakes at a particular instance, the airbags grow and prevent the driver's
head from hitting the handle. Had there been some delay even of milliseconds, then it would have
resulted in an accident.

b. Soft Real Time Operating System:


Soft RTOS accepts a few delays via the means of the Operating system. In this kind of RTOS,
there may be a closing date assigned for a particular job, but a delay for a small amount of time is
acceptable. So, cut off dates are treated softly via means of this kind of RTOS. (Some Relaxation
in time limit).
This type of system is used in Online Transaction systems and Livestock price quotation Systems.
Digital telephone, Digital audio.

Applications of Real-time operating system (RTOS):

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

RTOS is used in real-time applications that must work within specific deadlines. Following are
the common areas of applications of Real-time operating systems are given below.

• Real-time running structures are used inside the Radar gadget.


• Real-time running structures are utilized in Missile guidance.
• Real-time running structures are utilized in on line inventory trading.
• Real-time running structures are used inside the cell phone switching gadget.
• Real-time running structures are utilized by Air site visitors to manipulate structures.
• Real-time running structures are used in Medical Imaging Systems.
• Real-time running structures are used inside the Fuel injection gadget.
• Real-time running structures are used inside the Traffic manipulate gadget.
• Real-time running structures are utilized in Autopilot travel simulators.

7. Mobile operating system:


A mobile operating system is an operating system that helps to run other application software on
mobile devices. It is the same kind of software as the famous computer operating systems like
Linux and Windows, but now they are light and simple to some extent.
The operating system found on smartphones include Symbian OS, iPhone OS, RIM's BlackBerry,
Windows Mobile, Palm WebOS, Android. Android, WebOS are all derived from Linux. The
iPhone OS originated from BSD and NeXTSTEP, which are related to Unix.
It combines the beauty of computer and hand use devices. It typically contains a cellular built-in
modem and SIM tray for telephony and internet connections. If you buy a mobile, the manufacturer
company chooses the OS for that specific device.

A) Android Operating system:


• Android is an Open source mobile OS developed by the open Handset Alliance led by
Google.
• It is based on Linux 2.6 kernel.
• Android is Open Source OS, created by google specially for use of mobile devices (i.e. cell
phone and tablets).
• It can be programmed in c/ c++ but most app development is done in JAVA. It supports
Bluetooth, WI-FI and 3G&4G networking.

Android Architecture:
Android architecture contains different number of components to support any android device
needs. Android software contains an open-source Linux Kernel having collection of number of
C/C++ libraries which are exposed through an application framework services.
Among all the components Linux Kernel provides main functionality of operating system
functions to smartphones and Dalvik Virtual Machine (DVM) provide platform for running an
android application.
The main components of android architecture are following:
• Applications
• Application Framework
• Android Runtime
• Platform Libraries
• Linux Kernel

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

Linux kernel
Linux Kernel is heart of the android architecture. It manages all the available drivers such as
display drivers, camera drivers, Bluetooth drivers, audio drivers, memory drivers, etc. which are
required during the runtime.
The Linux Kernel will provide an abstraction layer between the device hardware and the other
components of android architecture. It is responsible for management of memory, power, devices
etc.

Libraries
On top of Linux kernel there is a set of libraries including open-source Web browser engine
WebKit, well known library libc, SQLite database which is a useful repository for storage and
sharing of application data, libraries to play and record audio and video, SSL libraries
responsible for Internet security etc.

Android Runtime

This is the third section of the architecture and available on the second layer from the bottom. This
section provides a key component called Dalvik Virtual Machine which is a kind of Java Virtual
Machine specially designed and optimized for Android.
The Dalvik VM makes use of Linux core features like memory management and multi-threading,
which is intrinsic in the Java language. The Dalvik VM enables every Android application to run
in its own process, with its own instance of the Dalvik virtual machine.
The Android runtime also provides a set of core libraries which enable Android application
developers to write Android applications using standard Java programming language.

Application Framework

The Application Framework layer provides many higher-level services to applications in the form
of Java classes. Application developers are allowed to make use of these services in their
applications.
The Android framework includes the following key services −

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

• Activity Manager − Controls all aspects of the application lifecycle and activity stack.
• Content Providers − Allows applications to publish and share data with other
applications.
• Resource Manager − Provides access to non-code embedded resources such as strings,
color settings and user interface layouts.
• Notifications Manager − Allows applications to display alerts and notifications to the
user.
• View System − An extensible set of views used to create application user interfaces.

Applications

You will find all the Android application at the top layer. You will write your application to be
installed on this layer only. Examples of such applications are Contacts Books, Browser, Games
etc.

Difference between Batch OS and Multiprogramming OS:

Batch Operating System Multiprogramming Operating System

The grouping of numerous processing jobs that


An OS can run numerous programs at the same
are done one after the other by a system without
time on a single CPU.
user input is known as batch processing.

Batch processing is slower than


It is faster than the Batch operating system.
multiprogramming OS.

It allows various applications to run It allows various apps to run on a single processor
simultaneously with little human intervention. system.

Batch processing reduces human interactions and


Multiprogramming OS maximizes CPU utilization.
costs.

In multiprogramming, the CPU must always


In batch processing, the CPU may remain idle.
complete a task.

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

Difference between Multiprogramming and multitasking:

Features Multiprogramming Multitasking


Basic It allows multiple programs to A supplementary of the
utilize the CPU multiprogramming system
simultaneously. also allows for user
interaction.
Mechanism Based on the context Based on the time-sharing
switching mechanism. mechanism.
Objective It is useful for It is useful for running
reducing/decreasing CPU idle multiple processes at the
time and increasing same time, effectively
throughput as much as increasing CPU and system
possible. throughput.
Execution When one job or process In a multiprocessing system,
completes its execution or multiple processes can
switches to an I/O task in a operate simultaneously by
multi-programmed system, allocating the CPU for a fixed
the system momentarily amount of time.
suspends that process. It
selects another process from
the process scheduling pool
(waiting queue) to run.
CPU Switching In a multiuser environment, In a single-user environment,
the CPU switches between the CPU switches between
programs/processes quickly. the processes of various
programs.
Timing It takes maximum time to It takes minimum time to
execute the process. execute the process.

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

Difference between Multi-programming, multitasking and multi-processing:

No Characteris Multiprogramming Multiprocessing Multitasking


tic
1 What it is: The concurrent The availability of The execution of
residency of more more than one more than one
than one program in processor per task
the main memory is system, which simultaneously is
called as can execute called as
multiprogramming. several set of multitasking.
instructions in
parallel is called
as
multiprocessing.
2 Number of One More than one One
CPU:
3 Job More time is taken to Less time is taken Moderate
processing process the jobs. for job amount of time.
time: processing.
4 Number of One process is More than one One by one job is
process being
executed at a time. process can be being executed at
executed: executed at a a time.
time
5 Economical: It is economical. Is less It is economical.
economical.
6 Number of One at a time. Can be one or More than one.
users: more than one.
7 Throughput: Throughput is less. Throughput is Throughput is
maximum. moderate.
8 Efficiency: Less Maximum Moderate
9 Categories: No further divisions Symmetric & Single User &
Asymmetric. Multiuser.

Command Line Based Operating System (CLI):


• CLI is also called as window command line, command screen, or text interface.
• Command line interface (CLI) is a text-based interface that is used to operate software
and operating systems while allowing the user to respond to visual prompts by typing
single commands into the interface and receiving a reply in the same way.
• CLI allows a user to perform tasks by entering commands. Its working mechanism is
very easy, but it is not user friendly. Users enter the specific command, press “Enter”,
and then wait for a response. After receiving the command, the CLI processes it
accordingly and shows the output/result on the same screen; command line interpreter is
used for this purpose.
• MS-DOS is the best example of CLI.

1. DOS (Disk Operating System):


The Disk Operating System (DOS) was released in 1981, and it was a single-processing
operating system. The Disk Operating System (DOS) contains C Programming Language,
Assembly Language, and x86-based language. The Microsoft Corporation and Tim Paterson
develop the Disk Operating System. Disk Operating System (DOS) was used for personal

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

computers before Windows had arrived. It is a single-command operating system that cannot
handle multiple commands.

Features of DOS
1. It is a free OS.
2. It is a 16-bit OS.
3. It aids make file management, e.g., creating, editing, deleting files, etc.
4. It doesn't support GUI.
5. It is a single-user OS.
6. It has a text-based interface and operates completely on text and codes.

2. UNIX
The C and Assembly languages were used to develop the UNIX OS. UNIX was first introduced
on November 3, 1971. UNIX is a multi-purpose operating system that may be used on desktops,
laptops, and servers. UNIX offers a graphical user interface that is comparable to that of
Windows. The abbreviation for UNIX is UNICS, which stands for UNiplexed Information
Computing System. It began working on programming in the 1960s and became operational in
1971. UNIX is a powerful, multi-user, and multitasking operating system that was originally
developed at AT & T Bell Laboratories.

DOS UNIX Operating System


It is only used in x86-based computer systems.
It is used in all types of computer systems.
It is a single command-line OS. It is a multitasking OS.
It was firstly released in 1981. It was firstly released in November 1971.
It is an abbreviation for Disk Operating It is an abbreviation for UNiplexed
System. Information Computing System.
Disk operating system consumes low power. UNIX operating system consumes high power.
DOS is not case-sensitive. UNIX OS is case-sensitive.
Disk operating system uses the backslashes. UNIX operating system uses forward slashes.
It operates from a hard disk device. It was installed after being obtained from the
original AT&T UNIX.
DOS contains batch files. UNIX operating system contains shell files.
DOS contains three proprietary versions (IBM UNIX operating system contains numerous
DOS, MS-DOS, and DR-DOS) and one free proprietary and free, and open-source
version (FreeDOS). implementations.
It is mainly used in embedded systems. UNIX operating system is mainly used in
servers.
DOS has neither virtual memory nor protected UNIX operating system usually has virtual
memory. memory and protected memory.

Graphical User Interface (GUI):


GUI stands for Graphical User Interface. It is a visual representation of communication presented
to the user for easy interaction with the machine. The actions in a GUI are usually performed
through direct manipulation of graphical elements like buttons and icons. Communication can be
performed by interacting with these icons rather than the usual text-based or command-based
communication.

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE


OPERATING SYSTEM

1. Microsoft Windows
Microsoft Windows is one of the most common GUI based operating systems. It is developed and
marketed by Microsoft. The current version of Microsoft Windows is Windows 10. Moreover, it
has several earlier versions like Windows XP, Windows 8, Windows 7, etc. Besides, the most
common editions for home computers are Windows Home (Win Home) and Windows
Professional (Win Pro or Windows Pro).
2. Linux
Linux is a popular operating system. It is not a part of any particular firm or organization. Rather,
it was developed by a programmer Linus Torvalds in 1991. It is an open-source operating system.
Today, LINUX is run in many organizations, private offices, on mobiles, supercomputers, over
the internet, etc.

Difference between CLI and GUI:

Features CLI GUI


Definition A CLI is an interface that A graphical user interface
allows the user to perform enables users to interact with
tasks by issuing commands in the operating system or
successive lines of text or application.
command lines.
Memory Requirement It needs less memory than the It needs more memory
GUI. because it has various
graphics components.
Ease of use It is not easy to use. It is easy to use.
Speed It is faster than the GUI. It is slower than the CLI.
Flexibility It is less flexible than GUI. It is more flexible than CLI.
Device Used It needs the only keyboard. It needs both a keyboard and
a mouse.
Appearance Its appearance may not be Its appearance may be
modified or changed. modified or changed.
Precision Its precision is high as Its precision is low as
compared to GUI. compared to CLI.
Data Presentation The information can be In a GUI, information can be
viewed to the user in plain viewed or presented to the
text and files in the CLI. user in several ways, including
simple text, videos, graphics,
etc.
Errors Spelling mistakes and typing Spelling mistakes and typing
errors are not avoided. errors are avoided.
Graphics No graphics are used in the Graphics are used in the GUI.
CLI.
Menus No menus are provided in the Menus are provided in the
CLI. GUI.

Notes Prepared By-Dhanashri Agrawal | SSVPS BSD POLYTECHNIC DHULE

You might also like