SlideShare a Scribd company logo
1 of 34
1
Chapter 1 Introduction
2
Introduction
l Von Neumann computer
» “Naked machine”
» Hardware without any helpful user-oriented features
» Extremely difficult for a human to work with
l An interface between the user and the
hardware is needed to make a Von
Neumann computer usable
3
Introduction (continued)
l Tasks of the interface
» Hide details of the underlying hardware from the user
» Present information in a way that does not require in-depth
knowledge of the internal structure of the system
» Allow easy user access to the available resources
» Prevent accidental or intentional damage to hardware,
programs, and data
4
System Software: The Virtual
Machine
l System software
» Acts as an intermediary between users and hardware
» Creates a virtual environment for the user that hides the
actual computer architecture
l Virtual machine (or virtual environment)
» Set of services and resources created by the system
software and seen by the user
5
The Role of System Software
6
Operating Systems
l System commands
» Carry out services such as translate a program, load a
program, run a program
» Types of system commands
– Lines of text typed at a terminal
– Menu items displayed on a screen and selected
with a mouse and a button: Point-and-click
» Examined by the operating system
7
Functions of an Operating System
l Five most important responsibilities of the
operating system
» User interface management
» Program scheduling and activation
» Control of access to system and files
» Efficient resource allocation
» Deadlock detection and error detection
8
The User Interface
l Operating system
» Waits for a user command
» If command is legal, activates and schedules the appropriate
software package
l User interfaces
» Text-oriented
» Graphical
9
Types of System Software
l System software is a collection of many
different programs
l Operating system
» Controls the overall operation of the computer
» Communicates with the user
» Determines what the user wants
» Activates system programs, applications packages, or user
programs to carry out user requests
10
Types of System Software
11
Types of System Software
(continued)
l User interface
» Graphical user interface (GUI) provides graphical control of
the capabilities and services of the computer
l Language services
» Assemblers, compilers, and interpreters
» Allow you to write programs in a high-level, user-oriented
language, and then execute them
l Memory managers
» Allocate and retrieve memory space
12
Types of System Software
(continued)
l Information managers
» Handle the organization, storage, and retrieval of information
on mass storage devices
l I/O systems
» Allow the use of different types of input and output devices
l Scheduler
» Keeps a list of programs ready to run and selects the one
that will execute next
l Utilities
» Collections of library routines that provide services either to
user or other system routines
13
Machine Language
l Machine language
» Uses binary
» Allows only numeric memory addresses
» Difficult to change
» Difficult to create data
14
Assembly Language (continued)
l Assembly languages
» Designed to overcome shortcomings of machine languages
» Create a more productive, user-oriented environment
» Earlier termed second-generation languages
» Now viewed as low-level programming languages
15
Assembly Language (continued)
l Source program
» An assembly language program
l Object program
» A machine language program
l Assembler
» Translates a source program into a corresponding object
program
16
The Translation/Loading/Execution Process
Assembly Language (continued)
17
Assembly Language (continued)
l Advantages of writing in assembly language
rather than machine language
» Use of symbolic operation codes rather than numeric
(binary) ones
» Use of symbolic memory addresses rather than numeric
(binary) ones
» Pseudo-operations that provide useful user-oriented services
such as data generation
18
Structure of a Typical Assembly Language Program
Assembly Language (continued)
19
Examples of Assembly Language
Code (continued)
l Assembly language translation
LOAD B --Put the value B into register R.
ADD C --R now holds the sum (B + C).
SUBTRACT SEVEN --R now holds the expression (B + C - 7).
STORE A --Store the result into A.
: --These data should be placed after the
HALT.
A: .DATA 0
B: .DATA 0
C: .DATA 0
SEVEN: .DATA 7 --The constant 7.
20
Program example
l Problem
» Read in a sequence of non-negative numbers, one number at a
time, and compute a running sum
» When you encounter a negative number, print out the sum of the
non-negative values and stop
21
Algorithm to Compute the Sum of Numbers
Program example
22
Assembly Language Program to Compute the Sum of Nonnegative
Numbers
23
Translation and Loading
l Before a source program can be run, an
assembler and a loader must be invoked
l Assembler
» Translates a symbolic assembly language program into
machine language
l Loader
» Reads instructions from the object file and stores them into
memory for execution
24
Translation and Loading (continued)
l Assembler tasks
» Convert symbolic op codes to binary
» Convert symbolic addresses to binary
» Perform assembler services requested by the pseudo-ops
» Put translated instructions into a file for future use
25
System Security And Protection
l The operating system must prevent
» Non-authorized people from using the computer
– User names and passwords
» Legitimate users from accessing data or programs they are
not authorized to access
– Authorization lists
26
Efficient Allocation Of Resources
l The operating system ensures that
» Multiple tasks of the computer can be underway at one time
» Processor is constantly busy
– Keeps a queue of programs that are ready to run
– Whenever processor is idle, picks a job from the
queue and assigns it to the processor
27
The Safe Use Of Resources
l Deadlock
» Two processes are each holding a resource the other needs
» Neither process will ever progress
l The operating system must handle deadlocks
» Deadlock prevention
» Deadlock recovery
28
Historical Overview of Operating
Systems Development
l First generation of system software (roughly
1945-1955)
» No operating systems
» Assemblers and loaders were almost the only system software
provided
29
Historical Overview of Operating
Systems Development (continued)
l Second generation of system software (1955-
1965)
» Batch operating systems
» Ran collections of input programs one after the other
» Included a command language
30
Operation of a Batch Computer System
31
l Third-generation operating systems (1965-1985)
» Multiprogrammed operating systems
» Permitted multiple user programs to run at once
Historical Overview of Operating
Systems Development (continued)
32
l Fourth-generation operating systems (1985-
present)
» Network operating systems
» Virtual environment treats resources physically residing on the
computer in the same way as resources available through the
computer’s network
Historical Overview of Operating
Systems Development (continued)
33
The Future
l Operating systems will continue to evolve
l Possible characteristics of fifth-generation
systems
» Multimedia user interfaces
» Parallel processing systems
» Completely distributed computing environments
34
Some of the Major Advances in Operating Systems Development

