0% found this document useful (0 votes)
16 views10 pages

Module 1

Download as docx, pdf, or txt
Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1/ 10

Operating System using Linux (PMCAC12)

Module 1
Introduction to Operating Systems

1.1 Overview:

An operating system is a set of program modules which provides a friendly interface


between the user and the computer resources such as processors, memory, input/ output
devices and information (files).
Or
An operating system is a set of programs which acts as an interface between the user
and the computer.
 Operating systems manages these resources, resolves conflicts and tries to optimize
the performance of the system.
 Generally, part of the operating system resides in memory and supervises execution of
all other programs executed on the computer.
 The user communicates with the computer through operating system commands and
program instructions.
 It plays an important role in loading programs from disk into memory, displaying
messages, translating programs and in outputting results.

Fig: Operating System Architecture

Prof. Sheethal P P, Asst. Professor, Dept.of MCA, EWIT 1


Operating System using Linux (PMCAC12)

1.2 Evolution of Operating System:

Below are four generations of operating systems.


 The First Generation
 The Second Generation
 The Third Generation
 The Fourth Generation

1. The First Generation (1940 to early 1950s)


 In 1940, an operating system was not included in the creation of the first
electrical computer.
 Early computer users had complete control over the device and wrote programs in
pure machine language for every task.
 During the computer generation, a programmer can merely execute and solve
basic mathematical calculations. an operating system is not needed for these
computations.
2. The Second Generation (1955 – 1965)
 GMOSIS, the first operating system (OS) was developed in the early 1950s.
 For the IBM Computer, General Motors has created the operating system.
Because it gathers all related jobs into groups or batches and then submits them to
the operating system using a punch card to finish all of them.
 The second-generation operating system was built on a single-stream batch
processing system
3. The Third Generation (1965 – 1980)
 Because it gathers all similar jobs into groups or batches and then submits them to
the second generation operating system using a punch card to finish all jobs in a
machine, the second-generation operating system was based on a single
stream batch processing system.
 Control is transferred to the operating system upon each job’s completion,
whether it be routinely or unexpectedly.
 The operating system cleans up after each work is finished before reading and
starting the subsequent job on a punch card.

Prof. Sheethal P P, Asst. Professor, Dept.of MCA, EWIT 2


Operating System using Linux (PMCAC12)

 Large, professionally operated machines known as mainframes were introduced


after that. Operating system designers were able to create a new operating system
in the late 1960s that was capable of multiprogramming—the simultaneous
execution of several tasks in a single computer program.
 To create operating systems that enable a CPU to always be active by carrying
out multiple jobs on a computer at once, multiprogramming must be introduced.
 With the release of the DEC PDP-1 in 1961, the third generation of
minicomputers saw a new phase of growth and development.
4. The Fourth Generation (1980 – Present Day)
 The fourth generation of personal computers is the result of the Programmed Data
Processors (PDPs). The Generation IV (1980–Present) The evolution of the
personal computer is linked to the fourth generation of operating systems.
 Nonetheless, the third-generation minicomputers and the personal computer have
many similarities. At that time, minicomputers were only slightly more expensive
than personal computers, which were highly expensive.
 The development of Microsoft and the Windows operating system was a
significant influence in the creation of personal computers. In 1975, Microsoft
developed the first Windows operating system.
 The MS-DOS was released in 1981, but users found it extremely challenging to
decipher its complex commands.
 Windows is now the most widely used and well-liked operating system available.
 Following then, Windows released several operating systems, including Windows
95, Windows 98, Windows XP, and Windows 7.
 The most recent operating system. Most Windows users are currently running
Windows 10.
 Apple is another well-known operating system in addition to Windows.

1.3 Types of Operating Systems:


1.3.1 Batch operating systems
 Batch operating systems usually allow little or no interaction between users and
executing programs. It requires programs, data, and necessary commands (Job
Control Language-JCL) to be submitted in the form of a job.

Prof. Sheethal P P, Asst. Professor, Dept.of MCA, EWIT 3


Operating System using Linux (PMCAC12)

 It has a better potential for resource utilization compared to simple serial systems
serving multiple users.
 This is well suited for applications with large computation time and no user
interaction. Payroll, forecasting, statistical analysis, and large scientific number
crunching programs are examples for its usage.
 Users need not wait during its execution. Batch operating systems will function in
FIFO (first in first out) order.
 The main disadvantages of batch operating systems are non-interactive mode of
execution and Offline debugging.
 IBM System/360 operating system (OS/360) for IBM system/360, is an example for
batch processing operating systems. In DOS we can emulate the batch processing
using .BAT files.
1.3.2 Time-Sharing systems:
 Time-sharing is a popular representative of multiprogramming and multi-user
systems. Large CAD and text processing systems belongs to this category.
 Good terminal response is one of the main objectives of such systems providing an
