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
16
Q
Shortest job first
A
- stored in time required to complete
- batch systems
- requires processor to calculate process time
- risk if shortest jobs keep getting added (starvation)
17
Q
Shortest remaining time
A
- ordered in time left for completion
- least time serviced first
- risk of starvation
18
Q
Distributed OS
A
- runs across multiple drivers –> load to be spread across multiple computer processors –> when task runs
19
Q
Embedded OS
A
- perform small range of specific tasks.
- limited to functionality, hard to update + consume less power than other OS
20
Q
Multi-tasking OS
A
- allows user to carry out tasks seemingly simultaneously
- done by time slicing between programs and applications
21
Q
Multi-user OS
A
- uses 1 computer in a multiple-user system
- Scheduling algorithm needed –> processing time shared fairly
22
Q
Real time OS
A
- time critical computer systems –> perform task in time frame guaranteed
23
Q
BIOS
A
- Basic Input Output System
- 1st program run when computer is switched on
- PC points to location of BIOS
24
Q
BIOS responsibilities
A
- POST (power-on self test) all hardware connected correctly
- Checking CPU clock, memory, processor
- Testing for external memory
25
Q
Device drivers
A
- computer programs allowing OS to interact with hardware
- different drivers used for different device types + specific to OS installed
26
Q
Virtual memory
A
- theoretical computers –> software implementation of computer system
- provides environment + translator for intermediate code to run
- protection from malware –> affected before main memory
- running incompatible software