1.2.1 Systems software Flashcards

1
Q

What is memory management?

A

● Main memory is often not large enough to store all of the programs being used.
● Paging, segmentation and virtual memory are techniques used by the operating system to ensure memory is shared effectively by programs.

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

What is paging?

A

● Memory is split up into equal-sized sections
known as pages.
● Pages are swapped between main memory
and the hard disk as needed

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

What is segmentation?

A

● Memory is split up into logical sized divisions,
called segments.
● Segments vary in size
● Segments represent the structure and logical
flow of the program.

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

What is Virtual Memory?

A
  • A section of the hard drive acts as RAM when the space in main memory is insufficient to store programs being used.
  • Sections of programs not currently being used are temporarily moved into virtual memory through paging.
  • This frees up memory for other programs in RAM.
  • The key issue with using these techniques is disk thrashing, when the computer ‘freezes’ due to pages being swapped too frequently between the hard disk and main memory.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are Interrupts?

A

● Signals generated by software or hardware to indicate to the processor that a process needs attention.
● Interrupts have different priorities and this is considered when allocating processor time.
● They are stored within an abstract data structure called a priority queue in an interrupt register.

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

What are Operating Systems?

A
  • A collection of programs that provide an interface between the user and computer
  • Provide the following features: IFUMP SUR
    Interupt management
    File managment
    User interface
    Memory management
    Peripheral management (input /output)
    Security
    Utility software
    Resource management
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the Interupt Service Routine (ISR)?

A

● Processor checks the interrupt register at the end of each Fetch-Decode-Execute
cycle.
● If there is an interrupt exists with a higher priority to the current process
○ The current contents of the registers in the CPU are transferred into a stack.
○ The relevant interrupt service routine (ISR) is loaded into RAM.
○ A flag is set to signal the ISR has begun.
○ The flag is reset once the ISR has finished.
○ This process is repeated.
● If there are no interrupts with a higher priority to the current process
○ The contents of the stack are popped back into the registers
○ Fetch-Decode-Execute cycle resumes

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

What is scheduling?

A

● Operating system ensures all sections of programs being run (known as ‘jobs’) receive a fair amount of processing time using scheduling

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

What are the types of sceduling algorithms?

A
  • Pre-emptive : Jobs are actively made to start and stop by the operating system.
  • Non pre-emptive : Once a job is started, it is left alone until it is completed.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are all the scheduling algorithms?

A
  • Round robin
  • First come first served
  • Multilevel feedback queues
  • Shortest job first
  • Shortest remaining time
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How does the round robin algorithm work?

A
  • Each job is given a section of processor time - a time slice - within which it runs.
  • Once each job in the queue has used its first time slice, they are given another slice of processor time until a job has been completed
  • Completed jobs are removed from the queue.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What are the advantages and disadvantages of round robin?

A
  • Advantages:
    All jobs will eventually be attended to
  • Disadvantages:
    Longer jobs will take a much longer time for completion
    Round robin does not take into account job priority or urgency
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

How does the first come first served algorithm work?

A
  • Jobs are processed in chronological order by which they entered the queue.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are the advatages and disadvatages of the first come first serve algorithm?

A
  • Advantages:
    Straightforward to implement
  • Disadvantages:
    Does not take into account job priority or urgency
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

How does the multilevel feedback queues algorithm work?

A

This makes use of multiple queues, each which is ordered based on a different priority.

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

What are the advantages and disadvatages of the multilevel algorithm?

A
  • Advantages:
    Takes into consideration different job priorities
  • Disadvantages:
    Difficult to implement
17
Q

How does the shortest job first algorithm work?

A
  • The queue storing jobs to be processed is ordered according to the time required for completion, with the longest jobs being serviced at the end.
18
Q

What are the advantages and disadvantages of the shortest job first algoritm?

A
  • Advantages:
    Suited to batch systems, as waiting time is reduced.
  • Disadvantages:
    Requires processor to calculate how long each job will take.
    Processor starvation if short jobs are continuously added to the queue.
    Does not take into account job priority or urgency .
19
Q

How does the shortest remaining time algorithm work?

A

The queue storing jobs to be processed is ordered according to the time left for completion, with the jobs with the least time to completion being serviced first.

20
Q

What are the advantages and disadvantages of the shortest remaining time algorithm?

A
  • Advantages:
    Throughput is increased as shorter processes can be quickly
    completed
  • Disadvantages:
    Does not take into account job priority or urgency
    Processor starvation if short jobs are continuously added to the queue
21
Q

What are the types of Operating System?

A
  • Distibuted
  • Embedded
  • Multi-tasking
  • Multi-user
  • Real Time
22
Q

Features of the distributed OS

A
  • Run across multiple devices
  • Means the load of a task is spread across multiple computer processors
23
Q

Features of the embedded OS

A
  • Built to perform a small range of specific tasks
  • Catered towards a specific device eg. a household appliance.
  • Limited functionality and hard to update
  • Consume less power than other types of OS.
24
Q

Features of the Multi-tasking OS

A
  • Enables user to carry out tasks simultaneously.
  • Time slicing is used to switch quickly between programs and applications in memory.
25
Q

Features if the multi-user OS

A
  • Multiple users make use of one computer.
  • A scheduling algorithm Is used to allocate processor time fairly between jobs and prevent processor starvation.
26
Q

Features of the real time OS

A
  • Used in time-critical computer systems and designed to perform a task within a guaranteed time frame.
27
Q

What is BIOS?

A

● Basic Input Output System is the first program that runs when a computer system is switched on.
● Runs a series of tests before the operating system is loaded into memory:
● POST (Power-on self test) which ensures that all hardware is correctly connected and functional
● Checking the CPU clock, memory and processor
● Testing for external memory devices

28
Q

What are device drivers?

A

● Computer programs that allow the operating system to interact with hardware.
● Are specific to the computer’s architecture.
● Specific to the operating system .

29
Q

What are Virtual Machines?

A

● A theoretical computer and a software implementation of a computer system.
● Provides an environment with a translator for intermediate code to run.

30
Q

What are the features and advatages of Virtual Machines?

A

● Testing programs
● Protection from malware
● Running software compatible with different versions/ types of operating systems

31
Q

What is intermediate code?

A

● Code halfway between machine code and object code is called intermediate code.
● Independent of processor architecture so can run across different machines and operating systems.
● Takes longer to execute than low-level code