Chandigarh Engineering College,Landran
Practical-3
Introduction about operating system
What is an Operating System?
The 1960’s definition of an operating system is “the software that controls the
hardware”. However, today, due to microcode we need a better definition. We see an
operating system as the programs that make the hardware useable. In brief, an
operating system is the set of programs that controls a computer. Some examples of
operating systems are UNIX, Mach, MS-DOS, MS-Windows, Windows/NT, Chicago,
OS/2, MacOS, VMS, MVS, and VM.
Controlling the computer involves software at several levels. We will differentiate
kernel services, library services, and application-level services, all of which are part
of the operating system. Processes run Applications, which are linked together with
libraries that perform standard services. The kernel supports the processes by
providing a path to the peripheral devices. The kernel responds to service calls from
the processes and interrupts from the devices. The core of the operating system is
the kernel, a control program that functions in privileged state (an execution context
that allows all hardware instructions to be executed), reacting to interrupts from
external devices and to service requests and traps from processes. Generally, the
kernel is a permanent resident of the computer. It creates and terminates processes
and responds to their request for service.
Operating Systems are resource managers. The main resource is computer
hardware in the form of processors, storage, input/output devices, communication
devices, and data. Some of the operating system functions are: implementing the
user interface, sharing hardware among users, allowing users to share data among
themselves, preventing users from interfering with one another, scheduling
resources among users, facilitating input/output, recovering from errors, accounting
for resource usage, facilitating parallel operations, organizing data for secure and
rapid access, and handling network communications.
Objectives of Operating Systems
Modern Operating systems generally have following three major goals. Operating
systems generally accomplish these goals by running processes in low privilege and
providing service calls that invoke the operating system kernel in high-privilege state.
To hide details of hardware by creating abstraction
An abstraction is software that hides lower level details and provides a set of
higher-level functions. An operating system transforms the physical world of
devices, instructions, memory, and time into virtual world that is the result of
abstractions built by the operating system. There are several reasons for
abstraction.
First, the code needed to control peripheral devices is not standardized.
Operating systems provide subroutines called device drivers that perform
operations on behalf of programs for example, input/output operations.
Roll no -100170823927
Chandigarh Engineering College,Landran
Second, the operating system introduces new functions as it abstracts the
hardware. For instance, operating system introduces the file abstraction so
that programs do not have to deal with disks.
Third, the operating system transforms the computer hardware into multiple
virtual computers, each belonging to a different program. Each program that is
running is called a process. Each process views the hardware through the
lens of abstraction.
Fourth, the operating system can enforce security through abstraction.
To allocate resources to processes.
An operating system controls how processes may access resources
Provide a pleasant and effective user interface
The user interacts with the operating systems through the user interface and
usually interested in the “look and feel” of the operating system. The most
important components of the user interface are the command interpreter, the
file system, on-line help, and application integration. The recent trend has
been toward increasingly integrated graphical user interfaces that encompass
the activities of multiple processes on networks of computers.
One can view Operating Systems from two points of views: Resource manager and
Extended machines. Form Resource manager point of view Operating Systems
manage the different parts of the system efficiently and from extended machines
point of view Operating Systems provide a virtual machine to users that is more
convenient to use. The structurally Operating Systems can be design as a monolithic
system, a hierarchy of layers, a virtual machine system, an exokernel, or using the
client-server model. The basic concepts of Operating Systems are processes,
memory management, I/O management, the file systems, and security.
Roll no -100170823927
Chandigarh Engineering College,Landran
Historically operating systems have been tightly related to the computer architecture,
it is good idea to study the history of operating systems from the architecture of the
computers on which they run.
Operating systems have evolved through a number of distinct phases or generations
which corresponds roughly to the decades.
The 1940's - First Generations
The earliest electronic digital computers had no operating systems. Machines of the
time were so primitive that programs were often entered one bit at time on rows of
mechanical switches (plug boards). Programming languages were unknown (not
even assembly languages). Operating systems were unheard of .
The 1950's - Second Generation
By the early 1950's, the routine had improved somewhat with the introduction of
punch cards. The General Motors Research Laboratories implemented the first
operating systems in early 1950's for their IBM 701. The system of the 50's generally
ran one job at a time. These were called single-stream batch processing systems
because programs and data were submitted in groups or batches.
The 1960's - Third Generation
The systems of the 1960's were also batch processing systems, but they were able
to take better advantage of the computer's resources by running several jobs at
once. So operating systems designers developed the concept of multiprogramming
in which several jobs are in main memory at once; a processor is switched from job
to job as needed to keep several jobs advancing while keeping the peripheral
devices in use.
For example, on the system with no multiprogramming, when the current job paused
to wait for other I/O operation to complete, the CPU simply sat idle until the I/O
finished. The solution for this problem that evolved was to partition memory into
several pieces, with a different job in each partition. While one job was waiting for I/O
to complete, another job could be using the CPU.
Another major feature in third-generation operating system was the technique called
spooling . In spooling, a high-speed device like a disk interposed between a running
program and a low-speed device involved with the program in input/output. Instead
of writing directly to a printer, for example, outputs are written to the disk. Programs
can run to completion faster, and other programs can be initiated sooner when the
printer becomes available, the outputs may be printed.
Note that spooling technique is much like thread being spun to a spool so that it may
be later be unwound as needed.
Another feature present in this generation was time-sharing technique, a variant of
multiprogramming technique, in which each user has an on-line terminal. Because
Roll no -100170823927
Chandigarh Engineering College,Landran
the user is present and interacting with the computer, the computer system must
respond quickly to user requests, otherwise user productivity could suffer.
Timesharing systems were developed to multiprogramming large number of
simultaneous interactive users.
Fourth Generation
With the development of LSI (Large Scale Integration) circuits, chips, operating
system entered in the system entered in the personal computer and the workstation
age. Microprocessor technology evolved to the point that it become possible to build
desktop computers as powerful as the mainframes of the 1970s. Two operating
systems have dominated the personal computer scene: MS-DOS, written by
Microsoft, Inc. for the IBM PC and other machines using the Intel 8088 CPU and its
successors, and UNIX, which is dominant on the large personal computers using the
Motorola 6899 CPU family.
Comparison between LINUX and WINDOW
Both Linux and Windows are operating systems. An operating system is the most
important program that runs on a computer. Every general-purpose computer must
have an operating system to run other programs. Operating systems perform basic
tasks, such as recognizing input from the keyboard, sending output to the display
screen, keeping track of files and directories on the disk, and controlling peripheral
devices such as disk drives and printer
Topic Linux Windows
The majority of Linux variants are
Microsoft Windows can run
available for free or at a much
Price between $50.00 - $150.00 US
lower price than Microsoft
dollars per each license copy.
Windows.
Microsoft has made several
Although the majority Linux advancements and changes that
variants have improved have made it a much easier to
Ease dramatically in ease of use, use operating system, and
Windows is still much easier to use although arguably it may not be
for new computer users. the easiest operating system, it
is still Easier than Linux.
Reliability The majority of Linux variants and Although Microsoft Windows has
versions are notoriously reliable made great improvements in
and can often run for months and reliability over the last few
years without needing to be versions of Windows, it still
Roll no -100170823927
Chandigarh Engineering College,Landran
cannot match the reliability of
rebooted.
Linux.
Linux has a large variety of Because of the large amount of
available software programs, Microsoft Windows users, there is
Software utilities, and games. However, a much larger selection of
Windows has a much larger available software programs,
selection of available software. utilities, and games for Windows.
Many of the available software
programs, utilities, and games Although Windows does have
available on Linux are freeware or software programs, utilities, and
Software open source. Even such complex games for free, the majority of
Cost programs such as Gimp, the programs will cost anywhere
OpenOffice, StarOffice, and wine between $20.00 - $200.00+ US
are available for free or at a low dollars per copy.
cost.
Linux companies and hardware
Because of the amount of
manufacturers have made great
Microsoft Windows users and the
advancements in hardware
broader driver support, Windows
support for Linux and today Linux
has a much larger support for
Hardware will support most hardware
hardware devices and a good
devices. However, many
majority of hardware
companies still do not offer
manufacturers will support their
drivers or support for their
products in Microsoft Windows.
hardware in Linux.
Although Microsoft has made
Linux is and has always been a great improvements over the
very secure operating system. years with security on their
Security Although it still can be attacked operating system, their operating
when compared to Windows, it system continues to be the most
much more secure. vulnerable to viruses and other
attacks.
Many of the Linux variants and
Microsoft Windows is not open
many Linux programs are open
Open source and the majority of
source and enable users to
Source Windows programs are not open
customize or modify the code
source.
however they wish to.
Although it may be more difficult
Microsoft Windows includes its
to find users familiar with all
own help section, has vast
Linux variants, there are vast
amount of available online
Support amounts of available online
documentation and help, as well
documentation and help, available
as books on each of the versions
books, and support available for
of Windows.
Linux.
Roll no -100170823927
Chandigarh Engineering College,Landran
Roll no -100170823927