Unit 2 : Systems Software Flashcards

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

What is an operating system

A

● A collection of programs that provide an interface between the user and computer
● Provide the following features:

○ Memory management
○ Resource management eg. scheduling
○ File management
○ Input/ Output management
○ Interrupt management
○ Utility software
○ Security
○ User interface

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

What does the computer do when it doesn’t have enough memory

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
3
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
4
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
5
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
6
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
7
Q

What is the interrupt service routine

A

● Processor checks the interrupt register at the end of each Fetch-Decode-Execute cycle.

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

What happens when there is an interrupt with higher priority to the current process

A

● 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.

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

What happens If there are no interrupts with a higher priority to the current process

A

● 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
10
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
11
Q

what is pre-emptive scheduling

A
  • Jobs are actively made to start and stop by the operating system. For example: Multilevel Feedback Queues, Shortest Remaining Time, Round Robin
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is non-preemptive scheduling

A
  • Once a job is started, it is left alone until it is completed.
  • For example: First Come First Served, Shortest Job First
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is the round robin algorithm

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
14
Q

What are the advantages of the round robin algorithm

A
  • All jobs will eventually be attended to
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What are the disadvantages of the round robin algorithm

A
  • 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
16
Q

What is the first come first served algorithm

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
17
Q

What are the advantages of the first come first served algorithm

A
  • Straightforward to implement
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What are the disadvantages of the first come first served algorithm

A
  • Does not take into account job priority or urgency
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What is the multilevel feedback queue

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
20
Q

What are the advantages of the multilevel feedback queue algorithm

A
  • Takes into consideration different job priorities
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

What are the disadvantages of the multilevel feedback queue algorithm

A
  • Difficult to implement
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What is the shortest job first algorithm

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.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What are the advantages of the shortest job first algorithm

A
  • Suited to batch systems, as waiting time is reduced
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What are the disadvantages of the shortest job first algorithm

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

what is the shortest remaining time algorithm

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
26
Q

what are the advantages of the shortest remaining time algorithm

A
  • Throughput is increased as shorter processes can be quickly completed
27
Q

what are the disadvantages of the shortest remaining time algorithm

A
  • Does not take into account job priority or urgency
  • Processor starvation if short jobs are continuously added to the queue
28
Q

What are the types of operating system

A
  • Distributed
  • Embedded
  • Multi tasking
  • Multi User
  • Real Time
29
Q

What is the distributed type of operating system

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

What is the embedded type of operating system

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.
31
Q

What is the multi tasking type of operating system

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

What is the multi user type of operating system

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

What is the real time type of operating system

A
  • Used in time-critical computer systems and designed to perform a task within a guaranteed time frame.
34
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

35
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 .

36
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.

37
Q

What are the uses of intermediate code

A

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

38
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

39
Q

What is application software

A

● Used by the end-user
● Perform one specific task

  • Examples: desktop publishing, word processing, spreadsheets, web browsers.
40
Q

What is system software

A

● Manages computer resources
● Ensures consistently high performance.

  • Examples: library programs, utility programs, operating system, device drivers
41
Q

What are utilies

A

● Maintain a high-performing operating system.
● Each utility has a specific function

  • Examples: compression, disk defragmentation, automatic updating, automatic backup
42
Q

hat is source code

A
  • Code written by a programmer
43
Q

What is open source code

A

● Can be used without a license
● Distributed with the source code.

44
Q

What are the advantages of open source code

A
  • Improved by community effort.
  • Technical support from online community.
  • Can be modified and sold on for profit.
45
Q

What are the disadvantages of open source code

A
  • Inadequete support available (no user manuals)
  • Lower security
46
Q

What is closed source code

A
  • User must hold correct license
  • Users cannot access source code
  • Company owns the copyright license
47
Q

What are the advantages of closed source code

A
  • Regular well tested updates
  • Company provides expert support and user manuals
  • Highly levels of security as developed professionally
48
Q

What are the disadvantages of closed source code

A
  • License has restrictions about use
  • Users can not modify and improve code
49
Q

What is a translator

A

● A program that converts source code into object code. There are three types:

  • Compiler
  • Interpreter
  • Assembler
50
Q

What is a complier translator

A

● Translate high-level code into machine code all at once.
● Initial compilation process is longer than using other translators.
● Compiled code is platform-specific
● Compiled code can be run without a translator present.

51
Q

What is a interpreter translator

A

● Translate and execute code line-by-line.
● Produce an error if a line contains an error.
● Slower than running compiled code.
● Correct interpreter required to run on different platforms.
● Code is platform-independent.
● Useful for testing code.

52
Q

What is an assembler interpreter

A

● Assembly code is a low-level language that is platform specific.
● Assemblers translate assembly code into machine code.
● Each line of assembly code is equivalent to almost one line of machine code.

53
Q

What are the stages of compilation

A
  • Lexical analysis
  • Syntax analysis
  • Code Generation
  • Optimization
54
Q

What is lexical analysis

A

● Whitespace and comments are removed.
● Keywords and identifiers are replaced with tokens.
● Information about tokens is stored in a symbol table

55
Q

What is syntax analysis

A

● Tokens analysed against rules of the programming language.
● Syntax errors are flagged up.
● Abstract syntax tree is produced

56
Q

What is code generation

A

● Abstract syntax tree used to produce machine code.

57
Q

What is optimisation

A

● Aims reduce execution time
● Is a very time-consuming stage.
● Redundant parts of code are removed.

58
Q

What are linkers

A

● Software that links external modules and libraries included within the code.

59
Q

What is a static linker

A

● Module/library code is copied directly into the file.
● Increases the size of the file.

60
Q

What is a dynamic linker

A

● Addresses of modules/ libraries are added to the file.
● External module/library updates automatically feed through to the main file

61
Q

What are loaders

A

● Programs provided by the operating system.
● Fetches the library/ module from the given memory location.

62
Q

What is the use of libraries

A

● Pre-compiled programs which can be incorporated within other programs.
● Error-free
● Save time and effort of developing and testing modules.
● Can be reused across multiple programs
● Save programmers from ‘reinventing the wheel’