COMP SYSTEMS

studied byStudied by 0 people
0.0(0)
get a hint
hint

examples of OS

1 / 113

encourage image

There's no tags or description

Looks like no one added any tags here yet for you.

114 Terms

1

examples of OS

Windows 7, Windows 8, OS X, iOS, Android, Linux

New cards
2

what types of user interface are there

CLI (command line interface) a shell that responds to text command (more direct and compact)

GUI (graphical user interface) using icons and other visual indicators to navigate commands

New cards
3

what types of software are there

system software application software

New cards
4

what does system software do

software that is needed to manage and control the computer system and assists other software to run

New cards
5

examples of system software

operating systems security software file management software.

New cards
6

What does application software do?

allows user to complete a task

New cards
7

Examples of application software

Word processing, spreadsheet, presentation, database

New cards
8

how does a multi tasking operating system work

actually only one process at a time but switches rapidly so it appears to be multiple

New cards
9

What is a bootstrap loader?

small program stored on ROM to load up OS into RAM to continue the job

New cards
10

what does the CPU do overall

[ fetches and excecutes instructions ] Fetches instructions & data (from memory) • Decodes the instructions • Executes (carries out) the instructions

New cards
11

Von Neumann Architecture

data and instructions are stored together in main memory in binary

instructions executed sequentially (one at a time it is fetched from memory and passed to CPU)

New cards
12

what is a general purpose computer

a computer designed to carry out multiple functions

New cards
13

What is an embedded system?

a special purpose computer built into another device. (washing machines, microwaves, heating) usually have one or two functions

New cards
14

how does the OS manage security

different users with secure passwords

different access rights for different users

automatically updating the OS to patch up security loopholes

encrypting files on hard disk

New cards
15

why do we need utility software

(type of system software)

anti-virus software to regularly check for malware so that you can delete or qurantine any harmful programs to prevent damage.

disk maintenance will help the computer run smoothly by defragmenting as it reorganises files so they can be organised quicker

disk cleanup deletes files no longer needed to free up storage

a firewall will control access to the cpmputer to prevent hackers

New cards
16

What is software?

The programs that run on a computer

New cards
17

What is utility software?

Utility software is system software which is designed to help analyze, configure, optimize or maintain a computer. (housekeeping functions) eg encryption software data compression data organisation utlitiyes file backup utilities

New cards
18

Examples of maintenance utilities

Housekeeping functions like disk defragmentation and automatic updating

New cards
19

what is hardware

The physical components of a computer system

New cards
20

three box model

3 components (processor, main memory, input/output controllers) are linked by system bus

system bus is a high speed communication channel

New cards
21

classifying software

system software application software

New cards
22

system software

responsible for the general operation of a computer system. provides a platform for application software and a means for it to interact with the hardware its running on

New cards
23

examples of system software

Operating system Utilities Drivers/ Libraries translators

New cards
24

application software

computer software created to allow the user to perform a specific job or task

can be general or special purpose

New cards
25

Examples of application software

Word processing, spreadsheet, presentation, database, media player, calculator

New cards
26

utility software

allows user to configure, control, improve and maintain general operations of computer

New cards
27

examples of utility software

  • Disk defragmenter

  • Automatic backup software

  • Automatic update

  • Virus checker

  • Compression software e.g. WinZip

New cards
28

libraries

A collection of resources used to develop software incl. pre written subroutines and code

New cards
29

DLL (Dynamic Link Library)

A file that includes reusable code within Windows-based systems.needed by web browser extensions and programs

New cards
30

programming languages

machine, assembly, high-level

New cards
31

translators

convert source cofe int

Assemblers, compilers and interpreters

New cards
32

assemblers

turn assembly language into machine code

New cards
33

compilers

translate high-level language programs into machine code

New cards
34

intepreters

translate high level programs into machine code

New cards
35

Off-the-shelf software

mass-produced by software vendors to address needs that are common across businesses, organizations, or individuals.

New cards
36

benefits of off the shelf software

readily available for anyone to use cheaper as development costs are shared amongst buyers likely to be well documented and tested

New cards
37

drawbacks of off the shelf software

have little or no control over what features there are may not do exactly what you want

New cards
38

bespoke software

Software specially written for a particular user.

New cards
39

pros and cons of bespoke software

significantly increase the cost may take years to develop however you have complete control over the process which gives complete functionality

New cards
40

What does the operating system do?

Software that controls the hardware and software resources.

  • resource management

  • allows applications to interact with hardware

  • memory management

  • processor scheduling/management

  • security

  • peripheral management of IO devices

  • backing store management

New cards
41

where is OS stored

