CIE 9618 Computer Science Paper 1 Comprehensive Study Notes

Information Representation

  • 1.1 Data Representation

Benefits of Binary Coded Decimal (BCD)

  • Conversion between BCD and denary is more straightforward compared to standard binary.

  • Encoding and decoding are less complex for programmers to implement.

  • Digital equipment can use BCD to display information more easily (e.g., driving seven-segment displays).

  • BCD can represent monetary values exactly, avoiding rounding errors inherent in some floating-point systems.

Applications of Binary Coded Decimal (BCD)

  • Electronic displays such as calculators and digital clocks: These only need to show individual digits, making the conversion between denary and BCD simpler.

  • Storage of date and time in a PC's BIOS: The conversion with denary values is easier for clock-related data.

Applications of Hexadecimal

  • Media Access Control (MAC) addresses: Used to uniquely identify network interface controllers.

  • HTML color codes: Used in web design to represent specific colors (e.g., \text{#FFFFFF}).

  • Memory addresses in assembly language and machine code: Used to refer to specific locations in the system memory more concisely.

ASCII Representation

  • Each character is assigned a unique binary code.

  • During representation, every character is replaced by its corresponding corresponding unique code.

  • Character codes are stored in the same sequence/order as they appear in the original word.

Character Sets (ASCII, UNICODE, Extended ASCII)

  • A character set refers to all of the characters that a computer system can represent or use.

  • Each character within the set has a corresponding unique binary number.

Similarities Between Character Sets

  • All character sets can use 8-bits8\text{-bits} (standard for ASCII/Extended ASCII and subsets of Unicode).

  • ASCII is a subset of both Unicode and Extended ASCII.

  • Each set represents characters using a unique code.

Differences Between Character Sets

  • Unicode can represent multiple languages and a much wider range of characters/symbols than ASCII.

  • Bit depth varies: ASCII uses 7-bits7\text{-bits}, Extended ASCII uses 8-bits8\text{-bits}, and UNICODE can use 16-bits16\text{-bits} or more.

Multimedia

  • 1.2 Graphics

Bitmap Graphics

  • Images are made up of pixels, where each pixel is a single color represented by a unique binary value.

  • They are stored as a sequence of binary numbers that represent the value of each pixel in order.

  • Bitmaps are prone to pixelation when enlarged (the individual squares become visible).

  • File sizes are generally larger because data must be stored for every single pixel.

  • They can be compressed significantly using various algorithms.

  • These images are more difficult to edit because individual objects are not recognized; each pixel must be edited separately.

Pixel Definition

  • A pixel is the smallest addressable element in an image.

File Header

  • The header stores metadata about the bitmap image, such as the color depth and image resolution.

  • Specific data contained: File type, compression type, dimensions (width ×\times height), and the total file size.

Image Resolution

  • The total number of pixels in an image, calculated as: number of pixels wide×number of pixels high\text{number of pixels wide} \times \text{number of pixels high}.

  • Increasing resolution results in more pixels, which makes the image sharper and less likely to appear pixelated.

Bit Depth and Colour Depth

  • This refers to the number of bits used to represent each color, or the number of bits per pixel.

  • It determines the total number of colors that can be represented (e.g., nn bits allows for 2n2^n colors).

  • Increasing bit depth allows for a greater range of colors and a more realistic representation close to the original, though it increases file size.

Vector Graphics

  • Vector graphics store a set of instructions/commands about how to draw shapes using mathematical formulas.

  • They do not pixelate when scaled or enlarged because the shapes are recalculated.

  • Individual components and objects within the image can be edited independently.

  • File sizes are smaller because only instructions, not pixel data, are stored.

  • Vector graphics do not compress well because they contain very little redundant data.

Vector Graphic Components

  • Drawing Object: A component of a vector graphic created using a formula or command.

  • Drawing Property: Contains data about the shapes and defines an aspect of the appearance of a drawing object (e.g., line color, fill style).

  • Drawing List: The list of all shapes/objects that make up an image and the stored commands required to draw each one including their attributes.

Vector Graphic Representation

  • Encoded as a series of geometric shapes.

  • Stores coordinates of drawing objects within the image.

  • Contains a drawing list with commands for creating individual objects and their specific attributes.

  • 1.3 Sound

Sound Representation

  • Sound is represented digitally by recording the amplitude at a set number of times per second.

  • Each recorded amplitude is assigned a corresponding unique binary value/number.

  • These binary numbers are saved and stored in a sequential data stream.

Sampling

  • Sampling is the process of taking measurements of the sound wave at regular intervals and storing those values.

Sampling Rate

  • The number of samples taken per unit of time, typically measured in samples per second (Hz\text{Hz}).

Effect of Increasing Sampling Rate

  • The sound is recorded more frequently, resulting in smaller gaps in the sound wave between samples.

  • This reduces quantisation errors.

  • It improves accuracy as the digital waveform resembles the original analogue wave more closely.

  • It increases the file size because more total samples are taken, requiring more bits for storage.

Sampling Resolution

  • The number of bits used to store each individual sample.

Effect of Increasing Sampling Resolution

  • More bits are used per sample, allowing a wider range of amplitudes to be represented.

  • This leads to smaller quantisation errors.

  • The digital waveform becomes closer to the original sound, improving accuracy.

  • File size increases as the amount of data per sample grows.

Analogue Data

  • Analogue data is a variable or data value that is constantly and continuously changing.

Compression

Reasons for Compression

  • Reduces file size: Takes up less space in memory, allowing for more files to be stored.

  • Faster upload and download rates: Reduces the transmission time to or from the web.

  • Reduced bandwidth usage during data transmission.

  • Makes files small enough to be sent as email attachments.

Lossy Compression

  • Original data is permanently lost/deleted during compression and the file cannot be reconstructed to its original state.

  • It cannot be used on text files because it would make the file corrupt or unreadable (every character is required for the text to make sense).

  • For videos, it might result in lower resolution, but will buffer less during real-time streaming and save bandwidth.

  • It is used when quality can be reduced without the user significantly noticing, or when a massive reduction in size is required.

Lossless Compression

  • All original data is preserved; the file can be fully restored to its original state.

  • Used when all data is essential (e.g., executable code, text documents).

  • Used when high-quality video or images are needed, or if the file is already small enough.

Compression Techniques for Sound

  • Reduce amplitude range: Limiting the sound to only the range being used reduces the bits needed for each sample.

  • Run-length encoding (RLE): Consecutive identical sounds are grouped; the binary value and the count of repeats are recorded.

  • Storing only changes: Recording how the sound changes rather than the absolute amplitude of every sample.

Compression Techniques for Images

  • Lossy:

    • Reduce bit depth: Fewer bits used per pixel.

    • Reduce number of colors: Decreases the bits needed per color representation.

    • Reduce resolution: Fewer pixels altogether means less binary data to store.

  • Lossless:

    • RLE: Replaces sequences of identical color pixels with a single color code and the number of repetitions.

Run-length Encoding (RLE)

  • RLE identifies groups or sequences of repeated characters/data and replaces them with a single copy of the data and a count of its occurrences.

RLE Limitations

  • It only works efficiently if there are many consecutive sequences of the same data.

  • If data changes frequently (e.g., colors RBG), RLE would store the color followed by a count of 11 (R1 B1 G1\text{R1 B1 G1}), which actually increases the total file size.

Communication and Networks

  • 2.1 Networks involving the Internet

Local Area Network (LAN)

  • Allows communication and data sharing between devices within the network.

  • Facilitates sharing of resources such as hardware (printers) and software applications.

  • Allows for central management of security, backups, and software updates.

  • Covers a small geographical area, and connections are usually physical.

  • Infrastructure is privately owned and not controlled by external telecommunication companies.

  • Offers high data transfer rates.

  • Easier to protect and generally more secure than a WAN.

Wide Area Network (WAN)

  • Covers a large geographical area; connections are often virtual or use leased lines.

  • Typically has a lower data transfer rate than a LAN.

  • Can have private or public ownership, often controlled by external organizations.

Client-Server Model

  • Web pages and data are stored on central servers.

  • The client (user's computer) sends a request to the server.

  • The server processes the request, performs the task, and returns the result to the client.

  • The client displays the result to the user.

  • Servers can host shared files that can be requested from any client computer.

  • Files can be accessed simultaneously by several users.

Examples of Client-Server Models

  • Sending and receiving emails.

  • Using a shared print server or file server.

  • A company or school storing files centrally for employees or students.

Peer-to-Peer (P2P) Network Features

  • All computers are of equal status; there is no central server.

  • Each computer provides access to its own data and resources; data is distributed across the network.

  • Computers communicate and share resources directly.

  • Each individual computer is responsible for its own security and management.

Drawbacks of Peer-to-Peer Networks

  • Reduced security due to a lack of central management; each computer is vulnerable to viruses from others.

  • No central backup management; if one computer fails to back up, that data is lost to the entire network.

  • Maintaining file consistency is difficult without a central master file.

  • Slower response times on individual computers because they are being accessed by other peers.

  • Files are not always available if specific computers are switched off.

Thick-Client vs. Thin-Client

  • Thick-Client:

    • The server performs minimal processing.

    • Most resources and software are installed locally on the client.

    • Clients perform the majority of processing independently.

  • Thin-Client:

    • The server performs almost all processes and data storage.

    • Clients only send requests and display the results returned by the server.

Star Topology

  • Devices are connected to a central router, switch, or hub.

  • Collisions are minimized because each device has a dedicated connection to the switch.

  • Highly scalable as new devices can be plugged directly into the central switch.

  • Resilient because the failure of one cable does not affect other devices.

Data Transmission in Star Networks

  • Data from a sending device is transmitted to the router/switch.

  • The data contains the address of the intended recipient.

  • The router uses a routing table to determine the destination and transmits data directly to that recipient only.

Mesh Topology

  • Every computer is connected to at least one other device, and often many others.

  • There are multiple possible routes between any two devices.

  • Computers can act as relays, forwarding packets to their final destination.

Advantages of Mesh Topology

  • If one line or node fails, alternate routes are available to ensure data reaches its destination.

  • Improved security compared to using a single main line.

  • Fewer collisions because multiple routes spread the traffic.

  • New nodes can be added without interfering with existing connections.

Cloud Computing

  • This refers to accessing files or services stored on a remote server via the internet.

  • Public Cloud:

    • Services are offered by third parties over the public internet.

    • Available to anyone with the appropriate software and equipment.

  • Private Cloud:

    • Services are offered over a private internal network.

    • Only accessible to select users within an organization.

Advantages of Cloud Computing

  • Often available for free (for basic tiers).

  • Saves storage space on local devices.

  • Data can be accessed from any device with an internet connection.

  • High probability of data recovery and professional-grade backups.

  • Scalable and easy to share data.

Disadvantages of Cloud Computing

  • Accessible only with an active internet connection.

  • Uploading/downloading large amounts of data can be time-consuming.

  • Can become expensive in the long term for high storage tiers.

  • Reliability is dependent on a third party for security and uptime.

  • Files cannot be accessed if the provider's server goes down.

Wired vs. Wireless Networks

  • Wired (Advantages):

    • Higher bandwidth and lower latency, ideal for large file streaming.

    • More stable connection; less vulnerable to distance or physical interference (walls).

    • More secure as data is harder to intercept physically.

  • Wireless (Advantages):

    • Freedom of movement; no physical connection required.

    • Easily scalable; many devices can join the network without adding cables.

    • Cheaper setup due to less cabling.

    • Allows access in remote or rural locations.

  • Wireless (Disadvantages):

    • Higher latency and slower transmission speeds than wired.

    • Affected by weather and physical obstructions.

    • May require a direct line of sight for some technologies.

Transmission Media

  • Copper Cables:

    • Data transmitted via electrical signals.

    • Lower transmission rates than fiber.

    • Higher risk of interference and interception.

    • Requires repeaters for long distances.

    • Sturdy, reliable, and flexible.

  • Fibre-optic Cables:

    • Data transmitted using light pulses.

    • Greater bandwidth and much faster speeds.

    • Low risk of electromagnetic interference.

    • Better for long distances without signal boosting.

    • Harder to hack.

    • Prone to physical damage (cannot be bent sharply) and more expensive to install.

Network Hardware

  • Radio Waves: Form of electromagnetic waves used for wireless data carrying.

  • Satellite: Communication device in Earth's orbit that receives and transmits data.

  • Switch: Connects individual devices on a LAN and directs data specifically to the destination device.

  • Server: Manages access to centralized resources on a network.

  • Wireless Network Interface Card (WNIC):

    • Provides an interface to a wireless network via an antenna.

    • Converts analogue waves to digital signals and vice versa.

    • Handles encryption/decryption and provides the MAC address.

  • Wireless Access Point (WAP): Hardware providing radio communication from a central device to nodes; allows wireless devices to connect to a wired network.

  • Bridge: Connects two LANs that use the same protocol.

  • Repeater: Restores/amplifies a digital signal for transmission over long distances.

  • Router:

    • Receives packets and forwards them to the destination.

    • Stores IP and MAC addresses of attached devices.

    • Maintains a routing table to find the most efficient path.

    • Assigns private IP addresses on a LAN.

    • Can act as a firewall or gateway (protocol conversion).

Ethernet and CSMA/CD

  • Ethernet: A standard protocol for data transmission over wired networks; data is sent in frames containing source/destination addresses and error-checking data.

  • CSMA/CD (Carrier Sense Multiple Access with Collision Detection):

    • Used to detect and prevent data collisions.

    • A device scans the line voltage to "listen" for a free channel.

    • It only sends data when the channel is idle.

    • If two nodes transmit simultaneously and a collision occurs, they send a signal to stop transmission, wait a random amount of time, and then retry.

Bit Streaming

  • Data is compressed before transmission.

  • Video is transmitted continuously as a series of bits.

  • The server sends data to a buffer on the client computer; the recipient plays the stream from the buffer to ensure smooth playback.

  • Real-time: Live events captured and sent directly; cannot be paused or rewound.

  • On-demand: Pre-recorded media encoded and uploaded to a server; can be watched at the user's convenience (pause/rewind).

  • 2.2 Addressing and Protocols

World Wide Web (WWW) vs. the Internet

  • WWW: A collection of web pages that uses the HTTP/HTTPS protocols to transmit data.

  • Internet: The global interconnected network of networks that uses TCP/IP protocols.

Public Switched Telephone Network (PSTN)

  • Consists of various communication lines permitting full-duplex data transmission.

  • Communication passes through switching centers.

  • The line remains active during power outages.

  • Uses a dedicated channel between two points for the duration of a call.

IP Addressing

  • IPv4:

    • Uses 32-bits32\text{-bits} split into 44 groups of 8-bits8\text{-bits}.

    • Groups are represented by denary numbers between 00 and 255255.

    • Separated by full stops (e.g., 192.168.1.1192.168.1.1).

  • IPv6:

    • Uses 128-bits128\text{-bits} split into 88 groups of 16-bits16\text{-bits}.

    • Groups are hexadecimal numbers between 00 and FFFF\text{FFFF}.

    • Separated by colons; chains of zeros can be compressed using "::".

    • Used when the available IPv4 addresses are exhausted.

Subnetting Benefits

  • Improves security as data stays within its subnet; not all devices see all traffic.

  • Easier to expand the network and allows for a greater range of IP addresses.

  • Reduces network traffic and congestion by localized data movement.

  • Simpler maintenance; faults can be isolated to a single subnetwork without taking down the whole system.

IP structure

  • IP addresses in a subnetwork consist of a Network ID and a Host ID.

  • Every device in a specific subnetwork shares the same Network ID.

  • The Host ID uniquely identifies a specific device within that subnetwork.

Public vs. Private IP

  • Public IP:

    • Visible to any device on the internet.

    • Allows direct access to the web; allocated by an ISP and unique globally.

  • Private IP:

    • Only visible within the LAN.

    • Used for internal communication; allocated by the router and unique only within that LAN.

Static vs. Dynamic IP

  • Dynamic: A new IP address is allocated each time a device joins the network.

  • Static: The IP address is fixed and does not change when the device reconnects.

DNS and URL Resolution

  • A URL is entered into a browser and parsed to extract the domain name.

  • The domain name is sent to a Domain Name System (DNS) server.

  • The DNS searches its database for the corresponding IP address.

  • If found, the IP is returned to the browser to display the resource.

  • If not found, the request moves to a higher-level DNS; the result is then cached in the lower-level DNS for future use.

Hardware

  • 3.1 Computer Components

Storage Needs

  • Secondary Storage: Required for long-term storage of files, data, and software.

  • Primary Storage: Used to store files needed to boot the system (BIOS/firmware), the Operating System (OS), and current data processed by the CPU.

Embedded Systems

  • A microprocessor contained within a larger system to perform a specific task (e.g., a washing machine cycle controller).

  • Composed of a combination of hardware and software designed for a dedicated function.

  • Characteristics: No general-purpose OS, integrated into the machine (not easily changed), and requires low processing power.

  • Disadvantages: Difficult to upgrade or adapt for other tasks; usually non-repairable and thrown away if they fail.

Operation of a Laser Printer

  • Features a revolving drum that is given an electrical charge.

  • A laser beam draws the page content onto the drum by discharging specific areas (creating an electrostatic image).

  • Oppositely charged toner is coated onto the drum and sticks only to the areas hit by the laser.

  • The drum rolls over electrostatically charged paper, transferring the toner pattern.

  • The paper is heated in a fuser to seal the image.

  • The charge is removed from the drum, and excess toner is collected.

Operation of a 3D Printer

  • Uses additive manufacturing based on a digital 3D CAD model.

  • Builds models layer by layer starting from the bottom using xyzxyz coordinates.

  • Fused Deposition Modelling: Material is heated and pushed through a nozzle to fuse layers together.

  • Temperature sensors are used to prevent overheating and ensure the material is at the correct temperature for extrusion.

Operation of a Microphone

  • Contains a flexible diaphragm.

  • Sound waves cause the diaphragm to vibrate.

  • Vibrations cause a coil to move relative to a magnet, producing an electrical signal.

Operation of a Speaker

  • An electrical current is sent through a coil.

  • The current creates an electromagnetic field.

  • The electromagnet is repelled or attracted by a permanent magnet based on the current's direction.

  • The movement of the coil causes a diaphragm to vibrate, creating sound waves.

Storage Technologies

  • Magnetic Hard Disk:

    • Contains spinning platters divided into sectors and tracks.

    • Surface is magnetized; a read/write head on an arm reads and encodes magnetic patterns.

    • Writing: Current in the head creates a magnetic field on the disk.

    • Reading: Magnetic field on the disk induces a current in the head.

    • Advantages: Lower cost per unit of storage and high longevity for continuous read/write cycles.

  • Solid State Memory (SSD):

    • Uses a grid of rows and columns (NAND flash) with two transistors at intersections: a Floating Gate (stores voltage for 00 or 11) and a Control Gate (manages electron movement).

    • Cannot overwrite; data must be erased before writing.

    • Advantages: No moving parts (reliable) and much faster access times.

  • Optical Disk:

    • A reflective metal layer with a single spiral track.

    • Laser light (red for DVD/CD, blue for Blu-ray) is shone onto the disk.

    • Data is stored in pits and lands (crystalline vs. amorphous states).

    • Benefits: Ideal for distributing movies/software and used for backups.

Touch Screens

  • Resistive: Two layers that touch when pressed to complete a circuit. Works with any object (gloved hand, stylus). Processes coordinates of the contact point.

  • Capacitive: Multiple layers; touching the top layer causes a change in electric current. Microprocessor identifies coordinates based on capacitance change.

Virtual Reality (VR) Headset

  • Video data is sent from a computer to the headset's LCD/OLED display.

  • Lenses reshape the image for each eye to create a 3D effect.

  • Typically uses a frame rate of 6060 to 120 fps120\text{ fps}.

  • Sensors track user movement to mimic results on screen.

  • Uses binaural (surround) sound. Infrared sensors may monitor eye movement for realistic depth of field.

Purpose and Process of a Buffer

  • Acts as a temporary storage area for data being transmitted between devices.

  • Allows hardware to operate at different speeds (e.g., video streaming or printing).

  • Process: Instructions/data are sent to the buffer. The device reads from the buffer while the CPU continues other tasks. When the buffer is empty, an interrupt signal is sent to the CPU requesting more data.

RAM (Random Access Memory)

  • Primary volatile memory storing currently running software, data, and the OS.

  • SRAM (Static RAM): Uses transistors arranged as flip-flops; faster access time; no refresh needed; used in Cache.

  • DRAM (Dynamic RAM): Uses a single transistor and capacitor; must be refreshed constantly; higher data density and lower cost; used in main memory.

ROM (Read Only Memory)

  • Primary non-volatile memory storing start-up instructions (BIOS) and firmware.

  • PROM: Programmable once.

  • EPROM: Erased using UV light; must be removed to rewrite.

  • EEPROM: Erased using electrical voltage; can be rewritten within the device; allows firmware updates.

Control Systems

  • Use feedback loops to produce actions via actuators.

  • Actuators: Convert electrical energy into mechanical energy to produce physical movement.

  • Importance of Feedback: Ensures the system operates within set criteria and allows for automatic adjustments.

Processor Fundamentals

  • 4.1 CPU Architecture

Stored Program Concept

  • Instructions and data are stored together in the same memory space or main memory.

Von Neumann Components

  • Buses (Data, Address, Control).

  • Registers.

  • ALU (Arithmetic Logic Unit).

  • CU (Control Unit).

  • IAS (Immediate Access Store).

  • System Clock.

Registers

  • General Purpose: Hold temporary data for any calculation or logic operation.

  • Special Purpose:

    • Program Counter (PC): Holds the address of the next instruction to be fetched.

    • Memory Address Register (MAR): Stores the address of the memory location currently being read from or written to.

    • Memory Data Register (MDR): Holds the actual data fetched from the address in the MAR.

    • Current Instruction Register (CIR): Holds the instruction currently being decoded and executed.

    • Index Register: Stores a value used for indexed addressing calculations.

    • Status Register: Stores status flags (e.g., zero flag, overflow flag, interrupt flag).

Control Unit (CU)

  • Synchronizes the actions of all CPU components using system clock pulses.

  • Sends and receives control signals (Read, Write, Timing, Interrupt) via the Control Bus.

  • Decodes instructions during the Fetch-Execute cycle.

Buses

  • Address Bus: Carries the address where data is to be sent or fetched from (Unidirectional).

  • Data Bus: Carries the actual data between the CPU, memory, and I/O devices (Bidirectional).

  • Control Bus: Carries command and timing signals to coordinate all activities.

CPU Performance Factors

  • Number of Cores: More cores allow multiple instruction sequences to be processed simultaneously.

  • Bus Width: A wider bus allows more data to be transferred in a single cycle.

  • Clock Speed: Dictates the number of Fetch-Execute cycles per second (Hz\text{Hz}).

  • Cache: Fast access memory near the CPU storing frequently used instructions to prevent CPU idling.

  • RAM: Larger RAM allows more applications to reside in main memory, reducing disk access time.

Ports

  • USB/COM: Universal standard for peripherals; fast serial data transfer.

  • HDMI: High-definition video and audio on one cable.

  • VGA/DisplayPort: Video output interfaces.

Fetch-Execute (FE) Cycle and RTN

  • Register Transfer Notation (RTN):

    • [PC][PC]+1[PC] \leftarrow [PC] + 1

    • MAR[PC]MAR \leftarrow [PC]

    • MDR[[MAR]]MDR \leftarrow [[MAR]]

    • CIR[MDR]CIR \leftarrow [MDR]

  • Stages: The address in the PC is copied to the MAR. The instruction at that address is fetched via the data bus to the MDR. The MDR copies the instruction to the CIR. The CU decodes it, the PC increments, and the processor executes the command.

Interrupts

  • Signals sent by hardware or software seeking processor attention.

  • Software Causes: Division by zero, stack/buffer overflow, invalid memory access.

  • Hardware Causes: Printer out of paper, keypress, power failure.

  • Handling Process: Flag is raised; checked at the end of the FE cycle. If priority is high, registers are saved to a stack. The Interrupt Service Routine (ISR) is called. Registers are restored once the ISR completes.

  • 4.2 Assembly Language

Two-Pass Assembler

  • First Pass: Reads the code, removes comments, and builds a symbol table to map labels to addresses.

  • Second Pass: Processes the code again to generate the actual machine/object code using the symbol table.

Addressing Modes

  • Immediate: The operand is the actual data.

  • Direct: The operand is the memory address of the data.

  • Indirect: The operand is the address of the address where data is stored.

  • Indexed: Data address = Address in operand + Index Register value.

  • Relative: Data address is an offset from the current instruction address.

  • 4.3 Bit Manipulation

Shifts

  • Logical Shift: Bits shifted out are replaced by 00.

  • Arithmetic Shift: Preserves the sign bit (MSB).

  • Cyclic Shift: Bits shifted out one end re-enter the other.

Bit Masking

  • AND: Used to check if a bit is set (extract bits).

  • OR: Used to set specific bits to 11.

  • XOR: Used to clear bits or toggle values.

System Software

  • 5.1 Operating Systems

Management Tasks

  • Memory Management: Allocates RAM blocks to processes and reclaims memory when tasks finish.

  • File Management: Maintains directory structures, handles file naming, and enforces access rights (copy/delete).

  • Security Management: Manages user accounts, passwords, and firewalls.

  • Hardware Management: Communicates with peripherals via device drivers and handles buffers.

  • Process Management: Schedules the order of tasks and enables multitasking.

Utility Software

  • Disk Formatter: Prepares a disk for use by creating a file system.

  • Defragmenter: Rearrange file blocks to be contiguous, improving access speed.

  • Disk Repair: Scans for and corrects errors/bad sectors.

  • Backup: Creates regular copies of data for recovery.

  • System Clean up: Removes unwanted files to free space.

  • Virus Checker: Scans for malicious code and quarantines threats.

Program Libraries and DLLs

  • Program Library: Contains pre-written, tested subroutines that can be imported to save development time.

  • Dynamic Link Library (DLL): Library files loaded only when needed. Benefits: smaller executable files and no need to recompile the main program if the DLL is updated.

  • 5.2 Language Translators

Compiler

  • Translates high-level language into an executable file in one go.

  • Provides an error report after translation.

  • Used when the program is finished; code is protected from users.

Interpreter

  • Translates and runs code line-by-line.

  • Used during development for real-time debugging; program stops immediately at an error.

Integrated Development Environment (IDE) Tools

  • Coding: Auto-complete, auto-correct, context-sensitive prompts.

  • Error Detection: Dynamic syntax checking (underlines).

  • Presentation: Pretty printing, auto-indentation, code folding.

  • Debugging: Single stepping, breakpoints, variable report windows.

Security, Privacy, and Data Integrity

  • 6.1 Data Security

Definitions

  • Data Security: Protects data against loss and ensures recovery.

  • Data Privacy: Protects against unauthorized access.

  • Data Integrity: Ensures data accuracy and consistency.

Threats

  • Virus: Self-replicating malicious code that damages files.

  • Spyware: Records user actions and sends data to third parties.

  • Phishing: Emails pretending to be official to steal credentials via user action.

  • Pharming: Malicious code that automatically redirects users to fake websites.

Security Measures

  • Two-factor authentication and Biometrics.

  • Firewalls: Monitor and filter packets based on rules (whitelist/blacklist).

  • Digital Signatures: Use hashing and private/public keys to verify document authenticity.

  • Encryption: Converts data into ciphertext.

  • 6.2 Data Integrity

Validation Checks

  • Format check: Ensures data matches a specific pattern.

  • Length check: Ensures the correct number of characters.

  • Type check: Ensures the correct data type (e.g., Integer vs String).

  • Existence check: Ensures a required field is not empty.

Verification

  • Visual check (manual comparison) and double entry.

Error Detection during Transfer

  • Parity Check: Uses a parity bit (even or odd count of 1s1\text{s}). Parity blocks can identify the exact bit error at an intersection.

  • Checksum: A value is calculated from the data block before transmission; the receiver recalculates it and compares. If different, an error occurred.

Ethics and Ownership

Ethical Bodies (BCS, IEEE)

  • Provide guidelines for professional conduct and integrity.

  • Offer training and legal support.

Acting Ethically

  • Client Interest: Keep data private, communicate delays, and provide requested solutions.

  • Professionalism: Be truthful about skills and seek training when needed.

Software Licensing

  • Commercial: Pay-to-use; copyright protected; no editing.

  • Shareware: Free trial period; copyrighted; no redistribution.

  • Open Source: Source code is available for editing and redistribution under the same terms.

Artificial Intelligence (AI)

  • Applications: Image/Facial recognition (police), Natural Language Processing (speech), and Self-driving cars.

  • Social Impact: Privacy concerns vs. increased safety/reduced crime.

  • Economic Impact: Increased efficiency and lower costs vs. high maintenance expenses.

Databases

  • 8.1 Database Concepts

Relational vs. File-based

  • Relational Benefits: Reduced data redundancy (stored once), maintains consistency through linked tables, complex queries are easier, and data independence from software is achieved.

Key Terms

  • Entity: Object data is stored about.

  • Field: Attribute/Column.

  • Tuple: A single record/Row.

  • Primary Key: Unique identifier.

  • Foreign Key: Primary key from another table used to create a link.

  • Referential Integrity: Ensures every foreign key has a corresponding primary key; prevents incorrect deletions.

Normalisation

  • 1NF1\text{NF}: No repeating groups; fields are atomic; primary key identified.

  • 2NF2\text{NF}: In 1NF1\text{NF} and no partial key dependencies (all attributes depend on the whole primary key).

  • 3NF3\text{NF}: In 2NF2\text{NF} and no transitive dependencies (no non-key dependent fields).

DBMS Tools

  • Data Dictionary: Metadata about tables, types, and validation rules.

  • Logical Schema: Structure overview (E-R diagrams).

  • Query Processor: Software that executes SQL queries.

  • Developer Interface: Form/Report creators.

SQL (DDL & DML)

  • DDL (Data Definition Language): CREATE TABLE, ALTER TABLE, DROP COLUMN.

  • DML (Data Manipulation Language): SELECT, INSERT, UPDATE, DELETE.

  • Data Types: INTEGER, REAL, BOOLEAN, VARCHAR(n), DATE, TIME.