0% found this document useful (0 votes)
35 views20 pages

Operating System Types

Uploaded by

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

Operating System Types

Uploaded by

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

Types of computers

Micro Computers
The microcomputer is also recognized as a personal computer, these are comparatively
economical. Microcomputers are small computers incorporating a microprocessor, Central
Processing Unit (CPU), memory, storage area, an input unit, and an output unit.
It is a general-purpose computer that is outlined for personal use. Such computers are made
with minimum circuitry mounting over a single circuit board. They are fit for personal work that
may be making an assignment, at the office for office work, watching a movie, etc. Examples
include Desktop, Laptop, tablets, smartphones, etc.
The Mini Frame or Mini Computer
Minicomputers are comparatively smaller than mainframe computers or can say a
minicomputer lies within the mainframe and microcomputer as it is smaller than the mainframe
but larger than a microcomputer.
Minicomputers are digital and multi-user computer systems with the connection of more than
one CPU. Thus, multiple users can work on these computers simultaneously. Mini-frame
computers are employed in institutes and work units for tasks such as billing, accounting, and
record management.
Mainframe Computer Computers utilized by large organisations to manage bulk data are
designated as Mainframe computers. Mainframe computers are multi-programming, high-
performance and multi-user computers, which implies they can manage the workload of more
than 100 users at a time on the computer. The storage capability of the mainframe is
enormous, with a high-speed data process as well. The main purposes of such a type of
computer include managing customer statistics, census, and other heavy data in a single device.
Mainframe computers, therefore, are mainly employed by departmental and commercial
organizations like Banks, Scientific research centres, companies, and governmental
departments like railways, paying employees, ticket booking, maintaining details of purchases
by users, keeping detailed tax details, etc
Supercomputer
Supercomputers come under the biggest, fastest, powerful, and most expensive type of
computer for processing data type; they are designed to process an immense amount of data. A
supercomputer can treat trillions of instructions/directions in a second. It has thousands of
interconnected processors.
Supercomputers are especially used in scientific and engineering applications such as weather
forecasting, quantum mechanics, climate research, scientific simulations, nuclear energy
research, etc where a high level of performance is required.
Examples: IBM Roadburner, INTEL ASIC RED. PARAM-1000, BM Blue Gene, and CRAY-XMP-14.

Types of Computers: Working Principle and Data Handling Abilities

Analog Computer
Analog computers are outlined to process analog data. Analog data is continuous data that
varies continuously and cannot have discrete values. Analog computers are utilized primarily to
measure physical units like the voltage, electric current, pressure, temperature and convert
them into digits. Such computers are mostly used for scientific, technology, research,
engineering, and industrial applications.
Speedometer, mercury thermometer, thermometer, operational amplifiers, electric integrators,
etc. Are examples of analog computers.

Digital Computer
The digital computer is outlined to execute calculations and logical operations at a high pace.
Such computers are proficient in solving problems in discrete formats. It acquires the raw data
as input is in the form of digits/binary numbers (i.e 0 and 1) and processes it with programs
stored in its memory to produce the output.

It can implement arithmetic operations such as addition, occurrence, subtraction, multiplication


and division, and all sorts of logical/mathematical operations as well. All modern computers like
laptops, desktops including smartphones, calculators, tablets, digital watches, accounting
machines, workstations, digital clocks etc that we use at home or office are digital computers.

Hybrid Computer
Hybrid computers as the name signify exhibit features of both Analog and Digital computers. It
is fast like an analog computer and has memory and accuracy like those of digital computers. It
can process both continuous and discrete data. It takes analog signals and transforms them into
digital form before processing them.

These types of computers are extensively used in specialized applications where both analog
and digital data are processed. For example, a processor is applied in petrol pumps that
converts fuel flow measurements into quantity and price. Furthermore, they are used in
aeroplanes, hospitals, and scientific applications.

Types of Computer: Purpose


