zoukankan      html  css  js  c++  java
  • 操作系统 chapter 5 6 同步机制

    进程的并发执行

    进程制约

    进程互斥:各进程之间竞争使用共享资源 排他性使用,进程之间的竞争关系;

    进程之间存在着直接制约和间接制约两种制约关系,其中直接制约(同步)是由于进程间的相互合作而引起的,而间接制约(互斥)则是由于进程间共享临界资源而引起的。(1) 若干同学去图书馆借书是间接制约,其中书是临界资源。(2) 两队举行篮球比赛是间接制约,其中篮球是临界资源。(3) 流水线生产的各道工序是直接制约,各道工序间需要相互合作,每道工序的开始都依赖于前一道工序的完成。(4) 商品生产和社会消费是直接制约,两者也需要相互合作:商品生产出来后才可以被消费;商品被消费后才需要再生产。

    临界资源:一次只允许一个进程使用,也称为互斥资源或共享变量。

    临界区(互斥区):各个进程中对某个临界资源实施操作的程序片段。

    进程同步:多个进程之间的协作关系;

    信号量及P、V操作

    完成加一,就可以进行下一个了,未完成mutex为0,若下一个想进入,先完成p操作,mutex变成-1,阻塞。而若是占用CPU的完成了,mutex执行v操作,mutex变成1,可以进行下一个。

    两个P操作的顺序不可以颠倒,而两个V操作可以。

    管程的基本概念

    管程:在程序设计语言中引入的成分,是一种高级同步机制,

    管程作为一种同步机制,需要:

    进程间通信IPC

    典型的机制就是消息传递:send & receive原语

    典型操作系统中的IPC机制

  • 相关阅读:
    在vi或者vim中显示行号
    Ubuntu 14.10 下进程实时IO监控iotop命令详解
    Ubuntu 14.10 下网络流量实时监控ifstat iftop命令详解
    Ubuntu 14.10 下运行进程实时监控pidstat命令详解
    Ubuntu 14.10 下CPU实时监控mpstat命令详解
    Ubuntu 14.10 下awk命令详解
    Ubuntu 14.10 下sort,uniq,cut,wc命令详解
    Ubuntu 14.10 下sed命令详解
    Ubuntu 14.10 下grep命令详解
    Ubuntu 14.10 下Ganglia监控Spark集群
  • 原文地址:https://www.cnblogs.com/Cheryl06/p/7300273.html
Copyright © 2011-2022 走看看