CSAPP
文章平均质量分 92
Yonagi833
差不多得了
展开
-
《深入理解计算机系统》(CSAPP)第七章读书笔记
在编译时, 编译器向汇编器输出每个全局符号, 或者是强或者是弱, 而汇编器把这个信息隐含地编码在可重定位目标文件的符号表里, 函数和以及初始化的全局变量是强符号, 未初始化的全局变量是弱符号规则1: 不允许有多个同名的强符号规则2: 如果有一个强符号和弱符号同名, 那么选择强符号规则3: 如果有多个弱符号同名, 那么在这些弱符号中随机选择一个。原创 2023-12-15 19:11:07 · 133 阅读 · 0 评论 -
《深入理解计算机系统》(CSAPP)第六章读书笔记
*随机访问存储器(RAM)**分为两类: 静态的和动态的静态RAM(SRAM)比动态RAM(DRAM)速度更快, 价格也更贵SRAM将每个位存储在一个双稳态的存储器单元里, 每个单元是由一个六晶体管电路组成的. 这种电路有一种属性: 它可以无限期地保持在两个不同的电压配置或状态之一, 其他任何状态都是不稳定的由于SRAM存储器单元的双稳态特性, 只要有电, 它就会永远地保持它的值。原创 2023-11-30 15:11:40 · 147 阅读 · 0 评论 -
《深入理解计算机系统》(CSAPP)第五章读书笔记
编写高效程序需要做到以下几点: 第一, 必须选择一组适当的算法和数据结构. 第二, 必须编写出编译器能够有效优化以转换成高效可执行代码的源代码, 第三, 针对处理运算量特别大的计算, 将一个任务分成多个部分, 这些部分可以在多核或多处理器上并行运算。原创 2023-10-24 11:24:24 · 108 阅读 · 0 评论 -
《深入理解计算机系统》(CSAPP)第三章读书笔记
将金丝雀值存放在一个特殊的段中, 标志为 “只读” , 这样攻击者就不能覆盖存储的金丝雀值. 在恢复寄存器状态和返回前, 函数将存储在栈位置处的值与金丝雀值作比较, 如果两个数相同, xorq指令就会得到0, 函数会按照正常的方式完成, 非0的值表明栈上的金丝雀值被修改过, 那么代码就会调用一个错误例程。左移指令有两个名字: SAL和SHL. 两者的效果是一样的, 都是将右边填上0. 右移指令不同, SAR执行算术移位, SHR执行逻辑移位, 移位操作的目的操作数可以是一个寄存器也可以是一个内存位置。原创 2023-10-14 20:56:06 · 125 阅读 · 1 评论 -
《深入理解计算机系统》(CSAPP)第二章读书笔记
有时候, 字节顺序会成为问题. 在不同类型机器之间通过网络传送二进制数据时, 一个常见的问题就是当小端法机器产生的数据被发送到大端法机器或者反过来时, 接收程序会发现, 字里的字节成了反序的. 为了避免这种问题, 网络应用程序的代码编写必须遵守已建立的关于字节顺序的规则, 以确保发送方机器将它的内部表示转换成网络标准, 而接收方机器则将网络标准转换为它的内部表示。向偶数舍入, 也被称为向最接近的值舍入, 是默认的方式, 试图找到一个最接近的匹配值. 它采用的方法是,原创 2023-10-06 09:43:33 · 87 阅读 · 1 评论 -
《深入理解计算机系统》(CSAPP)第一章读书笔记
《深入理解计算机系统》(CSAPP)第一章的读书笔记原创 2023-10-03 09:10:57 · 122 阅读 · 1 评论