2017-2018-1 20155321 《信息安全系统设计基础》第一周学习总结
2017-09-24 19:13
489 查看
2017-2018-1 20155321 《信息安全系统设计基础》第1周学习总结
教材学习内容总结
第一章主要学习了:信息是什么、源代码到目标程序所需要经过的4个过程、系统如何执行目标程序、执行过程中发现存在不断复制搬移程序的问题、为了解决问题出现了高速缓存器、完善过程,出现了存储器分层的结构 、操作系统如何管理硬件、三个抽象概念,进程(线程),虚拟内存,文件(网络也是一种文件)、并发和并行。第七章主要学习了链接的基本概念,也了解了三类目标文件、符号、符号表等重要概念。
每章问题提出
第一章:虚拟内存的意义是什么,为什么通过进程、虚拟内存、文件三个抽象概念可以实现操作系统的两个基本功能
第二章:了解计算机的编码等规则对编程有什么益处?
第三章:程序的机器级表示是什么意思?
第四章:处理器的体系结构是什么?
第五章:如何优化程序的性能?
第六章:存储器这种层次结构有什么好处?
第七章:什么时候用到静态库和动态库?我们日常的编程中常用吗?
第八章:异常控制流是什么意思?C语言里是怎么处置异常的?
第九章:为什么存在虚拟内存的概念?它和内存有什么区别?
第十章:系统级I/O是什么意思?
第十一章:如何用C语言进行网络编程?与Java语言相比有什么优势与劣势?
第十二章:如何用C语言进行并发编程?与Java语言相比有什么优势与劣势?
教材学习中的问题和解决过程
问题1:使用gcc -c hello.s -o hello.o把.s文本文件转为.o二进制文件中不知道为什么出现了问题,但是若
gcc -c hello.i -o hello.o却没有问题,然后程序也可以正常运行
问题1解决方案:尚未知道原因,目前使用第二种方法能正常运行。个人认为是.s文件出现了问题,.s文件按照书上解释应该是文本文件,且应是汇编代码构成的,但是当我打开.s文件后发现.s文件却是乱码?!
问题2:自己独自练习gcc编译时,在输入完
gcc -c sum.i -o sum.o后运行发现运行不了
问题2解决方案:因为sum.o文件属于可重定位目标文件,缺少链接部分,因此还要输入
gcc sum.o -o sum后,生成可执行文件即可,且通过打开sum.o文件和sum文件也可发现这两个文件是有差别的。个人感觉,在平日正常编程中,编译环节还是使用
gcc -c sum.i -o sum比较方便
问题3:使用AR工具创建函数的静态库时,书上写着命令
ar rcs libvector.a addvec.o multvec.o,其中参数
rcs是什么意思?
问题3解决方案:通过网上的资料显示,参数r:在库中插入模块(替换);参数c:创建一个库。不管库是否存在,都将创建;参数s:创建目标文件索引。
代码调试中的问题和解决过程
问题1:在使用gdb进行调试的时候,第一步是先把代码调出来,即要输入命令l即可,但是在真正调试的时候,如果只是想调试中间某一部分而跳过某些暂不需要的代码时,这样输入命令就会很麻烦
问题1解决方案:
通过网上资料显示,命令
l一次显示10行代码,可以在命令
l后加入想调出来的代码的行数,则可显示此行数上下的部分代码,比较方便
代码托管
上周考试错题总结
无结对及互评
暂无本周结对学习情况
20155330结对学习内容
第一章
第七章
其他(感悟、思考等,可选)
本周我主要学习在虚拟机的Linux系统下学习C语言编程,学会使用vim的三种基本模式,初步掌握gcc编译器的常用选项以及相关的命令参数,初步学会使用gdb进行调试,下周主要任务是认真学习教材第七章的内容,学习并学会使用静态库和动态库。
总而言之,本周的学习收获主要是初步掌握后续学习要使用的基本工具,熟悉Linux环境,为后续学习奠定基础,下周的学习主要是对本周学习进行修补和完善。此外,本周对Makefile以及断点的调试的学习和练习仍较生疏,下周还需多加学习。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 20篇 | 400小时 | |
第一周 | 48/48 | 1/1 | 15/15 |
计划学习时间:10小时
实际学习时间:15小时
改进情况:在动手实践编程方面要提高效率
(有空多看看现代软件工程 课件
软件工程师能力自我评价表)
参考资料
《深入理解计算机系统V3》学习指导相关文章推荐
- 2017-2018-1 学号20155317 《信息安全系统设计基础》第一周学习总结
- 2017-2018-1 20155321 《信息安全系统设计基础》第十一周学习总结
- 2017-2018-1 20155213陆忠民 《信息安全系统设计基础》第一周学习总结
- 2017-2018-1 20155312 《信息安全系统设计基础》第一周学习总结
- 2017-2018-1 20155321 《信息安全系统设计基础》第八周学习总结
- 2017-2018-1 20155321 《信息安全系统设计基础》第4周学习总结
- 2017-2018-1 20155321 《信息安全系统设计基础》第十四周学习总结
- 2017-2018-1 20155321 《信息安全系统设计基础》第三周学习总结
- 2017-2018-1 20155235 《信息安全系统设计基础》第一周学习总结
- # 20155337 2017-2018-1 《信息安全系统设计基础》第一周学习总结
- 20155225 2017-2018-1 《信息安全系统设计基础》第一周学习总结
- 2017-2018-1 20155228 《信息安全系统设计基础》第一周学习总结
- 2017-2018-1 20155230 《信息安全系统设计基础》第一周学习总结
- 20155325 2017-2018-1 《信息安全系统设计基础》第一周学习总结
- 2017-2018-1 20155203《信息安全系统设计基础》第一周学习总结
- 2017-2018-1 20155229 《信息安全系统设计基础》第一周学习总结
- 2017-2018-1 20155227 《信息安全系统设计基础》第一周学习总结
- 2017-2018-1 20155320《信息安全系统设计基础》第一周学习总结
- 2017-2018-1 20155205 《信息安全系统设计基础》第一周学习总结
- 2017-2018-1 20155209 《信息安全系统设计基础》第一周学习总结