A level OCR Computer Science 1.2- System Software

0.0(0)
studied byStudied by 1 person
0.0(0)
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/142

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

143 Terms

1
New cards

What does the operating system do?

communicates between the hardware and (the user and the software)

Provides an interface for the users

2
New cards

How is the operating system loaded to RAM

The boot loader in ROM loads the Operating System into RAM

3
New cards

What are the functions of the operating system

User interface

Memory management

Interrupt handling

Processor scheduling

4
New cards

What is the purpose of the user interface

Gives user an intuitive way of interacting with computer that more people can understand

5
New cards

What is the purpose of memory management

Allows for the managing of the space in RAM so that all desired programs can be loaded to RAM at once

6
New cards

How does paging work?

Available memory is divided into fixed chunks called pages, each with an address. When a process is loaded into RAM is allocated sufficient pages that are necessarily contiguous

7
New cards

How does segmentation work?

Available memory is divided into chunks of variable length called segments. Segments often relate to part of a program, e.g. a function is stored in one segment

8
New cards

What is virtual memory?

The process of allocating space on the hard drive to hold some of the pages of a current process until they are needed to free up space in memory

9
New cards

What is disk thrashing?

Slow down of a computer caused by very frequent transfers of pages between RAM and virtual memory.

10
New cards

What are interrupts

Temporary halts in the fetch - execute cycle to deal with a problem that has appeared to do with the running of the computer.

11
New cards

What is the need for interrupts

To deal with problems or things that need attention that have arisen in the computer

12
New cards

What are some examples of interrupts

An I/O device sends an interrupt signal

The printer runs out of paper

An error occurs in a program

A scheduled interrupt from the internal clock

Power failure

13
New cards

When does the CPU acknowledge an interrupt?

At the end of each fetch-execute cycle

14
New cards

What happens when an interrupt is acknowledged

Control is handed over to the ISR (Interrupt Service Routine)

15
New cards

What happens when control is handed to the ISR

Current process is pushed to stack.

16
New cards

What is interrupt priority

The ability of one interrupt to interrupt another if it is more important

17
New cards

What happens when a higher order interrupt is received by the ISR

Current interrupt is pushed to stack

18
New cards

What is processor scheduling?

The process of the CPU scheduling how much processor time is dedicated to different task

19
New cards

What is the purpose of processor scheduling

To provide an acceptable response time to all users

To maximise the time the CPU is usefully engaged

To ensure fairness on a multi-user system

20
New cards

How does Round Robin scheduling work

Run each process for its time slice, After each time slice, move the running process to the back of the queue

21
New cards

How does first come first served scheduling work

The first job to arrive is executed until it completes

22
New cards

How does shortest remaining time scheduling work

The time to completion is estimated as each new

job arrives

The job with the shortest remaining time to completion is executed, meaning that a shorter new job can take over from the current process

23
New cards

How does shortest job first scheduling work

As with shortest remaining time, the total execution time of each job is estimated by the user

The waiting job with the smallest total execution time is executed when the current job completes

24
New cards

How does multi level feedback queues scheduling work

Multiple queues are created with different

priority levels

If a job uses too much CPU time it is moved to a lower priority queue

Processes can also be moved to a higher priority queue if they have waited a long time

25
New cards

What is a distributed OS

One that can coordinate the processing of a single task across multiple computers. A program can use data or resources from any of the computers

26
New cards

What are the advantages and disadvantages of distributed OSs

As: The user can access more computational power with the illusion of working with a single processor

No need for training or writing programs differently

Ds: The programmer has no control over the task distribution

27
New cards

What is a multi-tasking operating system

One that can appear to do more than one task simultaneously on a single processor

28
New cards

What is a multi-user operating system?

One that uses a very powerful computer called a mainframe which lots of users with their own terminals access the mainframe's CPU and each gets a time slice

29
New cards

What is embedded operating systems

One that's user interface is simple and minimal with minimal features with limited RAM. Application programs are held in ROM.

