FIT2070 Lecture Notes - Lecture 2: Resource Allocation, Modular Programming, Stackable Switch
L2 - Operating System Overview
Operating System
● Program that controls the execution of application programs
● It’s an interface between applications and hardware
● Objectives
○ Convenience
○ Efficiency
○ Ability to evolve - in order to keep up to date
● Services
○ Program development
○ Program execution
○ Access I/O devices
○ Controlled access to files
○ System access
○ Error detection and response
○ Accounting
● Role
○ Managing the resources (movement, storage, processing of data)
○ Helps processor to execute programs
○ Control relays between the OS and processor
● Other terms:
○Resource allocator - manages and allocates resources to programs
○Control program - controls the execution of user programs & operation of I/O
devices
○ Kernal - the one program running at all times
● Evolution of OS
○ why ?
■ Hardware upgrades
■ New types of hardware
■ New services
■ Fixes
○Stages
■ Serial Processing
● No operating system
● Programmer had to interact with computer
● Users have access to the computer in “series”
● Cons
○ Scheduling - time allocation could run short of long -
wasted computer time
○ Setup time - setting up job would take up a lot of time
as well
○ Inefficient use of processor
■ Simple Batch
● Maximise processor utilization
● Monitor
○ Responsible in execution of program in batch mode
○ User no longer have direct access to processor
○ Program branches back to monitor when batch is
finished
● Runs in 2 modes of operation
○ User mode
■ User program executes in user mode
■ Certain area of memory are protected from user
access
○ Kernel mode
■ Monitor is running
■ Privilege instruction can be executed
■ Multiprogrammed Batch Systems
● Processor often idle (not fully utilized)
● I/O devices are slow compared to processor
● Memory is expanded to hold three, four or more programs
and switch among all of them
■ Time Sharing System
● Main objective is to minimize response time
● Can be used to handle multiple interactive jobs
● Processor time is charged between multiple users
● Provides each of the users with a certain amount of time to run
its programs
Process
● A program in execution
● Components
○ An executable program
○ Data that is needed by the program
○ Execution context (process state) of the program
● Management
○ Realised as data structure
○ Entire state of the process at any instant is contained in its context.
Memory Management
● Principle storage management responsibilities:
○ Process isolation
■ To avoid the process changing each other's data/memory
○ Automatic allocation and management
○ Support of modular programming
○ Protection and access control
○ Long-term storage
Document Summary
Program that controls the execution of application programs. It"s an interface between applications and hardware. Ability to evolve - in order to keep up to date. Managing the resources (movement, storage, processing of data) Control relays between the os and processor. Resource allocator - manages and allocates resources to programs. Control program - controls the execution of user programs & operation of i/o. Kernal - the one program running at all times. Users have access to the computer in series . Scheduling - time allocation could run short of long - wasted computer time. Setup time - setting up job would take up a lot of time as well. Responsible in execution of program in batch mode. User no longer have direct access to processor. Program branches back to monitor when batch is finished. Certain area of memory are protected from user access. I/o devices are slow compared to processor.