0% found this document useful (0 votes)
51 views

Introduction To Operating Systems

Uploaded by

yukikitazawa03
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)
51 views

Introduction To Operating Systems

Uploaded by

yukikitazawa03
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/ 9

Introduction to Operating Systems

A computer system has many resources (hardware and software), which may be require to complete a task. The
commonly required resources are input/output devices, memory, file storage space, CPU etc. The operating
system acts as a manager of the above resources and allocates them to specific programs and users, whenever
necessary to perform a particular task. Therefore operating system is the resource manager i.e. it can manage the
resource of a computer system internally. The resources are processor, memory, files, and I/O devices. In
simple terms, an operating system is the interface between the user and the machine.

Two Views of Operating System


1. User's View
2. System View

Operating System: User View


The user view of the computer refers to the interface being used. Such systems are designed for one user to
monopolize its resources, to maximize the work that the user is performing. In these cases, the operating system
is designed mostly for ease of use, with some attention paid to performance, and none paid to resource
utilization.

Operating System: System View


Operating system can be viewed as a resource allocator also. A computer system consists of many resources
like - hardware and software - that must be managed efficiently. The operating system acts as the manager of
the resources, decides between conflicting requests, controls execution of programs etc.

Operating System Management Tasks


1. Processor management which involves putting the tasks into order and pairing them into manageable
size before they go to the CPU.
2. Memory management which coordinates data to and from RAM (random-access memory) and
determines the necessity for virtual memory.
3. Device management which provides interface between connected devices.
4. Storage management which directs permanent data storage.
5. Application which allows standard communication between software and your computer.
6. User interface which allows you to communicate with your computer.

Functions of Operating System


1. It boots the computer
2. It performs basic computer tasks e.g. managing the various peripheral devices e.g. mouse, keyboard
3. It provides a user interface, e.g. command line, graphical user interface (GUI)
4. It handles system resources such as computer's memory and sharing of the central processing unit(CPU)
time by various applications or peripheral devices.
5. It provides file management which refers to the way that the operating system manipulates, stores,
retrieves and saves data.
6. Error Handling is done by the operating system. It takes preventive measures whenever required to
avoid errors.

Evolution of Operating Systems


The evolution of operating systems is directly dependent on the development of computer systems and how
users use them. Here is a quick tour of computing systems through the past fifty years in the timeline.

Early Evolution
 1945: ENIAC, Moore School of Engineering, University of Pennsylvania.
 1949: EDSAC and EDVAC
 1949: BINAC - a successor to the ENIAC
 1951: UNIVAC by Remington
 1952: IBM 701
 1956: The interrupt
 1954-1957: FORTRAN was developed
Operating Systems - Late 1950s
By the late 1950s Operating systems were well improved and started supporting following usages:

 It was able to perform Single stream batch processing.


 It could use Common, standardized, input/output routines for device access.
 Program transition capabilities to reduce the overhead of starting a new job was added.
 Error recovery to clean up after a job terminated abnormally was added.
 Job control languages that allowed users to specify the job definition and resource requirements were
made possible.

Operating Systems - In 1960s


 1961: The dawn of minicomputers
 1962: Compatible Time-Sharing System (CTSS) from MIT
 1963: Burroughs Master Control Program (MCP) for the B5000 system
 1964: IBM System/360
 1960s: Disks became mainstream
 1966: Minicomputers got cheaper, more powerful, and really useful.
 1967-1968: Mouse was invented.
 1964 and onward: Multics
 1969: The UNIX Time-Sharing System from Bell Telephone Laboratories.

Supported OS Features by 1970s


 Multi User and Multi tasking was introduced.
 Dynamic address translation hardware and Virtual machines came into picture.
 Modular architectures came into existence.
 Personal, interactive systems came into existence.

Accomplishments after 1970


 1971: Intel announces the microprocessor
 1972: IBM comes out with VM: the Virtual Machine Operating System
 1973: UNIX 4th Edition is published
 1973: Ethernet
 1974 The Personal Computer Age begins
 1974: Gates and Allen wrote BASIC for the Altair
 1976: Apple II
 August 12, 1981: IBM introduces the IBM PC
 1983 Microsoft begins work on MS-Windows
 1984 Apple Macintosh comes out
 1990 Microsoft Windows 3.0 comes out
 1991 GNU/Linux
 1992 The first Windows virus comes out
 1993 Windows NT
 2007: iOS
 2008: Android OS

