[SAWD] 2018 March 16th
TOC
Computer Fundamentals
Core Elements
- Central Processing Unit:
- Control Unit
- Arithmetic Logic Unit
- Memory Management Unit
- Registers
- Memory
- Input/Output
- Storage
CPU Architecture
- RISC / CISC: ARM, IBM PowerPC / Intel, AMD
- Bits: 32 -> 64
Metric Prefix
- e.g.
GiB
vsGB
Clock Rates
How many clock cycles in 1 second. - CPU > Memory
Memory
- SRAM vs DRAM
- Memory Comparison
Storage | Speed | Volume |
---|---|---|
Register | Fastest | Smallest |
L1 Cache | 2 | 4 |
L2 Cache | 3 | 3 |
L3 Cache | 4 | 2 |
Main Memory | Slowest | Largest |
Storage
Interfaces
Storage Partition
Master Boot Record1
- Can only have at most 4 primary partitions.
- 2 TiB storage limit
- Maximum disk sector size: 512 bytes
- First sector: base partition table, bootstrap code
GUID Partition Table2
- 2 ZiB storage limit
- Common sector size: 4 KiB, 512 bytes
- Has a secondary GPT header in case the primary one is broken.
System Structure Overview
- Linux, BSD: Monolithic kernel3
- Real-time systems: Micro kernel4
- Windows NT(Windows 10…), XNU(macOS…): Hybrid Kernel5
Linux Backgrounds
Author
Linus Torvalds
Time line
- 1971: Unix published
- 1977: BSD released, based on Unix v6
- 1983: GNU project started
- 1987: Minix released, Unix-like
- 1991: Linux released, Unix-like
- 1995: Free Software Foundation established
License
Specifically, GNU GPLv2
Free software definition:
- The freedom to run the program as you wish, for any purpose (freedom 0).
- The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1). Access to the source code is a precondition for this.
- The freedom to redistribute copies so you can help your neighbor (freedom 2).
- The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this.
Linux Branches
- Mainline: constantly under development.
- Stable: a version of mainline which is considered stable. Will be maintained for a period.
- Longterm: just as stable, but will be maintained for a long time.
- EOL: end of life.