This is a revision resource following the OCR GCSE Computing A451 Specification with notes made on each point listed in the specification.

Friday, 10 April 2015

2.1.5 Databases

The database concept:

(a)describe a database as a persistent store of organised data
A database is a persistent organised store of related data on a computer system.

(b) explain the use of data handling software to create, maintain and interrogate a database
Database software- CRUD- creates, retrieves, updates and deletes data in a database.


The DBMS:

(c) describe how the DBMS allows the separation of data from applications and why this is desirable
the DBMS handles data directly, providing an interface to the applications separately. This prevents applications from conflicting with each other and compromising their integrity.

(d) describe the principal features of a DBMS and how they can be used to create customised data handling applications
the DBMS allows different application to access data at the same time as well as providing back ups and the ability to restore from back ups. It also allows new applications to be written without restructuring data.


Relational Databases:

(e) understand the relationship between entities and tables
Entity-something that we store data about in a database
Tables- a relational database stores data in tables, each table containing data about an entity

(f)understand the components of a relational database

  • Tables- a relational database contains data stored in a series of tables which can be linked to each other.
  • Queries- objects that extract data from a database
  • Reports- a printed output of data from a database
  • Attribute- a characteristic of an entity

(g) understand the use of logical operators in framing database queries
Logical operators allow you to specify complete criteria for searching your table.

(h) explain the use of key fields to connect tables and avoid data redundancy
Primary key- a unique value (e.g. reference number) to identify a record in a table easily
Foreign key- does not have to be unique, linked by primary keys, used to link tables together


(i) describe methods of validating data as it is input

  • Format check- data has to conform to a particular pattern
  • Length check- data must be within certain limits (e.g. phone number less than or equal to 12 digits)
  • Type check- data type could be restricted (e.g. to accept only numerals)

Thursday, 9 April 2015

2.1.4 Images, Sound and Instructions

Images:
(k) explain the representation of images as a series of pixels represented in binary
Images are composed of a series of pixels(smallest elements of an image) in binary

(l) explain the need for metadata to be included in a file such as height, width and colour depth.
Metadata-information about the image data that allows a computer to recreate the image from the binary data in a file, containing height, width(pixels) and colour depth(bpp).

(m) discuss the effect of colour depth and resolution on the size of an image file
The greater the resolution (number of pixels per unit), the greater the file size. The same applies for colour depth.


Sound:
(n) explain how sound can be sampled and stored in digital form
Sound is converted from analogue to digital by sampling the sound wave at set intervals and recording the values which are then saved and replayed by the computer.

(o) explain how sampling intervals and other considerations affect the size of a sound file and quality of it's playback
If the sample rate and bit rate (space available for each sample) are higher, the quality of sound will improve but the file size will increase.

Instructions:
(p) explain how instructions are coded as bit patterns 
Instructions in a computer are stored in binary, each represented by a bit pattern that the CPU recognizes as an instruction.

(q) explain how the computer distinguishes between instructions and data
When the CPU fetches data from memory it cannot tell the difference between instructions and data and it finds what it expects based on the program it is running.

2.1.4 Units, Numbers and Characters

Units
(a) define the terms bit, nibble, byte, kilobyte, megabyte, gigabyte, terabyte
Bit =Binary digit 1 or 0
Byte= 8 bits
Nibble= 1/2 byte, 4 bits
Kilobyte= 1024 bytes
Megabyte= 1024 kilobytes
Gigabyte= 1024 megabytes
Terabyte= 1024 gigabytes

(b) understand that data needs to be converted into a binary format to be processed by a computer
Computers only process data in BINARY format.
Binary=base 2
Denary= base 10
Hexadecimal= base 16

Number:
(c) convert positive denary whole numbers (0-255) into 8-bit binary numbers and back
http://www.r9paul.org/wp-content/uploads/2008/05/pic_baseconversion_example.png

(d) add two 8-bit binary integers and explain overflow errors which may occur
When a number is too large to fit the number of bits allocated to it, some bits are 'lost' leaving an incorrect value known as overflow.

