0% found this document useful (0 votes)
6 views45 pages

Unit 1-Operating System Fundamentals

The document provides an overview of operating system fundamentals, including definitions of key terms like hardware, software, and types of operating systems. It outlines the history and evolution of operating systems from single-program systems to modern distributed and mobile systems, detailing their functions, features, and categories. Additionally, it discusses various types of operating systems such as batch, multiprogramming, multitasking, and real-time systems, along with their advantages and disadvantages.

Uploaded by

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

Unit 1-Operating System Fundamentals

The document provides an overview of operating system fundamentals, including definitions of key terms like hardware, software, and types of operating systems. It outlines the history and evolution of operating systems from single-program systems to modern distributed and mobile systems, detailing their functions, features, and categories. Additionally, it discusses various types of operating systems such as batch, multiprogramming, multitasking, and real-time systems, along with their advantages and disadvantages.

Uploaded by

24bsit112
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Subject : CTUC204- FOS

Unit 1 : Operating System Fundamentals


Basic Terms
Computer :
• A computer is a device that can be instructed to carry out sequences of arithmetic
or logical operations automatically via computer programming.
Hardware :
• Hardware includes the physical, tangible components of a computer, such as the
CPU, monitor, keyboard, data storage, graphic card, speakers and
motherboard.
Software :
• Software is a set of programs, which is designed to perform a well-defined
function.
Basic Terms
Two Types of Software :
• System Software : It is a collection of programs designed to operate, control,
and extend the processing capabilities of the computer itself. System software is
interact with the hardware at a very basic level. E.g. Device Drivers, Operating
System (OS),BIOS Software, Compilers
• Application Software : It is a computer software package that performs a
specific function directly for an end user. E.g. database programs, word
processors, Web browsers.
Computer System :
• Computer system is a complete, working computer.
• Computer systems will include the computer along with any software and
peripheral devices that are necessary to make the computer function.
Basic Terms
• Key structural elements of Computer System
• Processor (CPU): It controls the processes within the computer and carries out its
data processing functions.
• Main memory: It stores data and programs within it. This memory is volatile because
contents that are inside the memory gets lost when the computer is shut down. Main
memory is also termed as primary memory.
• I/O modules: This transfer the data from computer to its peripheral external
environment and vice versa. E.g. secondary memory devices (e.g., pen drives, CDs, etc.),
communications equipment (such as LAN cable), terminals, keyboard, printers etc.
• System bus: It provides communication between processors, main memory, and I/O
modules.
Operating System
• An Operating System can be defined as an interface
between user and hardware.

• An operating system (OS) is system software that


manages computer hardware and software
resources and provides common services for
computer programs.

• It is responsible for the execution of all the


processes, Resource Allocation, CPU management,
File Management and many more.

• It is being initially loaded into the computer by a


bootstrap loader program.

• Some well-liked Operating Systems are Ubuntu,


Windows, OS X, Solaris, Android, etc.
Components of Operating System
Operating systems are built out of two main parts:

• The kernel

• System programs

The kernel is the heart of the operating system.

• It is the first program loaded when the computer starts up.

• It manages computer resources, and it handles requests from system programs and applications.

System programs run on top of the kernel.

• These are the programs necessary to connect the kernel to user applications and peripheral
devices.

• Device drivers, file systems, networking programs, and system utilities like disk defragmenters are
all examples of system programs.
Pyramid structure of an operating system
History of operating system
• In the 1950s, computers were limited to running one program at a time like a calculator, but later in the following
decades, computers began to include more and more software programs, sometimes called libraries, that formed
the basis for today’s operating systems.

• 1st Generation computers (1940-1950)-Serial Processing


• Don’t have OS.
• Each program have all code needed to run on a computer.
• Solve simple math calculation.
History of operating system
Characteristics:
• No operating systems in the modern sense.
• Programs were entered using plug boards and punch cards.
• Operations were controlled manually.

Advantages:
• Simple hardware and software structure.
• Direct control over machine resources.

Disadvantages:
• Time-consuming setup and operation.
• No multitasking or interactive processing.
• High potential for human error.
• Expensive
• Slow processing
• Small storage capacity
• Produce excessive heat.
• Use lots of electricity.
History of operating system
2nd Generation computers (1950-1960)
Batch Processing Systems

Characteristics:
Introduction of assembly languages.
Programs were submitted in batches and processed sequentially.
Early forms of job scheduling.

Advantages:
More efficient use of hardware compared to first-generation
systems.
Reduced idle time of the computer.

Disadvantages:
Lack of interactivity with the system.
Debugging was difficult and time-consuming.
Still primarily single-user environments.
History of operating system
3. Third Generation (Mid-1960s - Early 1980s)
Multiprogramming and Time-Sharing Systems

