SlideShare a Scribd company logo
1 of 40
Introduction & Background
CHAPTER # 1
Operating systems
Sabah Arif
Disclaimer
• The material in the course slides has been taken from different
sources. Most of the material has been taken from the book slides of
Operating Systems Concepts by Silber schatz. There is editing at a lot
of places and inclusion of new material from course Instructors.
However, professor does not exhibit or claim any copyright over these
slides material.
Chapter 1 - Outline
• Introduction to operating system
• Application software
• System software
• Machine language
• Microprogramming
• Physical devices
• History of Operating Systems
• Types of Operating Systems
• Introduction to Unix, MS-DOS and Windows
Operating System Definition
• Operating Systems
• OS is a control program which manages computer resources and allocate these
resources among competing tasks
• OS control and coordinates use of hardware among applications for users
• OS is the interface between the hardware and software environment
• OS is a program that acts as an intermediary between the user and computer
hardware
Operating System Goals
• Execute user programs and make solving user problems easier
• Make the computer system convenient to use
• Use the computer hardware in an efficient manner
Computer System Overview
• From hardware and software point of view, a computer system can be
divided into six parts
• Application programs
• Compliers, editors, interpreters
• Operating system
• Machine language
• Microprogramming
• Physical devices
Computer System Overview
Computer System Overview
• Application Programs
• They are used to solve user’s problems
• AP have specific processing’s capabilities required for user’s applications
• Examples:
• Word processor (Microsoft Word)
• Spread sheet (Microsoft Excel)
• Presentation tools (MS PowerPoint)
• Inventory control system
• Library management system
Computer System Overview
• System Programs
• They are used to manage operations of computer and to control its resources
• Oriented to the needs of hardware and facilitate the development and running
of applications
• Examples:
• Compilers (C Language Compiler)
• Editors (DOS Editor)
• Shell (C Shell)
• Interpreter (VB Interpreter)
Computer System Overview
• Operating Systems
• OS is an integrated set of programs used to manage the computer resources
and its overall operations
• Provide a layer of services which manage the resources of the hardware and
permit the user to drive the system
• Provide special hardware services in absence of hardware facility using special
software routines
Computer System Overview
• Operating System performs
• Resource Management
• CPU management
• Memory management
• File System management
• I/O management
• Resource Sharing
• Among Users
• Among CPUs
• Interfacing between hardware and users
Computer System Overview
• Machine Language
• Machine language programs are written in binary language
• Machine language has 50-300 instructions
• Used for moving data around the machine
• Only language understandable by hardware
• Every programming language code has to be converted into machine language
Computer System Overview
• Micro Programs
• They are normally permanently located in chips to perform some basic tasks
• Example is micro program located in ROM
• An interpreter, fetching the machine language instruction such as ADD, JUMP,
MOVE and carrying them out as a series of little steps
• To carry out an ADD instruction following steps are performed
• The micro-program determines where the number to be added are located
• Fetch them
• Add them
• Store them in proper location
Computer System Overview
• Physical Devices
• These are basically hardware components used in a computer
• At the lowest level they have to actually perform the user’s tasks
• Example:
• Processor
• Motherboard
• Memory
• Keyboard
• Mouse
Computer System Organization
• Computer-system operation
• One or more CPUs, device controllers connect through common bus providing
access to shared memory
• Concurrent execution of CPUs and devices competing for memory cycles
Evolution of Operating Systems
• In early systems the programs were entered by using a set of switches
to define memory address value
• The program was started by setting the program counter to the first
instruction word and pressing a start button
• The execution was progressed by displaying light on console
• The first step towards improvement was to reduce human involvement
in this process
Evolution of Operating Systems
• Offline input devices like cards or paper tape reader were introduced
later
• A program loader was established in Computer memory to read
program from input device and setup it in memory
• New input/output technologies were applied to assist in improving
system performance
Evolution of Operating Systems
• Around 1960, a new computer called Atlas was developed with the
requirements of an operating system in mind
• Batch processing was applied to submit jobs in batches to the
computer
• Multiprogramming was introduced to run several programs at the
same time
• The processor should be kept busy for most of the time by switching its
attention from one program to another
Evolution of Operating Systems
• Fist time sharing system (support multiple interactive users) was
developed at MIT
• Mini Computer took place having multi-user OS
• Spooling (Simultaneous Peripheral Operation On-line) technique was
introduced
• it is used to absorb surplus processor time by performing I/O transfers for
other jobs
Types of Operating Systems
• With the passage of time operating systems are divided into different
categories. They can be categories as follows
• Single User OS
• Distributed OS
• Network OS
• Multiprocessor OS
• Real-time OS
• Embedded OS
Single User Operating Systems
• These types of OS were commonly used with computer systems referred as Personal
Computers in 1980s, 1990s and early 2000s
• Cheaper OS
• Easy to use
• May run several different types of operating systems (Windows, MacOS, UNIX, Linux)
• Supports multiple applications
• not dedicated for one type of application
• Have centralized resources
• Supports multimedia (images, text, graphics and audio/video)
• Example:
• Windows 98
• Linux
Network Operating Systems
• Network Operating Systems are used to connect more than one computer
• User can login to a remote computer, to share its resources
• Network OS does not follow any transparency (e.g. location)
• Every operation has to be clearly specified by the user
• User knows where his job is processing
• Examples:
• Windows NT
• Sun Solaris
Distributed Operating Systems
• Distribute computation among several physical processors
• Follows the transparencies
• Requires networking infrastructure
• Local area networks (LAN) or Wide area networks (WAN)
• May be either client-server or peer-to-peer systems
• Main features of Distributed System
• Resource sharing
• Computation speed up
• Reliability
• Communication
Distributed Operating Systems
• Two types of Distributed OS
• Tightly coupled DOS
• Multiprocessor system
• Processor share memory
• Communication takes place through memory
• Loosely coupled DOS
• Single processor system
• Clusters of workstations
• Do not communicate via memory
• Communicate via high speed buses, telephone lines
• Examples:
• Windows 2000
• Linux
• Unix
Multiprocessor Operating Systems
• These are actually distributed operating systems which run on
machines having more than one processor
• Communication is done via shared memory through message passing.
Real-time Operating Systems
• These OS run on Real-time systems
• Very fast operating system
• Normally designed for a set of specific applications
• A real-time system is any information processing system which has to respond to externally
generated input stimuli within a finite and specified period
• the correctness depends not only on the logical result but also the time it was delivered
• failure to respond is as bad as the wrong response
• In a real time system emphasis is on timely execution of tasks than speed of execution
• Often used as a control device in a dedicated application such as controlling scientific
experiments, medical imaging systems, industrial control systems, and some display systems
• Real-Time systems may be either hard or soft real-time
Real-time Operating Systems
• Hard real-time system
• systems where it is absolutely imperative that responses occur within the required
deadline
• E.g. Flight control systems
• Air traffic Control system
• Medical system
• Secondary storage limited, data stored in short term memory, or read-only memory
(ROM)
• Soft real-time system
• E.g. Data gaining system, Online Transaction Systems
• Mobile Communication
• Electronic games, DVD players
• Useful in applications (multimedia, virtual reality) requiring advanced operating-
system features
Embedded Operating Systems
• These operating systems are dedicated for devices
• These are normally built-in with devices
• Example:
• Mobile set OS
• PDA OS ( personal digital assistant, a handheld device that combines computing,
telephone/fax, Internet and networking features.)
• Issues:
• Limited memory
• Slow processors
• Small display screens
Computing Environments - Traditional
• Stand-alone general purpose machines
• But blurred as most systems interconnect with others (i.e. the Internet)
• Portals provide web access to internal systems
• Network computers (thin clients) are like Web terminals
• Mobile computers interconnect via wireless networks
• Networking becoming ubiquitous – even home systems use firewalls
to protect home computers from Internet attacks.
Computing Environments - Mobile
• Handheld smartphones, tablets, etc
• What is the functional difference between them and a “traditional”
laptop?
• Extra feature – more OS features (GPS, gyroscope)
• Allows new types of apps like augmented reality
• Use IEEE 802.11 wireless, or cellular data networks for connectivity
• Leaders are Apple iOS and Google Android
Computing Environments – Distributed
• Distributed
• Collection of separate, possibly heterogeneous, systems networked together
• Network is a communications path, TCP/IP most common
• Local Area Network (LAN)
• Wide Area Network (WAN)
• Metropolitan Area Network (MAN)
• Personal Area Network (PAN)
• Network Operating System provides features between systems across
network
• Communication scheme allows systems to exchange messages
• Illusion of a single system
Computing Environments – Client-Server
• Client-Server Computing
• Dumb terminals supplanted by smart PCs
• Many systems now servers, responding to requests generated by clients
• Compute-server system provides an interface to client to request services (i.e., database)
• File-server sys
• tem provides interface for clients to store and retrieve files
Computing Environments – Peer-to-Peer
• Another model of distributed system
• P2P does not distinguish clients and servers
• Instead all nodes are considered peers
• May each act as client, server or both
• Node must join P2P network
• Registers its service with central lookup service on network, or
• Broadcast request for service and respond to requests for service via discovery protocol
• Examples include Napster and Gnutella, Voice over IP (VoIP) such as Skype
Computing Environments - Virtualization
• It treats hardware and the operating system kernel as though they were all
hardware
• A virtual machine provides an interface identical to the underlying bare hardware
• The operating system creates the illusion of multiple processes, each executing on
its own processor with its own (virtual) memory
• The resources of the physical computer are shared to create the virtual machines
• CPU scheduling can create the appearance that users have their own processor
• Spooling and a file system can provide virtual card readers and virtual line printers
Computing Environments - Virtualization
• Allows operating systems to run applications within other OSes
• Vast and growing industry
• Emulation used when source CPU type different from target type (i.e.
PowerPC to Intel x86)
• Generally slowest method
• When computer language not compiled to native code – Interpretation
• Virtualization – OS natively compiled for CPU, running guest OSes
also natively compiled
• Consider VMware running WinXP guests, each running applications, all on
native WinXP host OS
• VMM provides virtualization services
Computing Environments - Virtualization
• Use cases involve laptops and desktops running multiple OSes for
exploration or compatibility
• Apple laptop running Mac OS X host, Windows as a guest
• Developing apps for multiple OSes without having multiple systems
• QA testing applications without having multiple systems
• Executing and managing compute environments within data centers
• VMM can run natively, in which case they are also the host
• There is no general purpose host then (VMware ESX and Citrix XenServer)
Computing Environments - Virtualization
Computing Environments – Cloud
Computing
• Delivers computing, storage, even apps as a service across a network
• Logical extension of virtualization as based on virtualization
• Amazon EC2 has thousands of servers, millions of VMs, PBs of storage available across the
Internet, pay based on usage
• Deployment Types
• Public cloud – available via Internet to anyone willing to pay
• Private cloud – run by a company for the company’s own use
• Hybrid cloud – includes both public and private cloud components
• Service Types
• Software as a Service (SaaS) – one or more applications available via the Internet (i.e. word
processor)
• Platform as a Service (PaaS) – software stack ready for application use via the Internet (i.e a
database server)
• Infrastructure as a Service (IaaS) – servers or storage available over Internet (i.e. storage
available for backup use)
Computing Environments – Cloud
Computing
• Cloud compute environments composed of traditional OSes, plus VMMs, plus
cloud management tools
• Internet connectivity requires security like firewalls
• Load balancers spread traffic across multiple applications
Computing Environments – Real-Time
Embedded Systems
• Real-time embedded systems most prevalent form of computers
• Vary considerable, special purpose, limited purpose OS, real-time OS
• Use expanding
• Many other special computing environments as well
• Some have OSes, some perform tasks without an OS
• Real-time OS has well-defined fixed time constraints
• Processing must be done within constraint
• Correct operation only if constraints met

