kernelfaculty.cse.tamu.edu/slupoli/notes/csoverview/operating... · web viewallow the use of...

20
Operating system and system software Operating Systems System commands o Carry out services such as translate a program, load a program, run a program o 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 Functions of an Operating System important responsibilities of the operating system o User interface management o Program scheduling and activation Schedule programs for execution o Control of access to system and files Store and retrieve files o Efficient resource allocation o Deadlock detection and error detection o Oversee operation of computer Coordinate the execution of programs

Upload: others

Post on 15-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

Operating system and system software

Operating Systems System commands

o Carry out services such as translate a program, load a program, run a program

o 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

Functions of an Operating System important responsibilities of the operating system

o User interface managemento Program scheduling and activation

Schedule programs for executiono Control of access to system and files

Store and retrieve fileso Efficient resource allocationo Deadlock detection and error detectiono Oversee operation of computer

Coordinate the execution of programs

Page 2: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

Operating System Components Kernel

o Performs basic required functionso The user interface act as an intermediary between users and the

operating system kernel

The Kernal

File managero Directory (or Folder): A user-created bundle of files and other

directories (subdirectories)o Directory Path: A sequence of directories within directories

Device drivers Memory manager

o Allocates space in main memoryo May create the illusion that the machine has more memory than it

actually does (virtual memory) by playing a “shell game” in which blocks of data (pages) are shifted back and forth between main memory and mass storage

Scheduler and dispatcher

Page 3: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

Evolution of Shared Computing Batch processing

o has been associated with mainframe computers since the earliest days of electronic computing in the 1950s

o OLD SCHOOL queue a project/program into the computer’s job queue, gives the

results when doneo but still used in billing, payroll, any administrationo http://processanddata.com/batching-systems/

Batch processing

Interactive processingo Requires real-time processing

Exampleo an insurance company can make changes to a customer's household

insurance, e.g. while the customer is on the phone. o The insurance clerk simply calls up details of the customer's policy on

the screen, and types in any required changes which immediately update the customer's records.

o A report of the change would be automatically generated and a copy sent to the customer.

Page 4: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

Interactive processing

Time-sharing/Multitaskingo Implemented by Multiprogramming

Multiprocessor machines

Role and Types of System Software Types of Software

o Application softwareo Performs specific tasks for userso System softwareo Provides infrastructure for application softwareo Consists of operating system and utility software

Types of System Software

Page 5: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

The Role of System Software

System software is a collection of many different programs Operating system

o Controls the overall operation of the computero Communicates with the usero Determines what the user wantso Activates system programs, applications packages, or user programs to

carry out user requests User interface

o Graphical user interface (GUI) provides graphical control of the capabilities and services of the computer

Language serviceso Assemblers, compilers, and interpreterso Allow you to write programs in a high-level, user-oriented language, and

then execute them Memory managers

o Allocate and retrieve memory space Information managers

o Handle the organization, storage, and retrieval of information on mass storage devices

I/O systemso Allow the use of different types of input and output devices

Schedulero Keeps a list of programs ready to run and selects the one that will

execute next Utilities

Page 6: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

o Collections of library routines that provide services either to user or other system routines

The User Interface Operating system

o Waits for a user commando If command is legal, activates and schedules the appropriate software

package User interfaces

o Text-orientedo Graphical

User Interface Responsibility of the Operating System

Page 7: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

The Overall Booting Process Boot loader: Program in ROM (example of firmware) Run by the CPU when power is turned on Transfers operating system from mass storage to main memory Executes jump to operating system

Boot Sequence

Page 8: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

Process (Application) Management Process: The activity of executing a program Process State: Current status of the activity

o Program countero General purpose registerso Related portion of main memory

Scheduler: Adds new processes to the process table and removes completed processes from the process table

Dispatcher: Controls the allocation of time slices to the processes in the process tableo The end of a time slice is signaled by an interrupt.

Time-sharing between process A and process B

Page 9: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

Efficient Allocation Of Resources The operating system ensures that

o Multiple tasks of the computer can be underway at one timeo 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 Semaphore: A “control flag” Critical Region: A group of instructions that should be executed by only one

process at a time Mutual exclusion: Requirement for proper implementation of a critical region

Page 10: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

The Safe Use Of Resources Deadlock

o Two processes are each holding a resource the other needso Neither process will ever progress

The operating system must handle deadlockso Deadlock preventiono Deadlock recovery

DeadLock

Page 11: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

System Security And Protection The operating system must prevent

o Non-authorized people from using the computer User names and passwords

Legitimate users from accessing data or programs they are not authorized to accesso Authorization lists

Attacks from outsideo Problems

Insecure passwords Sniffing software

o Counter measures Auditing software

Attacks from withino Problem

Unruly processeso Counter measures

Control process activities via privileged modes and privileged instructions

Historical Overview of Operating Systems Development

First generation of system software (roughly 1945-1955)o No operating systemso Assemblers and loaders were almost the only system software provided

Second generation of system software (1955-1965)o Batch operating systemso Ran collections of input programs one after the othero Included a command language

Page 12: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

Operation of a Batch Computer System

Third-generation operating systems (1965-1985)o Multiprogrammed operating systemso Permitted multiple user programs to run at once

Fourth-generation operating systems (1985-present)o Network operating systemso Virtual environment treats resources physically residing on the computer

in the same way as resources available through the computer’s networkThe Virtual Environment Created by a Network

Operating System

Page 13: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

The Future Operating systems will continue to evolve Possible characteristics of fifth-generation systems

o Multimedia user interfaceso Parallel processing systemso Completely distributed computing environments

Structure of a Distributed System

Sources:

Computer Science Overview – Brookshear

Page 14: Kernelfaculty.cse.tamu.edu/slupoli/notes/CSOverview/Operating... · Web viewAllow the use of different types of input and output devices Scheduler Keeps a list of programs ready to

FYI Section

Introduction Von Neumann computer

o “Naked machine”o Hardware without any helpful user-oriented featureso Extremely difficult for a human to work with

An interface between the user and the hardware is needed to make a Von Neumann computer usable

Tasks of the interfaceo Hide details of the underlying hardware from the usero Present information in a way that does not require in-depth knowledge

of the internal structure of the systemo Allow easy user access to the available resourceso Prevent accidental or intentional damage to hardware, programs, and

data

System Software: The Virtual Machine System software

o Acts as an intermediary between users and hardwareo Creates a virtual environment for the user that hides the actual computer

architecture Virtual machine (or virtual environment)

o Set of services and resources created by the system software and seen by the user

Sources:

Batch processinghttp://en.wikipedia.org/wiki/Batch_processing