计算机系统
文章平均质量分 94
要做好青年
一位有梦想的青年学生
展开
-
HNU计算机系统实验四 BufLab
1. 在一开始不清楚运行这个实验的各种代码以及这个实验每一级到底要求我们做什么,通过仔细阅读提供的PDF文档以及上网查询后成功理清思路,并成功一步步完成实验。2. 在做题过程中,遇到很多只通过阅读汇编代码以及手写分析很难解决的问题,于是借助gdb调试工具,最终成功获得所需要的数据。3. 反汇编实验文件得到的汇编代码非常多,然而,其实不需要去全部阅读,只需要阅读关键函数如test和getbuf的关键部分即可,这样可以让实验过程变得更高效。4. 在刚开始做level2时,我不知道该如何修改全局变量。原创 2024-09-22 15:19:18 · 1300 阅读 · 0 评论 -
HNU计算机系统实验三 BombLab
1. 在一开始运行bomb的时候,遇到权限不够的问题。于是使用chmod更改bomb的权限,最终成功运行。2. 在做题过程中,遇到很多只通过阅读汇编代码以及手写分析很难解决的问题,于是借助gdb调试工具,最终成功获得所需要的数据。比如在寻找隐藏关卡的入口时,只阅读汇编代码其实并不能知道应该在哪里多输入一个字符串才能进入。而使用gdb查看相应参数所在的内存地址中存储的值,就能够很清楚的知道入口到底在我们的哪个输入了。3. 实验所给的汇编代码非常多,其中有很多函数调用。原创 2024-09-22 14:48:14 · 1267 阅读 · 0 评论 -
HNU计算机系统实验二 DataLab
1.在一开始dlc的时候,遇到权限不够的问题。于是使用chmod更改dlc的权限,最终成功运行dlc。2. 在执行./dlc bits.c时,提示遇到了语法错误。说我有两个函数里的变量没有声明。报错截图如下:但在回去检查后发现,变量是声明了的。认真观察其他声明变量正确的函数,发现在没有报错的函数中,变量声明都是在函数最开始。因此,推测此dlc工具检查时,只有声明在最开始的变量才能被检测到,而在其他操作之后再声明的变量无法被检测到。于是,更改函数代码,先声明接下来会用到的变量,再进行其他操作。原创 2024-09-21 21:15:02 · 917 阅读 · 0 评论 -
HNU计算机系统实验一 原型机
hnu的计算机系统这门课程教的还是挺好的,几个实验也很好玩,认真做也能学到很多东西。从这篇开始记录22级这门课的四个实验,仅供学习交流使用哦。实验一用的是学校老师自己设计的一个原型机,而后面的三个实验都是书本配套的实验(和卡内基梅隆大学的学生做的一样,只不过他们还有很多其他实验,而教学组只挑选了其中三个布置)。在实验任务A中,出现的问题有:1.一开始无法运行vspm程序,终端出现错误信息。上网查询以后发现是因为java版本过低的原因。更新java并配置好环境变量以后,成功运行了vspm。原创 2024-09-20 23:55:53 · 1135 阅读 · 0 评论