illusion of total dedication.
 Time-sharing systems provide equitable sharing of common resources. Most of the
time-sharing operating systems adopted time-slicing/round robin scheduling
algorithm.
 Each user/process will receive a portion of the time slot. UNIX and its flavors,
Windows Server are the best examples for multiprogramming, multi-user and time-
sharing systems.
1.3.3 Distributed operating systems:
 A distributed operating system is a collection of autonomous computer systems
capable of communication and cooperation via their software and hardware
interconnections.
 For example, if we have ‘n’ systems in a distributed environment then the distributed
operating system helps us in balancing the load by sharing processors, I/O devices,
and memory etc. without the knowledge of the user.
 The end user will get his output on his terminal. This has a very reliable mode of
operation. The ATM (Automatic Teller Machine) centers of a bank are a classic
example of application of distributed operating systems.

Prof. Sheethal P P, Asst. Professor, Dept.of MCA, EWIT 4


Operating System using Linux (PMCAC12)

1.3.4 Real-time systems


 Real time systems are used in environments where many events, mostly external to
the computer system, must be accepted and processed in a very short time or within
certain deadlines.
 Such applications include industrial control, telephone and switching equipment,
flight control, real-time simulations, and military applications.
 The primary objective of real-time systems is to provide quick event response times
and thus meeting the scheduling deadlines.
 User convenience and resource utilization are of secondary concern to real time
systems design.
 Lynx OS, Windows CE are examples for real-time operating systems.

1.4 Operating System Services:

1.4.1 System Calls


 A system call is a way for a user program to interface with the operating system. The

program requests several services, and the OS responds by invoking a series of system
calls to satisfy the request.
 A system call is a method for a computer program to request a service from the kernel
of the operating system on which it is running.
 System call provides the services of the operating system to the user programs via the
Application Program Interface (API). A system call is a request from computer
software to an operating system's kernel.
How does System Call Work?
 Users need special resources: Sometimes programs need to do some special things
that can’t be done without the permission of the OS like reading from a file, writing to
a file, getting any information from the hardware, or requesting a space in memory.
 The program makes a system call request: There are special predefined instructions
to make a request to the operating system. These instructions are nothing but just a
“system call”. The program uses these system calls in its code when needed.
 Operating system sees the system call: When the OS sees the system call then it
recognizes that the program needs help at this time so it temporarily stops the program

Prof. Sheethal P P, Asst. Professor, Dept.of MCA, EWIT 5


Operating System using Linux (PMCAC12)

execution and gives all the control to a special part of itself called ‘Kernel’. Now
‘Kernel’ solves the need of the program.
 The operating system performs the operations: Now the operating system performs
the operation that is requested by the program. Example: reading content from a file
etc.
 Operating system give control back to the program : After performing the special
operation, OS give control back to the program for further execution of program .
 Services Provided by System Calls
Process Creation and Management
Main Memory Management
File Access, Directory, and File System Management
Device Handling(I/O)
Protection

Networking, etc.
1.4.2 User Interface:
The operating system in general, provides a user interface to interact with the computer.
The objects available on the monitor provide the user interface to the required program.
There are two types of user interfaces:
 Command-line user interface (CUI)
 CUI interface allows the user to interact with a computer through text
terminal. MS-DOS is an operating system which provides a CUI.
 The commands must be given at the command prompt(C :\>). Since both input
and output are character based, the interface is also known as Character User
Interface.
 Hence it is a non-graphical and text based user interface. To overcome some
of the limitations of MSDOS such as-user must remember commands and
parameters can not be used for multi-tasking, a new interface called the
graphical user interface (GUI) was developed.
 Graphical user Interface (GUI)
 The GUI was first introduced in 1984 by Apple with Macintosh.
 GUI is an interface where the commands are selected from menus and icons
rather than typing them from the keyboard.

Prof. Sheethal P P, Asst. Professor, Dept.of MCA, EWIT 6


Operating System using Linux (PMCAC12)

 It allows the user to click on the required icon, with the help of a hand-held
device called Mouse. Windows operating system is the most popular operating
system based on GUI.
 The user must click on icons, menus, dialog boxes etc. to interact with the
computer.
 The user need not remember any commands as it is available in the form of
menus and icon on monitor.
1.4.3 System Utilities
 Utilities are those helpful programs that assist the computer by performing useful
functions (housekeeping functions) like backing up disk or scanning/cleaning viruses
or arranging information etc.
 Utility software is generally called as Application oriented ready-made system
programs.
 Some of the important utilities are: Text Editor, Backup Utility, Compression Utility,
Disk defragmenter, Antivirus Software.

1.5 Overview of Linux Operating System

 Linux is a free and open-source family of operating systems that is resilient and
