📖 第一章 · 计算机基础与操作系统
计算机基础与操作系统
涵盖计算机硬件组成、系统性能指标、操作系统进程与内存管理、文件I/O、网络体系结构与核心协议,是架构师的底层知识基石。本章在综合知识部分约占4%-9%。
8知识模块
4%-9%分值占比
45+核心知识点
★★★★重要程度
计算机硬件组成
计算题高频🧠CPU组成
运算器(ALU):执行算术与逻辑运算。包含累加寄存器(AC)、数据缓冲寄存器(DR)、状态条件寄存器(PSW)
控制器(CU):控制各部件协调工作。包含指令寄存器(IR)、程序计数器(PC)、地址寄存器(AR)、指令译码器(ID)
💾存储层次体系
层次结构:寄存器 → 高速缓存(L1/L2/L3 Cache) → 主存(内存) → 辅存(磁盘/SSD)。速度递减、容量递增
Cache映射方式:①直接映射(简单但冲突率高) ②全相联映射(灵活但查表慢) ③组相联映射(折中,最常用)
局部性原理:时间局部性(重复访问同一数据)+ 空间局部性(访问相邻数据),是Cache存在的基础
存储层次体系结构
寄存器(Register)— 速度最快,容量最小
高速缓存 Cache(L1 / L2 / L3)
主存(内存 RAM)
辅存(磁盘 / SSD / 磁带)
↑ 速度递减 —— 容量递增 ↓
🏭流水线技术
基本概念:将指令执行过程分解为多个阶段,各阶段并行工作。典型五段:取指(IF)→译码(ID)→执行(EX)→访存(MEM)→写回(WB)
流水线周期:等于各段中最长的一段所用时间
吞吐率:TP = 指令条数 / 总执行时间
加速比:S = 不使用流水线时间 / 使用流水线时间
流水线冲突:结构冲突(资源竞争)、数据冲突(数据依赖)、控制冲突(分支跳转)
五段流水线执行示意图
取指 IF
译码 ID
执行 EX
访存 MEM
写回 WB
各阶段并行工作,流水线周期 = 最长阶段耗时
💿RAID磁盘阵列
| 级别 | 最少磁盘数 | 冗余 | 读性能 | 写性能 | 可用空间 |
|---|---|---|---|---|---|
| RAID 0 | 2 | 无 | 高(条带) | 高 | 100% |
| RAID 1 | 2 | 镜像 | 高 | 一般 | 50% |
| RAID 5 | 3 | 分布式奇偶校验 | 高 | 中(需计算校验) | (n-1)/n |
| RAID 6 | 4 | 双重校验 | 高 | 较低 | (n-2)/n |
| RAID 10 | 4 | 镜像+条带 | 很高 | 中 | 50% |
常考公式:流水线执行时间 = 第一条指令完整执行时间 + (n - 1) × 流水线周期。其中 n 为指令总条数。Cache 命中率 = 命中次数 / 总访问次数,有效访问时间 = 命中率 × Cache访问时间 + (1-命中率) × 主存访问时间。
系统性能指标
概念辨析⏱️性能指标详解
| 指标 | 定义 | 说明 |
|---|---|---|
| 时钟频率 | CPU主频 = 外频 × 倍频 | 决定CPU基本运算速度 |
| MIPS | 每秒百万条指令数 | MIPS = 主频 / (CPI × 10⁶),CPI为每条指令平均时钟周期数 |
| 吞吐量 | 单位时间内系统处理请求的数量 | 衡量系统整体处理能力 |
| 响应时间 | 从发出请求到获得响应的时间 | 用户感知指标,包括等待时间+处理时间 |
| MTBF | 平均无故障时间 | MTBF = MTTF + MTTR,越大越可靠 |
| MTTR | 平均修复时间 | 越小越好,反映系统恢复能力 |
| 可用性 | A = MTBF / (MTBF + MTTR) | 99.9% ≈ 8.76小时/年宕机 |
记忆口诀:MTBF是"多久坏一次",MTTR是"坏了修多久",可用性 = 正常时间 / 总时间。99.99%可用性意味着每年宕机不超过约52.6分钟。
操作系统 · 进程管理
高频考点📊进程状态模型
三态模型:就绪(Ready)→ 运行(Running)→ 阻塞/等待(Blocked)。就绪→运行(调度),运行→就绪(时间片到),运行→阻塞(等待I/O),阻塞→就绪(I/O完成)
五态模型:在三态基础上增加创建态(New)和终止态(Terminated),更完整描述进程生命周期
七态模型:在五态基础上增加就绪挂起和阻塞挂起,用于虚拟内存场景
进程三态转换图
就绪
Ready
Ready
→
调度
运行
Running
Running
→
I/O请求
阻塞
Blocked
Blocked
运行→就绪(时间片到)| 阻塞→就绪(I/O完成)
📋进程调度算法对比
| 算法 | 是否抢占 | 是否饥饿 | 适用场景 | 特点 |
|---|---|---|---|---|
| FCFS | 否 | 否 | 批处理 | 简单公平,但对短作业不利 |
| SJF/SPF | 否/是 | 是(长作业) | 批处理 | 平均等待时间最短 |
| 优先级 | 可抢占/不可 | 是(低优先级) | 实时系统 | 高优先级先执行 |
| RR(时间片轮转) | 是 | 否 | 分时系统 | 时间片公平分配,响应快 |
| 多级反馈队列 | 是 | 否 | 通用系统 | 综合最优,兼顾各类进程 |
💀死锁
四个必要条件:①互斥条件 ②占有并等待 ③非抢占条件 ④循环等待。四个条件同时满足才会发生死锁
死锁预防:破坏四个必要条件之一(如一次性申请所有资源破坏占有并等待)
死锁避免:银行家算法,在资源分配前检查是否处于安全状态
死锁检测与恢复:资源分配图检测,恢复方法有资源剥夺、进程撤销、进程回退
🔒PV操作与信号量
信号量(Semaphore):整型变量,P操作(wait/减1)用于申请资源,V操作(signal/加1)用于释放资源
互斥信号量:初值为1,用于实现临界区互斥访问
同步信号量:初值为0,用于进程间同步协调
消费者-生产者问题:经典PV操作应用题,需要互斥信号量+两个同步信号量
🧵线程 vs 进程
| 对比项 | 进程 | 线程 |
|---|---|---|
| 资源分配 | 基本单位 | 共享进程资源 |
| 调度单位 | 否 | 是(CPU调度基本单位) |
| 地址空间 | 独立 | 共享所属进程 |
| 创建/切换开销 | 大 | 小 |
| 通信方式 | IPC(管道/消息队列/共享内存) | 直接读写共享变量 |
| 独立性 | 强 | 弱(一个线程崩溃可能影响全进程) |
死锁记忆口诀:"互占有循"——互斥、占有并等待、非抢占(占有)、循环等待。预防就是"破"其中任意一个条件。银行家算法属于"避免"而非"预防"。
操作系统 · 内存管理
计算题高频📦内存管理方式
分区管理:固定分区(内碎片)vs 动态分区。动态分区分配算法:首次适应(FF)、最佳适应(BF)、最差适应(WF)、邻近适应(NF)
分页存储:将物理内存和逻辑地址空间都划分为等大小的"页"。逻辑地址 = 页号 + 页内偏移。通过页表将页号映射为物理块号
TLB(快表):页表的高速缓存,加速地址转换。有效访问时间 = TLB命中率×(TLB时间+内存时间) + (1-命中率)×(TLB时间+两次内存时间)
分段存储:按逻辑模块划分"段"。逻辑地址 = 段号 + 段内偏移。便于共享、保护和动态增长
段页式:先分段再分页。兼具分段和分页优点
🌐虚拟内存与页面置换
虚拟内存:基于局部性原理,允许程序在部分装入的情况下运行。请求调页(按需调入)和预调页(提前调入)
FIFO:先进先出。可能出现Belady异常(增加帧数反而缺页增加)
LRU:最近最少使用。用栈或计数器实现,不会出现Belady异常。考试重点
OPT:最佳置换。理论上最优但无法实现(需预知未来),用于比较其他算法
Clock算法:近似LRU,用使用位和修改位实现
常考计算:分页地址转换。若页大小为4KB,逻辑地址0x1234的页号 = 0x1234 / 4096 = 1,页内偏移 = 0x1234 % 4096 = 0x234。物理地址 = 页表查出的块号 × 页大小 + 页内偏移。只有FIFO会出现Belady异常!
操作系统 · 文件与I/O
概念题📄文件组织方式
顺序文件:记录按顺序存储。顺序访问快,随机访问慢
索引文件:为每个记录建立索引。随机访问快,但占用额外空间
索引顺序文件:结合两者优点,建立主索引+顺序存储
直接/散列文件:通过散列函数直接定位记录
💿磁盘调度算法
| 算法 | 策略 | 特点 |
|---|---|---|
| FCFS | 按请求到达顺序 | 公平但效率低,不考虑磁道距离 |
| SSTF | 最短寻道时间优先 | 效率高,但可能产生"饥饿"现象 |
| SCAN(电梯) | 一个方向扫描到底再返回 | 避免饥饿,公平性好 |
| CSCAN | 单向扫描,到一端后立即回到另一端 | 等待时间更均匀 |
| LOOK/CLOOK | SCAN/CSCAN改进,只扫描到有请求的最远磁道 | 减少不必要的移动 |
🔌I/O控制方式
程序直接控制(轮询):CPU不断检查设备状态,CPU利用率极低
中断驱动:设备完成操作后向CPU发中断,CPU响应中断。提高了CPU利用率
DMA(直接内存访问):DMA控制器负责数据传送,CPU只处理DMA的开始和结束。适合大数据块传输
通道控制:I/O通道是专用处理器,可独立执行I/O指令。CPU利用率最高
记忆口诀:I/O控制方式从低到高——"程中D通"(程序轮询→中断驱动→DMA→通道控制)。CPU干预程度递减,效率递增。
网络体系结构
必考📚三种网络模型对比
| 层次 | OSI七层 | TCP/IP四层 | 五层模型 | 典型协议 |
|---|---|---|---|---|
| 第1层 | 物理层 | 网络接口层 | 物理层 | 以太网、WiFi、RS-232 |
| 第2层 | 数据链路层 | 数据链路层 | 以太网帧、PPP、ARP | |
| 第3层 | 网络层 | 网络层 | 网络层 | IP、ICMP、IGMP、OSPF |
| 第4层 | 传输层 | 传输层 | 传输层 | TCP、UDP |
| 第5层 | 会话层 | 应用层 | 应用层 | NetBIOS、RPC |
| 第6层 | 表示层 | SSL/TLS、JPEG、MPEG | ||
| 第7层 | 应用层 | HTTP、FTP、DNS、SMTP |
常考辨析:OSI是理论模型(7层),TCP/IP是实际协议栈(4层),五层模型是教学折中方案。ARP属于数据链路层协议而非网络层!HTTP属于应用层。
OSI 七层模型与 TCP/IP 四层模型对比
OSI 七层模型
⑦ 应用层 — HTTP/FTP/DNS
⑥ 表示层 — SSL/TLS/JPEG
⑤ 会话层 — NetBIOS/RPC
④ 传输层 — TCP/UDP
③ 网络层 — IP/ICMP/OSPF
② 数据链路层 — 以太网/PPP/ARP
① 物理层 — 以太网/WiFi/RS-232
TCP/IP 四层模型
应用层 — HTTP/FTP/DNS/SSL
传输层 — TCP/UDP
网络层 — IP/ICMP/IGMP
网络接口层 — 以太网/WiFi
核心协议
高频🌍HTTP协议演进
| 版本 | 特点 | 传输层 |
|---|---|---|
| HTTP/1.0 | 短连接(每次请求新建TCP连接) | TCP |
| HTTP/1.1 | 持久连接(Keep-Alive)、管道化、分块传输、Host头 | TCP |
| HTTP/2 | 多路复用、头部压缩(HPACK)、服务器推送、二进制帧 | TCP |
| HTTP/3 | 基于QUIC协议,消除队头阻塞,快速握手 | UDP |
🔗TCP vs UDP
| 对比项 | TCP | UDP |
|---|---|---|
| 连接性 | 面向连接 | 无连接 |
| 可靠性 | 可靠(确认+重传+排序) | 不可靠 |
| 传输方式 | 字节流 | 数据报 |
| 速度 | 较慢 | 快 |
| 头部大小 | 20-60字节 | 8字节 |
| 典型应用 | HTTP、FTP、SMTP、SSH | DNS、视频流、在线游戏 |
📋其他重要协议
DNS:端口53。域名解析。递归查询(本地DNS向根DNS查询)+ 迭代查询(根DNS返回下一级DNS地址)
IPv4:32位地址,分A/B/C/D/E类。子网掩码划分网络/主机。私有地址:10.0.0.0/8、172.16.0.0/12、192.168.0.0/16
IPv6:128位地址,8组16进制数。无广播(改用多播),简化头部,内置IPSec
ARP:IP地址→MAC地址映射。ARP缓存表减少查询次数。数据链路层协议
TCP三次握手:SYN → SYN+ACK → ACK。目的是防止已失效的连接请求造成错误。四次挥手:FIN → ACK → FIN → ACK。TIME_WAIT状态等待2MSL确保所有报文消失。
网络设备
常考对比🔧各层设备汇总
| 层次 | 设备 | 寻址依据 | 功能 | 隔离冲突域 | 隔离广播域 |
|---|---|---|---|---|---|
| 物理层 | 中继器(Repeater) 集线器(Hub) | 无(电信号放大) | 信号放大/转发 | 否 | 否 |
| 数据链路层 | 网桥(Bridge) 交换机(Switch) | MAC地址 | 帧转发/过滤 | 是 | 否 |
| 网络层 | 路由器(Router) | IP地址 | 路由选择/分组转发 | 是 | 是 |
| 应用层 | 网关(Gateway) | 协议转换 | 不同协议网络互连 | 是 | 是 |
易混淆点:集线器和交换机——集线器是物理层设备,所有端口共享带宽,不隔离冲突域;交换机是数据链路层设备,每个端口独享带宽,隔离冲突域。只有路由器能隔离广播域!
章节练习
自测📝 本章练习题正在加载...