zoukankan      html  css  js  c++  java
  • 2018-2019-1 20165320 《信息安全系统设计基础》第七周学习总结

    教材知识点总结

    异常控制流

    • 介绍:现代系统通过使控制流发生突变来对异常情况作出反应,这些突变称为异常控制流。

      • 异常:异常控制流的一种形式,一部分由硬件实现,一部分由操作系统实现。

      • 异常处理的三种情况

        • 处理程序将控制返回给当前指令Icurr,当事件发生时正在执行的指令。

        • 处理程序将控制返回给Inext,如果没有发生异常将会执行的下一条指令。

        • 处理程序终止被中断的程序。

      • 异常表:

      • 异常的剖析:

      • 异常与过程调用的不同之处:

        1、过程调用时,在跳转处理程序之前,处理器将返回地址压入栈中。根据异常的类型,返回地址要么是当前指令,要么是下一条指令。

        2、处理器也把一些额外的处理器状态压到栈里,在处理程序返回时,重新开始执行被中断的程序会需要这些状态。

        3、如果控制从用户转移到内核,所有的这些项目都被压到内核栈中,而不是压到用户栈中。

        4、异常处理程序在内核模式下。

      • 异常的类别

        • 中断:异步发生,来自处理器外部的I/O设备的信号的结果。

        • 陷阱:有意的异常,是执行一条指令的结果。

        • 故障:故障由错误情况引起,它可能被故障处理程序修正。

        • 终止:终止是不可恢复的致命错误造成的结果,通常是一些硬件错误。

        • 异常属性表:

      • Linux/x86-64

        • 除法错误:除零,或结果对于目标操作数来说太大。

        • 一般保护故障:程序引用已给未定义的虚拟内存区域。

        • 缺页:重新执行产生故障的指令。

        • 机器检查:检测到致命的硬件错误。

        • 属性表:

      • 系统调用:C程序用syscall函数可以直接调用任何系统调用。

    进程

    • 定义:一个执行中程序的实例

    • 进程控制

      • 获取进程ID:getpid函数返回调用进程的PID,gettpid返回的是它的父进程的PID。

          pid_t getpid(void);
          pid_t getppid(void);
        
    • 创建和终止进程:

      • 进程的三种状态:

        1、运行:进程在CPU中或等待被执行。

        2、终止:进程永远地停止。

        3、停止:进程的执行被挂起,且不会被调度。

      • fork函数创建一个新的运行的子进程:

          pid_t fork(void);
        

        调用一次,返回两次。

    课上任务

    • 参考伪代码实现ls的功能,提交代码的编译,运行结果截图

    • 相关知识点:

      • 函数 DIR *opendir(const char *pathname),即打开文件目录,返回的就是指向DIR结构体的指针。

      • 通过readdir函数读取到的文件名存储在结构体dirent的d_name成员中。

      • 参考了上学期Java学习搭档的代码如下:

      • 运行结果:

    • 实现ls -l 的功能,提交测试截图

    • 相关知识点:

      • dirent结构体:

      • stat结构体:

    运行截图:

  • 相关阅读:
    Size Classes with Xcode 6:为所有的尺寸准备一个Storyboard
    iOS:界面适配(二)--iPhone/iPad适配(关于xib)
    iPhone屏幕尺寸、分辨率及适配
    ViewControl的size设为freeform
    iphone分辨率大全
    iPhone6分辨率与适配
    Applications using Launch Screen Files and targetting iOS 7.1 and earlier need to also include a Launch Image in an Asset Catalog.
    linuxmint计算器
    校验 MD5 值
    DataBinding
  • 原文地址:https://www.cnblogs.com/Gst-Paul/p/9943344.html
Copyright © 2011-2022 走看看