首页 > 代码库 > 20145239杜文超 《信息安全系统设计基础》课程总结

20145239杜文超 《信息安全系统设计基础》课程总结

20145239杜文超 《信息安全系统设计基础》课程总结

每周作业链接汇总

    • 第0周作业:
      • 简要内容:安装VirtualBox,安装Ubuntu,预习Linux基础入门。
      • 二维码:
        技术分享
    • 第一周作业:
      • 简要内容:了解Linux操作系统,掌握核心的linux命令。
      • 二维码:
        技术分享
    • 第二周作业:
      • 简要内容:熟悉Linux系统的开发环境、vi的基本操作、gcc编译器的基本原理、gcc编译器的常用选项、如何使用gdb调试技术。
      • 二维码:
        技术分享
    • 第三周作业:
      • 简要内容:理解“信息=位+上下文”。
      • 二维码:
        技术分享
    • 第五周作业:
      • 简要内容:理解逆向,熟悉X86汇编基础、ISA。
      • 二维码:
        技术分享
    • 第六周作业:
      • 简要内容:介绍了ISA抽象,掌握流水线和实现方式,安装Y86处理器。
      • 二维码:
        技术分享
    • 第七周作业:
      • 简要内容:了解常见的存储技术(RAM、ROM、磁盘、固态硬盘等),掌握局部性原理、缓存思想、局部性原理和缓存思想在存储层次结构中的应用以及高速缓存的原理和应用。
      • 二维码:
        技术分享
    • 第八周作业:
      • 简要内容:期中总结。
      • 二维码:
        技术分享
    • 第九周作业:
      • 简要内容:掌握Unix/Linux系统级I/O、RIO以及I/O重定向的方法。
      • 二维码:
        技术分享
    • 第十周作业:
      • 简要内容:学习视频,编译运行并分析了实践代码。
      • 二维码:
        技术分享
    • 第十一周作业:
      • 简要内容:分辨数组指针、指针数组、函数指针、指针函数的区别,理解异常的种类、进程和并发的概念。
      • 二维码:
        技术分享
    • 第十二周作业:
      • 简要内容:巩固第九周代码,第十周代码,第十一周代码。
      • 二维码:
        技术分享
    • 第十三周作业:
      • 简要内容:了解线程并发的方式,线程控制及相关系统调用、线程同步互斥及相关系统调用。
      • 二维码:
        技术分享
    • 第十四周作业:
      • 简要内容:掌握虚拟存储器的概念和作用、地址翻译的概念、存储器映射、动态存储器分配的方法、垃圾收集以及C语言中与存储器有关的错误。
      • 二维码:
        技术分享

实验报告链接汇总

    • 实验一 开发环境的熟悉
      技术分享

    • 实验二 固件开发
      技术分享

    • 实验三 实时系统的移植
      技术分享

    • 实验四 驱动程序设计
      技术分享

    • 实验五 网络通信
      技术分享

 

代码托管链接

  • 码云:http://git.oschina.net/929210354/Linux

技术分享

  • 我的电脑硬盘于12月18日发生了损坏,硬盘里所有内容丢失,维修后使用了一学期的虚拟机没有了。因此代码量汇总无法统计,所述情况句句属实,还望老师谅解!真的非常抱歉。

 

  • 代码驱动的学习做到没有?

      做到了代码驱动的学习。在第六周之前我敲代码运行代码都是很随意的,所有文件都扔在一个文件夹里,杂乱无章效率非常低下,导致一度进入了待及格行列,于是赶快参照老师博客《代码驱动的学习》重新建立了树状的代码存放目录,并重新git了前几周的代码,养成了敲一个代码commit一下的好习惯,学习效率大幅度增强,仅一周便脱离了待及格。

  • 实践上有什么经验教训?

      从安装虚拟机开始,我们学习这门课程的过程就是一个不断发现问题并解决问题的过程。很多时候面对一个无法解决的问题时容易着急上火,可能一怒之下就想逃避问题或者干脆放弃,所以很多同学都到了快期末才装好虚拟机。我想说其实只要是有操作成功的同学在,说明你遇到的问题就不是大问题,是可以解决的,从心态上就要保持一种不畏惧困难,勇于主动解决困难的心理。不管是安装软件遇到问题还是编译代码遇到问题都要多思考,少抱怨。先自己想办法,实在不行再求助同学或老师。

  • 整体评价一下第0周作业中自己提出的问题是不是抓住了学习重点

  部分抓住了本学期的重点,但问题本身过于笼统和肤浅。

  • 回答一下第0周作业中自己提出的问题

1.各种存储设备之间的空间如何合理分配?

  金字塔结构,以最优的控制调度算法和合理的成本,构成具有性能可接受的存储系统。

2.各种不同编码的运算区别是什么?

  对bit位的操作数和操作方式不同。

3.各种对数组的操作是怎么样实现的?

  各种栈桢结构、寄存器、转移控制以及数据传送指令的配合。

4.处理器的流水线原理是什么?

  CPU将操作分成一个一个的阶段(stage)。每个stage都是由一个组合逻辑电路和一个流水线寄存器构成的。
  CPU通过时钟周期来控制信号,如果遇到了时钟的上升沿,那么就会转移到下一个阶段。
  在CPU内部,形成了一套取指令-译码-执行-访存-写回的硬件设计。
  当有数据完成了取指令的操作的时候,就可以发下一个取指令的信号了,这样可以保证取指令的硬件逻辑不会闲着。

