• 进程的要素与作用


    1. 程序并发执行时的特征

       间断性(需要等待其他程序的执行),失去封闭性(运行环境受其他程序影响),不可再现性

    2. 由程序段,数据段和PCB构成了进程实体(进程映像)

    3. 进程的定义

      进程是程序的一次执行,进程是程序及其数据在CPU下顺序执行时所发生的活动,进程是具有独立功能的程序在数据集上运行的过程,它是系统进行资源分配和调度的一个独立单位。

    进程的特征:动态性,并发性,异步性,独立性。

    4. 进程的三种状态

      就绪状态:已经分配到除CPU以外的所有资源,加在就绪队列中

       执行状态:进程已经获得CPU,正在执行。

      阻塞状态:正在执行的进程发生了某事件(I/O,申请缓存失败等)暂时无法继续执行的状态,此时引起进程调度,把处理机分给另一个进程,它进入阻塞队列。

    三状态转化的关键点在于:只有进程调度才能进入执行,I/O操作进入阻塞,时间片完以后,进入就绪。

    创建状态:准备PCB过程

    终止状态:进程结束

    挂起操作:被挂起后,意味着此时进程处于静止状态,如果正在执行,它将暂停执行,如果处于就绪,它将不能被调度

    激活操作:

    活动就绪:可以接受调度

    静止就绪:不能接受调度

    活动阻塞:没有被挂起引起的阻塞(普通I/O引起的阻塞)

    静止阻塞:活动阻塞状态下被挂起,完成I/O后,将转为静止就绪

    执行状态被挂起后,进入静止就绪。

    创建到静止就绪:考虑到当前资源状态,不分配给新进程所需资源,主要是主存,成为静止就绪,被放在外存中,不参与调度。

    5. PCB

    (1)作为独立运行的基本单位

    (2)能实现间断性运行方式(可以保存现场)

     (3) 提供进程管理所需要的信息。

    (4)提供进程调度所需要的信息

      (5)实现与其他进程的同步与通信

    PCB中的信息:1 标识符(内部标识符和外部标识符),2 处理机信息 ,3 进程控制信息 ,4 进程调度信息。

    6. 进程控制

      OS两种状态,1.系统态(管态,内核态),可以执行一切指令,2.用户态(目态),只能执行部分规定的指令

      支撑功能:1. 中断处理, 2. 时钟管理 3. 原语操作(原子操作要么全做,要么全不做)

      引起进程创建的4个事件:用户登录,作业调度,提供服务,应用请求(用户进程自己创建)

    引起进程终止:1 正常结束,2 异常结束(越界,非法指令,特权指令错,运行超时,等待超时),外界干预(操作员结束,父进程结束,父进程请求结束)

    7 进程同步

       进程同步的任务:让多个相关进程在执行次序上进行协调,使并发执行的进程之间能按照一定规则共享系统资源,并能很好的相互合作。

    1. 间接相互制约 :由于共享系统资源引起的,

     2.直接相互制约:源于进程间的合作关系。

    临界资源(如打印机,磁带机等)

    临界区:访问临界资源的那段代码,在之前需要检查临界资源的使用情况,写一段代码,叫做进入区。还有退出区(用于回放标志),其余代码叫剩余区。

    同步机制:空闲让进,忙则等待,有限等待,让权等待(释放处理机)。

    8 信号量

     整型信号量,不符合让权等待原则

    记录型信号量,采取让权等待,并采用了记录型数据结构,设置了等待链表

    AND型信号量

    信号量集 P(S,T,D)T为资源分配下限

    9 管程:操作系统的一个资源管理模块,供进程调用。共享资源的数据及其在该数据上的一组操作。

    10 进程通信

     (1)共享存储器系统  A:共享数据结构的通信方式, B 共享存储区的通信方式

      (2)管道通信 ,管道是指连接一个读进程和写进程之间通信的一个共享文件

    (3)消息传递系统  A :直接通信,发送进程利用OS提供的发送原语,直接把消息发送给目的进程。

                                    B:间接通信方式,发送和接收进程,都通过共享中间实体的方式接收和发送消息。

    (4) 客户机-服务器系统

       A: 套接字  ,基于文件型,进程在同一台机器上运行;基于网络型: 

      B: 远程过程调用和远程方法调用,

    11 线程:调度和分配的基本单位,线程也能独立运行,再同一进程里,线程的切换不会引起进程的切换。

    线程的并发性,进程可以拥有资源,但线程本身并不拥有系统资源,仅有一点必不可少的资源,拥有线程控制块(TCB),多个线程还可以共享同一个进程的资源,线程的创建,切换,代价低于进程。

    线程运行的状态:执行,就绪,阻塞

    线程的实现: 内核支持线程,用户级线程(在用户空间中实现),组合方式(多对一模型:将用户线程映射到一个内核控制线程,一对一模型:将每一个用户线程都映射到内核支持线程,多对多模式)

    用户线程在切换时不用转为核心态。

  • 相关阅读:
    python闯关_Day012
    python闯关_Day010
    python闯关_Day009
    python闯关_Day008
    python闯关_Day07
    什么是PRD、MRD与BRD?
    Python中logging日志使用
    git一些常用的命令
    Python第三方库
    FastDFS分布式存储服务器安装
  • 原文地址:https://www.cnblogs.com/lxz6666/p/10559334.html
Copyright © 2020-2023  润新知