And as the research and development work continues, we are seeing new operating systems being developed
and existing ones getting improved and modified to enhance the overall user experience, making operating
systems fast and efficient like never before.
Also, with the onset of new devies like wearables, which includes, Smart Watches, Smart Glasses, VR
gears etc, the demand for unconventional operating systems is also rising.

Types of Operating Systems


Following are some of the most widely used types of Operating system.

1. Simple Batch System

2. Multiprogramming Batch System

3. Multiprocessor System

4. Desktop System

5. Distributed Operating System

6. Clustered System

7. Realtime Operating System

8. Handheld System

Simple Batch Systems


 In this type of system, there is no direct interaction between user and the computer.

 The user has to submit a job (written on cards or tape) to a computer operator.

 Then computer operator places a batch of several jobs on an input device.

 Jobs are batched together by type of languages and requirement.

 Then a special program, the monitor, manages the execution of each program in the batch.

 The monitor is always in the main memory and available for execution.
Advantages of Simple Batch Systems

1. No interaction between user and computer.


2. No mechanism to prioritise the processes.

Multiprogramming Batch Systems


 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 operating system switches to another job (CPU and OS 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 CPU Scheduling.

 In Non-multiprogrammed system, there are moments when CPU sits idle and does not do any work.

 In Multiprogramming system, CPU will never be idle and keeps on processing.

Time Sharing Systems are very similar to Multiprogramming batch systems. In fact time sharing systems are
an extension of multiprogramming systems.
In Time sharing systems the prime focus is on minimizing the response time, while in multiprogramming the
prime focus is to maximize the CPU usage.
Multiprocessor Systems
A Multiprocessor system consists of several processors that share a common physical memory. Multiprocessor
system provides higher computing power and speed. In multiprocessor system all processors operate under
single operating system. Multiplicity of the processors and how they do act together are transparent to the
others.

Advantages of Multiprocessor Systems

1. Enhanced performance
2. Execution of several tasks by different processors concurrently, increases the system's throughput without

speeding up the execution of a single task.

3. If possible, system divides task into many subtasks and then these subtasks can be executed in parallel in different

processors. Thereby speeding up the execution of single tasks.

Desktop Systems
Earlier, CPUs and PCs lacked the features needed to protect an operating system from user programs. PC
operating systems therefore were neither multiuser nor multitasking. However, the goals of these operating
systems have changed with time; instead of maximizing CPU and peripheral utilization, the systems opt for
maximizing user convenience and responsiveness. These systems are called Desktop Systemsand include PCs
running Microsoft Windows and the Apple Macintosh. Operating systems for these computers have benefited in
several ways from the development of operating systems for mainframes.
Microcomputers were immediately able to adopt some of the technology developed for larger operating
systems. On the other hand, the hardware costs for microcomputers are sufficiently low that individuals have
sole use of the computer, and CPU utilization is no longer a prime concern. Thus, some of the design decisions
made in operating systems for mainframes may not be appropriate for smaller systems.

Distributed Operating System


The motivation behind developing distributed operating systems is the availability of powerful and inexpensive
microprocessors and advances in communication technology.
These advancements in technology have made it possible to design and develop distributed systems comprising
of many computers that are inter connected by communication networks. The main benefit of distributed
systems is its low price/performance ratio.

Advantages Distributed Operating System

1. As there are multiple systems involved, user at one site can utilize the resources of systems at other sites for
resource-intensive tasks.

2. Fast processing.

3. Less load on the Host Machine.

Types of Distributed Operating Systems


Following are the two types of distributed operating systems used:

1. Client-Server Systems

2. Peer-to-Peer Systems

Client-Server Systems
Centralized systems today act as server systems to satisfy requests generated by client systems. The general
structure of a client-server system is depicted in the figure below:

Server Systems can be broadly categorized as: Compute Servers and File Servers.

 Compute Server systems, provide an interface to which clients can send requests to perform an action, in

response to which they execute the action and send back results to the client.

 File Server systems, provide a file-system interface where clients can create, update, read, and delete files.
Peer-to-Peer Systems
The growth of computer networks - especially the Internet and World Wide Web (WWW) – has had a profound
influence on the recent development of operating systems. When PCs were introduced in the 1970s, they were
designed for personaluse and were generally considered standalone computers. With the beginning of
widespread public use of the Internet in the 1990s for electronic mail and FTP, many PCs became connected to
computer networks.
In contrast to the Tightly Coupled systems, the computer networks used in these applications consist of a
collection of processors that do not share memory or a clock. Instead, each processor has its own local memory.
The processors communicate with one another through various communication lines, such as high-speed buses
or telephone lines. These systems are usually referred to as loosely coupled systems ( or distributed systems).
The general structure of a client-server system is depicted in the figure below:

Clustered Systems
 Like parallel systems, clustered systems gather together multiple CPUs to accomplish computational work.

 Clustered systems differ from parallel systems, however, in that they are composed of two or more individual

systems coupled together.

 The definition of the term clustered is not concrete; the general accepted definition is that clustered computers

share storage and are closely linked via LAN networking.

 Clustering is usually performed to provide high availability.

 A layer of cluster software runs on the cluster nodes. Each node can monitor one or more of the others. If the

monitored machine fails, the monitoring machine can take ownership of its storage, and restart the application(s)

that were running on the failed machine. The failed machine can remain down, but the users and clients of the

application would only see a brief interruption of service.

 Asymmetric Clustering - In this, one machine is in hot standby mode while the other is running the applications.

The hot standby host (machine) does nothing but monitor the active server. If that server fails, the hot standby

host becomes the active server.

 Symmetric Clustering - In this, two or more hosts are running applications, and they are monitoring each other.

This mode is obviously more efficient, as it uses all of the available hardware.

 Parallel Clustering - Parallel clusters allow multiple hosts to access the same data on the shared storage. Because

most operating systems lack support for this simultaneous data access by multiple hosts, parallel clusters are

usually accomplished by special versions of software and special releases of applications.

Clustered technology is rapidly changing. Clustered system's usage and it's features should expand greatly
as Storage Area Networks(SANs). SANs allow easy attachment of multiple hosts to multiple storage units.
Current clusters are usually limited to two or four hosts due to the complexity of connecting the hosts to shared
storage.

Real Time Operating System


It is defined as an operating system known to give maximum time for each of the critical operations that it
performs, like OS calls and interrupt handling.
The Real-Time Operating system which guarantees the maximum time for critical operations and complete
them on time are referred to as Hard Real-Time Operating Systems.
While the real-time operating systems that can only guarantee a maximum of the time, i.e. the critical task will
get priority over other tasks, but no assurity of completeing it in a defined time. These systems are referred to
as Soft Real-Time Operating Systems.

Handheld Systems
Handheld systems include Personal Digital Assistants(PDAs), such as Palm-Pilotsor Cellular Telephones with
connectivity to a network such as the Internet. They are usually of limited size due to which most handheld
devices have a small amount of memory, include slow processors, and feature small display screens.

 Many handheld devices have between 512 KB and 8 MB of memory. As a result, the operating system 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.

 Currently, many handheld devices do not use virtual memory techniques, thus forcing program developers to

work within the confines of limited physical memory.

 Processors for most handheld devices often run at a fraction of the speed of a processor in a PC. Faster processors

require more power. To include a faster processor in a handheld device would require a larger battery that

would have to be replaced more frequently.

 The last issue confronting program designers for handheld devices is the small display screens typically available.

One approach for displaying the content in web pages is web clipping, where only a small subset of a web page is

delivered and displayed on the handheld device.

Some handheld devices may use wireless technology such as BlueTooth, allowing remote access to e-mail and
web browsing. Cellular telephones with connectivity to the Internet fall into this category. Their use continues
to expand as network connections become more available and other options such as cameras and MP3 players,
expand their utility.

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