More Related Content

Similar to Operating Systems Introduction & Background

Operating system by ajay yadav shq upr
Operating system by ajay yadav shq uprOperating system by ajay yadav shq upr
Operating system by ajay yadav shq uprAjay Yadav
 
fdocuments.in_unit-2-foc.ppt
fdocuments.in_unit-2-foc.pptfdocuments.in_unit-2-foc.ppt
fdocuments.in_unit-2-foc.pptKrishanPalSingh39
 
Overview of computer
Overview of computerOverview of computer
Overview of computerSunny Pavan
 
CSE3120- Module1 part 1 v1.pptx
CSE3120- Module1 part 1 v1.pptxCSE3120- Module1 part 1 v1.pptx
CSE3120- Module1 part 1 v1.pptxakhilagajjala
 
Nt introduction(os)
Nt introduction(os)Nt introduction(os)
Nt introduction(os)NehaTadam
 
os unit 1 (2).pptx. introduction to operating systems
os unit 1 (2).pptx. introduction to operating systemsos unit 1 (2).pptx. introduction to operating systems
os unit 1 (2).pptx. introduction to operating systemsssuser6aef00
 
Unit 1 operating system
Unit 1 operating systemUnit 1 operating system
Unit 1 operating systemMeeta
 
Lecture 4.pptx
Lecture 4.pptxLecture 4.pptx
Lecture 4.pptxsara591850
 
