- 博客(7)
- 收藏
- 关注
原创 CSAPP(CMU 15-213):Lab2 BombLab详解
# 前言本系列文章意在记录答主学习CSAPP Lab的过程,也旨在可以帮助后人一二,欢迎大家指正! 使用 gdb 中的反汇编代码与 objdump 反编译出的汇编代码相比更容易阅读(地址跳跃等),并且在解迷的过程中需要用到 gdb ,故以下代码都使用 gdb 的反汇编。phase_1(小试牛刀)# phase_1 反汇编 0x0000000000400ee0 <+0>: sub $0x8,%rsp 0x0000000000400ee4 <+4>
2022-03-31 14:53:05
1750
1
原创 CSAPP(CMU 15-213):Lab7 proxylab详解
# 前言本系列文章意在记录答主学习CSAPP Lab的过程,也旨在可以帮助后人一二,欢迎大家指正!tips:完成一个 Web proxy(代码服务器、并发服务器、可以缓存)Implementation基本思想就是tiny server和echo server的结合,我因为之前不熟悉网络编程,所以把这两部分的示例代码重写了一遍,熟悉了一下。tips:信号SIGPIPE依照handout的要求重新改写HTTP request headersPart I: Implementing a
2022-03-28 20:24:24
2316
原创 CSAPP(CMU 15-213):Lab6 Malloclab详解
# 前言本系列文章意在记录答主学习CSAPP Lab的过程,也旨在可以帮助后人一二,欢迎大家指正!tips:本lab主要是为了体验应用程序如何使用和管理虚拟内存,写一个动态存储分配器(dynamic storage allocator)目标:使用不同方法在内存利用率(memory utilization)和吞吐率(throughput)之中达到trade-off,逐步优化。Handout要求修改mm.c文件,其中包括四个函数:int mm_init(void); 初始化堆空间,错误返回
2022-03-23 21:45:44
12996
4
原创 CSAPP(CMU 15-213):Lab5 Shlab详解
# 前言本系列文章意在记录答主学习CSAPP Lab的过程,也旨在可以帮助后人一二,欢迎大家指正!tips:本lab主要是为了更加熟悉进程控制和信号的概念!!要完成一个支持简易作业控制的shell程序。Shell这样的交互型程序主要负责管控用户所运行程序进程,并负责给各个子进程分配信号以完成要求!!!handout实现函数【参考代码行数】所给的资料已经拥有一个shell程序的功能框架,我们只需完成有关作业控制的几个关键函数即可。(tsh.c)eval:分析和解释命令行的主例程【70行】
2022-03-02 13:15:49
1461
原创 CSAPP(CMU 15-213):Lab4 Cachelab详解
# 前言本系列文章意在记录答主学习CSAPP Lab的过程,也旨在可以帮助后人一二,欢迎大家指正!tips:本lab主要是为了深入理解cache的机制!!完成了模拟cache行为的实现以及应用!!Part A: Writing a Cache Simulator实现一个有关cache行为的模拟器,一开始不知从何做起,还是要注意看文档啊,CMU15-213是有recition的,里面有一些提示!准备工作以下内容来自rec07.pdfA cache simulator is NOT a ca
2022-02-17 15:20:55
11830
4
原创 CSAPP(CMU 15-213):Lab3 Attacklab详解
# 前言本系列文章意在记录答主学习CSAPP Lab的过程,也旨在可以帮助后人一二,欢迎大家指正!tips:本lab主要是利用gets中的不安全(越界,覆盖原栈桢内容),缺陷来进行攻击(缓冲区溢出)Part I : Code Injection Attacks 第一部分是利用代码注入进行攻击,CMU15-213将ctarget关闭了栈随机化并且将栈标记为可执行的,以简化难度,让代码更容易被攻击。Phase 1目标:使test函数再调用getbuf()之后不返回自身,而是转移至touch
2022-02-02 21:59:47
4535
1
原创 CSAPP(CMU 15-213):Lab1 DataLab详解(上)
@[TOC](CSAPP(CMU 15-213):Lab1 DataLab详解(上))前言本系列文章意在记录答主学习CSAPP Lab的过程,也旨在可以帮助后人一二,欢迎大家指正!一、 bitXor()本函数限制只能使用~和&来完成x^y,即异或运算。/* * bitXor - x^y using only ~ and & * Example: bitXor(4, 5) = 1 * Legal ops: ~ & * Max ops: 14
2021-09-17 20:44:14
1790
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人