General Purpose
General computers are designed to perform various everyday tasks such as;
Document preparation
Financial analysis
Printing documents
Basic Input /Output functions
Creating databases
Data Saving on a smaller scale
Calculations with accuracy and consistency.
General performing activities
The size, storage capacity, and cost of such computers are essentially less. The capacity of these
computers is limited in completing specialized tasks. These may include basic calculators,
laptops, desktop computers, mobile phones, etc., which can help individuals to meet their basic
essential functions.
Special Purpose
When a computer is outlined specifically to perform a certain function, such type of computer is
identified as a Special Purpose computer. The size, storage capacity, and cost of such
computers principally depend on the nature and size of the work. The function of these
computers is consistent with any particular task, that is these computers are designed to
perform a particular or specialized task.
These types may include:
Thermometers to test temperature
Devices used for examining climate change
Generators to manage electricity
Large computers for IT Companies
Examples of special-purpose computers
Automatic teller machines (ATM)
Traffic-control computers
Surveillance equipment
Weather-forecasting simulators
Washing machines
Military planes controlling computers
Defence-oriented applications
Oil-exploration systems

The First Generation ( 1945 - 1955 ): Vacuum


Tubes and Plugboards
Digital computers were not constructed until the second world war.
Calculating engines with mechanical relays were built at that time. However,
the mechanical relays were very slow and were later replaced with vacuum
tubes. These machines were enormous but were still very slow.
These early computers were designed, built and maintained by a single
group of people. Programming languages were unknown and there were no
operating systems so all the programming was done in machine language.
All the problems were simple numerical calculations.
By the 1950’s punch cards were introduced and this improved the computer
system. Instead of using plugboards, programs were written on cards and
read into the system.

The Second Generation ( 1955 - 1965 ):


Transistors and Batch Systems
Transistors led to the development of the computer systems that could be
manufactured and sold to paying customers. These machines were known
as mainframes and were locked in air-conditioned computer rooms with staff
to operate them.
The Batch System was introduced to reduce the wasted time in the
computer. A tray full of jobs was collected in the input room and read into
the magnetic tape. After that, the tape was rewound and mounted on a tape
drive. Then the batch operating system was loaded in which read the first
job from the tape and ran it. The output was written on the second tape.
After the whole batch was done, the input and output tapes were removed
and the output tape was printed.
The Third Generation ( 1965 - 1980 ):
Integrated Circuits and Multiprogramming
Until the 1960’s, there were two types of computer systems i.e the scientific
and the commercial computers. These were combined by IBM in the
System/360. This used integrated circuits and provided a major price and
performance advantage over the second generation systems.
The third generation operating systems also introduced multiprogramming.
This meant that the processor was not idle while a job was completing its I/O
operation. Another job was scheduled on the processor so that its time
would not be wasted.

The Fourth Generation ( 1980 - Present ):


Personal Computers
Personal Computers were easy to create with the development of large-
scale integrated circuits. These were chips containing thousands of
transistors on a square centimeter of silicon. Because of these,
microcomputers were much cheaper than minicomputers and that made it
possible for a single individual to own one of them.
The advent of personal computers also led to the growth of networks. This
created network operating systems and distributed operating systems. The
users were aware of a network while using a network operating system and
could log in to remote machines and copy files from one machine to
another.

Mainframe System: It is the system where the first computer used to handle many commercial
Scientific applications. The growth of mainframe systems traced from simple batch system
Where the computer runs one and only one application to time shared systems which allowed
For user interaction with the computer system

Batch /Early Operating System: Early computers were physically large machine. The common
Input devices were card readers, tape drivers. The common output devices were line Printers,
tape drivers and card punches. In these systems the user did not interact directly With the
computer system. Instead the user preparing a job which consists of Programming data and
some control information and then submitted it to the computer operator after some time the
output is appeared. The output in these early computer was operator after some time the
output is appeared. The output in these early computer was fairly simple is main task was to
transfer control automatically from one job to next. The operating system always resides in the
memory. To speed up processing operators batched the jobs with similar needs and ran then
together as a group. The disadvantages of batch system are that in this execution environment
the CPU is often idle because the speed up of I/O devices is much slower than the CPU.
Spooling:
• Acronym for simultaneous peripheral operations on line. Spooling Refers to putting jobs in a
buffer, a special area in memory or on a disk Where a device can access them when it is ready.
• Spooling is useful because device access data at different rates. The Buffer provides a waiting
station where data can rest while the slower Device catches up.
• Computer can perform I/O in parallel with computation, it becomes Possible to have the
computer read a deck of cards to a tape, drum or disk And to write out to a tape printer while it
was computing. This process is Called spooling.

