
深入理解计算机系统
文章平均质量分 92
《深入理解计算机系统》阅读笔记
奶盖加芝士
这个作者很懒,什么都没留下…
展开
-
深入理解计算机系统(九) ——系统级I/O / Unix下的文件操作
1 打开和关闭文件 2 读和写文件 3 读取文件信息(元数据) 4 共享文件 5 标准I/O原创 2022-07-18 18:05:33 · 303 阅读 · 0 评论 -
深入理解计算机系统(八) ——虚拟存储器
虚拟存储器1 基本概念1.1 寻址1.2 地址空间1.3 虚拟存储器1.4 页与页表1.5 缓存2 虚拟存储器的作用3 地址翻译4 存储器映射 / 共享内存6 动态存储器分配 / 堆原创 2022-06-15 16:08:51 · 983 阅读 · 0 评论 -
深入理解计算机系统(七) —— 测量程序执行时间
参考书籍《深入理解计算机系统》1.通过间隔计数来测量时间2.周期计数器(高精度测量)3.基于gettimeofday函数的测量(一般测量看这个)原创 2022-06-08 11:06:23 · 264 阅读 · 0 评论 -
深入理解计算机系统(六) —— 异常控制流
参考书籍《深入理解计算机系统》文章目录1 异常1.1 基本概念1 异常:异常处理、异常类别、创建子进程、回收子进程2 进程:调度、上下文切换、3 信号:发送信号、接收信号、信号处理原创 2022-05-20 12:24:49 · 567 阅读 · 0 评论 -
深入理解计算机系统(五) —— 链接
参考书籍《深入理解计算机系统》程序的编译过程见文章目录1 基础概念21 基础概念链接:将不同部分的代码和数据收集和组合成为一个单一文件的过程,链接可以执行于编译时(即将源代码翻译成机器代码时)、加载时(即程序被加载器加载到存器器并执行时)和运行时(由应用程序来加载),现代系统中链接是由链接器自动执行;链接器:它是一个程序,在软件开发中因为链接器的存在使得分离编译成为了可能,理解链接器有如下好处:1.理解链接器如何解析引用有助于解决由于缺少模块、缺少库或者不兼容的库版本引起链接错误,有利于帮助程原创 2022-05-13 11:52:42 · 708 阅读 · 0 评论 -
深入理解计算机系统(四) ——优化程序性能 / 程序编译过程
参考书籍《深入理解计算机系统》文章目录1 高效程序的基础2 优化编译器的能力和局限性3 程序优化的方法4 程序性能剖析工具1 高效程序的基础数据结构和算法:比如hash_map的查找效率会高于map;1加到100用公式(1 + 100)* 50的效率高于循环累加源代码能够被编译器有效优化成高效可执行代码:对于这一点需要理解优化编译器的能力与局限性,C的一些特性——比如执行指针运算和强制类型转换等——使得优化很困难2 优化编译器的能力和局限性编译优化:编译优化会更改代码的,在优化中,有不同原创 2022-04-21 19:24:04 · 1068 阅读 · 0 评论 -
深入理解计算机系统(三) —— 程序的机器级表示
参考书籍《深入理解计算机系统》文章目录1 基本概念2 数据格式3 指令4 寄存器的使用惯例5 存储器的越界引用和缓冲区溢出6 浮点代码和浮点寄存器附录 — linux下,利用gcc生成汇编代码1 基本概念可执行代码文件:即我们常说的程序,为二进制格式,无法直接阅读汇编代码文件:常见后缀为.s,非常接近于计算机执行的实际机器代码,是可阅读的文本格式机器指令:是CPU能直接识别并执行的指令,只执行非常基本的操作,比如将两个存放在寄存器种的数字相加、在存储寄存器之间传递数据等CPU包含以下寄存器:原创 2022-03-17 19:17:40 · 718 阅读 · 0 评论 -
深入理解计算机系统(一) —— 计算机系统的硬件组成
总线:贯穿系统的电子管道,作用是携带信息字节并负责在各个部件传递。通常总线被设计成传送定长的字节块。不同系统字节数(字长)不尽相同。I/O设备:系统与外界的联系通道,如图中的键盘、鼠标、显示器和磁盘都是I/O设备,每个I/O设备都通过一个控制器或适配器与I/O总线连接。主存(主存储器):是一个临时存储设备,在处理器执行程序时被用来存放程序和数据。物理上主存由一组DRAM(动态随机存取存储器)芯片组成;逻辑上主存是一个线性的字节数组,每个字节都有唯一地址,这些地址从零开始。处理器(CPU):解释(或..原创 2022-02-16 18:29:11 · 553 阅读 · 0 评论 -
深入理解计算机系统(二) —— 信息表示与处理
参考书籍《深入理解计算机系统》文章目录1 信息存储基本概念1 信息存储基本概念存储单位:大多数计算机使用8位(bit)的块 [ 称之位字节(byte)] 作为最小的可寻址存储器单位;地址:机器级程序(常说的用户进程)讲存储器视为非常大的字节数组(称为虚拟存储器),存储器的每个字节都由一个唯一的数字来标识,称之为地址,所有可能地址的集合就是虚拟地址空间;...原创 2022-03-11 19:11:16 · 864 阅读 · 1 评论