20155328 《信息安全系统设计基础》 课程总结

  • 每周作业链接汇总

    • 第1周作业:学习教材第一章与第七章“链接”

    • 第2周作业:补充课堂提交,学习静态库与共享库,编写myod,实现makefile。

    • 第3周作业:理解有符号数、无符号数、浮点数的表示。

    • 第4周作业:编写系统调用版myod,并尝试用C语言实现Linux中head和tail命令。

    • 第5周作业:学习X86汇编基础、ISA。

    • 第6周作业:学习异常、父进程与子进程。

    • 第7周作业:ISA抽象及其作用、流水线和实现方式。

    • 第8周作业:学习客户端-服务器模型、线程,读者-写者。

    • 第9周作业:磁盘、存储器结构与局部性原理。

    • 第11周作业:虚拟存储器、存储器映射与动态存储方法。

    • 第13周作业:重复学习异常、进程、信号等。

    • 第14周作业:链接、符号解析、重定位。

  • 实验报告链接汇总

    • 实验一 开发环境的熟悉:熟悉交叉编译环境,在目标机中编译运行简单程序。

    • 实验二 固件程序设计:在KEIL-MDK中添加芯片库,完成LED和UART发送与中断接收实验。

    • 实验三 实时系统:基于Linux Socket程序设计实现wc(1)服务器和客户端,并使用多线程实现wc服务器。

    • 实验四 外设驱动程序设计:嵌入式Linux应用程序开发

  • 代码托管

    • 截图 git log --pretty=format:"%h - %an, %ar : %s" 的结果

    • 代码量汇总提交statistics.sh的支持截图

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

    感觉自己做的有些不足,敲代码不是太主动。

    • 加点代码,改点代码是理解的最好方式,参考编程的智慧,谈谈你的心得

    代码重点是在质而不是量,需在认真分析,谨慎推敲后写出代码。在弄懂代码的情况下,对自己的代码进行优化,才能不断提升。

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

    本学期的课堂实践大多数都没有在课堂上规定的时间内完成,说明自己的确是自学得不太到位,没有抓住重点透彻学习。通过课下重做实践的认真学习,感觉自己掌握得更明白了。

  • 第一周提出的问题解答

    • 第一章:处理器读取并解释存在内存中的指令是怎样实现的?

    CPU执行指令时,是从指令寄存器中取指令的。指令加载到指令寄存器的过程和加载数据是类似的。

    • 第三章:减轻缓冲区溢出威胁的措施有哪些?

    1.通过使被攻击程序的数据段地址空间不可执行,从而使得攻击者不可能执行被植入被攻击程序输入缓冲区的代码,这种技术被称为非执行的缓冲区技术。2.用grep来搜索源代码中容易产生漏洞的库的调用,编写正确的代码。

    • 第四章:为什么五阶段处理器流水线更加实用?

    减少了指令的平均执行时间,可以认为是减少了每条指令的CPI,也可以说是减少了时钟周期的长度。

    • 第五章:如何根据一个程序的图形化表示中的关键路径来测量一个程序可能的性能?

    增加生成的机器代码中指令级并行度的变换,因而提高了程序在现代"超标量(superscalar)"处理器上的性能。

    • 第六章:如何通过改善程序的时间局部性和空间局部性来提高应用程序的性能?

    一段时间内尽量访问地址相近的变量等。

    • 第七章:如何利用共享库?

    用于模块化的开发与扩展。

    • 第八章:如何理解并发?

    并发性,又称共行性,是指能处理多个同时性活动的能力。并发的实质是一个物理CPU(也可以多个物理CPU) 在若干道程序之间多路复用,并发性是对有限物理资源强制行使多用户共享以提高效率。

    • 第九章:虚拟内存相比主存有什么优势?

    可以弥补物理内存大小的不足;一定程度的提高反映速度;减少对物理内存的读取从而保护内存延长内存使用寿命。

    • 第十章:标准I/O与UnixI/O有什么区别和联系?

    文件I/O:文件I/O称之为不带缓存的IO(unbuffered I/O)。不带缓存指的是每个read,write都调用内核中的一个系统调用。也就是一般所说的低级I/O——操作系统提供的基本IO服务,与os绑定,特定于linix或unix平台。

    标准I/O:标准I/O是ANSI C建立的一个标准I/O模型,是一个标准函数包和stdio.h头文件中的定义,具有一定的可移植性。标准I/O库处理很多细节。例如缓存分配,以优化长度执行I/O等。标准的I/O提供了三种类型的缓存。(1)全缓存:当填满标准I/O缓存后才进行实际的I/O操作。 (2)行缓存:当输入或输出中遇到新行符时,标准I/O库执行I/O操作。 (3)不带缓存:stderr就是了。

    • 第十二章:可重入性是一种什么样的属性?

    可重入(reentrant)函数可以由多于一个任务并发使用,而不必担心数据错误。相反,不可重入(non-reentrant)函数不能由超过一个任务所共享,除非能确保函数的互斥(或者使用信号量,或者在代码的关键部分禁用中断)。可重入函数可以在任意时刻被中断,稍后再继续运行,不会丢失数据。可重入函数要么使用本地变量,要么在使用全局变量时保护自己的数据。

  • 课堂实践补充博客汇总

    • 第六周

    • 第八周

    • mypwd

  • 课程收获与不足

    • 收获

    写了快一年的博客,最深刻的一个收获就是记录自己学到的东西。如果自学没有记录,随着记忆的逐渐丢失学到的东西也会慢慢丢失。记录后可以翻看自己的笔记,多加巩固。

    • 自己需要改进的地方

    动手写代码不够积极。

      - 关于结对因为我结对的对象是室友,所以经常能相互沟通。比如看书或者写代码的时候遇到不理解的部分可以互相解惑。我也会看她的博客,学习。
  • 给开学初的学弟学妹的建议