Kernel security Concepts
Kernel security ConceptsKernel security Concepts
Kernel security ConceptsMohit Saxena
 
Operating System
Operating SystemOperating System
Operating Systempuneet2home
 
1 Introduction to OS.ppt
1 Introduction to OS.ppt1 Introduction to OS.ppt
1 Introduction to OS.pptKumarVaibhav100
 
UNIT 1 - UNDERSTANDINGTHE PRINCIPLES OF OPERATING SYSTEM.pptx
UNIT 1 - UNDERSTANDINGTHE PRINCIPLES OF OPERATING SYSTEM.pptxUNIT 1 - UNDERSTANDINGTHE PRINCIPLES OF OPERATING SYSTEM.pptx
UNIT 1 - UNDERSTANDINGTHE PRINCIPLES OF OPERATING SYSTEM.pptxLeahRachael
 

Similar to Operating Systems Introduction & Background (20)

systems_software
systems_softwaresystems_software
systems_software
 
Operating system by ajay yadav shq upr
Operating system by ajay yadav shq uprOperating system by ajay yadav shq upr
Operating system by ajay yadav shq upr
 
fdocuments.in_unit-2-foc.ppt
fdocuments.in_unit-2-foc.pptfdocuments.in_unit-2-foc.ppt
fdocuments.in_unit-2-foc.ppt
 
