Computer Hardware and Software Principles
Computer Hardware Fundamentals
- Definition: Computer hardware encompasses physical machinery and digital circuitry used for input, processing, storage, and output activities in an information system.
- Business Purpose: Organizations invest in hardware to increase worker productivity, boost revenue, reduce operational costs, enhance customer service, speed up time-to-market, and facilitate employee collaboration.
- System Selection: Hardware acquisition requires balancing system performance against cost, control, and complexity while aligning hardware choices with organizational and information system objectives.

Central Processing Unit (CPU) Architecture & Processing
- CPU Components:
- Arithmetic/Logic Unit (ALU): Executes mathematical calculations and logical comparisons.
- Control Unit: Sequentially retrieves program instructions, decodes them, and coordinates data movement across the ALU, registers, primary memory, and secondary storage.
- Registers: High-speed memory locations within the CPU used to temporarily hold instructions and data immediately before, during, and after execution.
- Machine Cycle: Consists of two primary phases:
- Instruction Phase: Includes fetching the instruction from memory (Step 1) and decoding it (Step 2).
- Execution Phase: Includes executing the instruction (Step 3) and storing the output in registers or memory (Step 4).
- Pipelining: A technique that speeds execution by overlapping instruction fetch, decode, and execution stages.

- Performance Metrics:
- Machine Cycle Time: Measured in nanoseconds (10−9s) for personal computers, picoseconds (10−12s) for mainframes, and femtoseconds (10−15s) for supercomputers. Also measured in MIPS (millions of instructions per second).
- Clock Speed: Paced by internal electronic pulses, measured in Megahertz (MHz, millions of cycles per second) or Gigahertz (GHz, billions of cycles per second).
- Bus Architecture: The System Bus links the CPU to main memory, while the Expansion Bus connects add-on cards and peripheral devices. Wider bus widths (e.g., 64-bit) enable higher data throughput.
Memory & Advanced Processing Topologies
- Primary Storage Types:
- Random Access Memory (RAM): Volatile main memory holding active program instructions and data; each byte possesses a unique address.
- Read-Only Memory (ROM): Nonvolatile storage providing permanent instructions (such as boot code).
- Cache Memory: Extremely fast memory storing frequently accessed data. Includes Level 1 (L1, on CPU chip), Level 2 (L2, dedicated high-speed interface), and Level 3 (L3, external near CPU).
- Storage Measurement Units:
- Byte (B): 1byte
- Kilobyte (KB): 210bytes (1,024bytes)
- Megabyte (MB): 220bytes (1,024KB)
- Gigabyte (GB): 230bytes (1,024MB)
- Terabyte (TB): 240bytes (1,024GB)
- Petabyte (PB): 250bytes (1,024TB)
- Processing Paradigms:
- Multiprocessing: Simultaneous execution of multiple instructions, often utilizing specialized coprocessors (such as GPUs) or multicore microprocessors on a single chip.
- Parallel Computing: Simultaneous execution of a single task across multiple processors.
- Massively Parallel Processing: Connects hundreds or thousands of processors, each with dedicated bus, memory, and OS.
- Grid & Cloud Computing: Grid computing coordinates distributed networks of computers; Cloud computing provides high-performance computing on shared cluster infrastructure over the Internet.
Secondary Storage Technologies
- Access Methods:
- Sequential Access (SASD): Data must be written and retrieved sequentially (e.g., magnetic tape used for backups).
- Direct Access (DASD): Records are accessed directly in any order (e.g., magnetic disk/hard disk).
- Storage Media:
- Magnetic Disks & RAID: Redundant Array of Independent Disks (RAID) combines multiple disks for performance and redundant storage (disk mirroring).
- Solid State Drives (SSDs): Uses integrated circuit memory chips without moving parts; offers higher speed and durability but higher cost per gigabyte than traditional hard drives.
- Optical Disks: Uses lasers to write and read data; includes CD-ROM, DVD, and Blu-ray formats.
- Enterprise Storage Configurations:
- Attached Storage: Drives connected directly to a single machine; simple but lacks shared network access.
- Network-Attached Storage (NAS): Dedicated hard disk storage with its own network address providing file sharing and file management services.
- Storage Area Network (SAN): High-speed, dedicated network linking enterprise computers directly to heterogeneous storage devices.
- Storage as a Service: Cloud-based pay-as-you-go model providing scalable online storage capacity.
- Input Hardware: Keyboards, pointing devices, speech recognition software, digital cameras, scanning devices (OMR/Scantron, OCR), pen input, Magnetic Ink Character Recognition (MICR) on checks, Point-of-Sale (POS) terminals, bar-code readers, and Radio Frequency Identification (RFID) tags.
- Output Hardware:
- Displays: Flat-panel screens including Liquid Crystal Display (LCD), Light-Emitting Diode (LED), Organic LED (OLED), and Plasma.
- Hard-Copy Devices: Laser printers, inkjet printers, multi-function printers, 3D printers, and plotters.
- Single-User Systems:
- Portable: Smartphones/handhelds, laptops, notebooks/ultrabooks, tablets, netbooks.
- Nonportable: Desktop computers, thin clients (centrally managed with low local storage), nettops, and workstations (high-performance desktop machines for engineering and CAD).
- Multi-User Systems:
- Servers: Multiuser systems running dedicated tasks; includes compact blade servers housing multiple motherboards in a single chassis.
- Mainframes: Centralized enterprise machines providing massive processing power, high security, and high reliability; legacy jobs transitioning to smaller machines is termed computer downsizing.
- Supercomputers: High-performance machines designed for scientific computing and complex calculations, measured in PetaFLOPS (1×1015FLOPS).
- Data Centers & Green Computing:
- Virtual Servers: Utilizes hypervisors to split physical host server resources into multiple virtual guest machines to increase hardware utilization.
- Green Computing: Focuses on environmentally responsible design, operation, and disposal of hardware; rated via EPEAT tiers (Bronze, Silver, Gold) following IEEE 1680 standards.