Usually found in specific devices like washing machines

30
New cards

What is a real time operating system

One that must respond extremely quickly to inputs and cope with many inputs simultaneously.

31
New cards

When are real time operating systems used

Safety critical environments

If a hardware component fails, the OS must have a failsafe to detect this and respond appropriately

There is hardware redundancy - crucial components are duplicated in case one fails

32
New cards

What does BIOS stand for

Basic Input Output System

33
New cards

Where is BIOS stored

ROM

34
New cards

What does BIOS do

Boots computer at start-up

-initializes and tests hardware

-Loads operating system into RAM

35
New cards

What is a device driver

A program that allows the OS to control a certain hardware device. They are hardware dependent and OS specific

36
New cards

Why are device drivers useful

Os does not need to know the specifics of the hardware to be able to interact with it

37
New cards

What is a virtual machine

Software that is used to emulate the function of a machine

38
New cards

What may a virtual machine be used for

Executing intermediate code (e.g. java bytecode)

Running an OS within another

39
New cards

What is application software?

Software that allows a user to preform a specific task

40
New cards

What are some examples of application software

Word Processor

Spreadsheet

Database

Presentation

Web Browser

Image Editing

41
New cards

What are the different types of application software

General purpose

Special purpose software

Bespoke software

42
New cards

What is general purpose application software

Software designed for many purposes e.g. a word processor

43
New cards

What is special purpose application software

Software designed for a specific task or set of tasks

44
New cards

What is utility software?

Software which focuses on the maintenance or administration of a part of the system

45
New cards

List some utility software

Encryption

Defragmentation

Data compression

File Managed

Backup software

Anti-virus

Firewall

46
New cards

What does encryption software do

Software that makes data un-accessible to anyone but specific users or systems. Aids in security

47
New cards

What does antivirus software do?

Scans through the computer system looking for files that are infected. Destroys or isolates the virus infected files to stop damage being caused

48
New cards

What does a firewall do?

Uses ports to deny or allow access of a computer to outside sources

49
New cards

What does disk fragmentation do

Reorganizes where pieces of data are on a hard disk so the pieces of data are next to ones of the same program

50
New cards

What does compression software do

Reduces file size by storing data in a less data consuming format, freeing up space on the hard drive

51
New cards

What does a file manager do

Allows files and directories to be moved, copied, deleted and renamed. Also enables the user to view directory contents

52
New cards

What does backup software do

Archives files onto removable media if the original copy is lost the data is still available

53
New cards

What is a full backup

All files are backed up - usually done on the first backup only.

54
New cards

What is a incremental backup

Only new files or ones that have changed since the last backup are saved in order to save time.

55
New cards

What is open source software?

Software that can be freely used, modified, and shared.

56
New cards

What is closed source software

Software whose source code is not available to the user and can not be modified. Often costs money

57
New cards

What are the advantages and disadvantages of Open-Source Software

As: Free, modifiable, if has a large community bugs will often be fixed quickly

Ds: Often no official support, bugs slow to fix with small community

58
New cards

What are the advantages and disadvantages of Closed Source Software

As: Full support and documentation from creators, code often higher quality and bugs fixed quickly

Ds: Often costs money, unmodifiable

59
New cards

Difference between proprietary software and Freeware

Both Closed source but proprietary costs money while freeware is free

60
New cards

What is a translator

Coverts code from one form to another, e.g. a high level language to a low level language

61
New cards

What is assembly language?

It is an alternative to machine language. Instead of using binary numbers for instructions, assembly language uses short words that are known as mnemonics. Assembly language is hardware specific

62
New cards

What is an assemble

Translates assembly code instructions into machine code

63
New cards

What is a compiler?

Translates source code in a high level language to executable machine code all at once as a whole program

64
New cards

What is an interpreter

Translates source code into machine code line by line

65
New cards

Benefits of a compiler

Program can be run many times without the need to recompile

Faster to execute

Executable code does not need an interpreter to run

Compiled code cannot be read by others

