Hardware and Operating Systems Essentials - D386: Study Essentials

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/278

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

279 Terms

1
New cards

Central Processing Unit (CPU)

Often referred to as the brain of the computer, is a crucial component responsible for executing instructions from computer programs.

2
New cards

Arithmetic Logic Unit (ALU)

Function: Performs arithmetic and logical operations (addition, subtraction, multiplication, division, AND, OR, NOT, etc.).

Importance: Essential for executing mathematical calculations and decision-making processes.

3
New cards

Control Unit (CU)

Function: Directs the operation of the processor. It tells the computer's memory, ALU, and I/O devices how to respond to the instructions that have been sent to the processor.

Importance: Coordinates how data moves around the CPU and controls the flow of data between the CPU and other components of the computer.

4
New cards

Registers

Function: Small, fast storage locations within the CPU that hold data and instructions temporarily.

Importance: Provide quick access to frequently used data and instructions, enhancing processing speed.

5
New cards

Accumulator (ACC)

Stores the results of arithmetic and logical operations performed by the CPU's Arithmetic Logic Unit (ALU). It holds the intermediate results of calculations during program execution.

6
New cards

Program Counter (PC)

A special register that holds the memory address of the next instruction to be fetched and executed by the CPU.

7
New cards

Memory Address Register (MAR)

A register that holds the memory address of the data or instruction being accessed or manipulated in the computer's memory.

8
New cards

Memory Data Register (MDR)

A register that temporarily holds the data fetched from or to be written to the computer's memory.

9
New cards

Cache Memory

Function: Provides high-speed data access to the CPU, reducing the time needed to fetch data from the main memory (RAM).

Importance: Larger and faster caches can significantly improve CPU

10
New cards

L1 Cache

Proximity to CPU: Closest to the CPU cores.

Speed: Fastest among all cache levels due to its proximity and high-speed SRAM technology.

Size: Smallest in size, typically ranging from 16KB to 128KB per core.

Purpose: Primarily stores frequently accessed data and instructions to reduce latency and improve the CPU's processing speed.

Structure: Often split into two separate caches: one for instructions (L1i) and one for data (L1d).

11
New cards

L2 Cache

Proximity to CPU: Sits between the L1 cache and the main memory (RAM).

Speed: Slower than L1 but faster than L3 cache and main memory.

Size: Larger than L1, typically ranging from 256KB to several megabytes per core.

Purpose: Acts as an intermediary store between L1 and L3, holding data and instructions that are less frequently accessed than those in L1 but more frequently than those in RAM.

Structure: Can be either unified (storing both data and instructions) or split, similar to L1.

12
New cards

L3 Cache

Proximity to CPU: Shared among multiple CPU cores within the same processor.

Speed: Slower than L2 but faster than main memory.

Size: Larger than L2, typically ranging from a few megabytes to tens of megabytes, depending on the CPU architecture.

Purpose: Provides a larger, shared cache that can store data and instructions accessible by all cores, reducing the need to fetch from slower main memory.

Structure: Typically unified, storing both data and instructions.

13
New cards

Pipelining

A CPU function that Is a hardware technique to increase the instruction throughput of a CPU by overlapping instruction execution stages.

14
New cards

Stages of Pipelining

Fetch: Retrieving the instruction from memory.

Decode: Interpreting the instruction and preparing the necessary control signals.

Execute: Performing the operation specified by the instruction (e.g., arithmetic or logic operations).

Memory Access: Reading from or writing to memory, if required by the instruction.

Write Back: Writing the result back to the register file.

15
New cards

Multithreading

An application function that involves executing multiple threads within a single process concurrently, improving CPU utilization and performance for multithreaded applications.

16
New cards

Thread

The smallest unit of execution within a process. A process can contain multiple, each running independently but sharing the same resources, such as memory and file handles.

17
New cards

Resource Sharing

Threads within the same process share resources like memory and data, which can lead to more efficient use of resources.

18
New cards

Parallelism

Executing multiple threads simultaneously, which can be particularly beneficial in computationally intensive tasks.

19
New cards

Multitasking