Operating System Overview.pdf
Operating System Overview.pdfOperating System Overview.pdf
Operating System Overview.pdf
 
Overview of computer
Overview of computerOverview of computer
Overview of computer
 
ch1.ppt
ch1.pptch1.ppt
ch1.ppt
 
CSE3120- Module1 part 1 v1.pptx
CSE3120- Module1 part 1 v1.pptxCSE3120- Module1 part 1 v1.pptx
CSE3120- Module1 part 1 v1.pptx
 
Introduction to operating systems
 Introduction to operating systems Introduction to operating systems
Introduction to operating systems
 
Nt introduction(os)
Nt introduction(os)Nt introduction(os)
Nt introduction(os)
 
os unit 1 (2).pptx. introduction to operating systems
os unit 1 (2).pptx. introduction to operating systemsos unit 1 (2).pptx. introduction to operating systems
os unit 1 (2).pptx. introduction to operating systems
 
Os ch1
Os ch1Os ch1
Os ch1
 
Unit 1 operating system
Unit 1 operating systemUnit 1 operating system
Unit 1 operating system
 
Lecture 4.pptx
Lecture 4.pptxLecture 4.pptx
Lecture 4.pptx
 
Kernel security Concepts
Kernel security ConceptsKernel security Concepts
Kernel security Concepts
 
unit1 part1.ppt
unit1 part1.pptunit1 part1.ppt
unit1 part1.ppt
 
Operating System
Operating SystemOperating System
Operating System
 
1 Introduction to OS.ppt
1 Introduction to OS.ppt1 Introduction to OS.ppt
1 Introduction to OS.ppt
 
Operating system concept
Operating system conceptOperating system concept
Operating system concept
 