Multiprogramming Operating System: Multiprogramming concept increases CPU utilization by


Organization jobs so that the CPU always has one job to execute the idea behind
Multiprogramming concept. The operating system keeps several jobs in memory
Simultaneously. This set of job is subset of the jobs kept in the job pool. The operating system
picks and Beginning to execute one of the jobs in the memory. In this environment the
operating System simply switches and executes another job. When a job needs to wait the CPU
is Simply switched to another job and so on. The multiprogramming operating system is
Sophisticated because the operating system makes decisions for the user. This is known as
Scheduling. If several jobs are ready to run at the same time the system choose one among
them. This is known as CPU scheduling. The disadvantages of the multiprogrammed system are
• It does not provide user interaction with the computer system during the program execution.
• The introduction of disk technology solved these problems rather than reading the cards from
card reader into disk. This form of processing is known as spooling. SPOOL stands for
simultaneous peripheral operations online. It uses the disk as a huge buffer for reading from
input devices and for storing output data until the output devices accept them. It is also use for
processing data at remote sides. The remote processing is done and its own speed with no CPU
intervention. Spooling overlaps the input, output one job with computation of other jobs.
Spooling has a beneficial effect on the performance of the systems by keeping both CPU and
I/O devices working at much higher time.
Time Sharing System: The time sharing system is also known as multi user systems. The CPU
executes multiple jobs by switching among them but the switches occurs so Frequently that the
user can interact with each program while it is running. An interactive Computer system
provides direct communication between a user and system. The user Gives instruction to the
operating systems or to a program directly using keyboard or Mouse and wait for immediate
results. So the response time will be short. The time Sharing system allows many users to share
the computer simultaneously. Since each action In this system is short, only a little CPU time is
needed for each user. The system switches Rapidly from one user to the next so each user feels
as if the entire computer system is Dedicated to his use, even though it is being shared by many
users. The disadvantages of
Time sharing system are:
• It is more complex than multiprogramming operating system
• The system must have memory management & protection, since several jobs are kept In
memory at the same time.
• Time sharing system must also provide a file system, so disk management is required.
• It provides mechanism for concurrent execution which requires complex CPU Scheduling
schemes.
A time sharing system allows many users to share the computer resources Simultaneously. In
other words, time sharing refers to the allocation Of computer resources in time slots to several
programs simultaneously. For example A mainframe computer that has many users logged on
to it.
Each user uses the resources of the mainframe -i.e. memory, CPU etc. The users feel That they
are exclusive user of the CPU, even though this is not possible with one CPU i.e. shared among
different users.
The time sharing systems were developed to provide an interactive use of the computer
System. A time shared system uses CPU scheduling and multi-programming to provide
Each user with a small portion of a time-shared computer. It allows many users to share The
computer resources simultaneously. As the system switches rapidly from one user to The other,
a short time slot is given to each user for their executions.
The time sharing system provides the direct access to a large number of users where CPU
time is divided among all the users on scheduled basis. The OS allocates a set of Time to each
user. When this time is expired, it passes control to the next user on the System. The time
allowed is extremely small and the users are given the impression that They each have their
own CPU and they are the sole owner of the CPU. This short Period of time during that a user
gets attention of the CPU; is known as a time slice or a Quantum. The concept of time sharing
system is shown in figure.
The time-shared systems are more complex than the multi-programming systems. InTime-
shared systems multiple processes are managed simultaneously which requires an Adequate
management of main memory so that the processes can be swapped in or Swapped out within
a short time.
Multiprocessing Operating System/Parallel Systems/ Tightly coupled Systems: In
Multiprocessing, Parallel computing is achieved. There are more than one
processors present in the system which can execute more than one process at the
same time. This will increase the throughput of the system. In Multiprocessing,
Parallel computing is achieved. More than one processor present in the system can
execute more than one process simultaneously, which will increase the throughput
of the system.

