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


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

    每周作业链接汇总

    第0周

    第一周

    第二周

    第三周

    • 教材第二章内容,理解二进制在计算机中的重要地位,掌握布尔运算在C语言中的应用,理解有符号整数、无符号整数、浮点数的表示,理解补码的重要性,进一步理解“信息=位+上下文”,实验楼实验学习。

    • 20145240 《信息安全系统设计基础》第三周学习总结

    第四周

    第五周

    第六周

    第七周

    • 教材第六章内容,了解常见的存储技术(RAM、ROM、磁盘、固态硬盘等),理解局部性原理,理解缓存思想,理解局部性原理和缓存思想在存储层次结构中的应用,高速缓存的原理和应用,实验楼实验。

    • 20145240 《信息安全系统设计基础》第七周学习总结

    第八周

    第九周

    第十周

    第十一周

    • 教材第八章《异常控制流》,第十章《系统级I/O》了解异常及其种类,理解进程和并发的概念,掌握进程创建和控制的系统调用及函数使用:fork,exec,wait,waitpid,exit,getpid,getppid,sleep,pause,setenv,unsetenv,理解数组指针、指针数组、函数指针、指针函数的区别,理解信号机制:kill,alarm,signal,sigaction,掌握管道和I/O重定向:pipe, dup, dup2。

    • 20145240 《信息安全系统设计基础》第十一周学习总结

    第十二周

    第十三周

    第十四周

    实验报告链接汇总

    实验一 开发环境的熟悉

    • 熟悉 linux 开发环境,学会基于 S3C2410 的 linux 开发环境的配置和使用,使用linux的armv4l-unknown-linux-gcc编译,使用基于NFS方式的下载调试,了解嵌入式开发的基本过程,正确使用连接线等实验仪器,并注意保护实验箱。实验结束之后将实验箱送回。

    • 20145240《信息安全系统设计基础》实验一 开发环境的熟悉

    实验二 固件设计

    • 熟悉 linux 开发环境,学会基于 S3C2410 的 linux 开发环境的配置和使用,使用linux的armv4l-unknown-linux-gcc编译,使用基于NFS方式的下载调试,了解嵌入式开发的基本过程,正确使用连接线等实验仪器,并注意保护实验箱。实验结束之后将实验箱送回。

    • 20145240 《信息安全系统设计基础》实验二 固件设计

    实验三 实时系统的移植

    实验四 驱动程序设计

    实验五 网络通信

    代码托管链接和二维码

    • git log --pretty=format:"%h - %an, %ar : %s"

    • 代码量汇总

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

    随着课程的深入,对代码驱动的学习的方法也越来越得心应手,感受到了对我们日常学习的帮助之大,每周学习一部分,每周都有不同的进步,但还有很多地方需要继续学习。

    • 加点代码,改点代码是理解的最好方式,谈谈你的心得

    若想彻底搞懂一个代码,编译运行修改测试都是必不可少的,除了单纯的运行,后期修改则更考验是否对代码真正的有更加深刻的理解,不仅仅停留在表面,单纯的读懂而已。

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

    一开始几周还没有养成独立修改代码的习惯,总是运行完掌握功能及主要代码后就觉得没事了,但发现有时每周测试时,题目稍微灵活一点就会陷入迷茫,后面开始自己动手改代码,有助于自己更加深入的理解整个程序。

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

    1.从源文件到目标文件的转化,编译驱动程序是如何完成的?以hello.c为例

    过程是由编译器完成的,gcc的编译器驱动程序读取源文件hello.c,并把它翻译成一个可执行目标文件hello,这个过程是分为四个阶段完成的

    预处理阶段:将.c 文件转化成 .i文件,使用的gcc命令是:gcc –E,对应于预处理命令cpp;

    编译阶段:将.c/.h文件转换成.s文件,使用的gcc命令是:gcc –S,对应于编译命令 cc –S;

    汇编阶段:将.s 文件转化成 .o文件,使用的gcc 命令是:gcc –c,对应于汇编命令是 as;

    链接阶段:将.o文件转化成可执行程序,使用的gcc 命令是: gcc,对应于链接命令是 ld;

    2.各种进制及编码的转换及运算

    进制转化:

    • x=2^n转化为十六进制

    将x写成x=2n的形式,令n=i+4j,x的十六进制表示为:开头为2i的值,后面补j个0。

    • 十进制转化为十六进制

    十进制数x反复除以16,得十六进制数

    • 十六进制转化为十进制

    十六进制数x反复乘以16,得十进制数

    3.程序机器级代码的格式及指令的规范

    gcc -01 -o p p1.c

    -01 表示使用第一级优化。优化的级别与编译时间和最终产生代码的形式都有关系,一般认为第二级优化-02 是较好的选择。

    -o 表示将p1.c编译后的可执行文件命名为p

    4.处理器的设计及体系结构

    指令体系结构:一个处理器支持的指令和指令的字节级编码

    5.优化编译器的功能

    表示程序性能,消除循环的低效率,消除不必要的存储器引用。

    6.存储器的层次结构

    存储器系统是一个具有不同容量、成本和访问时间的存储器设备的层次结构。

    随机访问存储器层次结构:硬件和软件的这些基本属性(存储技术、计算机软件)互相补充得很完美,这种互相补充的性质使人想到一种组织存储器系统的方法。

    高速缓存存储器层次结构只有三层:CPU寄存器、DRAM主存储器和磁盘存储。

    7.Unix中理解和处理目标文件的工具

    AR :创建静态库,插入、删除、列出和提取成员。

    STRINGS :列出目标文件中所有可以打印的字符串。

    STRIP :从目标文件中删除符号表信息。

    NM :列出目标文件符号表中定义的符号。

    SIZE :列出目标文件中节的名字和大小。

    READELF :显示一个目标文件的完整结构,包括ELF 头中编码的所有信息。

    OBJDUMP :显示目标文件的所有信息,最有用的功能是反汇编.text节中的二进制指令。

    LDD :列出可执行文件在运行时需要的共享库。

    8.异常处理的方式

    异常的一部分由硬件实现,一部分由操作系统实现,它就是控制流中的突变,用来响应处理器状态的某些变化。注意和语言中的应用级的异常概念区分。

    处理器中,状态被编码为不同的位和信号,状态变化被称为事件,事件不一定和当前指令的执行有关。处理器检测到有事件发生时,会通过异常表进行间接过程调用,到一个专门设计处理事件的操作系统子程序,称为异常处理程序。

    异常处理程序完成处理后,根据异常事件的类型会(执行一种):

    将控制返回给当前指令(事件发生时正在执行的)。

    将控制返回给下一条指令(没有异常将会执行的)。

    终止被中断的程序。

    异常表是一张跳转表,表目k包含异常k的处理程序的地址,在系统启动时由操作系统分配和初始化。系统中每种可能的异常都分配了一个唯一的非负整数的异常号。

    9.虚拟存储器的功能

    虚拟存储器3个重要的能力:

    (1)将主存看作是一个存储在磁盘上的地址空间的高速缓存,在主存中只保护活动的区域,并根据需要在磁盘和主存之间来回传送数据

    (2)为每个进程提供了一致的地址空间,从而简化了存储器管理

    (3)保护了每个进程的地址空间不被其它进程破坏。

    10.如何检索文件夹的相关信息

    ls -l

    11.客户端-服务器编程模型的基本操作

    一个应用是由一个服务器进程和一个或多个客户端进程组成。

    12.并发现象的功能

    访问慢速I/O设备,与人交互,通过推迟工作以降低延迟,服务多个网络客户端,在多个机器上进行并行计算。

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

    优秀作业(给出链接和二维码)

    总结(给出链接和二维码)

    20145240 《信息安全系统设计基础》第六周同学问题总结

    20145240 GDB调试汇编堆栈过程分析测试代码

    扇贝背单词(对四六级有没有影响?)

    有,利用空余时间进行单词的学习很方面,前几天学习的单词后面还会再出现,加深印象。

    优缺点

    优点:老师让我们养成的学习习惯是我们值得学习一辈子的,可能很多同学上了大学就不是很重视日常的学习了,可能有时自己也会这样,但老师帮我们改正了学习的方法,这样期末也没有那么辛苦了,对比能够轻松的发现这门课的优势之处。

    缺点:虚拟机会出现很多难以预测的故障,我的电脑就遭遇了两次,一次彻底不能使用,当时还没有掌握重装这项技能,只能将电脑拿去维修,一次还是重装了虚拟机,两次的原因我觉得是差不多的,不知道什么原因,虚拟机文件变成30G,导致安装虚拟机的盘内存全都满了,由于第一次是在c盘,所以电脑不能使用了,第二次在D盘及时发现才没有造成第一次一样严重的后果,以后虚拟机开一小时左右可以关机使其休息一下,但是这样有点不方便。

    建议

    不清楚家庭作业的重要性和自己应该将家庭作业学习到什么程度,有些学长学姐做过的自己可以用不同的方法做。

    上课坐在最后一排,发卷子一直是最后才发到的,当同学们都已经写了很多题时才拿到卷子,有时候可能没有写完,收卷子时助教却是第一个收,建议发卷子也可以老师您和助教一起分别从前往后从后往前发。

    有些实验内容不是很理解,老师上课只是粗略的讲解了实验的体系,希望老师能够多讲一些实验,还是很感兴趣的。

    课程收获与不足

    深入理解了计算机系统,掌握了多种信息的表示和处理方法,安装了Y86模拟器,学习了使用方法,GDB代码的调试方法,学会了如何优化程序的性能,掌握了存储器的层次结构,异常的处理方法,管道和链接如何操作,网络编程、并发编程等许多新知识,最重要学习的内容是虚拟机,许多操作不当都可能造成电脑的损坏,注意保护及维护电脑。

    自己的收获(投入,效率,效果等)

    这一年来已经习惯了这样的学习方式,有很多收获,这一年来的努力里没有白费,自己能感受到确实学到了更多的东西,不仅仅局限于课本,跟多的重在实践操作上,自己动手解决问题的能力大大增强,想方法解决问题的能力是最重要的。感觉自己的学习方式变得有规划有条理了许多,每周有一个学习目标使得自己学习起来也十分有动力。

    自己需要改进的地方

    有的代码虽然运行了也学习了代码主要函数的作用,但动手该代码和编写代码的时间和次数这学期相对来说比较少,较短的程序可以轻松理解,对稍长的程序理解还是有点难度,但也尽力去做了。每周测试的复习是先参考上一届的题目类型再学习的,还是有些局限性的,可能有几周课本内容实在太多,只能将精力集中投入到每章的重点内容中。

    如果有结对,写一下你提供的帮助或接受了什么帮助,并对老师提供参考建议

    结对实验时,两人合作会进行的更快,一个人来研读步骤,另一人进行操作,效率十分的高,写实验报告时两人再互相一起总结,分享经验,对本次实验的理解又会更进一步。

    给学弟学妹们的学习建议

    保持良好的学习习惯很重要,一定要严格按照老师每周的要求,不要妄想偷懒,成绩不会欺骗你,而且后来会发现,如果一旦刚开始拉下了,后面很难补上,与别人的差距也会越来越大。不要妄想走捷径,脚踏实地认认真真的学习,这门课和其他课程还是有区别的,不要妄想期末突击,老师正是因为这样才每周测试,让我们平时就认真的学习,哪周认没认真学习一测试就轻而易举的看出来了。

    如果重新学习这门课,怎么做才可以学的更好

    一开始虚拟机没有安装好,前几周对虚拟机的操作不熟悉,代码也丢失了许多,要按时完成老师布置的任务,才能跟上课程的节奏。

    问卷调查

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

    20个小时左右,平时有时晚上会学习几个小时,周末一定会留出一天来总结加整理本周所学内容,有一个系统的整理。

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

    后期掌握了学习效果之后整体效率明显提高了,而且每次学习的后半段效率明显比前面高,也可能和自己的性格有关。

    学习效果自己满意吗?

    前期效果不是很满意,中期效果觉得不错,可能后期没有足够的时间和精力投入到这门课的学习中,但时间都是挤出来的,以后还是要继续努力。

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

    希望自己能坚持,因为将来会发现这是一件很有成就感的事情。

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

    每周测试和写博客是一个好方法,博客相当于我们学习的笔记,能够帮我们记录学习时遇到的问题,小组也提供了一个平台让同学们随时交流问题,遇到的问题也已从小组中寻找答案。

    每周公布成绩也让同学们更加清楚自己的学习水平和层次,有利于激励同学们学习。

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

    不是很理解为什么放了链接还要放二维码…

    你觉得这门课老师应该开始做什么新的事情?

    记得有一次测试老师先闭卷再开卷,可以继续尝试此方法,自身先检测一次本周内容的学习情况,老师再给几分钟进行查漏补缺,我觉得会比之前更有效果。

    本文链接和二维码

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

    1. 本学期你与老师和同学交互最多的一篇博客是哪篇?

    第六周。

    2. 本学期被阅读最多的博客是哪一篇?有何经验?

    第六周,可能发表时间较早,实践内容比较多。

    3. 现在评价一下第0周提出的问题的质量,抓住重点了吗?

    有些问题抓住了,第0周都是根据书的大纲提出的,都是选择了自己感兴趣的问题进行提问,有几个可能提的问题比较宽泛,没有详细答案。

  • 相关阅读:
    poj2352树状数组
    hdu1166树状数组
    poj2785双向搜索
    poj2566尺取变形
    poj2100还是尺取
    poj3061尺取法
    poj3320尺取法
    hdu3829最大独立集
    poj2594最小顶点覆盖+传递闭包
    经典换根dp——hdu2196
  • 原文地址:https://www.cnblogs.com/20145240lsj/p/6203306.html
Copyright © 2020-2023  润新知