csapp:3e 网站下载的traces不全,需要补上一些其他的,自行搜索。 DEFAULT_TRACEFILES做这个 lab 可以先专注于 malloc 和 free 的实现。在这两个实现好了之后再时间 realloc。最后两个测试的 rep 是用来 realloc 的先注释掉,因为如果不注释,那么在评测时会使用,评测中只要有一个例子过不了就不会算分,所以不注释...
据说ICS 是P大 cs 最吼的一门课了(虽然楼主才大二还不能证实这个说法 ),而malloc lab又是这门课最难的一个lab,所以这三天三夜的努力还是值得纪念一下的! CMU的csapp官网link (以及希望这篇文章能给以后学习 csapp 并在 malloc lab遇到困难的学弟学妹们提供一点帮助~) Hint: 由于现在还没有到这个lab在我...
【深入理解计算机系统 实验3 CSAPP】cache lab 缓存实现 CMU cachelab共计3条视频,包括:cachelab_part1_1、cachelab_part1_2、cachelab_part2等,UP主更多精彩视频,请关注UP账号。
我们在完成CSapp的这个实验的时候参考书上9.9.12的代码以及https://www.cnblogs.com/liqiuhao/p/8252373.html这个大佬的博客。 CSapp MallocLab实验发生段错误怎么处理: 首先,我们知道CMU设计的MallocLab这个实验需要我们在实验目录下首先输入make,来生成mdriver这个可执行文件。然后输入 以及 这两条命令,就能够得到测试...
这是这学期上系统级编程课的实验之一,是从CMU引入的,源代码和资料可以CMU课程网站获得,直接选择第二个实验的Self-Study Handout下载即可。 做这个实验需要反汇编和与调试,建议使用gdb和objdump,如果还不会gdb 可以看看这个简易gdb使用指南,关于objdump简单看看这个就行了毕竟做这个实验我也只用了一个命令 objdump -d...
CSAPP Lab2: Bomb Lab Preparation 建议在实验大致看一下lab相关的pdf。使用 man 手册来查看库函数, callq … <_exit@plt> 类型为C的库函数。注意商用的architecture是以字节为单位编址寻址。 参考CS61C所了解到的Tool, 做足了准备工作。安装 CGDB , 相比较于 GDB 的 tui 在调试lab时…阅读全文 赞...
CMU-CSAPP-Lab2拆解二进制炸弹 一、实验目的 1.理解C语言程序的机器级表示。 2.初步掌握GDB调试器的用法。 3.阅读C编译器生成的x86-64机器代码,理解不同控制结构生成的基本指令模式,过程的实现。 二、实验工具 SecureCRT Linux Objdump命令反汇编 GDB调试工具...
我们老师也将CMU原配的几个Lab作业给移植 了过来,目前已经完成了datalab和下面要介绍的bomblab,做过之后真的是觉得受益匪浅。Bomblab 的主要是通过姓名学号可以从服务器上下载一个bomb的tar包,用objdump可以得到它的汇编源码与c文件。在程序运行过程中需要输入若干字符串,如果字符串不符合要求则将导致炸弹爆炸,每爆炸...
http://www.cs.cmu.edu/afs/cs/academic/class/15213-f16/www/schedule.html Awesome Labs! http://csapp.cs.cmu.edu/3e/labs.html Lab 1: datalab Lab 2: bomblab Lab 3: attacklab Lab 4: cachelab Lab 5: tshlab Lab 6: malloclab Lab 7: proxylab Past exams: http://www.cs....
理论上通过阅读汇编代码就可以找到答案,前3题或许可以,后边的题目就有点难度了。熟练使用gdb也是这个lab很重要的一个目的。 官方提供了gdb常用命令手册:http://csapp.cs.cmu.edu/3e/docs/gdbnotes-x86-64.pdf 下面开始“拆弹“。 首先需要将bomb二进制文件反汇编,得到汇编代码。下面的命令将bomb反汇编并保存在fi...