These Systems Have more than one processor in close communications which share the
computer bus, clock, Memory & peripheral devices. Ex: UNIX, LINUX. Multiprocessor Systems
have 3 main
Advantages.
a. Increased throughput: No. Of processes computed per unit time. By increasing the no.
Of processors move work can be done in less time. The speed up ratio with N processors
Is not N, but it is less than N. Because a certain amount of overhead is incurred in
Keeping all the parts working correctly.
b. Increased Reliability: If functions can be properly distributed among several processors
Then the failure of one processor will not halt the system, but slow it down. This ability
to Continue to operate in spite of failure makes the system fault tolerant.
c. Economic scale: Multiprocessor systems can save money as they can share peripherals,
Storage & power supplies.
The various types of multiprocessing systems are:
• Symmetric Multiprocessing (SMP): Each processor runs an identical copy of the Operating
system & these copies communicate with one another as required. Ex: Encore’s Version of UNIX
for multi max computer. Virtually, all modern operating system Including Windows NT, Solaris,
Digital UNIX, OS/2 & LINUX now provide support for SMP.
• Asymmetric Multiprocessing (Master – Slave Processors): Each processor is Designed for a
specific task. A master processor controls the system & schedules & Allocates the work to the
slave processors. Ex- Sun’s Operating system SUNOS version 4 Provides asymmetric
multiprocessing.

Multitasking Operating System


The multitasking operating system is a logical extension of a multiprogramming system that
enables multiple programs simultaneously. It allows a user to perform more than one computer
task at the same time.
Technically, multitasking is same as multiprogramming.
 In a multitasking OS, a single user can execute multiple programs at the Same time.
 Multitasking is the system’s capability to work one or more than one job or Process at
the same time. It means that whenever a job needs to perform I/O Operations, the CPU
can be used for executing some other job or process That is also residing in the system
and is ready to use the CPU.
NOTE:
The term multiprogramming is used for multi-user systems i.e., Systems that are simultaneously
used by many users such as mainframe and Server class system.
The term multitasking is used for single user system i.e., systems that Are used by only one
user at a time such as personal computer or a notebook. Thus multitasking is the method of
processing the multiple tasks Concurrently in a single user system.
For Example: A user is running separate program in 4 different windows At the same time. The
program in window 1 could be printing a Document, he program in window 2 could be
displaying an e-mail of User, a spreadsheet program in window 3 could be preparing sales
report And compilation of a program is in progress in window 4. In this manner, A user may
work on many tasks at the same time. Thus, progress of Different tasks can be viewed on
different windows in a multitasking System.
Types ... cooperative multitasking and Preemptive
Cooperative Multitasking. In Cooperative Multitasking, a Program can acquire the CPU for the
required amount of time. A Program can share CPU with any other program that is executing
Simultaneously.
Pre-emptive Multitasking. In Pre-emptive Multitasking the OS Allocates particular time to a
program. The CPU is preempted if a Higher priority job arrives in a system.
Comparison between

Multiprogramming and Multitasking


Multiprogramming Multitasking
1. It is used for multi-user Systems i.e., the systems That are used by many users At the
same time.
It is used for single user Systems i.e., the systems that Are used only by one user a Same
time.
2. It refers to concurrent Execution of multiple jobs That may be of same user or Different
users.
It refers to concurrent Execution of multiple jobs of Same user.
Real-Time Operating Systems (RTOS)
 A real-time operating system (RTOS) is an operating system (OS) intended to Serve real-
