studied byStudied by 0 people
get a 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


examples of OS

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

New cards

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

what types of software are there

system software application software

New cards

what does system software do

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

New cards

examples of system software

operating systems security software file management software.

New cards

What does application software do?

allows user to complete a task

New cards

Examples of application software

Word processing, spreadsheet, presentation, database

New cards

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

What is a bootstrap loader?

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

New cards

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

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

what is a general purpose computer

a computer designed to carry out multiple functions

New cards

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

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

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

What is software?

The programs that run on a computer

New cards

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

Examples of maintenance utilities

Housekeeping functions like disk defragmentation and automatic updating

New cards

what is hardware

The physical components of a computer system

New cards

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

classifying software

system software application software

New cards

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

examples of system software

Operating system Utilities Drivers/ Libraries translators

New cards

application software

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

can be general or special purpose

New cards

Examples of application software

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

New cards

utility software

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

New cards

examples of utility software

  • Disk defragmenter

  • Automatic backup software

  • Automatic update

  • Virus checker

  • Compression software e.g. WinZip

New cards


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

New cards

DLL (Dynamic Link Library)

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

New cards

programming languages

machine, assembly, high-level

New cards


convert source cofe int

Assemblers, compilers and interpreters

New cards


turn assembly language into machine code

New cards


translate high-level language programs into machine code

New cards


translate high level programs into machine code

New cards

Off-the-shelf software

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

New cards

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

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

bespoke software

Software specially written for a particular user.

New cards

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

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

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

How are complexities hidden

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

New cards


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

memory management


  • 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

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

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

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

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

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


job of knowing when to swap processes

New cards

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


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

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

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


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

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


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

New cards

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

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

different types of low level language

machine code assembly language

New cards

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

Types of high level languages

imperative declarative object-oriented

New cards

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

procedural language

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

New cards

Declarative Language

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

New cards

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

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


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

New cards

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

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

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

examples of imperative languages


New cards

addressing modes in machine code

direct immediate

New cards

direct addressing mode

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

New cards

Immediate Addressing Mode

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

New cards


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

-interpreters -compilers -assemblers

New cards

source code

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

New cards

object code

Output of translator after turning source code into machine code.

New cards

main ways of high level into machine code

compilation interpretation

determined by particular implementation of the language

New cards

low level into machine code

this code ie assembly language programs use

ASSEMBLERS to be translated

New cards


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

is a program suite

New cards


translate and execute each line of source code one by one

New cards

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

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

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

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

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


translate assembly code programs into executable code.

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

New cards

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


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

addressing mode

The way in which the operand is interpreted.

New cards

brief evolution of languages

ada lovelace - binary assembly language

assembly language

autocode algol cobol basic c

New cards

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

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

order of operations boolean algebra

  1. brackets

  2. NOT

  3. XOR

  4. AND, NAND

  5. OR, NOR

New cards

advantages of NAND gates

can minimise cost of production

using as few gates as possible can speed up processing

less heat generated

New cards

operating system

role is to hide the complexities of the hardware

New cards

what is am equivalence tester and how to make one

checks if two bits are the same

use XOR then NOT gate

New cards

three basic operations of processors

adding, shifting and flipping bits

New cards

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 22 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 214 people
Updated ... ago
5.0 Stars(6)
note Note
studied byStudied by 5 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 15 people
Updated ... ago
5.0 Stars(2)
note Note
studied byStudied by 7 people
Updated ... ago
5.0 Stars(2)
note Note
studied byStudied by 1 person
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 44 people
Updated ... ago
5.0 Stars(1)
note Note
studied byStudied by 5325 people
Updated ... ago
4.6 Stars(9)

Explore top flashcards

flashcards Flashcard62 terms
studied byStudied by 141 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard98 terms
studied byStudied by 4 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard33 terms
studied byStudied by 17 people
Updated ... ago
5.0 Stars(2)
flashcards Flashcard60 terms
studied byStudied by 27 people
Updated ... ago
4.7 Stars(7)
flashcards Flashcard35 terms
studied byStudied by 57 people
Updated ... ago
5.0 Stars(1)
flashcards Flashcard96 terms
studied byStudied by 36 people
Updated ... ago
5.0 Stars(2)
flashcards Flashcard101 terms
studied byStudied by 9 people
Updated ... ago
4.0 Stars(1)
flashcards Flashcard44 terms
studied byStudied by 15 people
Updated ... ago
5.0 Stars(2)