zoukankan      html  css  js  c++  java
  • 《信息安全系统设计基础+Linux 内核分析》第一次学习总结

    《信息安全系统设计基础+Linux 内核分析》第一次学习总结

    教材学习内容总结

    学习了《庖丁解牛》的第一章。知道的概念有:

    • 存储程序计算机 = 冯诺依曼计算机,主要思想是:将程序存放在计算机存储器中,然后按存储器中的程序的首地址来执行程序的第一条指令,接下来就是一步一步按照程序中的编写好的指令来一步一步执行,直至程序结束。

    • 冯诺依曼体系结构的要点如下图。底层是:RAM,ROM,运算器(ALU),控制器,寄存器。 由图可知:寄存器是在CPU中的,而RAM,ROM不是在CPU中的,它们是内存。

    • CPU 像“贪吃蛇”一样,总是在内存里“吃”指令。

    • CPU、内存和I/O设备是通过总线连接的。内存中放着指令和数据。CPU负责解释和执行内存中的指令。

    • IA32 : Intel Architecture 32bit.

    • 寄存器:ABCD是数据寄存器,这四个16位的寄存器可以分为两个独立的8位寄存器使用。E:32位;R:64位;X:128位。

    • 64位中的增加的通用寄存器是可以用户随便使用的。

    • 数据格式

      • Word : 16 bit.
      • Double Words : 32 bit. 4个Byte : l
      • Quad Words : 64 bit.
    • 寻找方式:找“对象” 的方法

      • 寄存器寻址
      • 立即寻址
      • 直接寻址
      • 间接寻址
      • 变址寻址
    • 栈:有书的那部分是栈。栈顶指针:Stack Pointer中是非空的。

      • pushl 栈在增长
      • popl 栈在收缩(减小)
    • 指针、寄存器都是一个“小盒子”的“名称”,这个小盒子里放着“地址”(门牌号)。这个门牌号就是内存中的地址,地址里面“住着”一个一个的数据们。如下图所示:

    • 下面的指令都是“复合”指令,而且最底层的“原材料”指令中有涉及到对堆栈指针(堆栈小盒子)的操作(更确切的说是操作了小盒子里的数据--地址)

      • pushl : 由2条底层语句复合而成
      • popl : 由2条底层语句复合而成
      • call : 由3条底层语句复合而成,一个pushl 和一个 movel
      • ret : 由2条底层语句复合而成,一个popl
      • enter : 由3条底层语句复合而成,一个popl 和一个 movel
      • leave : 由3条底层语句复合而成,一个pushl 和一个 movel
    • 程序从main函数开始执行,即:main 标号(这个标号不算语句噢)下面的第一条语句。

    • 通过函数调用堆栈框架,暂存了函数的上下文信息,整个程序的执行过程变成了一个指令流,从CPU 中“流”了一遍,最终栈空间又恢复到空栈的状态。

    教材学习中的问题和解决过程

    我觉得:应该把指针的指向放到中间比较好。因为:“门牌号”都是在房间门的正中央的。

    代码调试中的问题和解决过程

    没有敲很多代码,只是验证了一下自己的实验环境。

    代码托管

    上周考试错题总结

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

    好好学!
    我发现,这门课好像和“深入理解计算机系统”这门课的联系很紧密?但是:这应该是两门课!可以同时进行吧。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时

    尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
    耗时估计的公式
    :Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

    参考:软件工程软件的估计为什么这么难软件工程 估计方法

    • 计划学习时间:XX小时

    • 实际学习时间:XX小时

    • 改进情况:

    (有空多看看现代软件工程 课件
    软件工程师能力自我评价表
    )

    参考资料

    • 庖丁解牛 Linux 内核分析。
  • 相关阅读:
    期望dp专题
    Open Flash Chart 简介
    Open Flash Chart图表的JSON格式基本属性详解
    Open Flash Chart图表的JSON格式基本属性详解
    Open Flash Chart2 常用的参数
    Open Flash Chart2 常用的参数
    Chrome资源嗅探器应用
    Chrome资源嗅探器应用
    WebDev.WebServer40.EXE
    WebDev.WebServer40.EXE
  • 原文地址:https://www.cnblogs.com/alan6y/p/10187557.html
Copyright © 2011-2022 走看看