An OS-level feature that allows multiple processes to run concurrently, providing the ability to run multiple applications simultaneously.

20
New cards

Preemptive Multitasking

The OS determines when a process should pause to allow another process to execute. It allocates time slices to each process.

21
New cards

Cooperative Multitasking

Each process voluntarily yields control to allow other processes to run. Processes must be designed to provide time to the OS.

22
New cards

RAM (Random Access Memory)

Stores data and instructions that the CPU needs quickly.

23
New cards

Asynchronous RAM (ARAM)

A type of RAM where memory operations are not synchronized to a clock signal.

Each operation (read or write) is initiated independently and can occur at any time without needing to wait for a clock edge.

24
New cards

DRAM (Dynamic Random Access Memory)

Must be refreshed periodically to preserve the stored data

Use: General purpose memory for computers and other devices

Pins: Varies, early types package with 16 of 18 pins

25
New cards

SRAM (Static Random Access Memory)

The data is not stored as charge on a capacitor, but in a pair of cross-coupled inverters, so does not need to be refreshed.

Use: Cache memory in CPUs, small amounts of fast memory

Pins: Varies

26
New cards

SDRAM (Synchronous DRAM)

A type of computer memory that is synchronized with the system bus, allowing for faster data transfer rates compared to earlier types of random-access memory (RAM)

Use: Main memory in older computers and graphics cards

27
New cards

SDR (Single Data Rate)

Pins: 168

Data Rate: One per clock cycle

Usage: Older desktop and laptop computers

28
New cards

DDR (Double Data Rate)

Pins: 184

Data Rate: Twice per clock cycle

Usage: Early 2000s desktop and laptop computers

29
New cards

DDR2

Pins: 240

Data Rate: Twice per clock cycle, but with improved speed and efficiency over DDR

Latency: Lower latency compared to DDR

Usage: Mid-2000's desktop and laptop computers

30
New cards

DDR3

Pins: 240

Data Rate: Twice per clock cycle with further improvements over DDR2

Latency: Improved latency and power efficiency compared to DDR2

Usage: Late 2000's to mid-2010's desktop, laptop computers, and servers

31
New cards

DDR4

Pins: 288

Data Rate: Twice per clock cycle with further enhancements

Latency: Improved latency and power efficiency compared to DDR3

Usage: Mid-2010's to present day desktop, laptop computers, and servers

32
New cards

DDR5

Pins: 288

Data Rate: Twice per clock cycle with significant improvements

Latency: Further improvements in latency, power efficiency, and increased density compared to DDR4

Usage: High-performance computing, modern desktop, laptop computers, and servers

33
New cards

Virtual RAM

A memory management technique used by operating systems to extend the apparent amount of RAM available to applications. This is done by using a portion of a computer's storage (such as an SSD or HDD) to simulate additional RAM.

34
New cards

Paging

The operating system divides physical memory and virtual memory into small fixed-sized blocks called pages. When the system runs out of physical RAM, it can swap inactive pages to the storage device, freeing up RAM for active processes.

35
New cards

Pagefile/Swap Space

On Windows systems, this is often referred to as a pagefile, while on Unix-like systems, it is called swap space. This file or partition on the storage device is used to store pages that are moved out of physical RAM.

36
New cards

Address Translation

The CPU uses a memory management unit (MMU) to translate virtual addresses (used by programs) into physical addresses (used by the hardware). This allows applications to use more memory than is physically available.

37
New cards

Motherboard

Also known as a mainboard, is a crucial component in any computer system. It serves as the central hub that connects various hardware components and allows them to communicate with each other.

38
New cards

Chipset

A set of integrated circuits that manage data flow between the CPU, memory, storage devices, and peripherals. It includes the Northbridge and Southbridge (or similar components in modern architectures).

39
New cards

Northbridge

Responsible for high-speed peripherals

40
New cards

CPU Socket

This is where the Central Processing Unit (CPU) is installed. The socket type (e.g., LGA1200, AM4) determines which CPUs are compatible with the motherboard.

41
New cards

RAM Slots

