系统级编程
wowhahaha
这个作者很懒,什么都没留下…
展开
-
SLP(Chapter 14)::异常和进程/线程
0 控制流1 异常2 流程和线程3 Windows的进程和线程原创 2020-01-06 04:09:48 · 272 阅读 · 0 评论 -
SLP(Chapter 12):Cache和Cache-Aware编程
0 简介1 缓存类型(根据实现分类)编写缓存友好代码和缓存感知优化 Writing caching friendly code and cache-aware optimization原创 2020-01-06 02:48:34 · 463 阅读 · 0 评论 -
SLP(Chapter 11):内存操作和性能
简介1 内存技术 CSAPP 6.12 内存层次结构 CSAPP 6.33 局部 CSAPP 6.24 内存山实验 CSAPP 6.6原创 2020-01-06 01:55:48 · 568 阅读 · 0 评论 -
SLP(Chapter 10 part 2):性能优化
1 介绍2 The Golden Rules of optimization 黄金准则3 Optimizing compilers4 Example of optimizing program5 General optimization techniques [self study]原创 2020-01-05 22:59:28 · 632 阅读 · 0 评论 -
SLP(Chapter 10 part 1):性能评估 / 性能测试
1 基础知识2 Performance Principles (法则)3 Performance Measurement4 Profiler (评测器)原创 2020-01-05 20:28:58 · 674 阅读 · 0 评论 -
SLP(Chapter 6):内存布局和分配(part 2)内存漏洞 memory bug
2 内存漏洞2.1 复习指针2.2 制作和使用错误引用2.3 覆盖内存2.4 两次FREE2.5 内存泄漏原创 2020-01-05 18:10:28 · 304 阅读 · 0 评论 -
SLP(Chapter 13):链接和链接器
Why 学习链接器和加载器?构建大型程序避免危险的程序错误了解如何实现作用域全面了解计算机系统学会利用共享库1 链接和链接器 基础知识程序时间消耗 = 编译 + 链接 + 加载 + 运行链接器比汇编器、编译器更早被发明、使用,即更古老链接器的功能链接器可重定位的对象文件,包括引用的函数库可执行的目标文件链接包含的过程:Symbol Resolution 符号解析...原创 2020-01-05 18:10:34 · 188 阅读 · 0 评论 -
SLP(Chapter 6):内存布局和分配(part 3)垃圾回收
3 垃圾回收原创 2020-01-05 08:34:17 · 374 阅读 · 0 评论 -
SLP(Chapter 6):内存布局和分配(part 1)内存使用方式
1 内存使用方式1.1 内存管理不同生存期lifetime对应于三种内存分配机制之一:静态:在整个程序执行过程中保留的绝对地址动态分配栈:以后到先出顺序分配的交易,具有函数调用和返回堆:根据用户的要求,在任意时间分配和处理1.2 静态分配Static 静态:是指在编译时和构建程序时链接时发生的情况。(不加载或运行)所有全局变量,无论它们是否已声明为静态变量(对另一个文...原创 2020-01-05 04:32:29 · 299 阅读 · 0 评论 -
SLP(Chapter 5):函数的调用返回
复习PUSH & POPSP 指向当前栈顶最后压入的一个字节例子:PUSH EAX (32bits)假设压栈前SP = 0x0012ff40,则PUSH执行后,0x0012ff3c~3f将用于存放EAX的值,SP=SP-4,即SP修改为 0x0012ff3cPOP AX (16bits)假设压栈前SP = 0x0012ff40,则POP执行后,0x...原创 2020-01-05 02:30:46 · 385 阅读 · 0 评论 -
SLP(Chapter 3):代码表示
0. 引子Why 汇编CPU不能理解,如 c = (a + b) * d但是CPU可以理解,如将这俩个寄存器的值相加,并将结果存在第一个寄存器中基础知识编译数据和代码在内存中分开存储代码(存储在cs+ip)mov eax,dword ptr[ebp-4](1)C语言代码与汇编代码并不是一一对应,可以一对(2)汇编窗口显示的地址是机器码的地址,而不是汇编的地址,因为虚拟内...原创 2020-01-04 19:16:24 · 2021 阅读 · 0 评论 -
SLP(Chapter 4):结构化数据表示
0 复习1 指针2 数组3 字符串4 结构和联合5 对齐原创 2020-01-04 18:12:32 · 430 阅读 · 0 评论 -
SLP(Chapter 2):数据表示
位与位运算字节 Word总线传输定长的数据块;C语言中一个int的大小;8位一个字节计算机的地址是字节的地址大小端MSB: maximum sign bit 最高符号位LSB:下面是输出结果。请注意最低有效字节的输出值。 当以% x 形式输出时,它将检查字节的MSB如果是1,则符号位将被扩展并输出一个32位的十六进制。另一方面如果是0,则左边没有0的正数将...原创 2020-01-01 14:06:54 · 463 阅读 · 0 评论 -
SLP(Chapter 0、1):绪论
why 《系统级编程》?通过操作系统(OS)课程我们明白了进程管理,同步互斥,虚拟内存管理,文件管理但我们仍然不清楚进程化为进程映像后,程序究竟是如何执行的?因此当程序运行出现问题时,很难准确定位错误Some QuestionWhat is Computer System?A computer system is a collection of hardware and softw...原创 2019-12-30 14:58:47 · 276 阅读 · 1 评论