(e)convert positive denary whole numbers (0-255) into 2-digit hexadecimal numbers 


(f)convert between binary and hexadecimal equivalents of the same number


(g) explain the use of hexadecimal numbers to represent binary numbers
Hexadecimal numbers are used to represent binary as they are much easier to interpret due to their simple format.

Character:
(h) explain the use of binary codes to represent characters
As computers can only process binary numbers, a method was developed to allow people to use the full set of alphanumeric characters as well as symbols, using binary codes to represent each character and symbol.

(i) explain the term character set
character set-the characters available to a computer

(j) describe with examples (ASCII and Unicode) the relationship between the number of bits per character in the character set and the number of characters which can be represented.



  • ASCII- American Standard Code for Information Interchange which has 127 codes. In binary 127 is 01111111 so the system uses 7 bits. This character set is good for text however cannot deal with math symbols and other languages.
  • Unicode- There are more than 4 billion characters (including ASCII 127) using 32 bits.

Wednesday, 8 April 2015

2.1.3 Software

(a) explain the need for the following functions of an operating system: user interface, memory management, peripheral management, multi-tasking and security.

  • User interface- this provides a way for the user to control the computer. The interface lets the user give commands, asks questions and displays responses e.g. GUI (Graphical User Interface) uses Windows, Icons, Menus, Pointers which is less easily customisable whereas command line interfaces let users directly type in commands allowing customisation.
  • Memory Management- Programs that the computer is currently running that are in use need to be stored in RAM memory. The computer possesses a set amount of RAM which the OS is responsible for allocating to each program that the user loads.
  • Peripheral management- Computer systems have peripherals to input, output and store data which need to be told how to communicate and interact with the rest of the system. Device drivers are produced for each peripheral, programs that enable communication between the computer and peripherals.
  • Multi-tasking- A multi-tasking OS allows several processes to be resident in RAM at the same time, in different states: running, runnable or waiting. This is efficient and enables the CPU to complete more tasks in a shorter time.
  • Security- The OS must protect programs from each other. If a process is using a certain part of RAM to temporarily store data, another process must not be able to overwrite that data. Most OS systems come with built in measures to protect system security.


(b) describe the purpose and use of common utility programs for computer security (antivirus, spyware protection and firewalls), disk organisation (formatting, file transfer, and defragmentation)

Computer security:

  • Antivirus- This searches the computer for viruses and removes potentially harmful code. It is crucial to keep this software updated to combat new threats which are released constantly.
  • Spyware protection- Protects from malicious software that detects what a user is doing and sends these details back to the originator (e.g. Trojan programs- harmful software disguised as something else which can steal sensitive data)
  • Firewalls- Software which can restrict incoming and outgoing access to certain network addresses.
Disk Organisation:
  • Formatting- this enables files to be moved by the user, renamed and copied using format tools.
  • Defragmentation- reorganizes files that have been split up into fragments, relocating them together for faster access.


(c) discuss the relative merits of custom written, off the shelf, open source and proprietary software.

Translator programs:
Compiler- translator programs that convert high level source code into machine code, translating an entire block of code at a time.

Interpreters- translator programs that also translate source code into machine code however they translate code line by line, making them useful for debugging.

Types of software:

  •  Custom written software- Specifically made for a particular client. This type of software is expensive as development costs are borne by only one customer. It takes a long time to develop and test and there are more likely to be faults as it hasn't been tested by users. If there are problems, however, it is easier to contact developers.
  • Off the shelf- This is available straight away, sold 'as is'. Many users have worked with it so most bugs will have been discovered and fixed
  • Open source software- This is placed in public domain with the source code available to all, making it free and easily accessible. However, there is no one to contact directly if problems occur and there are no maintenance contracts e.g. Firefox
  • Proprietary software- This is developed by a company for profit, meaning that users must buy a licence to use it. It can be expensive however it has been extensively tested and help is easily accessible if necessary.




2.1.2 Secondary storage

(s) explain the need for secondary storage
Secondary storage is needed to store programs/data and other files which would otherwise be lost when power is turned off.