More Related Content

Similar to Introduction to system programming

Operating systems By Awais
Operating systems By AwaisOperating systems By Awais
Operating systems By AwaisAwaisch3
 
IS740 Chapter 04
IS740 Chapter 04IS740 Chapter 04
IS740 Chapter 04iDocs
 
Operating systems11 9-07 (1)
Operating systems11 9-07 (1)Operating systems11 9-07 (1)
Operating systems11 9-07 (1)vattikuti_sarada
 
Operating systems for class 9th class
Operating systems for class 9th classOperating systems for class 9th class
Operating systems for class 9th classAnkit Kumar
 
Operating systems11 9-07
Operating systems11 9-07Operating systems11 9-07
Operating systems11 9-07phazeddl
 
Operating systems11 9-07
Operating systems11 9-07Operating systems11 9-07
Operating systems11 9-07ainfara
 
Mba i-ifm-u-2-computer software
Mba i-ifm-u-2-computer softwareMba i-ifm-u-2-computer software
Mba i-ifm-u-2-computer softwareRai University
 
Computer, generations, languages, soft wares
Computer, generations, languages, soft waresComputer, generations, languages, soft wares
Computer, generations, languages, soft wareskiranmohan42
 
Operating System Structure Part-I.pdf
Operating System Structure Part-I.pdfOperating System Structure Part-I.pdf
Operating System Structure Part-I.pdfHarika Pudugosula
 
operating system
operating systemoperating system
operating systemIbbad shah
 
программное обеспечение (по)
программное обеспечение (по) программное обеспечение (по)
программное обеспечение (по) victoria_4
 
04 software system and application software - copy - copy
04 software   system and application software - copy - copy04 software   system and application software - copy - copy
04 software system and application software - copy - copyAfrodisius Mathayo
 
04 software system and application software
04 software   system and application software04 software   system and application software
04 software system and application softwareAfrodisius Mathayo
 
Ch0 computer systems overview
Ch0 computer systems overviewCh0 computer systems overview
Ch0 computer systems overviewAboubakarIbrahima
 
Operating Systems Presentation
Operating Systems Presentation Operating Systems Presentation
Operating Systems Presentation Mayank Thanki
 

Similar to Introduction to system programming (20)

Operating systems By Awais
Operating systems By AwaisOperating systems By Awais
Operating systems By Awais
 
IS740 Chapter 04
IS740 Chapter 04IS740 Chapter 04
IS740 Chapter 04
 
Caim ppt
Caim pptCaim ppt
Caim ppt
 
Operating systems11 9-07 (1)
Operating systems11 9-07 (1)Operating systems11 9-07 (1)
Operating systems11 9-07 (1)
 
