zoukankan      html  css  js  c++  java
  • 深入理解计算机操作系统——第8章:进程

    进程:

    (1)进程的经典概念就是执行中的一个程序的实例。

    (2)系统中的每一个程序都是运行在进程的上下文中。

    (3)上下文:由程序正确运行所需的状态组成,这个状态包括:存放在存储器中的代码和数据,它的栈,通用目的寄存器,

    程序计数器,环境变量,以及打开的文件描述符等等。

    进程给程序提供的关键抽象:

    (1)独立的逻辑控制流:好像程序在运行时独占cpu处理器

    (2)私有的地址空间:好像程序独占存储器一样。

    逻辑控制流:

    程序的运行时会有一系列的程序计数器(PC)的值,这些值唯一的对应着可执行程序的指令。这些值的序列就是逻辑控制流。

    (1)并发流:

    一个逻辑流的执行时间上与领一个流重叠称为并发流。

    如上图,A和B时间上有重叠,A和C时间上有重叠

    而B与C,因为执行C的第一条指令时B的最后一条指令已经执行完了

    (2)多任务:一个进程与其他进程轮流的执行称为多任务。

    (3)时间片:一个进程执行它的控制流上的一个片段称为时间片。

    8.2.3 私有地址空间

    (1)进程为每个程序提供一个假象,好像它独占的使用整个系统的地址空间。

    (2)如32位机,地址是2^32个可能的地址集合。

    (3)一个进程为运行在它上面的程序提供私有的地址空间,这个地址所关联的存储字节是不能被其他进程所访问的

    (4)地址空间的顶部是保留给内核的,底部是保留给用户程序的

    8.2.4 内核模式和用户模式

    (1)一个运行在内核模式下的进程可以访问指令集中的任何指令,可以访问存储器中的任何存储字节

    (2)一个运行在用户模式下的进程不能访问特权指令

    (3)处理器中的某只控制寄存器的模式位来控制模式。

    8.2.5 上下文切换

    (1)内核为每个进程维持一个上下文,上下文就是内核重新启动一个被抢占的进程所需的状态。

    上下文切换:(在内核的模式下)

    (1)保存当前进程的上下文。

    (2)恢复某个先前被抢占的进程的被保存的上下文

    (3)将控制传递给这个新恢复的进程

  • 相关阅读:
    linux shell中 if else以及大于、小于、等于逻辑表达式
    下载chrome插件和离线安装CRX文件的方法
    ROM、PROM、EPROM、EEPROM、FLASH ROM简介
    Scientific Toolworks Understand
    C和C++相互调用
    ubuntu 问题
    ubuntu 精简配置
    Linux i2c 读写程序
    是armhf,还是armel?
    Linux Free命令每个数字的含义 和 cache 、buffer的区别
  • 原文地址:https://www.cnblogs.com/yanliang12138/p/4757558.html
Copyright © 2011-2022 走看看