[Unit 1.2.1] Systems Software Flashcards
systems software
what is application software
allows user to do or make something
what is system software
program designed to run hardware and application program
what is operating system
controls hardware and software resources
what are the three types of systems software
OS, device drivers, utilities
what are device drivers
tells OS how to interact with peripherals
what are utilities in terms of systems software
housekeeping and maintenance programs
what are the 7 key features of the OS
processor scheduling (order processes executed)
handling interrupts (dealing w requests disrupting CPU)
memory management (memory allocated efficiently)
file management (tracking files in 2nd storage)
device management (efficient coms w I/O devices)
providing security (resources protected from unauthorised users)
provide UI
what are the four types of UI
CLI
GUI
menu based
natural language
what is a command line interface. what are the advantages and disadvantages
type commands.
not intuitive (for experts)
uses less memory
what is a GUI. what are the advantages and disadvantages
windows, icons, menus, pointer (WIMP)
intuitive (for non-experts)
uses more system resources
what is a menu based UI. what are the advantages and disadvantages. give an example
limited options (like ATM)
for people who have no clue how to use technology
have limited functionality
what is a natural language UI. what are the advantages and disadvantages
uses voice recognition.
it is very intuitive
not always completely accurate
what is the kernel in terms of OS
it is the core of the OS, it has complete control over everything in the system. It is the first part of the OS to load after the bootloader
what are the five types of OS
multi tasking
multi user
embedded
real time (RTOS)
distributed
what is the multi tasking OS
multiple programs at same time
works due to speed of CPU
has process manager and memory manager
what is the multi user OS
multiple users can use a system at same time
controls resource consumption so users dont affect each other
what is the distributed OS
multiple computers work together on a single task
controls and coordinates many computers
presented as if it is one system
what are the uses of a distributed OS
working on scientific problems
rendering CGI effects
what is the embedded OS
on devices that have limited functions
for hardware reliability
efficient use of resources
OS stored on ROM as unchangeable
what are some things that would use an embedded OS
smart tvs
ATMs
washing machines
smart watches
elevators
what is the real-time OS
designed for performing actions in guaranteed time
must be reliable, precise and consistent
used for safety critical systems
-self driving cars or autopilot
used in embedded systems
-medical systems (MRI)
-car engine management
what is the role of memory management
control allocation of RAM to each process
stop programs interfering with each other
allow multitasking
allow programs to use virtual memory
how is memory allocated
when there is free space that is fragmented it is easier to split up the program
do this by:
-segmentation
-paging
how does segmentation work
split into segments though logical divisions
-complete sections of programs
they are not fixed size
how does paging work
divided into pages through physical divisions
-a module may be split into two
they are a fixed size
define “process scheduling”
process manager removing running processes and choosing another process based on a strategy
what are the role of the process manager
complete as many tasks as possible in least time
ensure no task left for too long
make efficient use of CPU time
minimise delay in request and completion
what are the 5 types of scheduling algorithms
first come first served
round robin
shortest job first
shortest remaining time
multi level feedback queues
how does first come first served work
processes run from start to finish in order of arrival
what are the advantages of first come first served
simplest to implement
once started running it will be done in minimal time
good with few concurrent tasks
what are the disadvantages of first come first served
prevents processes running till current done
doesn’t consider size or priority
important tasks could get stuck at back of queue
how does round robin work
each process given fixed time slice
if it doesn’t finish in that time it is sent to back of the queue
what are the advantages of round robin
simple to implement
good if all tasks about same size and priority
what are the disadvantages of round robin
doesn’t look at size or priority
how does shortest job first work
chooses shortest task and runs till completion
what are the advantages of shortest job first
max jobs completed
short jobs dont wait for longer tasks using all CPU time
define “starvation” in terms of CPU time
being constantly denied processor time. being unable to run/complete
what are the disadvantages of shortest job first
estimates time taken (could be wrong)
longer tasks could be starved
doesn’t look at priority
how does shortest remaining time work
process with least time left runs
if shorter one comes, current one is suspended
what are the advantages of of shortest remaining time
short processes handled quickly
max jobs completed
what are the disadvantages of shortest remaining time
longer tasks starved
doesn’t look at priority
how does multi level feedback queues work
have queues of different priority levels
when new jobs arrives it’s placed in relevant queue.
can move processes between queues:
-dependant on new information
-or if job waited for too long
what are the advantages of multi level feedback queues
takes into account priority
high priority task run on time
what are the disadvantages of multi level feedback queues
complex implementation
not good if processes have similar priority
low priority tasks could be starved.
what are two ways of dealing with events that require immediate attention
polling
interrupts
how does polling work
checks each software/hardware to see if it needs attention
inefficient and waste of time
how do interrupts work
signal from software/hardware tell CPU that it requires immediate attention
what are the two types of interrupts
hardware (mouse click etc) and software (app closed etc)
what is an interrupt service routine
code designed to handle interruptions
when does the ISR check for interruptions
at the end of each FDE cycle
what happens when an interrupt occurs
priority checked
registers values copied into stack
origin identified so correct ISR called
ISR address loaded into PC
ISR executed
previous task restored and resumed
what happens when a higher priority interrupt comes along
current interrupt is added to stack
new interrupt is serviced
what are two problems with interrupts
latency - hard to code program that handles interrupts on time
Stack overflow - crashes computer
what are device drivers
program controls operation of peripheral
enabling OS to control and communicate with them
what are the disadvantages of using a generic device driver
missing features
inefficient
what is the BIOS
allows OS to be loaded from power on.
where is BIOS stored
non volatile flash memory
what is the purpose of BIOS
perform POST
bootloader loads OS kernel into memory
what is a virtual machine
program that works like a separate computer inside the main
what is a hypervisor in terms of virtual machines
program controlling the VM
what is the host in terms of virtual machines
computer running the VM
what is the role of the hypervisor in terms of virtual machines
controls how VM can access resources on the host.
what are the advantages of virtual machines
run old applications
run multiple OS
easy to back up
can be deleted and reinstalled (protect from malware)
what are the disadvantages of virtual machines
programs can run slower
software must still be licensed