Notes

Key Components to How a Computer Works

RAM, CPU, + Alternate Storage Devices

What is RAM?

Random Access Memory (RAM)!

It is a type of computer memory that provides temporary storage for data and instructions that the computer is currently using. When a program or application is opened on a computer, it is loaded into the RAM. The RAM is then used by the computer’s CPU (Central Processing Unit) to store and manipulate data and instructions quickly. This is because accessing data from RAM is much faster than accessing it from the computer’s hard drive.

RAM is volatile memory, meaning that it loses its contents when the computer is turned off or restarted. This is why the computer needs to load the operating system and other programs into RAM each time it is turned on.

Note: the amount of RAM on a computer affects its performance, more RAM = better computer

What is CPU?

Central Processing Unit (CPU)!

The primary component in a computer that performs most of the processing tasks. The CPU is a microprocessor chip that is located on the computer’s motherboard. It communicates with other components in the computer system such as RAM, hard drives, and input/output devices.

The CPU carries out the instructions provided by software programs, performing arithmetic and logic operations, as well as managing input and output operations. The CPU also controls the clock speed, which is the rate at which it processes instructions The performance of a computer is often measured in terms of the speed and power of the CPU.

Note: faster CPUs with more cores and higher clock speeds can execute instructions more quickly and handle more complex tasks. Modern CPUs can perform billions of calculations per second, making them incredibly powerful and essential components of modern computing. It is often referred to as the “brain” of the computer because it is responsible for executing instructions and managing the operations of the computer.

Alternate Storage Devices

  • Hard Disk Drive (HDD): An HDD is a type of non-volatile storage device that uses magnetic disks to store data. It is commonly used to store the operating system, applications, and user data.

  • Solid-State Drive (SSD): An SSD is a type of non-volatile storage device that uses flash memory to store data. It is faster and more reliable than an HDD and is commonly used as the primary storage device in modern computers.

  • Optical Disc Drive (ODD): An ODD is a type of storage device that uses optical discs (such as CDs, DVDs, and Blu-ray discs) to store data. It is commonly used to install software, play movies, and store backups.

  • USB Flash Drive: A USB flash drive is a type of portable non-volatile storage device that uses flash memory to store data. It is commonly used to transfer data between computers or to store backups.

  • Memory Card: A memory card is a type of portable non-volatile storage device that is commonly used in digital cameras, smartphones, and other portable devices to store data such as photos and videos.

  • Cloud Storage: Cloud storage is a type of online storage that allows users to store and access their data over the internet. It is commonly used for backup and file-sharing purposes.

Notes + Definitions

Listing Specifications of your Computer, or Computers if working as Pair/Trio

  • Processor GHz: GHz (gigahertz) is a unit of frequency that is commonly used to measure the clock speed of a computer CPU. It represents the number of clock cycles that the CPU can perform in one second, and it is often used as an indicator of the CPU’s processing power.
  • Memory in GB (Gigabytes): the amount of RAM (Random Access Memory) that a computer has.
  • Storage in GB: the amount of non-volatile storage capacity that a computer has.
  • OS (Operating System): a software program that manages and controls the basic functions of a computer system. It acts as an interface between the computer hardware and the user, providing a way for users to interact with the computer and run applications.

Definitions

  • Input devices: computer hardware components that allow users to input data, commands, and instructions into a computer system. These devices enable users to communicate with the computer and interact with applications, software programs, and operating systems. Examples: keyboards, mouse, touchpad, touchscreen, scanner, microphone, joystick/controller, gamepads, digital cameras, barcode readers, etc.
  • Output devices: computer hardware components that display or output data and information from a computer system. These devices allow users to receive feedback, view results, and interact with applications, software programs, and operating systems. Examples: monitor, printer, speaker, headphones, projector, etc.
  • Program File: program files are files that contain the instructions and data necessary for a computer program or software application to run. These files are usually stored in specific directories or folders on the computer’s file system, and they may include additional resources such as images, icons, and other media. Examples: hard drive, SSD, etc.
  • Program Code: refers to the set of instructions and commands that are used to create software programs and applications. Program code is typically created by software developers, who write the code using a text editor or integrated development environment (IDE). The code is then compiled or interpreted by a software tool into a form that can be executed by a computer’s processor. This code is typically written in C++, Java, Python, or JavaScript.
  • Processes: a process refers to a program or task that is currently executing on a computer’s operating system. A process is a fundamental concept in operating system design and management, and it plays a critical role in determining the performance and functionality of a computer system. Each process is assigned a unique process identifier (PID) by the operating system, which is used to identify and manage the process. Processes can run in the background or foreground of the operating system, and they can perform a wide range of tasks, such as executing software programs, managing system resources, or responding to user input.
  • Ports: a communication endpoint used in networking to identify a specific process or application running on a computer. Ports allow different programs and services on a computer to send and receive data over a network connection.Each port is assigned a unique number, known as a port number, which is used to identify the specific process or service that is listening on that port. Port numbers range from 0 to 65535, with certain ranges reserved for specific purposes.
  • Data File: a file that contains information or data that can be read or processed by a computer program. Data files can take many different forms, depending on the type of data they contain and the format in which the data is stored. Examples: text, image, spreadsheet, audio/video, database, etc.
  • Inspect Running Code: the process of examining the execution of a computer program while it is running. There are several tools and techniques that can be used to inspect running code, depending on the programming language, operating system, and development environment being used. This can be done for a variety of purposes, such as debugging, performance tuning, or understanding how a program works.
  • Inspect Variables: the process of examining the values of variables at different points during the execution of a program. Variables are used in programming to store and manipulate data, and their values can change as a program runs. Utilized by the same examples as before.

