Systems Fundamentals
Systems Fundamentals
by Rodan Fabro
Introduction to Computer Systems
Hardware Software Data Representation
Physical components of a computer Instructions and data that tell the How data is stored and processed by
system, such as the CPU, RAM, hard hardware what to do, including the computer, using binary
drive, and peripherals. operating systems, applications, and numbers, character sets, and data
programming languages. structures.
Hardware Components
3 Device Drivers
Software that enables communication between the OS and
hardware devices.
Data Representation: Bits, Bytes, and Binary
Computers use binary system to represent data, with the smallest unit being a bit.
Number Systems
Decimal Binary
Base-10 system using digits Base-2 system using digits 0
0-9. Familiar to humans for and 1. Fundamental for
everyday counting. computer hardware.
Hexadecimal
Base-16 system using digits 0-9 and letters A-F. Convenient for
representing binary data.
Boolean Logic and Digital
Circuits
Boolean logic provides a foundation for digital circuits. This system
utilizes logical operators such as AND, OR, and NOT to represent
binary values (0 and 1).
Digital circuits are built upon these principles. Logic gates, like AND
gates and OR gates, implement Boolean operations, and these circuits
are essential for building computer components.
Instruction Set Architecture
(ISA)
Program Execution
Software programs are translated
into ISA instructions, enabling the
CPU to perform tasks.
Memory Hierarchy
Registers
1
Fastest memory, directly accessible by the CPU.
Cache
2
Small, fast memory that stores frequently used data.
RAM
3
Main memory, larger and slower than cache.
Storage
4
Slowest, but largest memory for persistent data.
Input/Output Devices and
Interfaces
Keyboard Mouse
Input device for text, commands, Input device for cursor control
and shortcuts. and selection.
Monitor Speakers
Output device for displaying Output device for sound and
visual information. audio.
Buses and Communication Protocols
1 2
Data Transfer Communication Protocols
Buses are physical pathways that facilitate data transfer between different Protocols define the rules and standards for data exchange over a network,
computer components. ensuring compatibility.
3 4
Types of Buses Protocols
Different types of buses include address, data, and control buses, each serving a Examples of protocols include TCP/IP, USB, and SATA, each optimized for
specific function. different purposes.
Process Management and Scheduling
1 Process Creation
Creating a new process involves allocating resources and assigning it a unique process ID (PID).
2 Process States
Processes transition between states like running, ready, waiting, and terminated, based on resource availability and events.
3 Process Scheduling
The operating system manages the allocation of CPU time to running processes, using scheduling algorithms to optimize resource utilization.
4 Process Communication
Inter-process communication (IPC) mechanisms, such as pipes, message queues, and shared memory, allow processes to exchange data.
5 Process Termination
When a process completes its task or encounters an error, it releases resources and is terminated by the operating system.
Memory Management and Virtual Memory
Physical Memory Virtual Memory Memory Allocation Memory Protection
The actual RAM chips in An illusion of larger Assigning memory to Preventing processes
the computer, limited by memory space, using disk processes for execution. from accessing each
hardware. space as an extension. other's memory.
File Systems and Storage
Management
Organization Access Control
File systems structure and Permissions and security
organize data on storage measures are implemented
devices, enabling efficient to protect data integrity and
access and management. prevent unauthorized access.
Storage Management
File systems optimize storage allocation, manage disk space, and
handle file operations like creation, deletion, and modification.
Concurrency and Synchronization
Multithreading
1 Allows multiple tasks to execute concurrently, enhancing performance and responsiveness.
Synchronization
2 Ensures data integrity and consistency when multiple threads access shared
resources.
Critical Sections
3 Code segments that require exclusive access to shared resources, protected
by synchronization mechanisms.
Deadlocks
4 Situations where threads block each other indefinitely, requiring
careful handling to prevent system failures.
Networking Fundamentals
Application HTTP, FTP, SMTP Provides services for applications, such as email,
web browsing, and file transfer.
Link Ethernet, Wi-Fi Provides data transfer over physical media, such
as network cables and wireless signals.
Cybersecurity Principles and Threats
Optimize Code
Improve code efficiency, reduce resource consumption, and enhance
algorithms.
Memory Management
Enhance memory allocation and usage, minimizing fragmentation and
swapping.
Hardware Upgrades
Consider upgrading components like CPU, RAM, or storage to meet
demand.
Emerging Trends and Technologies
The field of computer technology is constantly evolving, with new
innovations emerging regularly. Staying ahead of these trends is
crucial for professionals and businesses alike.