Computer Components and Operating Systems
Computer Components and Operating Systems
- Computers perform four basic functions:
- Input: Receiving information.
- Storage: Storing information.
- Processing: Processing information.
- Output: Outputting information.
- These functions are handled by different components:
- Input devices: Convert external data into binary.
- Memory: Stores data.
- CPU (Central Processing Unit): Performs calculations.
- Output devices: Convert binary data into physical output.
- Convert input from the outside world into binary information.
- Examples:
- Keyboard
- Touchpad
- Camera
- Microphone
- GPS
- Sensors (car, thermostat, drone)
- Pressing a key (e.g., 'B') converts it to a number.
- The number is sent to the computer as binary (1s and 0s).
- The CPU calculates how to display the letter pixel by pixel.
- The CPU fetches instructions from memory on how to draw 'B'.
- The CPU executes instructions and stores the pixel data in memory.
- Pixel data is sent as binary to the screen.
- The screen converts binary signals into light and color to display the letter.
- Thousands of instructions are executed for each letter.
Output Devices
- Convert binary signals into physical actions.
- Examples:
- Screen: Displays visual output.
- Speaker: Plays sound.
- 3D printer: Creates physical objects.
- Robotic arm: Controls motion.
- Motors: Controls movement in vehicles or machines.
- Milling machine: Cutting tools.
Processing Power and Memory
- More complex tasks require more processing power and memory.
- Modern computers may have multiple CPUs and gigabytes of memory.
- Every action involves:
- Inputting data.
- Storing and processing data.
- Outputting results.
CPU Architecture: 32-bit vs. 64-bit
- Modern OS are commonly 64-bit, while older systems may use 32-bit architectures.
- The architecture refers to the CPU's capabilities.
- 32-bit Processors
- Can access up to 232 values.
- This is equivalent to just over 4 billion values.
- Can access a maximum of 4 gigabytes of memory.
- 64-bit Processors
- Can access up to 264 values, a dramatically larger amount of data.
- Can theoretically access 17 billion gigabytes of information.
- 264. is equal to 18,446,744,073,709,551,616 bytes which divided by 1024 seven times (to convert it to gigabytes) becomes 16 exabytes.
- Operating systems often have a maximum supported memory value.
Determining System Type in Windows
- Check the system type in the Control Panel under System settings.
- It will display whether the OS is 32-bit or 64-bit and the processor type (x64-based).
Driver Compatibility
- Hardware drivers must match the OS type.
- Use 32-bit drivers for 32-bit OS.
- Use 64-bit drivers for 64-bit OS.
- 32-bit software is sometimes abbreviated as x86, referring to the Intel 8086 line of processors.
- 64-bit processors are abbreviated as x64.
Application Compatibility
- A 32-bit OS cannot run 64-bit applications.
- A 64-bit OS can run both 64-bit and 32-bit applications.
- To determine if an application is 32-bit or 64-bit in Windows, check its installation location:
- 32-bit apps are typically installed in "Program Files (x86)".
- 64-bit apps are installed in "Program Files".
ARM Architecture
- ARM (Advanced RISC Machine) is an architecture designed by ARM Limited.
- Third parties use ARM specifications to create ARM-based CPUs.
- Known for efficiency and speed, using less power and creating less heat.
- Commonly used in mobile devices and IoT (Internet of Things) devices.
- ARM capabilities are expanding, blurring the lines between traditional 64-bit and ARM-based systems.
CPU Internals: Cores and Caches
- A CPU contains multiple individual components.
- The processor core is where the main processing occurs.
- Modern CPUs often have multiple cores (dual-core, quad-core, multi-core) on a single physical package.
- Multiple cores may have dedicated or shared caches.
- Caches speed up data processing in and out of the CPU.
- CPUs often have integrated memory controllers and graphics processors.
CPU Monitoring and Hyper-Threading
- CPU monitoring tools (e.g., Windows Task Manager) can show processing activity.
- Hyper-threading (HTT) makes a single physical CPU core appear as multiple virtual cores.
- HTT increases throughput by 15-30%.
- Both the CPU and OS must support hyper-threading.
Virtualization
- CPUs often include hardware to virtualize additional operating systems.
- Allows running multiple OS instances (e.g., Windows, Linux) on a single machine.
- Virtualization is resource-intensive, so functionality is integrated into CPU hardware.
- Intel CPUs use Intel Virtualization Technology (VT).
- AMD CPUs use AMD Virtualization (AMD-V).
- Virtualization software may require enabling these features in the BIOS.
Random Access Memory (RAM)
- RAM is high-speed temporary storage used by applications and documents when they are loaded.
- This is distinct from SSD or hard drive storage.
- Only able to use apps and documents when their data is loaded into memory.
Memory Modules (DIMMs and SODIMMs)
- Modern computers use the same type of memory slots.
- Designed for fast data transfer between memory modules and the CPU.
- Motherboard documentation specifies the correct memory type.
- DIMM (Dual Inline Memory Module)
- Connectors on each side of the module are different.
- Transfers data in 64-bit widths.
- SODIMM (Small Outline Dual Inline Memory Module)
- About half the width of a DIMM.
- Used in laptops and mobile devices.
RAM Characteristics
- The black components on memory modules are RAM chips.
- DRAM (Dynamic Random Access Memory)
- Requires constant refreshing to retain data.
- Requires continuous power to maintain data.
- Random Access
- Any data location can be accessed directly without fast-forwarding or rewinding.
- Synchronous
- Data flow is regulated by a system clock.
- Data is transferred in or out of the system during each clock cycle.
Memory Module Notches
- Notches on the bottom of the module prevent using the wrong memory type.
- Example: Prevents installing a DDR2 module in a DDR3 slot.
Data Rate: Single Data Rate (SDR) vs. Double Data Rate (DDR)
- SDR (Single Data Rate)
- Transfers one bit of data per clock cycle.
- DDR (Double Data Rate)
- Transfers twice the amount of data in a single clock cycle.
DDR Generations: DDR3, DDR4, DDR5
- DDR3
- Improved over DDR2.
- Doubled the data rates of DDR2.
- Maximum of 16 GB of RAM per module.
- Not backwards compatible with other DDR versions.
- DDR4
- Increased speed over DDR3.
- Maximum of 64 GB of RAM per module.
- Not backwards compatible with other DDR versions.
- DDR5
- Faster throughput than DDR4.
- Maximum of 64GB Ram. can potentially reach 128 GB for UDIMM.
- Not backwards compatible with other DDR versions.
- Key/notch location has changed
Operating Systems: The Foundation of Computing
- An OS ties together hardware components: memory, storage, CPU, peripherals.
- It provides a standard platform for application developers.
- Provides a user interface (UI) for human interaction.
Common OS Functions
- File management: adding, removing, renaming, and changing files.
- Application execution: Managing memory and CPU resources.
- Input/Output (I/O): Managing data flow through printers, keyboards, storage devices, USB drives etc.
- Management and configuration tools.
Microsoft Windows
- One of the most popular operating systems.
- Versions: Windows 10, Windows 11, Windows Server.
- Advantages
- Extensive industry support.
- Wide application availability.
- Customization tools.
- Disadvantages
- Frequent malware and spyware attacks due to its popularity.
- Requires hardware drivers compatible with the specific Windows version.
Linux
- A Unix-like operating system that is open source and free to use.
- Many distributions are available.
- General-use desktop OS.
- Specialized function-specific versions.
- Advantages
- Free of charge; no licensing costs.
- Runs on almost any hardware.
- Extensive community support.
- Disadvantages
- May lack hardware drivers, especially for specialized hardware.
- Limited formal support options; relies on community support.
macOS
- The desktop operating system for Apple hardware.
- Advantages
- User-friendly and easy to use.
- Highly compatible with macOS applications.
- Secure due to Apple's closed system.
- Disadvantages
- Potential lack of device drivers for specific hardware.
- Higher hardware costs compared to other platforms.
Chrome OS
- An operating system made by Google.
- Based on the Linux kernel and designed for low-end platforms.
- Relies heavily on the Chrome browser and web-based applications.
- Designed to run on systems with minimal hardware requirements.
- Many applications run in the cloud.
iPadOS
- A variant of iOS created specifically for the tablet environment.
- Features include a desktop-class browser with Safari.
- Supports Sidecar for using the iPad as a second monitor.
- Supports keyboard and mouse input.
- Supports multitasking for running multiple applications simultaneously.
iOS
- Apple's operating system for the iPhone platform.
- Based on Unix and designed exclusively for iPhones.
- Apps are developed using a Software Development Kit (SDK) on macOS.
- Apple thoroughly checks and approves apps before deployment to the App Store.
Android OS
- Google's open-source operating system based on Linux.
- Supported by many hardware manufacturers.
- Android apps are written in Windows, macOS, and Linux using the Android SDK.
- Apps can be downloaded from the Google Play Store and third-party sites like the Amazon App Store.
OS Updates and Compatibility
- Operating systems receive automatic updates, including bug fixes, security patches, and enhancements.
- Certain data files can be shared between operating systems e.g. word processing documents or video files.
- Applications must be built for the specific operating system.
- Web-based applications can be used across different operating systems via a browser.