4.1 Video Notes + Vocabulary

4.1 Daily Video 1 + Vocab

Learning Objective

☆ Explain how computing devices work together in a network.

Essential Knowledge

  • A computing device is a physical artifact that can run a program. Some examples include computers, tablets, servers, routers, and smart sensors.
  • A computing system is a group of computing devices and programs working together for a common purpose.
  • A computer network is a group of interconnected computing devices capable of sending or receiving data.
  • A computer network is a type of computing system.
  • A path between two computing devices on a computer network (a sender and a receiver) is a sequence of directly connected computing devices that begins at the sender and ends at the receiver.
  • Routing is the process of finding a path from sender to receiver.
  • The bandwidth of a computer network is the maximum amount of data that can be sent in a fixed amount of time. Bandwidth is usually measured in bits per second

Video Notes

Vocab Match-Up:

  1. Path
  2. Route
  3. Computer System
  4. Computer Device
  5. Bandwidth
  6. Computer Network

a. a sequence of directly connected computing devices that begins at the sender nd ends at the reciever. b. a group of computing devices and program sworking together for a common purpose. c. a physical artifcact that can run a program. some examples include computers, tablets, servers, routers, + smart sensors. d. the maximum amout of data that can be sent in a fixed amount of time. e. the process of finding a path from sender to reciever f. a group of interconnected computing devices capable of sending/recieving data

1 —> a
2 —> e
3 —> b
4 —> c
5 —> d
6 —> f

4.1 Daily Video 2 + Diagram

Learning Objective

Essential Knowledge

  • The internet is a computer network consisting of interconnected networks that use standardized, open (nonproprierary) communication protocols.
  • Access to the internet depends on the ability to connect a computing device to an internet connected device.
  • A protocol is an agreed-upon set of rules that specify the behavior of a system.
  • The protocols used in the internet are open, which allows users to easily connect additional computing devices to the internet.
  • Routing on the internet is usually dynamic; it is not specified in advance
  • The scalability of a system is the capacity for the system to change in size and scale to meet new demands.
  • The internet was designed to be scalable
  • Information is passed through the internet as a data stream. Data streams contain chunks of data, which are encapsulated in packets.
  • Packets contain a chunk of data and metadata used for routing the packet between the origin and the destination on the internet, as well as for data reassembly.
  • Packets may arrive at the destination in order, out of order, or not at all
  • IP, TCP and UDP are common protocols used on the internet.
  • The world wide web is a system of linked pages, programs, and files.
  • HTTP is a protocol used by the world wide web
  • The world wide web uses the internet

Notes

Drawn Diagram

4.2 Notes

4.2 Daily Video 1 Notes

Lesson Objective

Fault-Tolerant Systems:

  • Describe the benefits of fault tolerance
  • Identify the vulnerabilities to failure in a system

Essential Knowledge

  • The internet has been enginered to be fault-tolerant, with abstractions for routing and transmitting data
  • Redundancy is the inclusion of extra components that can be used to mitigate failure of a system if other components fail
  • One way to accomplish network redundancy is by having more than one path between any connected device
  • If a particular device or connection on the Internet fails, subsequent data will be sent via a different route, if possible
  • Fault-tolerant is when a system can continue to support failures and still function
  • Redundancy within a system often requires additional resources but can provide the benefit of fault tolerance
  • The redundancy of routing options between two points increases the realiability of the Internet and helps it scale to more devices and more people

Notes/Network Activity

Network Paths:

Some networks paths are linked through others in a sequential order. While other network paths are linked through many different connections from different paths. The benefit of them being linked this way is that a network will still have access to another network if one network path has an error.

4.2 Daily Video 2 Notes

Leson Objectives

Fault-Tolerant System:

  • Explain how a given system is fault tolerant

Essential Knowledge

  • The Internet has been engineered to be fault-tolerant, with abstractions for routing and transmitting data
  • Redundancy is the inclusion of extra components that can be used to mitigate failure of a system if other components fail
  • One way to accomplish network redundancy is by having more than one path between any connected devices
  • If a particular device or connection on the internet fails, subsequent data will be sent via different route, if possible
  • When a system can support failures and still continue to function, it is called fault-tolerant. This is important because elements of complex systems fail at unexpected times, often in groups, + fault tolerance allows users to continue to use the network.

Summarized Understanding of Fault Tolerance

I used chatgpt:

Fault tolerance refers to the ability of a system or component to continue functioning in the event of a failure or fault. This can be achieved through various techniques such as redundancy, error detection and correction, and graceful degradation. The goal of fault tolerance is to ensure that the system remains operational even if one or more components fail, thereby minimizing downtime, data loss, and other negative consequences. Fault tolerance is an important consideration in the design of critical systems such as aircraft, medical equipment, and financial trading systems, as well as in computer systems and networks.

My Understanding:

Fault-tolerance helps networks because it is able to continue making connections via other networks despite some path failures. Basically, it’s a life lesson about preserving but sometimes it also doesn’t work because less connection paths means path failures can lead to overall disconnection of some networks.