Systems Software Flashcards

You may prefer our related Brainscape-certified flashcards:
1
Q

What is an operating system?

A

It is a program or set of programs that manages the operations of the computer for the user. It provides an interface for the user, application software and hardware since the user cannot directly communicate with hardware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

How does an operating system work?

A
  1. OS is held in permanent storage eg. hard disk
  2. Loader (small program) is held in ROM
  3. Computer switched on - loader in ROM sends instructions to load OS by copying it from storage into RAM.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

what are the functions of an operating system?

A
  • memory management
  • interrupt service routines
  • processor scheduling
  • backing store management
  • management of all input and output
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

what is memory management?

A

it is when the OS must manage allocation of RAM to different programs fairly since there may not be sufficient RAM for everything to be in it at once.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

what are 3 methods of memory management?

A
  • paging
  • segmentation
  • virtual memory
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is paging?

A
  • memory (RAM mainly) is divided into fixed sections called pages (4Kb)
  • process in memory will be allocated enough pages to run - but these may not be contiguous physically
  • page table uses mapping to store a link between physical memory address + logical address space of each process
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What does contiguous mean?

A

next to each other/adjacent physically

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is segmentation?

A
  • similar to paging except memory is divided into segments which can be different sizes.
  • Things stored in the segment may relate to parts of a program - eg. a particular function/subroutine may occupy a segment.
  • segment size relates to the program structure
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

what is the difference between paging and segmentation?

A

Paging uses chunks of memory that are the same size while segmentation uses chunks of memory which are different sizes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is virtual memory?

A
  • an area of secondary storage that can be used as an extension of memory when RAM is filled up and another instruction needs processor time
  • pages of the current process will be stored in virtual memory until they are needed - then they will be swapped with an unused page into RAM
  • advantage: it’s extra strage and can optimise computer performance when used correctly
  • disadvantage: slower than using RAM
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is disk thrashing?

A

It is when the OS is excessively swapping pages into and out of RAM which slows down performance significantly because so much time is spent swapping pages.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is an interrupt?

A
  • its a signal from a software program, hardware component or internal clock to the CPU
  • software interrupt = when an application program terminates or requests certain services from the OS
  • hardware interrupt = when in I/O operation is complete or an error occurs eg. printer paper out
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

why are interrupts needed?

A
  • I/O process is completed/sends an interrupt signal
  • an error occurs eg. printer paper out
  • power failure
  • scheduled interrupt from the internal clock - to enable multitasking to take place
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

when are interrupts detected and serviced?

A

The CPU checks for interrupts at the end of a clock cycle for any interrupts that need to be processed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

how are interrupts dealt with?

A
  • if the CPU detects an interrupt signal, the running program is suspended + lower priority interrupts are disabled
  • all values in program counter and registers are stored in the stack
  • Interrupt Service Routine (ISR) is called to deal with the interrupt
  • Descending order of interrupt priorities: power fail interrupt, clock interrupt, I/O interrupt
  • once interrupt has been serviced, original register values are popped off the stack and process resumes from the point it left off.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is processor scheduling?

A
  • 1 CPU can perform 1 instruction at a time
  • processor scheduling is done by the OS scheduler where each application that needs to be run is allocated processor time in a way that makes most efficient use of the CPU
  • determines the manner and order that processes and applications can use the CPU
  • basically doing small parts of multiple large tasks in turn.
  • Gives the illusion that the CPU is doing multiple tasks simultaneously - multitasking
17
Q

What are the aims of processor scheduling?

A
  • ensure fairness to all users of a multi-user system (eg. in a school)
  • provide acceptable response time to all users
  • maximise time CPU is usefully engaged
  • ensure hardware resources are kept as busy as possible
  • maximise throughput
18
Q

What is the round robin scheduling algorithm?

A
  • operates on a First In First Out (FIFO) basis
  • every process is given an equal amount of CPU time (time slice)
  • CPU cycles through every process to be completed - if a process isn’t completed in time, CPU moves onto the next process and it’s given a new time slice to be completed in after all the other processes in the cycle
  • Timings are maintained by an interval timer - it generates interrupts at specific times
  • this method is good because it guarantees a reasonable response time to all users
19
Q

What is the first come first served scheduling algorithm?

A
  • the first job to arrive is the first to be processed - no system of priorities
  • The current process must be completed before the CPU moves onto the next one (non-preemptive)
  • the completed process is removed from the queue
  • not very efficient
20
Q

what is the shortest remaining time scheduling algorithm?

A
  • the process with the shortest estimated time to complete is run next
  • aims to reduce waiting time for shorter jobs - therefore have fewer waiting jobs
  • only works well if there is knowledge of how long a job will take and it should be a good estimate
  • not great for longer jobs that get stuck behind many smaller jobs
21
Q

what is the shortest job first scheduling algorithm?

A
  • similar to shortest remaining time except the job with the shortest estimated running time is done first
  • similar pros and cons as shortest remaining time
22
Q

what are multi-level feedback queues?

A
  • a scheduling algorithm designed to giver preference to short jobs and I/O bound processes and separate processes into categories based on their processor needs
  • there are multiple dynamic job queues and jobs can move between queues based on how much processor time they use
  • it aims to maximise processor use
  • I/O devices are much slower than processor speed so it aims to keep them as busy as possible to prevent a bottleneck (eg. lots of jobs are sent to the printer)
  • eg. while one job is printing another can use the CPU.
23
Q
A