Produces standalone executable file

66
New cards

Benefits of an interpreter

Source code can be run on any machine with interpreter

If a small error if found whole program doesn't need to be recompiled

Source code only needs writing once

Useful during debugging

67
New cards

Disadvantages of a compiler

Hard to fix bugs

Writing programs is more complex

Hardware specific

Compile times may be slow

68
New cards

Disadvantages of an interpreter

Programs run slowly

The user has to wait for the line translation as well as the execution

In a loop the same lines may need translating repeatedly

An interpreter needs to be installed

Developers can view the source

69
New cards

What are the stages of compilation

Lexical analysis

Syntax analysis

Code generation

Optimisation

Compilation

Linker

70
New cards

What is done during lexical analysis

All white space removed

Keywords, constants and identifiers are replaced with tokens (assigned using a symbol table)

71
New cards

What is a symbol table

A data structure built up by a lexer that assigns certain variable, procedure or constant names to an token

72
New cards

What is syntax analysis

The process of splitting the stream of tokens into phrases, parsing them and recording the error if they are invalid

73
New cards

What is parsing

The checking of phrases against the rules of the languages

74
New cards

What is semantic analysis

Checks if syntactically correct statements are logically correct and can actually work in the program

75
New cards

What is code optimization

The removal of redundant instructions and replacement of inefficient code

76
New cards

What are some programming paradigms

Procedural - e.g. python

Object-oriented - e.g. java

Declarative - e.g. SQL

Functional - e.g. Haskall

77
New cards

What kind of paradigms are procedural and object oriented

Imperitive

78
New cards

What is a programming paradigm

The main design philosophy of a programming language that influences the features they have in them. Used to classify languages

79
New cards

What is the purpose of having different programming paradigms

Some paradigms are more suited to certain kinds of problem and thus help to make the solution easier to find

80
New cards

What is imperative programming

Languages which consist of a series of instructions that tell the computer how to solve the problem

81
New cards

What is declarative programming

Statements describe the problem that is to be solved but not how to solve it. The language implementation then finds the best way to solve it. Can solve fewer problems than imperitive

82
New cards

What is procedural programming

Programming where instructions are given in a sequence with selection used to control program flow as well as iteration. Programs are broken into blocks

83
New cards

What is object oriented programming

A style of programming that r represents a program as a system of objects. Each object has its own methods and attributes. Objects interact with each other and all processing is done by objects.

84
New cards

What is a class

A template from which objects are created

85
New cards

What is an object

An instance of a class

86
New cards

What is a method

A subroutine only accessible by an object of the class which that method belongs too

87
New cards

What is an attribute

A variable of an object that is only accessible

through the use of the methods of that class

88
New cards

What is encapsulation?

Wrapping attributes and methods into a single entity called a class that are only accessible by an instance of that class using certain methods.

89
New cards

What is inheritance?

The process of having a class inherit the objects and attributes of another while being able to add things while not affecting the original class

90
New cards

What is polymorphism?

The redefinition of the methods of a parent class in a child class to suit the child class better

91
New cards

What is immediate addressing

The operand holds an actual value

92
New cards

What is Direct addressing

The operand holds the address of the value

93
New cards

What is indirect addressing

The operand holds the location holding the address of the value

94
New cards

How is an assembly language statement composed

Opcode + Operand

95
New cards

In LMC, What is the mnemonic for Load and what does it do

LDA, loads value at specified location into ACC

96
New cards

In LMC, What is the mnemonic for Store and what does it do

STA, Stores value in ACC into specified location

97
New cards

In LMC, What is the mnemonic for Add and what does it do

ADD, Adds number at specified location to number in ACC

98
New cards

In LMC, What is the mnemonic for Subtract and what does it do

SUB - Subtracts value of specified location from value in ACC

99
New cards

In LMC, What is the mnemonic for Input and what does it do

INP - gets user input and stores it in ACC

100
New cards

In LMC, What is the mnemonic for Output and what does it do

OUT, outputs value in ACC