time applications that process data as it comes in, typically without buffer Delays.
Processing time requirements (including any OS delay) are measured in tenths of
Seconds or shorter increments of time.
 Real time operating systems are generally special-purpose ones designed to run
embedded Or specialized systems.
 These systems often operate in environments where there are significant constraints on
Hardware design and often narrow tasks that need to be done with great accuracy and
system Speed.
 Real time systems are used in military, engineering, medical, and data communications
Systems (among others).
Example : Typical examples of real-time systems include Air Traffic Control Systems, Networked
Multimedia Systems, Command Control Systems etc.
Advantages:
 Better Throughput
 Time taken for response is less
Disadvantages
 Very Costly
 Large memory required
Real time systems which were originally used to control autonomous systems such as satellites,
robots and hydroelectric dams. A real time operating system is one that must react to inputs
and responds to them quickly. A real time system can not afford to be late with a response to
an event.
• A real time system has well defined, fixed time constraints. Deterministic scheduling
algorithms are used in real time systems. Real time systems are divided into two groups : Hard
real time system and soft real time system.
• A hard real time system guarantees that the critical tasks be completed on time. This goal
requires that all delay in the system be bounded. Soft real time system is a less restrictive type.
In this, a critical real time task gets priority over other tasks, and retains that priority until it
completes.
• Real time operating system uses priority scheduling algorithm to meet the response
requirement of a real time application.
• Memory management in real time system is comparatively less demanding than in other
types of multiprogramming systems. Time critical device management is one of the main
characteristics of real time systems. The primary objective of file management in real time
system is usually speed of access, rather than efficient utilization of secondary storage.
Distributed/ Loosely coupled Systems
 Distributed Operating System is one of the important type of operating System.
 Multiple central processors are used by Distributed systems to serve multiple Real-time
applications and multiple users. Accordingly, Data processing jobs Are distributed
among the processors.
 Processors communicate with each other through various communication lines (like
high-speed buses or telephone lines). These are known as loosely coupled Systems or
distributed systems. Processors in this system may vary in size and Function. They are
referred as sites, nodes, computers, and so on.
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.

Embedded operating system?


An embedded operating system is a specialized operating system (OS) designed to perform a
specific task for a device that is not a computer. The main job of an embedded OS is to run the
code that allows the device to do its job. The embedded OS also makes the device’s hardware
accessible to software that is running on top of the OS.

An embedded OS often works within an embedded system. An embedded system is a computer


that supports a machine. It performs one task in the bigger machine. Examples include
computer systems in cars, traffic lights, digital televisions, ATMs, airplane controls, point of sale
(POS) terminals, digital cameras, GPS navigation systems, elevators and Smart meters.

Networks of devices containing embedded systems make up the internet of things (IoT). The
embedded systems perform basic operations inside IoT devices, such as transferring data over a
network without human interaction.
An embedded OS enables an embedded device to do its job within a larger system. It
communicates with the hardware of the embedded system to perform a specific function. For
example, an elevator might contain an embedded system, such as a microprocessor or
microcontroller, that lets it understand which buttons the passenger is pressing. The embedded
software that runs on that system is the embedded OS.

In contrast to an OS for a general-purpose computer, an embedded OS has limited


functionality. Depending on the device in question, the system may only run a single embedded
application. However, that application is likely crucial to the device’s operation. Given that, an
embedded OS must be reliable and able to run with constraints on memory and processing
power.

In the case of a Raspberry PI system on a chip, an SD card acts as the device’s hard drive and
contains the code that runs on the device. The SD card is removable, so its contents can be
modified on demand. Various operating systems can run on Raspberry PI devices. The
embedded OS makes the device’s hardware – such as USB and HDMI ports – accessible to the
application running on top of the OS.

Examples of embedded OS devices


Some examples of devices with embedded OSes include the following:

ATMs
Cellphones
Electric vehicles
Industrial control systems (ICS)
Arduino-based devices
Arduino is an open source platform with a microcontroller that processes simple inputs, such as
temperature or pressure, and turns them into outputs. These devices have a basic embedded
OS that acts like a boot loader and a command interpreter. An example of an Arduino-based
device is a remote control car. The Arduino reads inputs from the car’s controller and sends
output information and commands to other components, such as the brakes.