Characteristics:
• Introduction of multiprogramming: multiple jobs in memory at once.
• Development of time-sharing systems: interactive user sessions.
• Use of high-level languages.

Advantages:
• Improved utilization of CPU through multiprogramming.
• Better user interaction with time-sharing.
• Introduction of virtual memory.

Disadvantages:
• Increased complexity in system design.
• More difficult to manage and maintain.
• Higher resource requirements.
History of operating system
4. Fourth Generation (1980s - 1990s)
Personal Computers and Graphical User Interfaces (GUIs)

Characteristics:
• Rise of personal computers (PCs) with user-friendly interfaces.
• Introduction of graphical user interfaces (GUIs) like Windows and Mac OS.
• Networking capabilities started to become standard.

Advantages:
• User-friendly interfaces made computers accessible to non-specialists.
• Increased productivity with multitasking.
• Networked systems allowed for easier sharing of resources.

Disadvantages:
• Higher hardware costs initially.
• Security issues became more prevalent with networking.
• Complexity of managing multiple user interfaces and hardware compatibility.
History of operating system
5. Fifth Generation (Late 1990s - Present)
Distributed Systems and Mobile Operating Systems

Characteristics:
• Growth of the Internet and networked applications.
• Emergence of mobile operating systems (iOS, Android).
• Cloud computing and virtualization technologies.

Advantages:
• Access to vast resources and applications over the Internet.
• Portability and convenience with mobile devices.
• Scalability and flexibility with cloud computing.

Disadvantages:
• Security and privacy concerns with distributed systems.
• Dependence on network connectivity.
• Complexity of managing distributed resources and ensuring compatibility.
History of operating system
• Microsoft bought QDOS (Quick and Dirty Operating System) in 1981 and branded it as Microsoft Operating System
(MS-DOS).

• Unix was developed in the mid-1960s by the Massachusetts Institute of Technology, AT&T Bell Labs, and General
Electric as a joint effort. Initially it was named MULTICS, which stands for Multiplexed Operating and Computing
System.

• Windows 95 is a consumer-oriented graphical user interface-based operating system built on top of MS-DOS. It was
released on August 24, 1995 by Microsoft as part of its Windows 9x family of operating systems.
Functions or Features of Operating System

• Memory Management Processor


Memory Device
Management Management Management
• Processor Management

• Device Management

• File Management Functions or


File Features of
Security
• Security Management Operating
System
• System Performance Management

• Job accounting System Error


Job
Performance detecting
accounting
• Error detecting supports Management supports
Functions or Features of Operating System
Memory Management
• Computer memory is a vital hardware resource of the computer system.
• OS is responsible to manage the primary and secondary memory. All the memory devices such
as hard disk, pen drive etc. are managed by OS.
• Memory Manager is responsible for the coordination of all types of memory devices and move
data among them ,tracking of memory occupancy, memory allocation and de-allocation.

Processor Management
• A program under execution is said to be process.

• Process management is deals with multiple running processes on a single computer.

• Operating System keeps tracks of processor and status of process. Allocates and De-
allocate the processor (CPU) to a process according to requirements.

• Program that keeps track of processes is called as traffic controller.


Functions or Features of Operating System
Device Management
• An Operating System manages device communication via their respective drivers.

• It keep a track of all devices. This task is performed by I/O controller.

• Decides which process gets the device when and for how much time.

• Allocates and De-allocates the device in the efficient way.

File Management
• File Management of operating system also allows users to create, move, rename and delete
folders and files by specific name along with extension, search for a given file and list file
information.

Security
• It prevents unauthorized access to programs and data using password and similar other
techniques.
Functions or Features of Operating System
System Performance Management
• Recording delays between request for a service and response from the system.

• OS monitors the health of system’s hardware, giving information about how busy CPU is,
or how quickly hard drives retrieve data.

Job accounting
• Keeping track of time and resources used by various jobs and users.

Error detecting supports


• Errors which occur within CPU, memory hardware, I/O devices and in the user program,
the OS takes suitable action for ensuring correct and consistent computing.
Category of Operating Systems
There are basically three kinds of Operating systems.

Open Source Operating System


• Open source operating system which means that anyone can download and modify it. For
example, ( Linux based )Ubuntu

Free Operating System


• Free OS is free to download and use but cannot modifiable. For example, Google owns Chrome
OS and makes it free to use.

Commercial operating systems


• Commercial operating systems are privately owned by companies that charge money for them.
Examples include Microsoft Windows and Apple mac OS.

• These require to pay for the license to use their Operating systems.
Types of Operating System
• Batch Operating System