Operating systems for class 9th class
Operating systems for class 9th classOperating systems for class 9th class
Operating systems for class 9th class
 
Operating systems11 9-07
Operating systems11 9-07Operating systems11 9-07
Operating systems11 9-07
 
Operating systems11 9-07
Operating systems11 9-07Operating systems11 9-07
Operating systems11 9-07
 
Computing 8
Computing 8Computing 8
Computing 8
 
concepts-of-computer.ppt
concepts-of-computer.pptconcepts-of-computer.ppt
concepts-of-computer.ppt
 
Mba i-ifm-u-2-computer software
Mba i-ifm-u-2-computer softwareMba i-ifm-u-2-computer software
Mba i-ifm-u-2-computer software
 
Is ch04
Is ch04Is ch04
Is ch04
 
Computer, generations, languages, soft wares
Computer, generations, languages, soft waresComputer, generations, languages, soft wares
Computer, generations, languages, soft wares
 
Operating System Structure Part-I.pdf
Operating System Structure Part-I.pdfOperating System Structure Part-I.pdf
Operating System Structure Part-I.pdf
 
computer Unit 7
computer Unit 7computer Unit 7
computer Unit 7
 
operating system
operating systemoperating system
operating system
 
программное обеспечение (по)
программное обеспечение (по) программное обеспечение (по)
программное обеспечение (по)
 
04 software system and application software - copy - copy
04 software   system and application software - copy - copy04 software   system and application software - copy - copy
04 software system and application software - copy - copy
 
04 software system and application software
04 software   system and application software04 software   system and application software
04 software system and application software
 
Ch0 computer systems overview
Ch0 computer systems overviewCh0 computer systems overview
Ch0 computer systems overview
 
Operating Systems Presentation
Operating Systems Presentation Operating Systems Presentation
Operating Systems Presentation
 

Recently uploaded

Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimaginedpanagenda
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxFIDO Alliance
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfalexjohnson7307
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftshyamraj55
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...panagenda
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGDSC PJATK
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsLeah Henrickson
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingScyllaDB
 
CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)Wonjun Hwang
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptxFIDO Alliance
 
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdfFrisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdfAnubhavMangla3
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentationyogeshlabana357357
 
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdfMuhammad Subhan
 
الأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهلهالأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهلهMohamed Sweelam
 
UiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewUiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewDianaGray10
 
Top 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development CompaniesTop 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development CompaniesTopCSSGallery
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform EngineeringMarcus Vechiato
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctBrainSell Technologies
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...marcuskenyatta275
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxFIDO Alliance
 

Recently uploaded (20)

Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptx
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdf
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 Warsaw
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream Processing
 
CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
 
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdfFrisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
 
الأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهلهالأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهله
 
UiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewUiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overview
 
Top 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development CompaniesTop 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development Companies
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
 