These slots hold the Random Access Memory (RAM) modules, providing temporary storage for data that the CPU needs to access quickly. The number and type of RAM slots vary by motherboard.

42
New cards

Expansion Slots

These slots allow you to install expansion cards such as graphics cards (PCIe), sound cards, network cards, and storage controllers. Common slot types include PCIe x16, PCIe x1, and legacy slots like PCI.

43
New cards

Integrated Graphics

Graphics processing unit integrated into the motherboard.

44
New cards

Southbridge

Responsible for the slower peripherals

45
New cards

Storage Interfaces

Motherboards come with various storage interfaces for connecting hard drives (HDDs), solid-state drives (SSDs), and optical drives. SATA (Serial ATA) and M.2 are common interfaces for modern storage devices.

46
New cards

BIOS/UEFI Chip

This chip contains the Basic Input/Output System (BIOS) or Unified Extensible Firmware Interface (UEFI), which provides the firmware interface for initializing hardware during the boot process and configuring system settings.

47
New cards

I/O Ports

These ports are located on the rear I/O panel of the motherboard and include USB ports, audio jacks, Ethernet ports, video outputs (if the motherboard has integrated graphics), and other connectors for peripherals.

48
New cards

Fan Headers

Motherboards have headers for connecting CPU fans, case fans, and other cooling devices to regulate system temperature.

49
New cards

CMOS Battery

This small battery powers the CMOS (Complementary Metal-Oxide-Semiconductor) memory, which stores BIOS/UEFI settings and system configuration even when the computer is powered off.

50
New cards

Power Connectors

Supplies power to the motherboard from the power supply unit (PSU). They include the main 24-pin ATX power connector, 8-pin EPS connector for CPU power, and additional connectors for peripherals.

51
New cards

Connectors and Headers

Various connectors and headers on the motherboard include front panel connectors (for power button, reset button, LEDs), USB headers, audio headers, and headers for additional features like RGB lighting.

52
New cards

Network Interface Controller (NIC)

Many motherboards have these integrated for Ethernet connectivity, while some high-end boards may include Wi-Fi and Bluetooth controllers.

53
New cards

ATX (Advanced Technology eXtended)

Size: Measure around 12 x 9.6 inches (305 x 244 mm).

Features: Offer plenty of space for components and expansion slots, including multiple PCIe slots, RAM slots, SATA ports, and other connectors. They are commonly used in full-sized desktop PCs and gaming rigs where expandability and performance are priorities.

54
New cards

MicroATX (mATX)

Size: Are smaller than ATX, typically around 9.6 x 9.6 inches (244 x 244 mm).

Features: Despite their smaller size, they still offer decent expandability with fewer PCIe slots and RAM slots compared to ATX. They are suitable for compact desktops or budget-friendly builds that don't require extensive expansion options.

55
New cards

Mini-ITX

Size: The smallest standard form factor, measuring about 6.7 x 6.7 inches (170 x 170 mm).

Features: Have limited space for components but can still accommodate a single PCIe slot, one or two RAM slots, and a few SATA ports. They are popular for compact and portable builds such as small form factor (SFF) PCs, HTPCs (Home Theater PCs), and gaming consoles.

56
New cards

Extended ATX (E-ATX)

Size: Larger than standard ATX, often around 12 x 13 inches (305 x 330 mm) or larger.

Features: Offer more room for additional components and features, including extra PCIe slots, RAM slots, and connectivity options. They are commonly used in high-end desktops, workstations, and gaming setups that require maximum performance and expandability.

57
New cards

Hard Disk Drive (HDD)

Uses spinning magnetic disks (platters) to store data. A read/write head moves over the surface of these platters to access or write data.

Advantages:

High storage capacity at a lower cost per gigabyte.

Suitable for storing large amounts of data that don't require high-speed access.

Disadvantages:

Slower read/write speeds compared to SSDs.

More susceptible to physical shock and damage.

Generates more heat and noise due to moving parts.

58
New cards

Solid-State Drive (SSD)

Uses NAND flash memory to store data, providing faster data access and retrieval than HDDs.

Advantages:

Faster read/write speeds.