UNIT 1 - UNDERSTANDINGTHE PRINCIPLES OF OPERATING SYSTEM.pptx
UNIT 1 - UNDERSTANDINGTHE PRINCIPLES OF OPERATING SYSTEM.pptxUNIT 1 - UNDERSTANDINGTHE PRINCIPLES OF OPERATING SYSTEM.pptx
UNIT 1 - UNDERSTANDINGTHE PRINCIPLES OF OPERATING SYSTEM.pptx
 
Software introduction
Software introductionSoftware introduction
Software introduction
 

Recently uploaded

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 

Recently uploaded (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 

Operating Systems Introduction & Background

  • 1. Introduction & Background CHAPTER # 1 Operating systems Sabah Arif
  • 2. Disclaimer • The material in the course slides has been taken from different sources. Most of the material has been taken from the book slides of Operating Systems Concepts by Silber schatz. There is editing at a lot of places and inclusion of new material from course Instructors. However, professor does not exhibit or claim any copyright over these slides material.
  • 3. Chapter 1 - Outline • Introduction to operating system • Application software • System software • Machine language • Microprogramming • Physical devices • History of Operating Systems • Types of Operating Systems • Introduction to Unix, MS-DOS and Windows
  • 4. Operating System Definition • Operating Systems • OS is a control program which manages computer resources and allocate these resources among competing tasks • OS control and coordinates use of hardware among applications for users • OS is the interface between the hardware and software environment • OS is a program that acts as an intermediary between the user and computer hardware
  • 5. Operating System Goals • Execute user programs and make solving user problems easier • Make the computer system convenient to use • Use the computer hardware in an efficient manner
  • 6. Computer System Overview • From hardware and software point of view, a computer system can be divided into six parts • Application programs • Compliers, editors, interpreters • Operating system • Machine language • Microprogramming • Physical devices
  • 8. Computer System Overview • Application Programs • They are used to solve user’s problems • AP have specific processing’s capabilities required for user’s applications • Examples: • Word processor (Microsoft Word) • Spread sheet (Microsoft Excel) • Presentation tools (MS PowerPoint) • Inventory control system • Library management system
  • 9. Computer System Overview • System Programs • They are used to manage operations of computer and to control its resources • Oriented to the needs of hardware and facilitate the development and running of applications • Examples: • Compilers (C Language Compiler) • Editors (DOS Editor) • Shell (C Shell) • Interpreter (VB Interpreter)
  • 10. Computer System Overview • Operating Systems • OS is an integrated set of programs used to manage the computer resources and its overall operations • Provide a layer of services which manage the resources of the hardware and permit the user to drive the system • Provide special hardware services in absence of hardware facility using special software routines
  • 11. Computer System Overview • Operating System performs • Resource Management • CPU management • Memory management • File System management • I/O management • Resource Sharing • Among Users • Among CPUs • Interfacing between hardware and users
  • 12. Computer System Overview • Machine Language • Machine language programs are written in binary language • Machine language has 50-300 instructions • Used for moving data around the machine • Only language understandable by hardware • Every programming language code has to be converted into machine language
  • 13. Computer System Overview • Micro Programs • They are normally permanently located in chips to perform some basic tasks • Example is micro program located in ROM • An interpreter, fetching the machine language instruction such as ADD, JUMP, MOVE and carrying them out as a series of little steps • To carry out an ADD instruction following steps are performed • The micro-program determines where the number to be added are located • Fetch them • Add them • Store them in proper location
  • 14. Computer System Overview • Physical Devices • These are basically hardware components used in a computer • At the lowest level they have to actually perform the user’s tasks • Example: • Processor • Motherboard • Memory • Keyboard • Mouse
  • 15. Computer System Organization • Computer-system operation • One or more CPUs, device controllers connect through common bus providing access to shared memory • Concurrent execution of CPUs and devices competing for memory cycles
  • 16. Evolution of Operating Systems • In early systems the programs were entered by using a set of switches to define memory address value • The program was started by setting the program counter to the first instruction word and pressing a start button • The execution was progressed by displaying light on console • The first step towards improvement was to reduce human involvement in this process
  • 17. Evolution of Operating Systems • Offline input devices like cards or paper tape reader were introduced later • A program loader was established in Computer memory to read program from input device and setup it in memory • New input/output technologies were applied to assist in improving system performance
  • 18. Evolution of Operating Systems • Around 1960, a new computer called Atlas was developed with the requirements of an operating system in mind • Batch processing was applied to submit jobs in batches to the computer • Multiprogramming was introduced to run several programs at the same time • The processor should be kept busy for most of the time by switching its attention from one program to another
  • 19. Evolution of Operating Systems • Fist time sharing system (support multiple interactive users) was developed at MIT • Mini Computer took place having multi-user OS • Spooling (Simultaneous Peripheral Operation On-line) technique was introduced • it is used to absorb surplus processor time by performing I/O transfers for other jobs
  • 20. Types of Operating Systems • With the passage of time operating systems are divided into different categories. They can be categories as follows • Single User OS • Distributed OS • Network OS • Multiprocessor OS • Real-time OS • Embedded OS
  • 21. Single User Operating Systems • These types of OS were commonly used with computer systems referred as Personal Computers in 1980s, 1990s and early 2000s • Cheaper OS • Easy to use • May run several different types of operating systems (Windows, MacOS, UNIX, Linux) • Supports multiple applications • not dedicated for one type of application • Have centralized resources • Supports multimedia (images, text, graphics and audio/video) • Example: • Windows 98 • Linux
  • 22. Network Operating Systems • Network Operating Systems are used to connect more than one computer • User can login to a remote computer, to share its resources • Network OS does not follow any transparency (e.g. location) • Every operation has to be clearly specified by the user • User knows where his job is processing • Examples: • Windows NT • Sun Solaris
  • 23. Distributed Operating Systems • Distribute computation among several physical processors • Follows the transparencies • Requires networking infrastructure • Local area networks (LAN) or Wide area networks (WAN) • May be either client-server or peer-to-peer systems • Main features of Distributed System • Resource sharing • Computation speed up • Reliability • Communication
  • 24. Distributed Operating Systems • Two types of Distributed OS • Tightly coupled DOS • Multiprocessor system • Processor share memory • Communication takes place through memory • Loosely coupled DOS • Single processor system • Clusters of workstations • Do not communicate via memory • Communicate via high speed buses, telephone lines • Examples: • Windows 2000 • Linux • Unix
  • 25. Multiprocessor Operating Systems • These are actually distributed operating systems which run on machines having more than one processor • Communication is done via shared memory through message passing.
  • 26. Real-time Operating Systems • These OS run on Real-time systems • Very fast operating system • Normally designed for a set of specific applications • A real-time system is any information processing system which has to respond to externally generated input stimuli within a finite and specified period • the correctness depends not only on the logical result but also the time it was delivered • failure to respond is as bad as the wrong response • In a real time system emphasis is on timely execution of tasks than speed of execution • Often used as a control device in a dedicated application such as controlling scientific experiments, medical imaging systems, industrial control systems, and some display systems • Real-Time systems may be either hard or soft real-time
  • 27. Real-time Operating Systems • Hard real-time system • systems where it is absolutely imperative that responses occur within the required deadline • E.g. Flight control systems • Air traffic Control system • Medical system • Secondary storage limited, data stored in short term memory, or read-only memory (ROM) • Soft real-time system • E.g. Data gaining system, Online Transaction Systems • Mobile Communication • Electronic games, DVD players • Useful in applications (multimedia, virtual reality) requiring advanced operating- system features
  • 28. Embedded Operating Systems • These operating systems are dedicated for devices • These are normally built-in with devices • Example: • Mobile set OS • PDA OS ( personal digital assistant, a handheld device that combines computing, telephone/fax, Internet and networking features.) • Issues: • Limited memory • Slow processors • Small display screens
  • 29. Computing Environments - Traditional • Stand-alone general purpose machines • But blurred as most systems interconnect with others (i.e. the Internet) • Portals provide web access to internal systems • Network computers (thin clients) are like Web terminals • Mobile computers interconnect via wireless networks • Networking becoming ubiquitous – even home systems use firewalls to protect home computers from Internet attacks.
  • 30. Computing Environments - Mobile • Handheld smartphones, tablets, etc • What is the functional difference between them and a “traditional” laptop? • Extra feature – more OS features (GPS, gyroscope) • Allows new types of apps like augmented reality • Use IEEE 802.11 wireless, or cellular data networks for connectivity • Leaders are Apple iOS and Google Android
  • 31. Computing Environments – Distributed • Distributed • Collection of separate, possibly heterogeneous, systems networked together • Network is a communications path, TCP/IP most common • Local Area Network (LAN) • Wide Area Network (WAN) • Metropolitan Area Network (MAN) • Personal Area Network (PAN) • Network Operating System provides features between systems across network • Communication scheme allows systems to exchange messages • Illusion of a single system
  • 32. Computing Environments – Client-Server • Client-Server Computing • Dumb terminals supplanted by smart PCs • Many systems now servers, responding to requests generated by clients • Compute-server system provides an interface to client to request services (i.e., database) • File-server sys • tem provides interface for clients to store and retrieve files
  • 33. Computing Environments – Peer-to-Peer • Another model of distributed system • P2P does not distinguish clients and servers • Instead all nodes are considered peers • May each act as client, server or both • Node must join P2P network • Registers its service with central lookup service on network, or • Broadcast request for service and respond to requests for service via discovery protocol • Examples include Napster and Gnutella, Voice over IP (VoIP) such as Skype
  • 34. Computing Environments - Virtualization • It treats hardware and the operating system kernel as though they were all hardware • A virtual machine provides an interface identical to the underlying bare hardware • The operating system creates the illusion of multiple processes, each executing on its own processor with its own (virtual) memory • The resources of the physical computer are shared to create the virtual machines • CPU scheduling can create the appearance that users have their own processor • Spooling and a file system can provide virtual card readers and virtual line printers
  • 35. Computing Environments - Virtualization • Allows operating systems to run applications within other OSes • Vast and growing industry • Emulation used when source CPU type different from target type (i.e. PowerPC to Intel x86) • Generally slowest method • When computer language not compiled to native code – Interpretation • Virtualization – OS natively compiled for CPU, running guest OSes also natively compiled • Consider VMware running WinXP guests, each running applications, all on native WinXP host OS • VMM provides virtualization services
  • 36. Computing Environments - Virtualization • Use cases involve laptops and desktops running multiple OSes for exploration or compatibility • Apple laptop running Mac OS X host, Windows as a guest • Developing apps for multiple OSes without having multiple systems • QA testing applications without having multiple systems • Executing and managing compute environments within data centers • VMM can run natively, in which case they are also the host • There is no general purpose host then (VMware ESX and Citrix XenServer)
  • 37. Computing Environments - Virtualization
  • 38. Computing Environments – Cloud Computing • Delivers computing, storage, even apps as a service across a network • Logical extension of virtualization as based on virtualization • Amazon EC2 has thousands of servers, millions of VMs, PBs of storage available across the Internet, pay based on usage • Deployment Types • Public cloud – available via Internet to anyone willing to pay • Private cloud – run by a company for the company’s own use • Hybrid cloud – includes both public and private cloud components • Service Types • Software as a Service (SaaS) – one or more applications available via the Internet (i.e. word processor) • Platform as a Service (PaaS) – software stack ready for application use via the Internet (i.e a database server) • Infrastructure as a Service (IaaS) – servers or storage available over Internet (i.e. storage available for backup use)
  • 39. Computing Environments – Cloud Computing • Cloud compute environments composed of traditional OSes, plus VMMs, plus cloud management tools • Internet connectivity requires security like firewalls • Load balancers spread traffic across multiple applications
  • 40. Computing Environments – Real-Time Embedded Systems • Real-time embedded systems most prevalent form of computers • Vary considerable, special purpose, limited purpose OS, real-time OS • Use expanding • Many other special computing environments as well • Some have OSes, some perform tasks without an OS • Real-time OS has well-defined fixed time constraints • Processing must be done within constraint • Correct operation only if constraints met