Introduction to system programming

  • 2. 2 Introduction l Von Neumann computer » “Naked machine” » Hardware without any helpful user-oriented features » Extremely difficult for a human to work with l An interface between the user and the hardware is needed to make a Von Neumann computer usable
  • 3. 3 Introduction (continued) l Tasks of the interface » Hide details of the underlying hardware from the user » Present information in a way that does not require in-depth knowledge of the internal structure of the system » Allow easy user access to the available resources » Prevent accidental or intentional damage to hardware, programs, and data
  • 4. 4 System Software: The Virtual Machine l System software » Acts as an intermediary between users and hardware » Creates a virtual environment for the user that hides the actual computer architecture l Virtual machine (or virtual environment) » Set of services and resources created by the system software and seen by the user
  • 5. 5 The Role of System Software
  • 6. 6 Operating Systems l System commands » Carry out services such as translate a program, load a program, run a program » Types of system commands – Lines of text typed at a terminal – Menu items displayed on a screen and selected with a mouse and a button: Point-and-click » Examined by the operating system
  • 7. 7 Functions of an Operating System l Five most important responsibilities of the operating system » User interface management » Program scheduling and activation » Control of access to system and files » Efficient resource allocation » Deadlock detection and error detection
  • 8. 8 The User Interface l Operating system » Waits for a user command » If command is legal, activates and schedules the appropriate software package l User interfaces » Text-oriented » Graphical
  • 9. 9 Types of System Software l System software is a collection of many different programs l Operating system » Controls the overall operation of the computer » Communicates with the user » Determines what the user wants » Activates system programs, applications packages, or user programs to carry out user requests
  • 10. 10 Types of System Software
  • 11. 11 Types of System Software (continued) l User interface » Graphical user interface (GUI) provides graphical control of the capabilities and services of the computer l Language services » Assemblers, compilers, and interpreters » Allow you to write programs in a high-level, user-oriented language, and then execute them l Memory managers » Allocate and retrieve memory space
  • 12. 12 Types of System Software (continued) l Information managers » Handle the organization, storage, and retrieval of information on mass storage devices l I/O systems » Allow the use of different types of input and output devices l Scheduler » Keeps a list of programs ready to run and selects the one that will execute next l Utilities » Collections of library routines that provide services either to user or other system routines
  • 13. 13 Machine Language l Machine language » Uses binary » Allows only numeric memory addresses » Difficult to change » Difficult to create data
  • 14. 14 Assembly Language (continued) l Assembly languages » Designed to overcome shortcomings of machine languages » Create a more productive, user-oriented environment » Earlier termed second-generation languages » Now viewed as low-level programming languages
  • 15. 15 Assembly Language (continued) l Source program » An assembly language program l Object program » A machine language program l Assembler » Translates a source program into a corresponding object program
  • 17. 17 Assembly Language (continued) l Advantages of writing in assembly language rather than machine language » Use of symbolic operation codes rather than numeric (binary) ones » Use of symbolic memory addresses rather than numeric (binary) ones » Pseudo-operations that provide useful user-oriented services such as data generation
  • 18. 18 Structure of a Typical Assembly Language Program Assembly Language (continued)
  • 19. 19 Examples of Assembly Language Code (continued) l Assembly language translation LOAD B --Put the value B into register R. ADD C --R now holds the sum (B + C). SUBTRACT SEVEN --R now holds the expression (B + C - 7). STORE A --Store the result into A. : --These data should be placed after the HALT. A: .DATA 0 B: .DATA 0 C: .DATA 0 SEVEN: .DATA 7 --The constant 7.
  • 20. 20 Program example l Problem » Read in a sequence of non-negative numbers, one number at a time, and compute a running sum » When you encounter a negative number, print out the sum of the non-negative values and stop
  • 21. 21 Algorithm to Compute the Sum of Numbers Program example
  • 22. 22 Assembly Language Program to Compute the Sum of Nonnegative Numbers
  • 23. 23 Translation and Loading l Before a source program can be run, an assembler and a loader must be invoked l Assembler » Translates a symbolic assembly language program into machine language l Loader » Reads instructions from the object file and stores them into memory for execution
  • 24. 24 Translation and Loading (continued) l Assembler tasks » Convert symbolic op codes to binary » Convert symbolic addresses to binary » Perform assembler services requested by the pseudo-ops » Put translated instructions into a file for future use
  • 25. 25 System Security And Protection l The operating system must prevent » Non-authorized people from using the computer – User names and passwords » Legitimate users from accessing data or programs they are not authorized to access – Authorization lists
  • 26. 26 Efficient Allocation Of Resources l The operating system ensures that » Multiple tasks of the computer can be underway at one time » Processor is constantly busy – Keeps a queue of programs that are ready to run – Whenever processor is idle, picks a job from the queue and assigns it to the processor
  • 27. 27 The Safe Use Of Resources l Deadlock » Two processes are each holding a resource the other needs » Neither process will ever progress l The operating system must handle deadlocks » Deadlock prevention » Deadlock recovery
  • 28. 28 Historical Overview of Operating Systems Development l First generation of system software (roughly 1945-1955) » No operating systems » Assemblers and loaders were almost the only system software provided
  • 29. 29 Historical Overview of Operating Systems Development (continued) l Second generation of system software (1955- 1965) » Batch operating systems » Ran collections of input programs one after the other » Included a command language
  • 30. 30 Operation of a Batch Computer System
  • 31. 31 l Third-generation operating systems (1965-1985) » Multiprogrammed operating systems » Permitted multiple user programs to run at once Historical Overview of Operating Systems Development (continued)
  • 32. 32 l Fourth-generation operating systems (1985- present) » Network operating systems » Virtual environment treats resources physically residing on the computer in the same way as resources available through the computer’s network Historical Overview of Operating Systems Development (continued)
  • 33. 33 The Future l Operating systems will continue to evolve l Possible characteristics of fifth-generation systems » Multimedia user interfaces » Parallel processing systems » Completely distributed computing environments
  • 34. 34 Some of the Major Advances in Operating Systems Development