20155211 《信息安全系统设计基础》课程总结
20155211 《信息安全系统设计基础》课程总结
每周作业链接汇总
-
第一周作业:第一章、第七章学习内容
-
第二周作业:补充完成课上没有完成的内容
-
第三周作业:第二章《信息的表示和处理》
-
第四周作业:补充完成课上没有完成的内容,第十章内容
-
第五周作业:教材:第三章《程序的机器级表示》
-
第六周作业:第八章《异常控制流》,第十章《系统级I/O》。
-
第七周作业:第四章《处理器体系结构》
-
第八周作业:第十一章《网络编程》,第十二章《并发编程》。
-
第九周作业:第六章《存储器层次结构》
-
第十周作业:补充课上测试,完成课下实践.课上作业已完成,故该周无博客。
-
第十一周作业:第九章《虚拟存储器》。
-
第十二周作业:试题补做
-
第十三周作业:全书最重要的一章——第九章
-
第十四周作业:全书学习最差的一章——第四章
实验报告链接汇总
-
实验一 开发环境的熟悉:交叉编译环境,目标机宿主机联通,目标机运行程序,目标机模块分解
-
实验二 固件程序设计:MDK,LED,UART,SM1
-
实验三 实时系统:多线程与单线程实现wc
-
实验四 外设驱动程序设计:《嵌入式Linux应用程序开发标准教程》第十一章的学习以及test测试的实现
-
实验五 通讯协议设计:Linux下OpenSSL的安装与使用
代码:
-
代码托管链接和二维码
-
截图 git log --pretty=format:"%h - %an, %ar : %s" 的结果:实验五之前虚拟机崩了,因未及时备份,导致本学期代码都没保存
-
代码量汇总提交statistics.sh的支持截图:同上
-
代码驱动的学习做到没有:本学期最显著的收获是学会用查询指令学习代码,但是因为本学期未及时在码云上上传代码,导致在重装系统和虚拟机文件出错丢失打不开时丧失了本学期大部分的代码。
-
加点代码,改点代码是理解的最好方式,参考编程的智慧,谈谈你的心得:本学期的很多实验都是在老师给出的代码进行相应改进,通过完成试验,能够让我们更深刻的理解代码。
-
实践上有什么经验教训:课上实践多是之前课下学习的测试,管理规划好之前课下实践时所用的代码,才能在课上快速并在老师要求的时间内完成任务。
-** 整体评价一下第1周作业中自己提出的问题是不是抓住了学习重点**:第一周提出的问题多是参考每章书后的总结提出的,有的切中了要点,有的却也偏离。 -
回答一下第1周作业中自己提出的问题
- 第一章 存储器中的寄存器、主存、高速缓存、二级存储是怎样运行的?
- 高速缓冲存储器用来改善主存储器与中央处理器的速度匹配问题。辅助存储器用于扩大存储空间。主存储器工作时,首先由中央处理器将地址送至存储器的地址寄存器并译码,同时接收由中央处理器发出的"读"或"写"命令。于是,存储器就按照地址译码的输出确定相应的存储单元。
- 第二章 IEEE浮点是什么?
- IEEE定义了多种浮点格式,但最常见的是三种类型:单精度、双精度、扩展双精度。
- 第三章 过程调用与栈帧结构、转移控制的关系?
- 大多数CPU上的程序实现使用栈来支持函数调用操作。栈被用来传递函数参数、存储返回信息、临时保存寄存器原有值以备恢复以及用来存储局部数据。
- 第四章 Y86如何顺序实现?
- Y86将处理组织成阶段包括取指、译码、执行、访问、写回、更新PC
- 第五章 并行性是什么?
- 并行性是指计算机系统具有可以同时进行运算或操作的特性,在同一时间完成两种或两种以上工作。它包括同时性与并发性两种含义。同时性指两个或两个以上事件在同一时刻发生。并发性指两个或两个以上事件在同一时间间隔发生。
- 第六章 什么是储存器山?
- 存储器山是一种综合研究存储器层次结构的工具。它反映了存储器层次结构中不同层次的带宽。也反映了具有不同的时间局部性与空间局部性的程序的性能。通过分析存储器山的数据,还可以看出存储器系统的部分硬件参数。
- 第七章 如何从应用程序加载和链接共享库?
- Linux中存在两种库类型,一种称之为静态库。以.a 后缀。这种库本身在编译成目标文件的时候是和应用程序链接在一起的,所以编译出来的应用程序相对较大。第二种称之为动态链接共享库。以.so为后缀。虽然这种库形式只有一种,但是在使用中可以有两种形式:
- 运行(runtime)时动态链接,共享库在编译器编译时被链接,但并没有包括在应用程序中(目标程序中),只在运行时链接。
- 运行中使用动态链接装载器中的函数来进行动态的加载、卸载或者链接。
- 第八章 回收子进程的具体过程?
- 一般的方式是父进程负责来回收子进程的资源,采用wait()和waitpid()函数。
- 第九章 为什么要使用动态存储器分配?
- 程序员并不清楚某一数据需要的具体内存空间大小时,可以使用动态分配
- 第十章 I/O重定向是什么?
- I/O重定向是一个过程,这个过程捕捉一个文件、或命令、或程序、或脚本、甚至代码块的输出,然后把捕捉到的输出,作为输入发送给另外一个文件、或命令、或程序、或脚本
- 第十一章 套接字接口具体的功能是什么?
- 套接字接口利用下层的网络通信协议功能和系统调用实现实际的通信工作
- 第十二章 并发编程的作用是什么?
- 使计算机能够同时处理多个事情,提高效率
-
你有什么项目被加分,谈谈你的经验
-
你有什么项目被扣分,谈谈你的教训
- 在代码托管方面因个人失误,应当铭记老师多次强调的及时备份
课程收获与不足
- 自己的收获(投入,效率,效果等):本学期的学习虽然不能说是完全掌握的本门课程,但是对linux的编译,汇编,存储,并发等方面也有了一个系统的认识与了解,同时和本学期的另一门课程操作系统的学习有了一些融合理解。
- 自己需要改进的地方:关于教材学习效率,以及课下实践时的备份等方面。
- 给开学初的你和学弟学妹们的学习建议:及时备份,最好在假期就开始阅读并理解这门课程,这样才能在开学后能够更好的跟上老师的进度,收获更多。
- 如果重新学习这门课,怎么做才可以学的更好:在假期时就开始提前预习这么课程,注重书本和老师所讲的结合。
问卷调查
- 你平均每周投入到本课程多长时间?大概10-15h
- 每周的学习效率有提高吗?在能够理解老师每周的内容与要求后,学习的效率有所提高。
- 学习效果自己满意吗?感觉还可以进一步提升,如果能够不将所有的任务都堆在周末,学习效率与效果应该会更好。
- 课程结束后会继续一周至少一篇博客吗?并不敢保证,不过这一年的学习已经让我们有了将总结写入博客的习惯,在后续的学习中可能也会持续下去。
- 你觉得这门课老师应该继续做哪一件事情?关于博客的总结以及码云的验收。
- 你觉得这门课老师应该停止做哪一件事情?重复的工作。。比如实验时蓝墨云已经提交过的博客要求再提交一遍。。
- 你觉得这门课老师应该开始做什么新的事情?对课下测试和课上实践的内容进行适当的讲解
- 给出你的总结的链接和二维码
- 总结