深入理解计算机系统 阅读笔记
2022-10-30 17:33:52 22 举报
AI智能生成
深入理解计算机系统 阅读笔记
作者其他创作
大纲/内容
信息的表示和处理
基本数据类型
字节顺序
大端
小端
布尔代数
整数表示
有符号
补码
无符号
浮点数
IEEE
符号(sign)
尾数(significand)
阶码(exponent)
舍入
向偶数
向0
向下
向上
处理器体系结构
指令执行阶段
取值(fetch)
译码(decode)
执行(execute)
访存(momory)
写回(write back)
更新pc
流水线
局限性
不一致的划分
流水线过深,收益反而下降
分支预测
数据冒险
类型
程序寄存器
内存
条件码寄存器
状态码寄存器
程序计数器
避免冒险
使用暂停
转发
优化程序性能
理解现代处理器
乱序
分支预测
消除循环的低效率
消除不必要的内存引用
减少过程调用
循环展开
提高并行性
存储器层次结构
存储技术
随机访问存储器(Random-Access Memory)
静态RAM
动态RAM
内存模块
非易失性存储器
主存
磁盘存储
机械硬盘
磁盘操作
寻道时间
旋转时间
传送时间
固态硬盘
局部性
对程序数据引用的局部性
重复引用
链接
学习作用
帮助构件大型程序
避免一些危险的编程错误
理解语言的作业域
利用共享库
目标文件
形式
可重定位目标文件
可执行目标文件
共享目标文件
可重定位目标文件
组成部分
.text
.rodata
.data
.bss
.symtab
.rel.text
.rel.data
.debug
.line
.strtab
符号解析
异常控制流
类别
中断(interrupt)
陷阱(trap)
故障(fault)
终止(abort)
信号
发送信号
原因
内核检测到了系统事件
一个进程调用了kill函数
方式
kill
键盘
alarm函数
接受信号
虚拟内存
作为缓存
页表(page table)
缺页
内存管理
简化链接
简化加载
简化共享
简化内存分配
地址翻译
页面命中
处理器生成一个虚拟地址,并传给MMU
MMU生成PTE地址
主存向MMU返回PTE
MMU构造物理地址,并发送给主存
主存返回数据
缺页
处理器生成一个虚拟地址,并传给MMU
MMU生成PTE地址
主存向MMU返回PTE
MMU触发异常
缺页处理器找出牺牲页,如果已经被修改则换出到磁盘
缺页处理器调用新页面,并更新PTE
缺页处理器返回到原来的进程,再次执行导致缺页的指令
系统级I/O
文件
类型
普通文件
目录
套接字(socket)
数据结构
描述符表
文件表
v-node表
0 条评论
下一页