• Multiprogramming Operating
System

• Time Sharing / Multitasking


Operating System

• Multiprocessing Operating System

• Real Time Operating System

• Network Operating System

• Distributed Operating System

• parallel Operating System


Types of Operating System
1) Batch Operating System
• A batch operating system is a type of operating system that processes batches of
jobs with minimal or no user interaction.
• It is one of the earliest types of operating systems used in computer systems,
dating back to the 1950s and 1960s.
• It uses a piece of software known as monitor. The monitor reads in the jobs one
at a time from the input device.
• Program + input Data + control Instruction = JOB.
• example: Payroll system of employees, Bank Statement software.
Types of Operating System
Advantages of Batch Operating System

• No interruption from user once job started.

• Job execute one after another so it is time saving.

• Multiple users can share the batch systems.

• It is easy to manage large work repeatedly in batch systems.

Disadvantages of Batch Operating System

• No mechanism to priorities process

• CPU is often idle, because the speed of the mechanical I/O devices is slower than the CPU.

• No direct interaction between user and computer

• Batch systems are hard to debug

• The other jobs will have to wait for an unknown time if any job fails
Types of Operating System
2) Multiprogramming Operating System
• A multiprogramming operating system is designed to run multiple programs simultaneously by efficiently managing
system resources.
Types of Operating System
2) Multiprogramming Operating System

Key Characteristics of Multiprogramming Operating Systems

Concurrent Execution: Multiple programs (processes) can be loaded into memory at the same time and are executed by the CPU
concurrently. This increases system utilization and throughput.
Efficient CPU Utilization: The operating system keeps the CPU busy by switching between programs whenever one program needs to
wait for I/O operations, ensuring that the CPU is not idle.
Process Scheduling: A process scheduler decides which process will be executed by the CPU next. It uses various scheduling
algorithms (like round-robin, priority-based, etc.) to manage process execution efficiently.
I/O Management: I/O operations are managed so that while one process is waiting for I/O, another process can use the CPU. This
overlapping of I/O and CPU usage improves overall system performance.
Resource Allocation: The operating system allocates system resources (like CPU, memory, and I/O devices) to multiple processes,
ensuring fair and efficient resource usage.
Types of Operating System
2) Multiprogramming Operating System
Advantages of Multiprogramming Operating System

• No interruption from user once job started.

• Takes less time to complete the same jobs than the simple batch system

• Increases the CPU's utilization

• Various computer resources are utilized effectively

• CPU always remains busy to run one of the jobs until all jobs complete their execution.

Disadvantages of Multiprogramming Operating System

• OS must be able to load multiple programs into separate areas of the main memory and
provide the required protection to avoid the chance of one process being modified by
another one.

• Big programs may not fit in memory.

• CPU scheduling is required.


Types of Operating System
3) Multitasking / Time Sharing Operating System
• A multitasking operating system allows multiple tasks (or processes) to run simultaneously by rapidly switching the CPU's
attention between them.
• It allows a user to perform more than one computer task at the same time.
• It is possible because of Time Slot.

• The time that each task gets to execute is called quantum. After this time interval is over OS
switches over to next task.
• 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.
Types of Operating System
Advantages of Time Sharing Operating System

• Each task gets an equal opportunity

• CPU idle time can be reduced

• Resource Utilization: It ensures better utilization of CPU and other system resources by
keeping the CPU busy with various tasks.

• User Productivity: Users can perform multiple operations at once, such as browsing the
web while downloading files and listening to music.

Disadvantages of Time Sharing Operating System

• One must have to take care of security and integrity of user programs and data

• Data communication problem

Examples of Time-Sharing OS : Unix


Types of Operating System
4) Multiprocessing Operating System
• A multiprocessing operating system is designed to manage and utilize multiple CPUs
or cores simultaneously.
• This type of operating system can execute multiple processes concurrently,
distributing the workload across multiple processors to enhance performance,
reliability, and efficiency.
Types of Operating System
4) Multiprocessing Operating System

Advantages of Multiprocessing operating system:


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.

Disadvantages
Multiprocessing operating system is more complex and sophisticated as it takes
care of multiple CPUs simultaneously.
Types of Operating System
Real Time Operating System

• The response time is fixed.

• The processor fixed the response time of display result after processing.

• Real time system is used at those places in which we require higher response time.

• There are two Types of Real Time System.


• Hard Real Time System: In the Hard Real Time System, time is fixed and we can’t change any
moments of the time of processing. Means CPU will process the data as we enter the data.

• Example : Missile launching system, satellite system, Air bag controllers in car.

• Soft Real Time System: In the Soft Real Time System, some moments can be change. Means after
giving the command to the CPU, CPU Performs the Operation after a Microsecond.