5.优化程序性能有哪些方法?

  合适的算法和数据结构,编写出编译器能够有效优化以转换成高效可执行代码的源代码,多线程并行算法。

6.存储器是由哪些单元组成的?

  存储体、地址寄存器、地址译码驱动电路、读/写控制逻辑、数据寄存器、读/写驱动器

7.重定位是如何实现的?

  例:

  首先创建文件 file1          vi file1
  创建文件 file2 vi file2
  然后vi file1 你输入内容,同样对文件2操作完成输入之后输入以下命令
  cat file1 file2 >file3

8.在信号传递中如何规避错误风险?

  待处理信号被阻塞。待处理信号不会排队等待。系统调用可以被中断。同步流。

9.虚拟存储器有哪些功能?

  当运行一个程序时,如果他要求的内存超过物理内存的容量时,就会把这个程序分步运行。先完成一部分功能,完成这部分功能后,这部分程序就会退出内存,把这些内存空间分给下面要运行的程序。这样程序运行就会显得相当慢。虚拟内存就是在物理内存不够的时候当物理内存用的,即拿出一部分硬盘空间来充当内存使用,当内存占用完时,电脑就会自动调用硬盘来充当内存,以缓解内存的紧张。明显提高程序的运行速度

10.我们该使用哪些I/O函数? 

open 打开文件描述符
read 读
write 写
close 关闭文件描述符
fcntl 修改文件描述符,例如改为不阻塞
lseek 移动文件读写的当前位置
ioctl 与fcntl类似
readdir 读取目录
select 多路选择
readlink 读取符号链接
stat 读取文件属性

11.web服务器如何搭建?

  这个问题太笼统,主要是要学好socket编程,理解代码。

12.什么叫并发编程?

  所谓并发编程是指在一台处理器上“同时”处理多个任务。并发是在同一实体上的多个事件。多个事件在同一时间间隔发生。

加扣分项目

  • 你有什么项目被加分,谈谈你的经验:

优秀作业

第十周作业:

二维码:
技术分享

教程

Linux环境下使用dosemu写汇编

技术分享

 

  • 你有什么项目被扣分,谈谈你的教训:

  有两次博客完成后忘记提交作业,教训就是做完一件事以后要再多回想一下事情做得是否完善,有无缺漏和改进之处。

 

  • 待及格管理制度的优缺点:

  曾经进入过一次待及格行列,还记得当时被拉入了一个叫“梁山好汉”的群,里面都是待及格的小伙伴,但我只在里面呆了一个星期,所以感受不深。这个制度我觉得是有必要继续推行的,它在督促后部同学学习积极性上是起了很大作用的。缺点是我感觉每周写两篇博客并不现实,待及格的同学能认真自主的完成一篇博客已经非常困难,两篇有点强人所难,可能会起到反作用。

 

  • 课程收获与不足

  自己的收获与需要改进的地方:

  说收获颇丰太假,说没有一点收获那更是撒谎,毕竟这是我本学期投入时间最多的一门课程,虽然最终成绩不是非常理想,但我知道这个成绩和我的努力是成正比的,我能很明显的感受到自己和高分同学的投入力度和学习态度上的差距。我感觉这门课想及格其实很容易,因为除去每周的测试还有很多可以加分的地方,而且很多是可以通过外界的帮助来得分的项目,自由度比较高,但是想要得高分还是比较困难。我感觉这学期的也花了很多时间看书敲代码,但是对于教材里的许多内容还是一知半解,我在网上查过我们的这本教材《深入理解计算机系统》,他被喻为计算机界的三本“圣经”之一。为什么要费那么大精力千方百计的让我们精读这本书,其实我真的可以感受到娄老师的良苦用心,我也知道我每周日红着眼睛疲倦敲下的总结绝不是无用功。从开学到期末,我看到了许许多多同学对这门课态度的改变,可能很多是被逼的,但我发现自己真的对计算机、对代码、对编程不是那么的排斥和恐惧了,我真的非常感谢这门课对我思想态度上的改变。然而最终可能还是因为自己有时的懒惰,没有把这门课学到精通的地步,只能说懂了个大概,但是很多编程和学习的习惯已经在我身上留下了深深的烙印,希望它们能在我今后的道路上真正帮助到我。

  • 给开学初的你和学弟学妹们的学习建议:

  该做的实践一项都不能偷懒,不要总想着说反正做了也就是那样,还是不懂感觉没有意义,你先做,做完了再看到底有没有意义。

  • 问卷调查:
    • 你平均每周投入到本课程多长时间?——15-20小时。
    • 每周的学习效率有提高吗?——有。
    • 学习效果自己满意吗?——一般,不是很满意。
    • 课程结束后会继续一周至少一篇博客吗?——可能不会。
    • 你觉得这门课老师应该继续做哪一件事情?——实行待及格管理制度。
    • 你觉得这门课老师应该停止做哪一件事情?——没有明确规则的、不公平的、主观随意的加分或扣分。
    • 你觉得这门课老师应该开始做什么新的事情?——分层次教学,学生的资质良莠不齐,一把抓对有些同学是强人所难。

 

  • 给出你的总结的链接和二维码:

 本文链接:http://www.cnblogs.com/dwc929210354/p/6217325.html

二维码:

技术分享

20145239杜文超 《信息安全系统设计基础》课程总结