2017-2018-1 20155331 《信息安全系统设计基础》第1周学习总结

2017-2018-1 20155331 《信息安全系统设计基础》第1周学习总结

教材学习内容总结

信息就是位+上下文

系统中所有信息——包括磁盘文件、存储器中的程序、存储器中存放的用户数据以及网上传送的数据,都是由一串位表示的,区分不同数据对象的唯一方法是我们读到这些数据对象时的上下文。ASCII字符构成的文件是文本文件,所有其他文件都是二进制文件。

Hello程序的生命周期从高级C语言程序开始,每条C语句被转化为一系列“低级机器语言”指令,然后这些指令按照“可执行目标程序”的格式打包,并以二进制磁盘文件的形式存放起来,目标程序也称为“可执行目标文件”。

源文件到目标文件的转化由编译器驱动程序完成,unix> gcc -o hello hello.c 这里GCC编译器驱动程序读取源文件并把它翻译成一个可执行目标文件。翻译过程分为四个阶段:预处理、编译、汇编、链接,预处理器、编译器、汇编器、链接器一起构成编译系统。

系统的硬件组成:总线、I/O设备、内存、处理器。

文件就是字节序列。

并发:一个同时具有多个活动的系统。并行:用并发使一个系统运行地更快,并行可以在计算机系统多个抽象层次上运用。按照系统层次结构由高到低的顺序强调三个层次:线程级并发、指令级并行、单指令多数据并行。

在处理器里,指令集结构提供了对实际处理器硬件的抽象。

处理器读取并解释存放在主存里的二进制指令。

操作系统内核是应用程序和硬件之间的媒介,提供三个基本的抽象:

文件是对I/O设备的抽象;

虚拟存储器是对主存和磁盘的抽象;

进程是对处理器、主存和I/O设备的抽象。

网络提供了计算机系统之间通信的手段。

静态链接器主要任务:符号解析、重定位。

目标文件形式:可重定位目标文件、可执行目标文件、共享目标文件。

每个可重定位目标模块m都有一个符号表,它包含m所定义和引用的符号的信息,有三种不同的符号:

由m定义并能被其他模块引用的全局符号;

由其他模块定义并被模块m引用的全局符号;

只被模块m定义和引用的本地符号。

执行的命令为gcc,编译指令:gcc -c hello.c相对应的makefile写为:

The simplest example

hello.o:hello.c hello.h

gcc -c hello.c -o hello.o

查看:od-txt

objdump -d hello.o

预处理:hello.c     =>     hello.i

编译:hello.i     =>     hello.s

汇编:hello.s    =>     hello.o

E        I

S        S

C        O

存储程:A+shift+T

模块:xx.c    xx.h

高内聚  SRP

低耦合  DIP

模块分发:xx.c   xx.lib   xx.dll

生成静态库:ar  res  libhello.a  hello.o

上周考试错题总结

暂无

结对及互评

暂无

其他(感悟、思考等,可选)

因为已经挺长的时间没敲代码了,所以可以明显的感觉到自己的生疏,好多东西都已经忘记了,所以我从下周开始会更加积极的练习。

posted @ 2017-09-24 22:36  20155331  阅读(176)  评论(2编辑  收藏  举报