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

20145224 《信息安全系统设计基础》期中总结

Linux Bash使用基础

  • Linux Bash中,Ctrl+a快捷键的作用是将光标移至输入行头
  • 在Ubuntu中,使用sudo apt-get install ddd来安装ddd软件。
  • Linux中没有C盘,D盘,其文件系统的目录是由FHS标准规定好的。
  • Linux Bash中,cd ~ 命令可以切换到'home'目录。
  • Linux Bash中,强制删除test文件的命令是rm -f test
  • Linux Bash中,使用tab进行命令补全。
  • Linux Bash中,使用chmod命令修改文件权限。
  • Linux Bash中,查找home目录中昨天创建的文件的命令是find ~ -ctime 1
  • Linux Bash中,使用tar命令把home目录打包成home.tar的命令是 tar -cf home.tar ~
  • Linux Bash中,zip命令使用-e参数可以创建加密压缩包。
  • Linux Bash中,touch test命令可以创建一个空白文件test。
  • Linux Bash中,ls . | sort 命令的功能是显示当前目录内容并排序
  • Linux Bash中,使用grep查找当前目录下*.c中main函数在那个文件中的命令是grep main *.c
  • Linux Bash中,使用wc统计hello.c和main.c共有几行代码的的命令是wc -l hello.c main.c
  • Linux Bash中,set/env/exprot三个命令功能不等价 。
  • Linux Bash中,把ls命令显示当前目录的结果存入ls.txt的命令输出重定向命令是ls > ls.txt
  • Linux Bash中,cheat find 命令可以查年find命令的使用示例。
  • 数据结构中有二分查找算法,C标准库中有这个功能的函数,这个函数是bsearch
  • 实现“Display files,Sorted by size”功能的ls命令是 ls –S
  • 查找根目录下所有目录的find命令是find / -type d
  • 查找宏 STDOUT_FILENO 的值的命令是grep -nr STDOUT_FILENO /usr/include
  • Linux中查找配置(configure)网卡(interface)的命令是man –k configure | grep interface
  • gdb中使用命令break mainb main 设置main函数断点。
  • gdb中使用命令until可以跳出循环语句。
  • gdb中next和step都可以单步跟踪,根据自顶向下原则应该优先选用next.
  • 删除当前目录下test文件的命令是rm test
  • 当前目录下创建20145300目录的命令是 mkdir 20145300
  • Ubuntu中新建一个叫 lilei 的用户的命令是sudo adduser lilei
  • 将当前目当中的test文件复制到"/home/ljp/"目录中的Linux命令是cp test /home/ljp
  • 解开sim.tar的Linux命令是tar -xvf sim.tar
  • Ubuntu中安装flex的命令是sudo apt-get install flex
  • Linux中建立符号链接(快捷方式)使用的命令是ln 或者 ln -s

教材学习总结

CH01

  • 计算机系统中的所有信息都是位串表示的,所谓信息就是位 + 上下文
  • GCC编译程序的过程分为预处理编译汇编链接四个阶段。
  • CPU中的PC或程序计数器寄存器总指向主存中的某条机器语言指令。
  • 进程是操作系统对正在运行的程序的一种抽象。
  • 网络提供了计算机系统间通信的手段,从特殊系统角度看,网络就是一种I/O设备。
  • 存储层次结构的主要思想是一层上存储器作为低一层存储器的高速缓存

CH02

  • 计算机将信息按位编码,通常组织成字节序列。
  • 本章重点研究了无符号数补码浮点数三种数字表示。
  • 计算机的字长指明整数和指针数所的标称大小。
  • “高对高,低对低”的机器是小端机器
  • 文本数据比二进制数据具有更强的平台独立性。
  • Shannon/香农建立了布尔代数和数字逻辑之间的联系。
  • 计算机执行的整数运算实际上是模运算。
  • IEEE浮点数标准包含符号尾数阶码三部分。
  • GCC中INFINITY表示无穷大

CH03

  • 程序计数器或%eip指示将要执行的下一条指令在内存中的地址。
  • Linux中,对目标代码test.o进行反汇编的命令是objdump -d test.o
  • 两个寄存器%ebp%esp保存着指向程序栈中重要位置的指针。
  • 把立即数0x4050复制到%eax的指令是movl $0x4050 ,%eax
  • jz/jnz指令中跳转条件是由ZF决定的。
  • C语言中的循环结构汇编中可以用条件测试和跳转组合起来实现。
  • 为单个过程(函数)分配的那部分栈叫栈帧
  • Linux汇编中,销毁栈帧的语句是movl %ebp,%esp popl %ebpleave
  • Linux汇编中,需要调用者保存的寄存器有%eax,%edx,%ecx
  • GDB中以16进制形式打印%eax中内容的命令是print /x $eax

CH04

  • Y86中,有8个程序寄存器。
  • YIS或指令集模拟器可是模拟Y86机器代码的执行。
  • 与、或、非三种逻辑门可以用一种门与非门或者或非门实现。
  • HCL表达式a||!a的值是1
  • HCL中,多路复用函数使用情况表达式来描述。
  • bool s= r1 || r2 || r=5 等价于bool s = r in {1,2,5}

CH06

  • SRAM和DRAM掉电后均无法保存里面的内容。
  • 存储器总线连接I/O桥和主存。
  • 对磁盘扇区的访问时间包括三个部分中,传送时间最小。
  • 逻辑磁盘块就是一个块数组。ok
  • DMA传送不需要CPU的干涉。
  • SSD是一种基于闪存的存储技术。
  • 程序访问一个向量,步长越小空间局部性越好。
  • 存储层次结构中最小的缓存是寄存器
  • LRU策略指的是替换策略的缓存会选择最后被访问时间距现在最远的块
  • 发生不命中要执行放置策略
  • 存储层次结构的本质是每一层存储设备都是较低一层的缓存。
  • 高速缓存的容量可以用C=S*E*B 来计算。
  • 程序员可以编写有良好空间和时间局部性的程序来显著改进程序的运行时间。
  • 存储器给出的读访问时间是局部性的一个函数。

CH07

  • Linux系统中,链接器程序是ld
  • gcc –c hello.c 产生的hello.o是可重定位目标文件。
  • 加载器将可执行文件的内容映射到存储器,并运行这个程序。

参考资料

posted @ 2016-11-06 11:24  20145224—陈颢文  阅读(209)  评论(2编辑  收藏  举报