System Software Flashcards

(81 cards)

1
Q

OS and what it is

A

Operating system

the main software that controls how a computer operates

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

function of the OS

A

control the hardware of the computer system; hard disk, graphic card
manages software; loading / unloading into main memory
provides security; username and password
interface; allows you to interact with the computer

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

Parts of an OS

A

Kernel
Device drivers
User Interface
System utilities

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

Kernel function

A

Loading / unloading applications from memory
scheduling tasks to run efficiently on the CPU
memory management
file storage to and from secondary storage devices such as the hard disk
file management
data security

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

Kernels in different OS will …

A

vary in tasks depending on the system

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

Device Drivers 1

A

The OS communicates with lots of different devices and each require a device driver

Drivers for the internal hardware are normally pre installed but can download from a companies website

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

The devices driver allows the OS to communicate with which devices

A

RAM, HDD, graphics card, printer, monitor, mouse

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

External devices like printers…

A

normally come with device drivers on a CD, USB etc

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

User Interface function

A

Allows you to interact with the computer

GUI
Command Line Interface
Natural Languages
Menu Based

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

GUI

A

Graphical User Interface
WIMP
User friendly
users pictures, icons to make it intuitive
slower to perform tasks

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

WIMP

A

Windows, Icons, Menus, Pointers

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

Command Line Interface

A

Interact with the Computer system by typing commands into the screen

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

Natural Languages

A

reacting to voice
Alexa, telephone menu system
can struggle with accents
good where keyboard is not practical
issues in noisy environment

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

System Utilities

A

Provides basic facilities that run in the background

print spool services
cryptographic password management
file management services
anti-virus utility
disk defragmenter utility
file compression utility

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

Virtual Memory

A

Even in modern computer you can run out of RAM
This is when the operating system will use ‘virtual memory’
The OS will identify RAM that isn’t in use and will copy this to secondary storage
This frees up a block of RAM to be used for the program that is in use
This will effect performance as it takes time to perform the swapping of data
If the computer is low on RAM the operating system may spend more time swapping and less time executing the task. This is called thrashing and the operating system will try and avoid this
If thrashing starts then the operating system may terminate programs that are taking up too much RAM but data might be lost

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

Memory Management pg1

A

Memory is limited in size so with processes being loaded and run it needs to be managed

this is to prevent processes overwriting over processes data

each process is given it’s own segment of memory

the memory manager assigns each process a segment of main memory

these segments are further divided to each have a ‘stack’, ‘free memory’, etc

A process is an executable application that’s loaded into memory

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

Types of Memory management

A

paging, segmentation and virtual memory

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

How paging and segmentation are similar

A

both allow programs to run despite insufficient memory
both pages and segments are stored on disk
both pages and segments are transferred into memory when needed

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

how paging and segmentation are different

A

pages are fixed size
pages are made to fit sections of memory
pages are physical divisions

segments are different sizes
segments are complete sections of programs
segments are logical divisions

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

Problems with both paging and segmentation

A

If physical memory is running low, virtual memory has to be used
If more time is spent moving pages/segments in and out of the memory to the disk (thrashing) than actually processing the instruction, the computer will be very slow

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

Typical memory segment of a process

A

stack segment
free memory
data segment
code segment

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

Segmentation

A

Logical division of memory. The sizes of each segments may be unequal

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

Memory segment is broken down further into …

A

Code seg - program instructions
Data seg - for variables the programs use
stack seg - allows for subroutines
- when a subroutine is called the program notes where it was called
- And added to stack
Free memory - for when the stack grows and shrinks

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

virtual memory sections

A

when RAM gets too full, the memory manager may mark sections of secondary storage (on the hard disk) to act as main memory. These sections are called virtual memory

Very slow for the CPU to access

When the CPU needs data held in virtual memory, the memory manager re-loads it into RAM, swapping out less-used data to make room for it