Common uses of embedded OSes


Embedded OSes are put to a variety of uses, including the following:
ATMs. ATMs have basic OSes that enable the machine to read a user’s debit card and personal
identification number input and perform bank account functions like withdrawal or checking
balances. The OS does little else but react to user inputs and communicate with the ATM
hardware.
Cell phones. Cell phones require an OS like Android or iOS to boot the phone and enable
applications to communicate with other phone hardware.
Electric vehicles. Microcontrollers host embedded OSes that handle functions like braking or
pressure sensing. For example, a certain amount of pressure on the front bumper may cause
the airbag to go off. This type of function is known as reactive operation because it reacts to an
input.
Industrial control systems. Sensors are used in industrial control systems to measure factory
conditions and send alerts if they become dangerous. Sensors contain an embedded OS that
enable them to perform these tasks.
Traffic lights. Embedded OSes enable a traffic light to cycle through different signals at
programmed intervals.
Basic input/output system. In some cases, BIOS could be considered an embedded OS because
it is the firmware that enables a desktop computer’s more complex OS to interact with the
computer hardware.

Handheld Systems
 Handheld systems include Personal Digital Assistants (PDA’s), such as Palm OS, cellular
telephones with connectivity to a network such as the internet.
 Developers of handheld systems and applications face many challenges most of which
are due to the limited size of such devices.
 Devices
 First issue faced by programmer: Due to this limited size, most handheld devices have a
small amount of memory, include slow processors, and feature small display screens.
 Many handheld devices have been limited size of memory.
 As a result, the OS and applications must manage memory efficiently. This includes
returning all allocated memory back to the memory manager once the memory is no
longer being used.
 Smartphones combine a mobile phone and a handheld computer into a single device.
Examples of smartphones over the years have included the Apple iPhone, Samsung
Galaxy, Microsoft and Nokia Lumia, Sony Ericsson etc.,
 Second issue faced by programmer: Speed of processor
 Processor for most handheld devices often run at a fraction of the speed of a processor
in a PC.
 Third issue faced by programmer: Displaying the content in web pages in we clipping
where only a small subset of web page is delivered and displayed on a handheld device.
Functions of Operating System
The major functions that are done by O.S are:
1) Process Scheduling : it determines and maintains the order in which jobs are to be
Executed in the computer system.
2) Memory-Management : allocation of main memory and other storage areas to the
System programs as well as user programs and data.
3) CPU Management : assignment of processor to different tasks being performed by The
computer system.
4) I/O Management : co-ordination and assignment of the different output and input
Device while one or more programs are being executed.
5) File management : the storage of file of various storage devices to another. It also
Allows all files to be easily changed and modified through the use of text editors or
Some other files manipulation routines.
6) Interpretation of commands and instructions.

Bootstrap Loader: As we turn on the computer there is nothing Meaningful in the main memory
(RAM). A small program is written and Stored in the ROM. This program initially loads the
operating system From secondary storage to main memory. The operating system then takes
The overall control. This program which is responsible for booting up the System is called
bootstrap loader. This is the program which must be Executed first when the system is first
powered on. If the program starts From the location x then to execute this program the
program counter of This machine should be loaded with the value x. Thus the task of setting
The initial value of the program counter is to be done by machine Hardware. The bootstrap
loader is a very small program which is to be Fitted in the ROM. The task of bootstrap loader is
to load the necessary Portion of the operating system in the main memory .The initial address
At which the bootstrap loader is to be loaded is generally the lowest (may Be at 0 th location) or
the highest location.
Linker: A linker is special program that combines the object files, generated by
compiler/assembler and other pieces of code to originate an executable file has .exe extension.
In the object file, linker searches and append all libraries needed for execution of file. It
regulates the memory space that will hold the code from each module. It also merges two or
more separate object programs and establishes link among them.
Generally, linkers are of two types :
1. Linkage Editor
2. Dynamic Linker
Loader is utility program which takes object code as input prepares it for Execution and loads
the executable code into the memory. Thus loader is Actually responsible for initiating the
execution process.Functions of Loader: The loader is responsible for the activities such as
allocation, linking, Relocation and loading
1) It allocates the space for program in the memory, by calculating the Size of the program.
This activity is called allocation.
2) It resolves the symbolic references (code/data) between the object Modules by
assigning all the user subroutine and library subroutine Addresses. This activity is called
linking.
3) There are some address dependent locations in the program, such Address constants
must be adjusted according to allocated space, such Activity done by loader is called
relocation.
4) Finally it places all the machine instructions and data of corresponding Programs and
subroutines into the memory. Thus program now becomes Ready for execution, this
activity is called loading.

