zoukankan      html  css  js  c++  java
  • 操作系统(47-60)

    进程同步:

    在多道程序系统中,由于资源共享或进程合作,使进程间形成间接相互制约或直接相互制约,这需要用进程互斥与同步机制来协调两种制约关系

    在多道程序系统中,诸多进程可以共享各类资源,临界资源一次只能供一个进程使用,所以进程对临界资源必须是互斥使用,每个进程在进入临界区前,必须先申请,经允许后方能进入

    同步机制应遵循的准则:

    空闲让进

    忙则等待

    有限等待

    让权等待

    解决互斥的锁机制:

    进程进入临界区前,通过锁变量来判断临界资源是否被占用

    信号量机制:

    锁机制只能判断临界资源是否被占用,所以它解决了互斥问题,但它不能确定前面的进程是否完成,因此不能用在进程同步问题中

    信号量机制是一种卓有成效的进程同步工具,被广泛应用与单处理机和多处理机中,以及计算机网络中

    信号量机制是指用PV操作来对信号量进行处理

    什么是信号量

    信号量的数据结构为一个值和一个指针,指针指向等待该信号量的下一个进程,信号量的值与相应资源的使用情况有关

    当信号量的值大于0时,表示当前可用资源的数量

    当信号量的值小于0时,其绝对值表示等待使用该资源的进程个数

    信号量的值只能由PV操作来改变

    用S表示资源的数量,执行一次P操作,意味着请求分配一个单位的资源,因此S的值减一,当S<0时,表示没有资源可供分配,请求者必须等待别的进程释放该类资源,它才能运行下去

    执行一个V操作,意味着释放一个单位的资源,因此S的值加一,当S<0时,表示有某些进程正在等待该资源,因此要唤醒一个等待状态的进程使之运行下去

  • 相关阅读:
    pat 09-排序1. 排序(25)
    pat 06-图2. Saving James Bond
    hdu 2818 Building Block
    并查集
    hdu 1213 How Many Tables
    hdu 1232 畅通工程
    hdu 1258 Sum It Up
    如何查看Navicat 查询结果
    Navicat查询功能怎么用
    如何设置Navicat 筛选向导
  • 原文地址:https://www.cnblogs.com/scottdinggo/p/4449927.html
Copyright © 2011-2022 走看看