学号 《信息安全系统设计基础》课程总结
20155332 2017-2018-1 《信息安全系统设计基础》课程总结
一、每周作业链接汇总
第一周作业:计算机系统漫游 信息=位+上下文,程序的预处理、编译汇编、链接过程,gcc编译器的基本原理,静态库和动态库的生成与调用方法。
第二周作业:第2周课堂实践 共享库生成和调用过程,myod的实现
第三周作业:信息的表示和处理 二进制在计算机中的重要地位,有符号整数、无符号整数、浮点数的表示,C语言中溢出,数据类型转换中的陷阱和可能会导致的漏洞
第四周作业:课堂实践myod 系统功能调用来实现myod
第五周作业:程序的机器级表示 X86汇编,函数调用栈帧,使用gdb调试,阅读反汇编代码
第六周作业:第6周课堂实践 使用gdb调试工具,查看各个寄存器数值的变化
第七周作业:处理器体系结构 ISA抽象的作用,学习Y-86汇编语言
第八周作业:第8课堂实践 X86-64汇编翻译成Y86汇编
第九周作业:存储器层次结构 RAM、ROM、磁盘、固态硬盘等存储技术,局部性原理和缓存思想在存储层次结构中的应用
第十周作业:第10课堂实践Linux通信机制
第十一周作业:虚拟存储器 虚拟存储器的概念和作用,存储器映射,存储器分配的方法
第十三周作业:网络编程 客户端-服务器编程,开发Web服务器
第十四周作业:课堂实践 常见的存储技术,局部性原理,高速缓存的原理和应用
代码托管链接和二维码:
截图 git log --pretty=format:"%h - %an, %ar : %s" 的结果
代码量汇总提交statistics.sh的支持截图
代码驱动的学习做到没有?
**“代码驱动”与“问题驱动”是本学期学习的主要方式。我基本做到了以问题为学习导向,带着问题看书,写代码,做练习。学习效率提高了很多。
加点代码,改点代码是理解的最好方式,参考编程的智慧,谈谈你的心得
实践上有什么经验教训.
** 编程是一种创造性的工作,是一门艺术。精通任何一门艺术,都需要很多的练习和领悟,所以这里提出的“智慧”,并不是号称一天瘦十斤的减肥药,它并不能代替你自己的勤奋。我写代码还是以自己写为主,借鉴其他人的不多。以后我会注意这点,多向他人请教,多学习优秀的代码。**
整体评价一下第1周作业中自己提出的问题是不是抓住了学习重点
** 又看了看第一周的博客,我很好的抓住了学习的重点。每一章的问题都得到了完美的解决。
回答一下第1周作业中自己提出的问题
- 第一章:计算机系统与操作系统有什么区别?
计算机系统包括硬件和软件,操作系统是软件的一种。
- 第二章: 什么是信息?
信息=位+上下文
- 第三章:如何查看反汇编代码?
linux> objdump -d mstore.o
- 第四章: 当前正在执行指令的地址放在哪里?
程序计数器(PC)里。
- 第五章:如何编写高效的程序
选择一组适当的算法和数据结构
- 第六章:如何根据存储器层次结构提高应用程序性能
充分利用缓存,保证读取速度。
- 第七章:连接器有什么用?
连接器在软件开发中扮演很重要的角色,因为他们使得分离编译成为可能。
- 第八章:异常处理程序运行在什么模式下?
议程处理程序运行在内核模式下。这意味着她们对所有的资源都有完全的访问权限。
- 第九章 虚拟地址是怎么寻址的?
CPU通过生成一个虚拟地址来访问主存,这个虚拟地址在被送到内存之前先转换成适当的物理地址。将一个虚拟地址转换为物理地址的任务交做地址翻译。
- 第十章:输入输出操作的本质是什么?
输入操作是从I/O设备复制数据到主存,而输出操作是从主存复制数据到I/O
设备。
- 第十一章:什么是网络?
网络是一个按照地理远近组成的层次系统。
- 第十二章: 什么是线程?
线程是运行在一个单一进程上下文的逻辑流,由内核进行调度。可以把线程看成是其他两种方式的混合体,想进程流一样由内核进行调度,而像I/O多路复用一样共享同一个虚拟地址空间。
你有什么项目被加分,谈谈你的经验
myod
有付出就有收获,认认真真做作业,再仔细把解决问题的过程写下来,格式符合老师的要求,就可以得到加分。学习态度端正是最重要的。
你有什么项目被扣分,谈谈你的教训
有一次我忘记提交课后测试题,第十一章的,很后悔。课后补交了博客,希望能够挽回损失。
课程收获与不足
自己的收获(投入,效率,效果等)
-
自己需要改进的地方
课堂实践项目做得太慢,没有在上课提交,只能回来补写博客。如果我知识掌握的更加熟练,一定能够在规定时间内完成。 -
如果有结对,写一下你提供的帮助或接受了什么帮助,并对老师提供参考建议
在结对过程中,我们互相帮助,互相学习,共同进步。但其实都是各自学各自的知识,因为,我们对未来的规划不同,学习的动机不同,所以玩一起玩,学习还是自己学。 -
给开学初的你和学弟学妹们的学习建议
计算机方向考研的专业课要考以下四门:
数据结构
计算机组成原理
操作系统
计算机网络
学弟学妹如果打算考研的话,一定要去2系旁听一下计算机组成原理这门课,如果和本系课程时间冲突了的话,给老师请假也要去听。因为无论考研是信息安全方向还是密码学方向,参加的基本都是计算机408统考,所以现在学不相关的课程对考研没什么作用,不如节省这些时间把考研的科目认真学好。绩点奖学金排名什么的都是次要的,学到对自己有用的东西才是最重要的啊。对于现在的我们来说,最宝贵的便是时间了。如果学一些没有用的课程,让自己在学习的时候备受折磨,真是浪费青春和生命,还不如谈恋爱感找到自己的真爱,出去旅行涨涨见识,打打球锻炼一下身体。
- 如果重新学习这门课,怎么做才可以学的更好
先把计算机组成原理学了,这门课我会学的更好。
问卷调查
- 你平均每周投入到本课程多长时间?
两小时左右。算上上课时间大概三个半小时。
- 每周的学习效率有提高吗?
有。看书的速度越来越快了。
- 学习效果自己满意吗?
相当满意。我用高效的学习方法,在很短的时间内自学基础知识,达到了自己的要求。
- 课程结束后会继续一周至少一篇博客吗?(如果能做到,毕业时我把你的博客给你集结成一本书送给你作纪念)
不会。因为我习惯于做纸质笔记。这样写完一本笔记直接就是一本书了,不是更加方便吗?
- 你觉得这门课老师应该继续做哪一件事情?
用《深入理解计算机系统》当课本。这本书写的真心不错。
- 你觉得这门课老师应该停止做哪一件事情?
使用蓝墨云班课来考试。
- 你觉得这门课老师应该开始做什么新的事情?
实验课希望老师全程指导,我们做实验的时候遇到很多问题想问老师,但老师基本都不在。
给出你的总结的链接和二维码
第一周
第二周
第三周
第四周
第五周
第六周
第七周
第八周
第九周
第十周
第十一周
第十二周
第十三周
第十四周
第十五周
实验一
实验二
实验三
实验四
实验五