Systems & Application Software Frameworks
- Software Classifications:
- Systems Software: Coordinates hardware components and supports application programs; consists of operating systems, utility programs, and middleware.
- Application Software: Programs designed to help users solve specific operational problems and perform tasks.
- Spheres of Influence:
- Personal: Productivity applications for individual users (e.g., word processors, spreadsheets).
- Workgroup: Collaborative software for groups working toward shared goals (e.g., email, scheduling, version control).
- Enterprise: Organization-wide software managing enterprise interactions and supply chains (e.g., Enterprise Resource Planning / ERP).
Operating System Functions & Components
- Core OS Functions:
- Kernel: The central core of the OS controlling critical system processes and hardware interactions.
- User Interface: Provides interaction modes via Command-line, Menu-driven, Graphical User Interface (GUI), or Natural Language/Voice interfaces (e.g., SAPI, Siri).
- Hardware Independence: Applications request services via Application Program Interfaces (APIs), enabling programs to run on hardware without low-level machine awareness.

- Memory Management: Manages physical RAM and virtual memory; swaps program segments between disk and RAM using paging to reduce idle CPU time.
- Task Management: Manages execution modes including multitasking, multithreading, time-sharing, real-time processing, and multiprocessing across scalable architectures.
- File & Security Management: Tracks secondary storage locations, manages file access permissions, and enforces network security settings.
- Utility Programs: Perform system maintenance, data compression, disk cleanup, archiving, and virus protection.
- Middleware: Software connecting disparate systems to facilitate communication; provides Enterprise Application Integration (EAI) and Service-Oriented Architecture (SOA).
Application Software Acquisition & Software Trends
- Acquisition Approaches:
- Proprietary Software: One-of-a-kind custom programs meeting exact business requirements; offers maximum control but entails higher development costs, time, and risks.
- Off-the-Shelf Software: Pre-built commercial software; lower initial cost and proven quality, but may include unused features or lack specific functionality.
- Software as a Service (SaaS): Web-hosted software accessed via subscription or usage-based pricing in cloud environments.
- Generations of Programming Languages:
- 1st Generation: Machine language (binary digits, e.g.,
00010101). - 2nd Generation: Assembly language (mnemonics, e.g.,
MVC). - 3rd Generation: High-level procedural languages (e.g.,
READ SALES). - 4th Generation: Query and database languages (e.g., SQL statements).
- Software Issues & Industry Trends:
- Software Bugs: Deficiencies in code mitigated by registering products, installing patches, and reviewing read-me files.
- Licensing: Software purchase grants usage licenses (single-user or multi-user) rather than source code ownership.
- Open-Source Software: Software provided with free access to source code for modification (e.g., Linux); offers flexibility but lacks vendor-backed support warranties.