More durable as there are no moving parts.

Lower power consumption and heat generation.

Disadvantages:

Higher cost per gigabyte compared to HDDs.

Limited write cycles, though modern SSDs have improved significantly in this aspect.

59
New cards

Network Attached Storage (NAS)

A storage device connected to a network, allowing multiple users and devices to access and share data.

Advantages:

Centralized storage for easy file sharing and collaboration.

Can be configured with RAID for data redundancy and protection.

Useful for backups and media streaming.

Disadvantages:

Network dependency, so performance can be affected by network speed and reliability.

Initial setup and configuration can be complex for non-technical users.

60
New cards

Cloud Storage

Data is stored on remote servers accessed via the internet, managed by cloud service providers.

Advantages:

Accessible from anywhere with an internet connection.

Scalable, with options to increase storage capacity as needed.

Reduces the need for physical storage hardware.

Disadvantages:

Ongoing subscription costs.

Dependent on internet access and speed.

Potential security and privacy concerns.

61
New cards

Hybrid Drive (SSHD)

Combines an HDD with a small amount of SSD storage to improve performance.

Advantages:

Faster than traditional HDDs due to the SSD cache.

More affordable than full SSDs while offering larger storage capacity.

Disadvantages:

Performance improvement is limited compared to a full SSD.

More complex technology could lead to higher failure rates.

62
New cards

External Hard Drive

Portable HDD or SSD connected to a computer via USB, Thunderbolt, or other interfaces.

Advantages:

Easy to use and transport.

Provides additional storage without opening up the computer case.

Disadvantages:

Can be lost or damaged more easily due to portability.

Typically slower than internal drives, especially for HDDs.

63
New cards

Storage Area Network (SAN)

A high-speed network that provides block-level storage to multiple servers.

Advantages:

High performance and scalability.

Centralized storage management and data protection features.

Disadvantages:

Expensive and complex to set up and maintain.

Requires specialized knowledge and equipment.

64
New cards

RAID 0

Striping

Minimum Disks: 2

Explanation: Requires a min of two disks because it stripes data across multiple disks without any redundancy. This configuration is used primarily for performance enhancement, as data is split and written simultaneously across multiple disks, improving read/write speeds.

65
New cards

RAID 1

Mirroring

Minimum Disks: 2

Explanation: Requires a minimum of two disks. Data is mirrored across two or more disks, providing redundancy. If one disk fails, the data can still be accessed from the mirrored disk(s). Sacrifices storage capacity for data protection.

66
New cards

RAID 5

Striping with Parity

Minimum Disks: 3

Explanation: Requires a min of three disks. It uses striping for performance and distributes parity across all disks in the array for redundancy. If one disk fails, the parity information allows for data reconstruction. Offers a balance between performance, storage efficiency, and fault tolerance.

67
New cards

RAID 6

Striping with Double Parity

Minimum Disks: 4

Explanation: Needs a min of four disks. It is similar to RAID 5 but provides an additional level of fault tolerance by using dual parity. This means it can withstand the simultaneous failure of up to two disks without data loss. Is suitable for applications that require high fault tolerance.

68
New cards

RAID 10

Mirroring + Striping

Minimum Disks: 4

Explanation: Combines mirroring (RAID 1) and striping (RAID 0). It requires a min of four disks arranged in pairs, where each pair is mirrored, and data is striped across these mirrored pairs. Provides both redundancy (through mirroring) and performance benefits (through striping).

69
New cards

IaaS (Infrastructure as a Service)

Provides virtualized computing resources over the internet.

Software Examples: Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP), IBM Cloud.

System Examples: Virtual machines (VMs), storage services, networking resources, and other infrastructure components provided by IaaS providers.

70
New cards

PaaS (Platform as a Service)

Offers platforms and tools for application development and deployment.

Software Examples: Heroku, Google App Engine, Microsoft Azure App Service, AWS Elastic Beanstalk.

System Examples: Development frameworks, database management systems, application hosting environments, and other tools and services for developers to build, deploy, and manage applications without managing the underlying infrastructure.

71
New cards

SaaS (Software as a Service)

