answers complete
a collection of electronically stored instructions (i.e., a program) that allows one
to interact with a computer
Software:
THESE ARE E.G. OF WHAT
•
Office suites (e.g., Office 2016)
•
Image editors (e.g., GIMP)
•
Web browsers (e.g., Chrome)
Application software
THESE ARE E.G. OF WHAT
•
Operating systems (e.g., macOS, Windows, Linux)
•
Anti-malware (e.g., Trend Micro Anti-Virus )
EECS1520
System software
this functions to Facilitate practical use of a computer system and its resources
operating system
3 general roles of an operating system
•
Process management
(Manage numerous, concurrently running programs)
Memory management
(Allocate and track efficiently)
Device management
(Grant and share access to computer's hardware)
The act of managing the use of the CPU by individual processes
Process management
is a program in execution
a process
draw Process management: process states
slide 5 lecture operating systems
A data structure used by the OS to manage information about a process,
including
•
current value of the program counter
•
values of all CPU registers for the process
•
base and bound register values (or page tables)
, •
accounting information
Process control block (PCB)
Process management:
Each state is represented by a
list of PCBs, one for each process in that state
Process Management
Each time a process is moved to the running state:
4 things happen
•
Register values for the currently running process are stored into its PCB
•
Its PCB is moved to the list of the state into which it goes
•
Register values of the new process moving into the running state are loaded into the
CPU
•
This exchange of register information is called a context switch
Process Management
There is only one CPU and therefore only one set of
CPU registers, which contain the values for the currently executing process
The act of determining which process in the readystate should be moved to the
runningstate
•
Many processes may be in the ready state
•
Only one process can be in the running state, making progress at any one time
CPU Scheduling
3 types of CPU scheduling
Nonpreemptive scheduling-
The currently executing process gives up the CPU voluntarily
Preemptive scheduling-
The operating system decides to favor another process, preempting the currently
executing process
Turnaround time-
The amount of time between when a process arrives in the ready state the first time and
when it exits the running state for the last time
name type of CPU scheduling:
The currently executing process gives up the CPU voluntarily
Nonpreemptive scheduling-