(t) describe common storage technologies such as optical, magnetic and solid state
  • Optical storage- CDs are a common example of optical storage which can usually store around 650Mb of data. A laser beam is used to burn data on to the surface of the disk and is also used to read data stored on a disk. CDs can either by ReWritable or CD-ROM, meaning the data can only be written once then cannot be changed.
  • Magnetic storage- Magnetic storage devices such as magnetic tapes are used to store up to one terabyte of data, which is as much as can be stored on a hard disk. These are useful for storing and backing up large volumes of data.
  • Solid state storage- Very flexible, can store many GBs of data. Inexpensive method of storage with no set up or driver software required.

(u)select suitable storage devices and storage media for a given application and justify their choice using characteristics such as capacity, speed, portability, durability and reliability.
Useful site- http://gcsecomputing.jimdo.com/unit-1-computer-systems-and-programming/secondary-storage/


Storage device:
Storage method
Typical capacity
Access speed
Usage
Floppy disk
Magnetic
1.44MB
36KBs
Transfering small files between machines

CD-ROM
Optical
650MB
6MBs
Distributing software / music

Magnetic Tape

Magnetic
50-160GB
12MBs
Backing up data on a server

DVD-ROM
Optical
4.7GB
33MBs
Distributing software, games and films

Hard disk
Magnetic
500GB
300MBs
Storing programs and data

Flash memory
 Solid state
4GB-128GB
415MBs
Portable memory pens or replacement for hard disk

2.1.2 Input and output devices

(a)understand the need for input and output devices
Input devices are hardware devices used to input data into a computer for processing. Output devices are hardware devices used to output (sound/data etc.) from a computer.

(b) describe suitable input devices for a wide range of computer controlled situations
Examples of input devices are:

  • Keyboard
  • Mouse
  • Microphone

(c) describe suitable output devices for a wide range of computer controlled situations
Examples of input devices are:

  • Monitor
  • Printer
  • Speaker

(d) discuss input and output devices for users with specific needs
Some input and output devices have been developed to suit users with specific needs and disabilities who may not be able to use regular input/output devices.

Input:

  • Puff-suck switch- a switch designed for someone with limited physical mobility. It is connected to the computer and the user simply has to suck or puff down the tube to activate the switch.
  • Eye typer- This is designed for people who are unable to use a regular mouse or conventional keyboard. A camera is attached to the top of the computer which focuses on the user's eye, mouse clicks performed with a slow blink.
Output:
  • Speakers-for people who are visually impaired, text can be converted to speech and output through a speaker by a computer generated voice
  • Braille printer- A braille printer uses pins to press raised dots onto Braille keyboard in braille dots to be read by the visually impaired.

2.1.2 Memory

(g) describe the difference between RAM and ROM
ROM is read only memory, a store for data in a computer that cannot be overwritten and is not lost when it is powered off. RAM is the main memory of a computer which stores data, applications and the operating system while the computer is in use, but loses data when it is powered off.

(h) explain the need for ROM in a computer system
ROM is needed to start up the computer, as the computer just be able to obtain instructions from the moment it is switched on. It is "read-only" meaning it can be read but not adjusted by the user.

(i) describe the purpose of RAM in a computer system
RAM is random access memory, the place in a computer where the operating system, applications and data that are currently in use are stored. This means that they can be quickly reached by the computer processor for better performance.

(j) explain how the amount of RAM in a personal computer affects the performance of the computer
The more RAM that is available to a computer, the more programs and data can be loaded. This enables the computer to perform better.

(k)explain the need for virtual memory
Virtual memory is a section of the hard disk used as if it were RAM to supplement the amount of main memory available, to be used when there is not enough memory available to run programs.

(l) describe cache memory
Cache memory is a high speed memory storing all data that is waiting to be processed.

(m) describe flash memory
Flash memory is solid state memory used in portable device and removable devices to store data. It is a secondary storage with slower access time than RAM.

(n) discuss how changes in memory technologies are leading to innovative computer designs
Advances in processor technologies, solid state drives, mobile internet access etc. are leading to technological convergence between telephones and computers.