Delivers software applications over the internet on a subscription basis.

Software Examples: Salesforce, Google Workspace (formerly G Suite), Microsoft Office 365, Dropbox.

System Examples: Fully functional software applications delivered over the internet on a subscription basis, allowing users to access and use the software without needing to install or manage it locally.

72
New cards

DaaS (Desktop as a Service)

Virtual desktop infrastructure provided over the internet.

Software Examples: Citrix Virtual Apps and Desktops, VMware Horizon Cloud, Microsoft Windows Virtual Desktop.

System Examples: Virtual desktop infrastructure (VDI) solutions that provide users with virtual desktop environments hosted and managed in the cloud, allowing access to desktops and applications from any device with an internet connection.

73
New cards

LAMP Stack

Linux: Operating system

Apache: Web server

MySQL: Database management system

PHP: Server-side scripting language

Common Use: Traditional web development stack, popular for PHP-based applications.

74
New cards

WAMP Stack

Windows: Operating system

Apache: Web server

MySQL: Database management system

PHP: Server-side scripting language

Common Use: Similar to LAMP but used in Windows environments.

75
New cards

MEAN Stack

MongoDB: NoSQL database

Express.js: Web application framework for Node.js

AngularJS or Angular: Frontend JavaScript framework

Node.js: JavaScript runtime environment

Common Use: Modern web development stack using JavaScript across the entire application.

76
New cards

MEVN Stack

MongoDB: NoSQL database

Express.js: Web application framework for Node.js

Vue.js: Frontend JavaScript framework

Node.js: JavaScript runtime environment

Common Use: Similar to MEAN but uses Vue.js for the frontend instead of Angular. More similar to MEAN than MERN.

77
New cards

MERN Stack

MongoDB: NoSQL database

Express.js: Web application framework for Node.js

React: Frontend JavaScript library

Node.js: JavaScript runtime environment

Common Use: Similar to MEAN but uses React for the frontend instead of Angular.

78
New cards

HTML (Hypertext Markup Language)

Used for creating the structure of web pages.

79
New cards

CSS (Cascading Style Sheets)

Used for styling the appearance of web pages.

80
New cards

JavaScript

A scripting language used for adding interactivity and dynamic content to web pages.

81
New cards

TypeScript

A superset of JavaScript that adds static typing and other features.

82
New cards

React

A JavaScript library for building user interfaces.

83
New cards

Angular

A TypeScript-based framework for building web applications.

84
New cards

Vue.js

A progressive JavaScript framework for building user interfaces.

85
New cards

Bootstrap

A front-end framework for designing responsive and mobile-first websites.

86
New cards

Sass (Syntactically Awesome Style Sheets)

A CSS preprocessor that adds features like variables, mixings, and nesting.

87
New cards

PHP

A server-side scripting language commonly used for web development.

88
New cards

Python

A versatile language used for web development, data science, automation, and more.

89
New cards

Django

A high-level Python web framework that encourages rapid development and clean, pragmatic design.

90
New cards

Ruby

A dynamic, object-oriented language often used with the Ruby on Rails framework for web development.

91
New cards

Java

A widely-used language for building enterprise-level applications, including web applications.

92
New cards

Spring

A powerful Java application framework for building enterprise-level applications.

93
New cards

C#

A language developed by Microsoft, commonly used for building Windows applications and web services.

94
New cards

Node.js

While JavaScript is primarily a frontend language, this allows it to be used for server-side development.

95
New cards

Go (Golang)

A language developed by Google known for its simplicity, concurrency support, and performance.

96
New cards

Scala

A language that combines object-oriented and functional programming paradigms, often used in big data processing with frameworks like Apache Spark.

97
New cards

Swift

Developed by Apple, used for iOS, macOS, watchOS, and tvOS app development.

98
New cards

Kotlin

A modern language used for Android app development, also interoperable with Java.

99
New cards

IntelliJ IDEA

Code Used: Java

Features: Most User Friendly

100
New cards

Visual Studio

Code Used: Anything from HTML to C++

Features: Used to develop websites, web apps and mobile apps