1.2.1: Systems Software Flashcards
1
Q
Operating systems
A
- collection of programs working together to provide interface between user + computer
- allow communication (user –> computer) –> perform certain low-level tasks –> management of memory + resources
- windows, macOS –> iOS + Android
2
Q
Features of OS
A
- memory management (paging, segmentation, virtual memory)
- resource management (scheduling)
- file management (moving, editing, deleting files + folders)
- I/O management (device drivers)
- Interrupt management
- Utility software (disk defragmentation, backup, formatting)
- Security (firewall)
- user interface
3
Q
memory management
A
- memory must be shared fairly between multiple programs + apps
- when main memory isn’t large enough:
- OS, determines + allocates length of processor time
- paging, segmentation, virtual memory
4
Q
Paging
A
- memory is split into equal sized sections (pages)
- programs made up of certain number of pages can be swapped between between main memory and hard disk
5
Q
Segmentation
A
- memory is split into logical sized divisions (segments)
- vary in size
- represent structure + logic flow of program
- segments allocated to code –> conditional statements/loops
6
Q
Virtual memory
A
- uses sections of hard drive to act as RAM when space in main memory is enough to store programs used
- sections of programs not used –> temporarily moved to virtual memory –> paging
7
Q
Disk Thrashing
A
- computer ‘freezes’ –> result of pages being swapped too frequently
- progressively worse as virtual memory fills up
8
Q
Interrupts
A
- signals generated by software/hardware to show the processor a process needs attention
- different interrupts, different priorities –> how urgent
- stored in order of priority –> priority queue in interrupt register
- OS makes sure interrupts are serviced fairly by ISR
- printer signalling, peripherals signalling power failure
9
Q
Interrupt service routine (ISR)
A
- processor checks content of interrupt register at end of FDE cycle
- if interrupt exits of higher priority, current content in special purpose registers in CPU –> transferred into a stack
- processor responds with appropriate ISR loading into RAM
- ISR has begun –> flag sent
- interrupt queue checked for higher priority
- repeated until all priority interrupts are serviced
- contents of stack transferred back into registers in memory
- FDE cycle resumes
10
Q
Scheduling
A
- ensures all sections of programs begin run are receiving a fair amount of processing time
- this is achieved with scheduling algorithms
11
Q
Pre-emptive
A
- jobs made to start/ stop by OS
- multilevel feedback queues, shortest time remaining, Round Robin
12
Q
Non pre-emptive
A
- once a jobs is started, it is left alone until completed
- first come first serve, shortest job first
13
Q
Round Robin
A
- each job given a section of processor time (slice) –> allowed to execute
- after job in queue has used 1st time slice, OS again grants each job an equal slice of processor time
- continues until a job has finished –> then removed from queue
- longer jobs take longer –> inefficiently split up into multiple cycles
- doesn’t take into account job priority
14
Q
first come, first served
A
- job processed in chronological order
- easy implementation
- no priority of jobs
15
Q
Multilevel feedback queues
A
- uses multiple queues –> ordered in different priority
- difficult to implement –> deciding which jobs to prioritise based on a combination of priorities