Untitled Flashcards Set

Comprehensive Study Guide for AP Computer Science Principles: Big Idea

4 - Computer Systems and Networks

Key Topics & Explanations

1. The Internet

Definition: The Internet is a global network of interconnected networks that use open

protocols to communicate.

Key Components:

Computing Devices: Examples include computers, tablets, routers, and sensors

that can run programs.

Networks: A computer network is a group of devices capable of sending and

receiving data.

Routing: Routing is the process of finding a path for data from a sender to a

receiver. This process is dynamic, ensuring efficient communication.

How Data is Transferred:

Packets: Information is broken into smaller chunks (packets) for transmission.

Metadata: Packets include metadata like the destination address, which helps

them navigate the network.

Challenges: Packets may arrive out of order or be lost; protocols like TCP

ensure reliable reassembly.

Key Protocols:

TCP/IP: Protocols that allow reliable communication over the Internet.

HTTP: Protocol used for transferring web pages on the World Wide Web.

Scalability:

The Internet is designed to grow by adding more devices or networks, ensuring it

meets increasing demands.

2. Fault Tolerance

Definition: Fault tolerance is the ability of a system to continue operating even if some

components fail.

Key Concepts:

Redundancy: Extra components (e.g., alternate network paths) are included to

mitigate failures.

Routing Resilience: If one route fails, data can take another path, ensuring

continued functionality.

Benefits of Fault Tolerance:

Increased reliability, ensuring systems are operational even during failures.

Reduces downtime, which is critical for essential services like banking and

healthcare.

Trade-offs:

Fault tolerance requires additional resources, such as extra hardware or storage.

Real-world Example:

If a router fails in a network, the system reroutes data through another available

path, ensuring users don’t experience interruptions.

3. Parallel and Distributed Computing

Definitions:

Sequential Computing: Operations are performed one at a time, step by step.

Parallel Computing: Tasks are divided into smaller operations that run

simultaneously.

Distributed Computing: Tasks are divided across multiple devices, allowing for

large-scale problem-solving.

Efficiency:

Sequential Solution Time: The sum of all steps.

Parallel Solution Time: The sum of sequential steps plus the time for the

longest parallel task.

Speedup Formula: Speedup = Sequential Time ÷ Parallel Time.

Benefits:

Solves complex problems faster.

Handles large data sets effectively.

Challenges:

Limited by the sequential portion of the task.

Requires coordination between devices in distributed computing.

Real-world Example:

Weather forecasting uses distributed computing, with data processed by multiple

computers to provide accurate predictions.

Key Vocabulary

1. Computing Device: Physical objects capable of running programs (e.g., routers,

tablets).

2. Computer System: A collection of devices and programs working together.

3. Bandwidth: Maximum amount of data that can be sent over a network in a fixed amount

of time.

4. Packet Switching: Breaking data into smaller chunks for efficient transmission.

5. Fault Tolerance: The ability to continue functioning despite failures.

6. Redundancy: Extra components that ensure reliability.

7. Protocol: Agreed rules for data transmission, such as TCP/IP.

8. Scalability: The ability of a system to handle growth in size and demand.

9. Sequential Computing: Tasks are completed in a specific order, one at a time.

10. Parallel Computing: Tasks are split and run simultaneously for greater efficiency.

11. Distributed Computing: Tasks are divided among multiple devices.

Essential Knowledge

1. Internet Functionality:

Data travels through networks using dynamic routing.

Protocols ensure reliable communication.

2. Fault Tolerance:

Systems can reroute data when components fail.

Redundancy ensures continuous functionality.

3. Computing Models:

Sequential solutions are slower for complex problems.

Parallel and distributed models solve problems more efficiently but have

limitations.