每周的任务不要堆到周末来做,每天学习一点,一边学习一边记录效果会好很多。

  • 问卷调查

    • 你平均每周投入到本课程多长时间?

    20小时。

    • 每周的学习效率有提高吗?

    有。

    • 学习效果自己满意吗?

    不是太满意。有时候会比较怠惰把任务留到周末,就学得不是太细致。

    • 课程结束后会继续一周至少一篇博客吗?

    不能保证一周一定有一篇博客。但需要记录的东西会去记录。

    • 你觉得这门课老师应该继续做哪一件事情?

    课下测试。

    • 你觉得这门课老师应该停止做哪一件事情?

    设置笔记格式...记笔记有个人的习惯。

转载于:https://www.cnblogs.com/zyqzyq/p/8158264.html

20155328 《信息安全系统设计基础》 课程总结相关推荐

  1. 20155328 《信息安全系统设计基础》第六周 课堂提交补充

    20155328 <信息安全系统设计基础>第六周 课堂提交补充 第六周课上测试-3 编写一个程序w0603,运行以下代码: short int v=-学号后四位; unsigned sho ...

  2. 20145223 《信息安全系统设计基础》课程总结

    20145223 <信息安全系统设计基础>课程总结 每周作业链接汇总 •第0周作业: •简要内容:学会了安装虚拟机VirtualBox和Linux系统,预习了Linux基础入门,对课程的内 ...

  3. 2017-2018-1 20155328 《信息安全系统设计基础》第十四周学习总结

    2017-2018-1 20155328 <信息安全系统设计基础>第十四周学习总结 本周学习任务是找出自己本学期学得最差的一章,重新学,总结新的收获.我认为自己学得最差的一章是教材第七章& ...

  4. 20155308 《信息安全系统设计基础》课程总结

    20155308 <信息安全系统设计基础>课程总结 每周作业链接汇总 第一周作业:第一章<计算机系统漫游>第七章<链接> 第二周作业:第二周课上+课下测试 第三周作 ...

  5. 20145307《信息安全系统设计基础》课程总结

    20145307<信息安全系统设计基础>课程总结 每周作业链接汇总 第0周 浏览课本内容,结合每一章提出自己想知道的问题,安装虚拟机. 20145307 <信息安全系统设计基础> ...

  6. 20155330 《信息安全系统设计基础》课程总结

    20155330 <信息安全系统设计基础>课程总结 每周作业链接汇总 第一周作业:使用gcc编译器的常用选项.使用gdb调试技术.makefile基本原理及语法规范 第二周作业:vi测试. ...

  7. 20145201 《信息安全系统设计基础》课程总结

    每周作业链接汇总 第0周作业:http://www.cnblogs.com/20145201lzx/p/5862104.html 师生关系 每章问题 虚拟机安装 第一周作业:http://www.cn ...

  8. 20145335 《信息安全系统设计基础》课程总结

    20145335 <信息安全系统设计基础>课程总结 每周作业链接汇总 第0周:预习课本问题及安装虚拟机 第1周:了解linux核心命令 第2周:熟悉vim操作,用gcc编译代码 第3周:初 ...

  9. 2015-2016-1学期 《信息安全系统设计基础》课程总结

    2015-2016-1 <信息安全系统设计基础>课程总结 这门课程今年授课和考试方式有很大的变化. 授课方面的改革总结了十几年的教学经验,特别是吸收<构建之法>的一些实践,采用 ...

最新文章

  1. 朋友圈爆款背后的计算机视觉技术与应用(附视频)
  2. JavaScript中的静态成员
  3. 自定义拦截器和提供的拦截器
  4. SAP常见问题与解决办法
  5. java ajax 登陆验证,Spring Security4实例(Java config版)——ajax登录,自定义验证
  6. [SpringBoot2]容器功能_底层注解配置绑定_@Configuration@Import@Conditional@ImportResource
  7. 绑定dictionary 给定关键字不再字典中_对字典嵌套的理解及二级下拉菜单的制作...
  8. 智能编撰:使用神经网络协助编写电子邮件
  9. .ipynb文件怎么打开_Win10文件夹打开拒绝访问怎么解决?
  10. Linux学习笔记之权限与命令之间的关系(重要)及文件与目录知识总结
  11. html中opacity的使用
  12. UDP协议与TCP协议
  13. 支持单个生成的DM码制作工具(测试)
  14. php 755,chmod 命令——chmod 755与 chmod 4755区别_PHP教程
  15. java-学生管理系统源代码
  16. 贴片led正负极判断
  17. 笔记本触摸屏\板使用小技巧,没有鼠标也能轻松使用电脑
  18. ps转手绘课程皮肤处理--day02学习笔记
  19. NAOMI: Non-Autoregressive MultiresolutionSequence Imputation(非自回归多分辨率序列填补)论文详解
  20. J2EE高级开发框架小课程之Spring框架2——Spring容器作用域,生命周期,Spring管理对象之间依赖关系

热门文章

  1. Struts2中action获取request、response、session的方式
  2. 关于持续集成几点知识点
  3. 51cto博客程序错误
  4. 【SM2证书】利用BC的X509v3CertificateBuilder组装X509国密证书
  5. nginx-lua-openresty-graphicsmagick 下载远程图片,本地缩图红缓存加水印
  6. mac本地搭建kafka
  7. ORA-32004错误的解决方法
  8. mysql 游标 ,嵌套游标
  9. Windows下MySQL安装
  10. ES : 软件工程学的复杂度理论及物理学解释