Swapping data in and out of virtual memory is a slow process, so if virtual memory is in heavy use, the computer seems slower

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
if virtual memory is in heavy use ...
the computer seems slower because swapping data in and out of virtual memory is a slow process
26
(disk) thrashing
excessive use of the hard disk as virtual memory is called disk thrashing
27
RAM & virtual memory structure
RAM to Virtual Memory = less used data Virtual Memory to RAM = data needed by the CPU virtual memory is in the hard disk but RAM is not
28
paging with example page number 3233
When RAM is getting full, the memory manager can work out the least used page/segment that page/segment is then copied down into virtual memory page number 3233 will be moved into virtual memory The free area is re-numbered by the memory manager, and marked as free for use if the content of page 3233 is needed, it is swapped back into RAM
29
Memory Leaks
When a memory location is in use, the memory manager will mark it as being unavailable for any other process A program should flush its data away once it no longer needs it. The memory is marked as free, and the memory manager assigns it for other processes to use Badly-written program will not flush data properly. The memory remains unavailable. As the program continues to run, more and more memory gets locked up. this is called a "memory leak" If the leak is bad enough, then the system eventually runs out of memory. Causing the computer to start running slower before it needs rebooting
30
What is a memory leak
When badly-written program cannot flush its data properly meaning the memory remains unavailable and as the program continues to run, more and more memory gets locked up
31
if the leak is bad enough, ...
then the system eventually runs out of memory. causing the computer to start running slower before it needs rebooting
32
overflow
it grows because every time a function calls another function, the address of the first is stored in the stack along with any parameters it uses
33
a poorly written or faulty program ...
will cause the stack to 'overflow'
34
stack overflow
means the stack has run out of free memory to expand into. The program will usually crash at this point, possibly with a 'stack overflow' error message on screen
35
Interrupts
how does the CPU deal with requests from different devices? Polling Interrupt
36
Polling
The CPU to keep checking devices or events to see if they need attention. For instance a file may need to be sent to the printer
37
Interrupt
The CPU waits for signals form the devices along the control bus
38
how interrupts work
a signal is sent by a program/hardware requesting the attention of the processor a signal from a software program, hardware device or internal clock to the CPU e.g. software interrupt: a program terminates or requests a service from the OS e.g. Hardware interrupt: I/O operation has finished or printer out of paper
39
Interrupt Service Routine
1) CPU gets interrupt signal 2) Completes the current FDE cycle 3) It checks the priority of the interrupts 4) If it's a higher priority, it suspends executing of running process 5) Disables all interrupts of a lower priority 6) The value of the program counter is added to the system Stack 7) Interrupt Service Routine is called to deal with interrupt 8) The correct service routine is called to service it
40
priority examples of Interrupt Service Routine
Power failure interrupt clock interrupt I/O signalling a service
41
Scheduling
how are you able to run multiple programs at the same time? Whilst the CPU is processing one application the OS can be queueing up the next process for another application
42
multi tasking (scheduling)
One processor can process one instruction at a time. The OS as a module called a scheduler is needed to help carry small parts of multiple tasks to give the appearance of carrying out lots of tasks at once
43
objective of a scheduler
1) maximise throughout 2) be fair to all users on a multi user system 3) provide acceptable response time 4) ensure hardware resources are kept busy
44
types of schedulers
round robin First Come First Served Shortest job first Shortest remaining time
45
which types of schedulers are pre-emptive
round robin shortest remaining time
46
round robin
1) processors are dispatched on a first in first out (FIFO) basis 2) Each process is given a limited amount of CPU time, a time slice 3) If the process doesn't complete before the time expires or a higher priority comes along the dispatcher gives the CPU the next process 4) an interrupt clock or interval timer is needed to generate the interrupts RR helps to give a reasonable response time to all users of the system
47
what is a time slice
a limited amount of CPU time
48
what is needed to generate the interrupts
an interrupt clock or an interval timer
49
First Come First served
1) the jobs are processed the order they arrived with no system priorities
50
shortest job first
1) the process with the smallest estimated running time is run next 2) similar advantages and constraints as shortest time remaining
51
shortest remaining time
1) the process with the shortest remaining time to completion is run next 2) this reduces the number of waiting jobs 3) you will have to know how long a job will take sot he user needs to estimate this 4) used in batch processing 5) a job can be suspended if a job with a higher priority comes along
52
multi level feedback queues
rather than having one ready queue, we have multiple for different priority jobs jobs can move between queues a processor can only run one job so this concept doesn't effect that BUT it foes help manage the priority of jobs to next be executed
53
this algorithm is designed to ... (multi-level feedback queues)
give preference to short jobs give preference to I/O bound processes separate processes into categories based on their need for the processor
54
blocked process
some processes will be dependent on an input to complete the next instruction this is a long process and the CPU will be sat around idle to prevent this the job is put into the Blocked queue until it's received it's command then the next process is loaded into the CPU to complete
55
Buffers
When data is being sent to input/output devices there will be a delay between the speed the CPU works and I/O device we use a temporary area of memory called a buffer so that the CPU can continue working on another task the buffer compensates for the different speeds between I/O device and the CPU Think of when you type into a computer and there is a delay before the letters appear
56
explain why memory management is necessary (5 marks)
organise the use of (main memory) ... by converting logical addresses to physical addresses allows programs to share memory / allocate memory ... & protect programs / data from each other allows program larger than main memory to run
57
paging may be used in memory management. describe paging (3 marks)
partitioning memory, pages are fixed size, pages are physical divisions, used for virtual memory
58
operating systems can use many different scheduling algorithms. state three different scheduling algorithms (3 marks)
First Come First Serve Round Robin Shortest Job First Shortest Remaining Time Multilevel Feedback Queues
59
explain the purpose of scheduling (3 marks)
to make the most efficient use of the processor / resources be fair to all users / applications provide a reasonable response time prevent processes from failing to run / Process starvation / Deadlock
60
Types of Operating System
Distributed Embedded Multi-tasking Multi-user Real-time
61
distributed
each job us split into tasks and spread over multiple computer servers the OS coordinates how this is done; the user sees it as a single system can share memory and tasks which can result in better performance than a single large server Linux, Unix and Windows have distributed version
62
embedded
embedded systems are computers within a larger piece of hardware; washing machine, microwave, control system and passenger aircraft features of an OS for a household appliance - application program stored on ROM - usually has a minimal user interface - accept input from sensors and send outputs to control devices - no RAM so no memory management - no permanent data storage devices to manage
63
multi tasking
an operating system that allows multiple programs to run. they give the impression of multiple tasks being done at the same time each task is given a bit of the processors time as millions of tasks can be run per second the user is under the impression things are running at the same time
64
Multi User
an operating system that allows multiple users to access one server over a network each workstations is 'dumb' as it's not running its own operating system (sort of true; you have thick and thin clients depending on processing power) each of the users tasks are given a slice of time by the mainframe multi-user operating system shares processor time
65
Real Time
An OS that is designed to process data and respond within a specific time period this time period is very quick and real time OS are used in safety critical systems it must deal with multiple inputs simultaneously must have a failsafe mechanism in case of hardware failure they must be redundancy - if one component fails it must switch over to another - hospital monitoring systems, aircraft control systems, mars rover
66
NOS
Network Operating Systems An OS designed to support computers across a network
67
what do network operating systems do
deal with users logging on maintain the network connection to servers deal with access to files provide security to users share resources
68
what does BIOS stand for
basic input output systems
69
what is a BIOS
a program stored on the Erasable Program Read-Only Memory (EPROM) that gets your computer started when you turn it on
70
what does a BIOS do
it initialises and tests the system hardware
71
What is POST
Power On Self Test
72
what are examples of POST checks
bios is not corrupted system chips are ok (e.g. interrupt controller) processor is ok system memory is ok keyboard is present video display memory is ok it then loads the operating system from the hard disk to RAM
73
what are beep codes
a specific signal emitted by the BIOS via the system loudspeakers to alert the user of a specific problem part of POST that the BIOS runs every time the system is started up, used to indicate the type of error that occurred during the POST
74
device drivers 2
program that interfaces the OS and internal / external hardware the OS can access hardware functions without knowing the detail of the hardware involved
75
A word processed document needs to be printed. At home you have an inket printer. At school you have a laser printer. The printed output is the same, yet the printers use very different technologies. Research how an injet and laser printer work. Distil this knowledge to the key points. Using this research, explain how a device driver is communicating the instruction to print the document to the two printers.
An inket printer works by spraying different quantities of coloured ink onto a page in rows of pixels. A laser printer works by magnetising where toner needs to be on the page to make the image. The toner is attracted to these parts of the page. The page is then heated to fuse the toner to the page. A device driver takes the data from the page to print and instructs the inkjet printer how much ink to deposit row by row. With a laser printer the device driver will tell the printer where to magnetise the page.
76
virtual machines
A virtual machine (VM) is a software program or operating system that that can perform tasks and run applications like they would on a separate computer. For example, you can run a Mac OS virtual machine on a Windows computer.
77
virtual machines benefits
run older OS for testing with legacy systems run multiple OS on one machine Security. can open infected files without worry of infecting your computer. You can then study the virus in safety web hosting companies can create many virtual servers on one physical computer you don't need the hardware to run the program e.g. for design of a mobile OS
78
virtual machines
program would run slower on VM still require a licence for the OS can be complex to run customised in house. VMs so staff will need training
79
virtual machines for intermediate code
you can get virtual machines that are used to run code for a specific virtual machine. For example The Java Virtual Machine is used to run Java programs on all types of computers exactly the same in this example the source code is compiled into intermediate code or byte code. This byte code is designed for a specific virtual machine
80
advantages of virtual machine for intermediate code
portable, the same code can be run on multiple platforms you don't have to recompile to make it work for Mac or Windows don't have to change the source code security - if the VM is secure then you can run programs without worry
81
disadvantages of virtual machine for intermediate code
if the VM has a bug then this will affect all programs running on it same with security