• Example : Smart Home, microwave oven, Washing machine, digital cameras


Types of Operating System
Advantages of Real Time Operating System
• Maximum Consumption

• Task Shifting

• Focus on Application

• Real time operating system in embedded system

• Less Error

Disadvantages of Real Time Operating System

• Limited Tasks

• Use heavy system resources

• Low multi-tasking

• Costly to develop
Types of Operating System
6) Network Operating System

• An Operating system, which includes software and associated protocols to communicate with
other computers via a network conveniently and cost-effectively, is called Network Operating
System.

• Network Operating System runs on a server and provides server the capability to manage
data, users, groups, security, applications, and other networking functions.

• The primary purpose of the network operating system is to allow shared file and printer
access among multiple computers.

• It is known as tightly coupled system in which common memory is shared among different
users.
Types of Operating System
6) Network Operating System

advantages of network operating systems


• Centralized servers are highly stable.

• Security is server managed.

• Upgrades to new technologies and hardware's can be easily integrated

into the system.

disadvantages of network operating systems are following.


• High cost of buying and running a server.

• Dependency on a central location for most operations.

• Regular maintenance and updates are required.

• Examples of Networking Operating Systems : Microsoft Windows Server


Types of Operating System
7) Distributed Operating System

• The Distributed OS involves a collection of autonomous


computer systems, capable of communicating and cooperating
with each other through a LAN / WAN.

• Distributed systems use multiple central processors to serve


multiple real time application and multiple users.

• The OS distributes computation logics among several


physical processors.

• The OS manages the communications between the


processors.

• They communicate with each other through various


communication lines.
Types of Operating System
Advantages of Distributed Operating System

• It delivers better performance than a single system.

• It is easily scalable.

• It allows resource sharing

Disadvantages of Distributed Operating System

• Sharing may cause security issues.

• Message loss occurs in the network.

• Resource overloading is an issue.

Examples of Distributed Operating System are- WWW, LAN, Google Server.


Types of Operating System
8) parallel Operating System

• A parallel operating system works by dividing sets of calculations into smaller parts and
distributing them between the machines on a network.

• The main advantage of such system is the faster execution of independent instructions
Types of Operating System
Key Differences between multiprocessing and parallel operating system:
[Link]:
1. Multiprocessing: Focuses on the execution of multiple processes by dividing tasks among multiple
processors.
2. Parallel Operating Systems: Focuses on the overall management and coordination of multiple
processors within a system.
[Link] of Operation:
1. Multiprocessing: Operates at the level of individual applications or programs.
2. Parallel Operating Systems: Operates at the system level, managing resources, scheduling tasks, and
ensuring efficient processor utilization.

In summary, while multiprocessing is a technique for running multiple processes simultaneously, parallel operating systems
provide the underlying infrastructure and management necessary to support and optimize such techniques.
Shell
• A shell is a special user program that provides an interface for the user to
use operating system services.

• Shell accepts human-readable commands from users and converts them


into something which the kernel can understand.

• Shell is broadly classified into two categories –


• Command Line Shell
• Graphical shell
User Operating System Interface
Two types of Interface:
• Command Line Interface (CLI)

• Graphical User Interface (GUI)

Command Line Interface (CLI)


• Command line interfaces (CLI) are the oldest of the interfaces.

• Users interact with Operating System by means of commands.

• It involves the computer responding to commands typed by the operator.

• This type of interface has the drawback that it requires the operator to remember a range of
different commands and is not ideal for novice users.

• Examples: MS-DOS, LINUX, etc.


User Operating System Interface
Command Line Interface: MS-DOS Interface
User Operating System Interface
Command Line Interface: Linux Interface
User Operating System Interface
Graphical user Interfaces (GUI)

• Graphical user interfaces (GUI) are sometimes


also referred to as WIMP because they
use Windows, Icons, Menus and Pointers.

• A graphical user interface (GUI) uses graphics,


along with a keyboard and a mouse, to provide
an easy-to-use interface with operating system

• It allows users to interact with the computer in


a user friendly way.

• Examples: Windows 7, 8, 10, 11 & Mac OS 10.12


Compiler
• A compiler is a special program that translates a programming language's source
code into machine code, bytecode or another programming language.

• The source code is typically written in a high-level, human-readable language such


as Java or C++.
Interpreter
• Interpreter is a computer program that directly executes instructions written in a
programming or scripting language, without requiring them previously to have
been compiled into a machine language program.

• In programming, we can execute a program in two ways. Firstly, through


compilation and secondly, through an interpreter.
Assembler
• Assembler is a program for converting instructions written in low-level assembly
code into relocatable machine code.

You might also like