2.1.2 Binary Logic


All computers represent data in binary form. A binary digit or bit is the smallest unit of data, represented by a 1 or a 0.
Shown above are logic diagrams and the truth that can be produced from them.

2.1.2 The CPU

The Central Processing Unit (CPU)

(a) state the purpose of the CPU
The CPU is the core of every computer system, containing the control unit, the ALU (arithmetic and logic unit) and cache memory. The control unit works with the CPU to control flow of data within the system. The ALU carries out all of the arithmetic and logical operations within the CPU.

(b) describe the function of the CPU as fetching and executing instructions stored in memory
The CPU has access to the main memory (RAM-Random Access Memory) which stores data, applications and the operating system while the computer is in use, but loses data when powered off. Cache memory is the high speed memory storing data waiting to be processed.
When a computer is switched on, the CPU runs a fetch-execute cycle, which fetches instructions from the ROM-read only memory (A store for data in a computer that cannot be overwritten and not lost when powered off). The CPU then executes the program commands to get the OS started.


(c) explain how common characteristics of CPUs such as clock speed, cache size and number of cores affect their performance
  • Dual core/quad core processor- A CPU with 2/4 processors which can fetch, decode and execute at the same time as one another, so more instructions can be processed.
  • More cache memory- reduces time taken to access data which is more efficient.
  • Faster clock speed- a faster clock speed allows for more calculations per second.

2.11 Fundamentals of computer systems

2.11 Computer Systems

(a) Define a computer system
A system is a collection of parts that work together for a common purpose.
An embedded system is a computer system that forms part of an electronic device (e.g. A SatNav)

(b) describe the importance of computer systems in the modern world

  • Safety- computer systems are used for guiding aircrafts, controlling traffic lights and monitoring patients in hospitals.
  • Business- computer systems are used to take orders, control stocks, manage payrolls and monitor taxes.
  • Politics- computer systems are used in political campaigns, as well as for voting and taxes.


(c) explain the need for reliability in computer systems
Unreliable systems can cause very serious problems (e.g. Aircraft accidents if systems fail). To prevent such problems from occuring, testing can be carried out purposefully to reveal errors. Beta testing is carried out under real-life conditions whereas alpha testing is carried out by developers.

(d) explain the need for adherence to suitable professional standards in the development, use and maintenance of computer systems
If a new system is developed adhering to certain standards, it is more likely to be succesful. The ISO (International Organisation for Standardisation) are responsible for monitoring standards.

  • Proprietary standards- these standards are owned and maintained by one company, making them familiar and predictable, e.g. Windows
  • Industry standards- these are standards that are agreed accross the computing industry which allows for easy interconnection, e.g. USB (Universal Serial Bus)
  • Open standards- these are publicly available and are non profit, available at no or minimal cost and there is no single developer, e.g. HTML
  • De facto standards- these are standards that have developed through common usage, the accepted way of doing things, e.g. Microsoft Word
  • De Jure standards- de jure means 'by law', standards which everyone must adopt and adhere to e.g. HTML



(e) explain the importance of ethical, environmental and legal considerations when creating computer systems
Ethical considerations- The BCS (British Computer Society) has set ethical standards (what is morally right) for computing professionals to adhere to. These include: Do not undertake work beyond your capability, do not bring your profession into disrepute, do not take bribes etc.

Environmental considerations- E-waste (old computer equipment) contains many toxic components such as Mercury. Much e-waste is shipped to developing countries and sent to landfill sites where chemicals may leech into the soil and cause pollution.

Legal considerations- The Data Protection Act (1998) was created to protect people's privacy. It requests that those who keep personal data on a computer must take care of it and that people should be able to inspect any personal data held about the, to ensure accuracy. In 1990, the Computer Misuse Act made it illegal to gain unauthorised access to computer systems or to modify their data.

Security and the cloud- SaaS (Software as a Service) stores data remotely in a 'cloud' which removes the need to employ IT staff, reducing infrastructure requirements.