Antivirus:It is used to protect a computer from the virus. It detects


a virus and notify the user and take action to secure the computer.
The virus are kept in different location called vault where it has
different file system due to which virus effect it. User can itself
instruct antivirus to delete malicious program, put it in vault or even
ignore it. These days most come in GUI form.
The first antivirus program appeared in 1987 with the introduction of
an antivirus program from G Data Software for the Atari ST. Later in
the same year, VirusScan was introduced by John McAfee, which
later became the McAfee antivirus program.
Examples: Windows Defender, AVG, AVAST, MCAFEE, etc.

File Management Tool:


The software is used to manage files stored in a file system. It can
be used to create, group file. Like Windows File Explorer is a file
management tool.
File system (like FAT32, NTFS) should not be confused with File
management tool former is a data structure used to store file in an
OS while later is used to perform task on file stored in the file
System.

Some examples of File management Tool are:


File Manager in Windows.
macOS Finder.
Directory Opus.
Dolphin in KDE.

Compression Tool:
These tool are used to reduce the size of a file based on the selected
algorithm.
Most operating systems include tools for compressing and
uncompressing files.Linux has tools for both .tar.gz and .zip. Other
compressed files, like .7z and .rar, require a third-party compression
utility to be installed.

Some Examples are:


WinAce
WinZip
WinRAR
7-Zip
PKZIP

DISK MANAGEMENT TOOL:


Disk Management is utility first introduced in Window XP as a
replacement of the fdisk command.It enables us to view or manage
the disk drives installed in their computer and the partition
associated with those drives.
Disk Management is used to manage the drives installed in a
computer- like hard disk drives, and flash drives. It can be used to
partition drives, assign drive letters, and much more.
Some Disk Management tools are:-
• Mini Tool Partition Wizard
• Paragon Partition Manager
• EaseUS Partition Master
• SMART Monitoring Tools
• AOMEI Partition Assistant

DISK CLEANUP TOOL :


It is computer utility maintenance which is included in Microsoft
Windows. It allows user to remove files that are no longer needed or
that can be safely deleted. Removing unnecessary files, including
temporary files, can help to improve the functioning and increase
the free space of the computer. Running Disk Cleanup at least once
a month is an excellent maintenance task.
Disk Cleanup tool can delete temporary internet files, old check disk
files, compress old files and offline webpages. Disk Cleanup also
allows you to empty the Recycle Bin, delete temporary files, and
delete Thumbnails.
Some Disk Cleanup software are:-
• Iolo System mechanic
• IObit Advanced systemCare
• Piriform CCleaner
• Razer Cortex

DISK DEFRAGMENTER:
It is a utility in Microsoft Windows designed to increase access speed
by rearranging file stored on a disk to occupy contiguous storage
locations, a technique is called
Defragmentation.
Defragmenting a disk minimizes head travel, which reduces the time
it takes to read files from and write files to the disk.
The defragmenter will search your hard drive partition and move
data from one location to other location, so that the files stored
there are one contiguous piece, instead of being throughout multiple
locations on the hard drive’s partition.
Some Disk Defragmenter are:-
• Auslogics Disk Defrag
• MyDefrag
• Perfect disk
• Defraggler