Hard disk/drive (since its non-volatile it doesn't get deleted when comp turned off)

OS is copied into RAM from 2ndary by bootstrap loader since data access from 2ndary is so slow.

New cards
42

How are complexities hidden

The true complexities of operations are hidden from the end user via an Application Programming Interface

New cards
43

API

think of waiter metaphor

user look at menu and gives waiter (API) request

API takes to OS (the kitchen)

kitchen sends back prepared dish via waiter

New cards
44

memory management

OS

  • Keeps track of what portions of memory have been allocated

  • Maps memory to each process

  • Determines how much memory to allocate to each process

  • Determines when a portion of memory should be available for a process

New cards
45

virtual memory and when

If applications need more memory than a computer has, then the operating system will sometimes use a section of secondary storage to mimic RAM. This is called virtual memory.

New cards
46

adv of virtual memory

Allows you fit many large programs into relatively small RAM.

• You don't have to buy more RAM.

• Code can be placed anywhere in physical memory without relocation.

• More processes can be maintained in Main Memory which increases effective use of CPU.

New cards
47

diasdv of virtual memory

• Applications run slower if the system is using virtual memory.

• It takes more time to switch between applications

• Less hard drive space for your use.

• It reduces system stability.

New cards
48

processor/ scheduling manager

the OS will use a scheduler to swap tasks in and out of the processor so that it appears to the user that the computer is carrying out more than one task at the same time. this is called multi tasking

New cards
49

The scheduler

operating system module responsible for ensuring that processor time is used as efficiently as possible.

• maximise throughput

• be fair to all users on a multi-user system

• provide acceptable response time to all users

• ensure hardware resources are kept as busy as possible

New cards
50

scheduling

job of knowing when to swap processes

New cards
51

examples of scheduling algorithms

Round Robin - each process in turn has use of the processor for a given time slice

• Shortest job next

• Priority system

New cards
52

multi-processing

The simultaneous execution of two or more computer programs or sequences of instructions by a computer (parallel processing).

means more than one processor is being used EG QUAD CORE DUAL CORE

New cards
53

Backing store management

The OS keeps track of where all files are stored on hard disk or external drives, and where space is free to be used if the user performs a save operation

New cards
54

IO device management

Communicates with I/O devices via the I/O controller, part of the CPU.

Checks that a required output device is switched on and ready to receive data.

Deals with processor 'interrupts'

New cards
55

Interrupt

signal sent to the processor that interrupts the current process. It may be generated by a hardware device or a software program.

eg when printing could get a message saying printer ran out of paper

New cards
56

examples of interrupts (general)

hardware interrupt - often created by input device such as mouse or keyboard

disk controller will send one if it cant locate a file (eg typed wrong filename)

software interrupts - used to handle errors and exceptions whilst software is running

New cards
57

BIOS

Basic Input/Output System stored in non volatile mem and is available when computer starts.

New cards
58

what does the BIOS do

initialises and tests the hardware in a computer system so that it is ready for use by other software on the computer. HOLDS BOOTSTRAP LOADER

New cards
59

low-level language

defined by the processor they are designed to run on. Machine oriented. have no built in functions and can access specific registers in the processor.

New cards
60

different types of low level language

machine code assembly language

New cards
61

high-level language

A programming language that is designed to be easy for humans to read and write. (close to natural spoken language)

New cards
62

Types of high level languages

imperative declarative object-oriented

New cards
63

Imperative language

A language based on giving the computer commands or procedures to follow.

GIVES INSTRUCTIONS designed to solve specific problem types

procedural and imperative are used to describe this subset.

New cards
64

procedural language

used to write programs that can be split into procedures or subroutines

New cards
65

Declarative Language

Programmer defines the problem to be solves rather than how to solve it. EG SQL

New cards
66

machine code

BINARY that represent simple instructions executed by a processor.

when necessary for humans to see and interact its usually repped as hexadecimal (easier to read and understand than binary)

New cards
67

assembly language

allow programmers to write machine code using a set of 'mnemonics' that represent the binary equivalent in machine code.

english language equivalent of the operation EG ADD LDA BRA

New cards
68

Assembler

translates the source code (which is in assembly language) into machine code equivalent so it can be run.

New cards
69

advantage of low level languages

  • programmer is able to ensure the machine code is in its most efficient form.

  • assembly corresponds to machine code more directly so programmer can optimise and have more say over how and what program does .

  • possible optimisation is low level can make use of specific registers and more control over movement of data in and out of the processor

  • suitable for low memory embedded systems and device drivers

  • can ensure device resources are used efficiently eg if the device has limited storage or memory

New cards
70

disadvantage of low level languages

  • more difficult to write programs as programmer needs to have a very good understanding of the hardware used

  • not portable as they are specific to a particular instruction set. high level can be compiled for diff processors

  • low level doesn't have library of functions unlike high level where they can be imported and used. AKA instructions have to be written by scratch.

New cards
71

Advantages of high level languages

  • much easier to write and understand than low level. normal command words such as IF, DO , FOR are used so its much easier for humans to understand.

  • portable (can be compiled or translated to run on a wide range of computer architectures as they are not specific to a particular instruction set.

  • come with libraries of functions that can be imported and used so have the adv of pre-written code

  • higher level of abstraction so one command equates to many machine code instructions (makes it faster and easier to write)

New cards
72

examples of imperative languages

PYTHON C FORTRAN

New cards
73

addressing modes in machine code

direct immediate

New cards
74

direct addressing mode

operand specifies address of memory or register location (of the data to be used or stored).

New cards
75

Immediate Addressing Mode

operand is actual value of the data to be used (often denoted by # in assembly language)

New cards
76

translator

system software that translates program written in source code into machine code

-interpreters -compilers -assemblers

New cards
77

source code

code written by a programmer specifying the actions to be performed by computer software

New cards
78

object code

Output of translator after turning source code into machine code.

New cards
79

main ways of high level into machine code

compilation interpretation

determined by particular implementation of the language

New cards
80

low level into machine code

this code ie assembly language programs use

ASSEMBLERS to be translated

New cards
81

Compiler

translate source code into executable machine code that CANNOT be converted back into source code

is a program suite

New cards
82

interpreter

translate and execute each line of source code one by one

New cards
83

differences between compiler and interpreter

  • compiler doesn't execute code unlike interpreter

  • compilers compile the whole program whereas interpreter has a line by line approach to show errors

New cards
84

adv of compiler

  • code can be well optimised by compiler

  • compiled programs can be distributed as machine code so source code is hidden and can be kept secret for commercial reasons

  • no translation needed at execution time as its already done when compiled.

New cards
85

diasdv of compiler

-have to wait until the entire program is compiled before receiving any errors, which for a large program may take some time

  • If you want to change something in the program, you have to recompile the entire program

  • The executable code produced is specific to the machine

New cards
86

adv of interpreter

  • Errors will be reported as soon as they are encountered, which means that you don't have to wait for the entire program to be compiled

  • Errors are shown line by line as the interpreter reaches them (identifies where the error acc is) hence -->

  • Debugging is quick and easy

New cards
87

Disadv of interpreter

  • The program requires an interpreter to be run

  • Translating the code line by line at execution time is slower than running compiled machine code (as each time program is run it has to be translated all over again)

  • The interpreter takes up space in memory

New cards
88

assembler

translate assembly code programs into executable code.

assembly code is platform-specific so assemblers are similarly specific.

New cards
89

when to compile or interpret

depends on the programming language in use. For example, Java programs must be compiled, whereas PHP programs are interpreted.

programmer should considers benefits and drawbacks of each technique when choosing a language that needs to be compiled or interpreted

New cards
90

bytecode

Most interpreted languages now use bytecode as an intermediate stage to speed up the translation process.

The source code is compiled to produce bytecode, which is interpreted (ie translated and executed) by a virtual machine

eg java uses it to make their language portable

New cards
91

addressing mode

The way in which the operand is interpreted.

New cards
92

brief evolution of languages

ada lovelace - binary assembly language

assembly language

autocode algol cobol basic c

New cards
93

When is assembly code preferred

If wanted more direct control over data manipulation

needs to be executed as fast as possible whilst occupying the littlest space as possible

eg embedded systems, sensors, device drivers, interrupt handlers

New cards
94

adv of bytecode

speeds up the translation process

portable as long as user has virtual machine

can act as extra security as you are running or sharing bytecode instead of source code itself which can be copied and sold etc

New cards
95

order of operations boolean algebra

  1. brackets

  2. NOT

  3. XOR

  4. AND, NAND

  5. OR, NOR

New cards
96

advantages of NAND gates

can minimise cost of production

using as few gates as possible can speed up processing

less heat generated

New cards
97

operating system

role is to hide the complexities of the hardware

New cards
98

what is am equivalence tester and how to make one

checks if two bits are the same

use XOR then NOT gate

New cards
99

three basic operations of processors

adding, shifting and flipping bits

New cards
100

what does a binary half adder do

adds two single bit binary numbers together

outputs the result of calculation (S) and the value that is carried (C)

New cards

Explore top notes

note Note
studied byStudied by 1696 people
Updated ... ago
4.9 Stars(7)
note Note
studied byStudied by 11 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 26 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 8 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 22 people
Updated ... ago
5.0 Stars(2)
note Note
studied byStudied by 13 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 9 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 270 people
Updated ... ago
5.0 Stars(1)

Explore top flashcards

flashcards Flashcard66 terms
studied byStudied by 1 person
Updated ... ago
5.0 Stars(1)
flashcards Flashcard151 terms
studied byStudied by 23 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard95 terms
studied byStudied by 7 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard151 terms
studied byStudied by 3 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard24 terms
studied byStudied by 71 people
Updated ... ago
4.0 Stars(1)
flashcards Flashcard56 terms
studied byStudied by 9 people
Updated ... ago
5.0 Stars(2)
flashcards Flashcard103 terms
studied byStudied by 47 people
Updated ... ago
4.8 Stars(4)
flashcards Flashcard113 terms
studied byStudied by 64 people
Updated ... ago
5.0 Stars(2)