flexible.
 It acts as the basis for a variety of devices, such embedded systems, cell phones,
servers, and personal computers.
 Linux is well-known for its reliability, safety, and flexibility, allows users to
customize and improve their environment to suit specific needs.
 it is built upon the Linux Kernel. The Linux Kernel is like the brain of the operating
system because it manages how the computer interacts with its hardware and
resources.

1.5.1 History of Linux


 Linus Torvalds designed the free and open-source Linux operating system kernel in
1991. Torvalds set out to develop a free and flexible system for personal
computers, drawing ideas from the UNIX operating system and the MINIX operating
system.

Prof. Sheethal P P, Asst. Professor, Dept.of MCA, EWIT 7


Operating System using Linux (PMCAC12)

 Teamwork in development was encouraged with the initial release of the Linux
kernel, which attracted developers and enthusiasts globally quickly.
 Various open-source software packages integrated with the Linux kernel created fully
operational operating systems, occasionally referred to as Linux distributions.
 Over the years, Linux has become known as a key component of modern computing,
powering everything from servers and personal computers to supercomputers and
smartphones.
 Due to its flexibility, durability, and strong community support, developers,
businesses, and educational institutions frequently opt for it.
 Since the beginning, Linux has grown into a dependable and safe OS that is used in an
array of gadgets, including PCs, cell phones, and huge supercomputers.
 It is well-known for being cost-effective, which implies that employing it doesn’t cost
a lot, and efficient, which indicates it can complete a lot of jobs quickly.

1.5.2 Features of Linux:

 Multiuser capability: Multiple users can access the same system resources like
memory, hard disk, etc. But they must use different terminals to operate.
 Multitasking: More than one function can be performed simultaneously by
dividing the CPU time intelligently.
 Portability: Portability doesn't mean it is smaller in file size or can be carried in
pen drives or memory cards. It means that it supports different types of hardware.
 Security: It provides security in three ways namely authenticating (by assigning
password and login ID), authorization (by assigning permission to read, write and
execute) and encryption (converts file into an unreadable format).
 Graphical User Interface (X Window system): Linux is command line-based
OS but it can be converted to GUI based by installing packages.
 Application support: It has its own software repository from where users can
download and install many applications.
 File System: Provides hierarchical file system in which files and directories are
arranged.
 Open Source: Linux code is freely available to all and is a community-based
development project.

Prof. Sheethal P P, Asst. Professor, Dept.of MCA, EWIT 8


Operating System using Linux (PMCAC12)

1.5.3 Linux Architecture


The Linux operating system's architecture mainly contains some of the components: the
Kernel, System Library, Hardware layer, System, and Shell utility.

Fig: Linux Architecture

1. Kernel: Kernel is the core of the Linux based operating system. It virtualizes the
common hardware resources of the computer to provide each process with its virtual
resources. This makes the process seem as if it is the sole process running on the
machine. The kernel is also responsible for preventing and mitigating conflicts
between different processes. Different types of the kernel are:
 Monolithic Kernel
 Hybrid kernels
 Exo kernels
 Micro kernels
2. System Library: Linux uses system libraries, also known as shared libraries, to
implement various functionalities of the operating system. These libraries contain pre-
written code that applications can use to perform specific tasks. By using these
libraries, developers can save time and effort, as they don’t need to write the same

Prof. Sheethal P P, Asst. Professor, Dept.of MCA, EWIT 9


Operating System using Linux (PMCAC12)

code repeatedly. System libraries act as an interface between applications and the
kernel, providing a standardized and efficient way for applications to interact with the
underlying system.
3. shell: The shell is the user interface of the Linux Operating System. It allows users to
interact with the system by entering commands, which the shell interprets and
executes. The shell serves as a bridge between the user and the kernel, forwarding the
user’s requests to the kernel for processing. It provides a convenient way for users to
perform various tasks, such as running programs, managing files, and configuring the
system.
Types of shells:
 The Bourne Shell (sh)
 The C Shell (csh)
 The Korn Shell (ksh)

4. Hardware Layer: The hardware layer encompasses all the physical components of
the computer, such as RAM (Random Access Memory), HDD (Hard Disk
Drive), CPU (Central Processing Unit), and input/output devices. This layer is
responsible for interacting with the Linux Operating System and providing the
necessary resources for the system and applications to function properly. The Linux
kernel and system libraries enable communication and control over these hardware
components, ensuring that they work harmoniously together.
5. System Utility: System utilities are essential tools and programs provided by the
Linux Operating System to manage and configure various aspects of the system.
These utilities perform tasks such as installing software, configuring network settings,
monitoring system performance, managing users and permissions, and much more.
System utilities simplify system administration tasks, making it easier for users to
maintain their Linux systems efficiently.

Prof. Sheethal P P, Asst. Professor, Dept.of MCA, EWIT 10

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