debugging is the process of fixing a bug in the software. In other


words, it refers to identifying, analyzing, and removing errors. This
activity begins after the software fails to execute properly and
concludes by solving the problem and successfully testing the
software. It is considered to be an extremely complex and tedious
task because errors need to be resolved at all stages of debugging.

Debugging tool is a computer program that is used to test and


debug other programs. A lot of public domain software like gdb and
dbx are available for debugging. They offer console-based
command-line interfaces. Examples of automated debugging tools
include code based tracers, profilers, interpreters, etc. Some of the
widely used debuggers are:

Radare2

WinDbg
Valgrind

Throughput is a measure of how many units of information a system can process in a given
amount of time.
Network latency is an expression of how much time it takes for a data packet to get from one
designated point to another.
Bandwidth is the capacity of a wired or wireless network communications link to transmit the
maximum amount of data from one point to another over a computer network or internet
connection in a given amount of time -- usually one second. Synonymous with capacity,
bandwidth describes the data transfer rate. Bandwidth is not a measure of network speed --
a common misconception.

Turnaround Time (TAT):

1. It is the time interval from the time of submission of a


process to the time of the completion of the process.

2. The difference b/w Completion Time and Arrival Time is


called Turnaround Time.

Completion Time (CT): This is the time when the process


completes its execution. Arrival Time (AT): This is the time when
the process has arrived in the ready state.
TAT = CT - AT
Waiting Time (WT):

1. The time spent by a process waiting in the ready queue for


getting the CPU.

2. The time difference b/w Turnaround Time and Burst Time is


called Waiting Time.

Burst Time (BT): This is the time required by the process for its
execution.
WT = TAT - BT
Now with Waiting Time and Burst Time, we can also calculate Turn
Around Time via:
TAT = BT + WT
CPU Scheduling is a process that allows one process to use the
CPU while another process is delayed (in standby) due to
unavailability of any resources such as I / O etc, thus making full use
of the CPU. The purpose of CPU Scheduling is to make the system
more efficient, faster, and fairer. Whenever the CPU becomes idle,
the operating system must select one of the processes in the line
ready for launch. The selection process is done by a temporary
(CPU) scheduler. The Scheduler selects between memory processes
ready to launch and assigns the CPU to one of them.
Preemptive Scheduling: Preemptive scheduling is used when a process switches from running
state to ready state or from the waiting state to the ready state.
Non-Preemptive Scheduling: Non-Preemptive scheduling is used when a process terminates , or
when a process switches from running state to waiting state.
Starvation is the problem that occurs when high priority processes keep executing and low
priority processes get blocked for indefinite time.
Problem of starvation can be resolved using Aging. In Aging priority of long waiting processes is
gradually increased.
Deadlock occurs when each process holds a resource and wait for other resource held by any
other process. Necessary conditions for deadlock to occur are Mutual Exclusion, Hold and Wait,
No Preemption and Circular Wait. In this no process holding one resource and waiting for
another get executed.
Deadlock Starvation
1. All processes keep waiting for each other to complete and none get executed
High priority processes keep executing and low priority processes are blocked
2. Resources are blocked by the processes
Resources are continuously utilized by high priority processes
3. Necessary conditions Mutual Exclusion, Hold and Wait, No preemption, Circular Wait

Priorities are assigned to the processes


4 Also known as Circular wait
Also known as lived lock
5 It can be prevented by avoiding the necessary conditions for deadlock It can be
prevented by Aging
Arrival time
Arrival time is the time when a process enters into the ready
state and is ready for its execution.

Here in the above example, the arrival time of all the 3


processes are 0 ms, 1 ms, and 2 ms respectively.

Exit time
Exit time is the time when a process completes its execution
and exit from the system.

Response time
Response time is the time spent when the process is in the
ready state and gets the CPU for the first time.

Response time = Time at which the process gets the CPU for the first time – Arrival time
Waiting time
Waiting time is the total time spent by the process in the ready state waiting for CPU.
Waiting time = Turnaround time – Burst time

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy