20145337 《信息安全系统设计基础》课程总结
每周作业链接汇总
-
第0周作业:[(http://www.cnblogs.com/5337my/p/5857743.html)]
- 简要内容:了解软件工程的基本概念,在翻阅中快速熟悉《深入理解计算机系统》这本教材,提出新学期的寄语及感想
- 二维码
-
第一周作业:[(http://www.cnblogs.com/5337my/p/5882066.html)]
- 简要内容:了解Linux操作系统,掌握基本命令
- 二维码
-
第二周作业:[(http://www.cnblogs.com/5337my/p/5906822.html)]
- 简要内容:熟悉Linux开发环境,学习《计算机系统漫游》《链接》,vim编辑器的使用,gcc编译,gdb调试及makefile的使用
- 二维码
-
第三周作业:[(http://www.cnblogs.com/5337my/p/5926522.html)]
- 简要内容:学习《信息的表示及处理》,理解二进制在计算机中的重要地位
- 二维码
-
第五周作业:[(http://www.cnblogs.com/5337my/p/5967460.html)]
- 简要内容:掌握X86汇编基础,汇编相关知识,指令集体系结构
- 二维码
-
第六周作业:[(http://www.cnblogs.com/5337my/p/5990736.html)]
- 简要内容:了解ISA抽象,了解流水线和实现方式
- 二维码
-
第七周作业:[(http://www.cnblogs.com/5337my/p/6013593.html)]
- 简要内容:学习《存储器层次结构》,局部性原理及缓存思想
- 二维码
-
第八周作业:[(http://www.cnblogs.com/5337my/p/6035772.html)]
- 简要内容:复习LInux命令,总结教训不足,复习考题
- 二维码
-
第九周作业:[(http://www.cnblogs.com/5337my/p/6059523.html)]
- 简要内容:学习《系统级I/O》掌握系统编程和系统调用
- 二维码
-
第十周作业:[(http://www.cnblogs.com/5337my/p/6081218.html)]
- 简要内容:学习视频
- 二维码
-
第十一周作业:[(http://www.cnblogs.com/5337my/p/6107792.html)]
- 简要内容:学习异常及其种类,理解进程并发的概念
- 二维码
-
第十二周作业:[(http://www.cnblogs.com/5337my/p/6132131.html)]
- 简要内容:复习前3周代码
- 二维码
-
第十三周作业:[(http://www.cnblogs.com/5337my/p/6161071.html)]
- 简要内容:掌握网络编程及并发编程
- 二维码
-
第十四周作业:[(http://www.cnblogs.com/5337my/p/6195730.html)]
- 简要内容:《虚拟存储器》
- 二维码
实验报告链接汇总
-
实验一 开发环境的熟悉:[(http://www.cnblogs.com/5337my/p/6035854.html)]
- 简要内容:熟悉Linux开发环境,使用armv4l-unknown-linux-gcc指令进行编译
- 二维码
-
实验二 实验名称:[(http://www.cnblogs.com/5337my/p/6060197.html)]
- 简要内容:多线程程序设计,pthread库函数的使用
- 二维码
-
实验三 实时系统的移植:[(http://www.cnblogs.com/5337my/p/6107820.html)]
- 简要内容:安装ADS,安装GIVEIO驱动及JTAG驱动的过程,在arm开发板上测试结果
- 二维码
-
实验四 外设驱动程序设计:[(http://www.cnblogs.com/5337my/p/6081300.html)]
- 简要内容:Linux下进行驱动设计的原理,使用模块方式进行驱动开发调试的过程
- 二维码
-
实验五 网络通信:[(http://www.cnblogs.com/5337my/p/6131879.html)]
- 简要内容:学习在arm开发板上的SOCKET网络编程
- 二维码
代码托管链接和二维码:
- 代码连接:[(https://git.oschina.net/20145337/Linux.git)]
- 二维码
- 因前后重装,历史记录不全,虚拟机中只得部分代码
- 代码量汇总
- wc命令不能遍历子目录,结合find
- wc命令不能遍历子目录,结合find
- 代码驱动的学习做到没有?
- 老师在“代码驱动学习”中提倡使用git,多理解多实践,我做的还远远不够
回答一下第0周作业中自己提出的总题
计算机系统包括哪些知识?
- 计算机系统是硬件和系统软件组成的,它们共同协作以运行应用程序。计算机内部的信息被表示成一组组的位。
- 处理器、操作系统、网络
如何正确使用补码来理解逻辑运算?
- 将有符号数表示成补码再进行 逻辑运算
IA32与C代码区别?
- 程序计数器指示将要执行的下一条指令在存储器中的位置
- 整数寄存器文件包含8个命名的位置,存储32位的值
- 条件码寄存器保存着最近执行的算术或逻辑指令的状态信息
- 一组浮点寄存器存放浮点数据
处理器的体系结构?
- ISA
优化程序性能具体有哪些方法?
- 高级设计:为遇到的问题选择适当的算法和数据结构
- 基本编码原则:消除连续的函数调用、消除不必要的存储器引用
- 低级优化:展开循环、通过使用多个积累变量和重新结合技术、用功能的风格重写条件操作
怎样估算磁盘上一个扇区的访问时间?
- Taccess= Tavg rotation +Tavg seek + Tavg transfer
链接器处理文件有哪些步骤?
- 预处理、翻译、汇编、链接
具体如何发送信号?
- Unix提供了大量向进程发送信号的机制,setpgid函数、/bin/kill/程序发送信号、从键盘发送信号等
怎样翻译虚拟存储器地址?
- 使用虚拟寻址时,CPU通过生成一个虚拟地址来访问主存,将虚拟地址翻译为物理地址的过程称为地址翻译,由MMU即存储器管理单元实现。
Unix I/O和其他有什么区别?
- Unix I/O的概念更方便理解,在某些情况下,高级函数I/O难以实现。Unix I/O可将 网络、磁盘、终端等设备优雅的映射为文件
为什么要用结构存放标量IP地址?
- 把标量地址存放在结构中,是套接字接口早期为了方便管理
什么是并发编程?
- 并发编程分为基于进程的并发编程,基于I/O多路复用的并发编程,基于线程的并发编程。
你有什么项目被加分,谈谈你的经验
-
二维码
-
扇贝背单词:我觉得就我个人而言,对四六级的影响不大。主要是养成一种每天抽空看英语的习惯,除此之外,阅读,口语也很重要,我除了扇贝单词,还使用懒人听书、BBC英语来锻炼听力(这学期的前一段时间,后面太忙就没在听了)还有英语流利说,这个应用对我帮助也很大,锻炼口语
课程收获与不足
自己的收获
- 通过对这课程的学习,我对“计算机系统”这一宏观概念有了比较细致的了解。
- 通过这两个学期的写博客,自己的表达能力和文字组织能力得到提高,写博客帮助我养成了好的学习习惯
- 对这样的学习方式没有了上学期的抵触情绪,不是我不得不做,而是我要做
- 大概学会了使用Linux系统,掌握的常见指令
自己需要改进的地方
- 缺乏实践,就像老师说的,没有实践,只有摘抄是没有太大意义的。
- 时间分配不均衡,对自己要求不严格,任务往往放在周末。导致看书囫囵吞枣,不求甚解,理解不到位
- 主动性不够,调试代码或者书上问题不理解时,没有自己主动思考,求助依赖于搜索引擎
给学弟学妹们的学习建议
- 理论+实践
- 合理安排时间
- 及时查漏补缺,课堂检测出现的问题及时搞懂,不要落在脑后
问卷调查
- 你平均每周投入到本课程多长时间?
- 十几个小时左右,周末用来看书整理及发博客
- 每周的学习效率有提高吗?
- 有提高,上个学期每周看书花去我大部分时间,这个学期结合老师给出的知识点,知道如何高效的看书,攫取重点。但我做的远远不够,需要加强的地方还有很多
- 学习效果自己满意吗?
- 通过自学这门课程,对计算机的各个模块的理解较之以前的确有进步,但由于自己实践部分不够认真,事倍功半吧
- 课程结束后会继续一周至少一篇博客吗?
- 博客是自我积累的很好的一种方式,大学的我们更应该养成建立自我档案的习惯,博客即是一个很好的平台。不敢说每周一篇,我所学到的新知识,所思所悟,我会要求自己把它记录和积累下来,写博客带给我一种好的学习习惯。
- 你觉得这门课老师应该继续做哪一件事情?
- 做中学,培养大家对学习的积极主动
- 每周小测,及时复习查漏
- 通过动手实践来学习
- 你觉得这门课老师应该停止做哪一件事情?
- 暂时没想到
- 你觉得这门课老师应该开始做什么新的事情?
- 任务安排的更均衡,有学有练
- 本文链接[(http://www.cnblogs.com/5337my/p/6201655.html)]
- 二维码