自学操作系统(进程同步)
创始人
2024-10-22 03:04:16
0

4.1 进程同步的概念

(1)主要任务

           使并发执行的诸进程之间能有效地共享资源和相互合作,从而使程序地执行具有可再现性。

(2)进程间地制约关系

        间接制约关系(互斥关系):进程互斥使用临界资源。

        直接相互制约关系(同步关系):进程间相互合作

(3)临界资源:系统中某些资源一次只允许一个进程使用,称这样地资源为临界资源或互斥资源或共享资源

        诸进程间应采取互斥方式,实现对这种资源地共享

生产者-消费者问题:

(4)临界区

        临界区:进程中涉及临界资源的代码段

        进入区:用于检查是否可以进入临界区的代码段

        退出区:将临界区正在被访问的标志恢复为未被访问标志

        剩余区:其他代码

   (5)同步机制遵循的准则

    ①空闲让进:当无进程处于临界区,应允许一个请求进入临界区的进程立即进入自己的临界区;

    ②忙着等待:已有进程处于其临界区,其他试图进入临界区的进程必须等待。

    ③有限等待:等待进入临界区的进程不能“死等”;

    ④让权等待:不能进入临界区的进程,应释放CPU;

(6)进程同步机制

        ①软件同步机制:使用编程方法解决临界区问题,有难度,具有局限性,现在很少采用。

        ②硬件同步机制:使用特殊的硬件指令,可有效实现进程互斥。

        ③信号量机制:一种有效的进程同步机制,已被广泛应用。

        ④管程机制:新的进程同步机制

4.2 软件同步机制

4.3硬件同步机制

4.4信号量机制

(1)整型信号量

        (2)记录型信号量:去除忙等的信号量

        每个信号量S除一个整数值S.value外,还有一个进程等待队列S,list,存放阻塞再信号量的各个进程PCB。

typedef struct{     int value;     struct PCB *list; }semaphore;

①信号量只能通过初始化和两个标准原语wait,signal来访问,作为OS核心代码运行,不受进程调度的打断

②初始化指定一个非负整数值,表示空闲资源总数(资源信号量),若有非负值表示当前的空闲资源数,若为负值其绝对值表示当前等待临界区的进程数。

(3)AND型信号量

基本思想:将进程在整个运行过程中需要的所有资源,一次性全部分配给进程,待进程使用完后再一起释放。

4.5管程机制

(1)定义:一个管程定义了一个数据结构和能为并发进程所执行的一组操作,这组操作能同步进程和改变管程中的数据

互斥:

        ①管程中的变量只能被管程中的操作访问

        ②任何时候一个进程再管程中操作

        ③类似临界区

        ④由编译器完成

同步:

        ①条件变量

        ②唤醒和阻塞操作

4.6 经典进程的同步问题

(1)生产者-消费者问题

(2)哲学家进餐问题

(3)读者-写者问题

4.7 Linux进程同步机制

相关内容

热门资讯

科技实测!牛牛房卡怎么获得光明... 科技实测!牛牛房卡怎么获得光明联盟//全网房卡低价售Sa9Ix苹果iPhone 17手机即将进入量产...
正规平台有哪些,游戏微信牛牛房... 豌豆互娱房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 3、根...
玩家攻略,牛牛房卡制作链接玫天... 玫天爱玩是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:332900...
玩家攻略,金花房卡专卖店新竹大... 您好!微信新竹大厅大厅链接获取房卡可以通过以下几种方式购买: 1.微信渠道:(新竹大厅)大厅介绍:...
头条推荐!牛牛充值房卡红桃众娱... 今 日消息,红桃众娱房卡添加微信33549083 苹果今日发布了 iOS 16.1 正式版更新,简单...
重大通报,牛牛房卡批发平台天道... 重大通报,牛牛房卡批发平台天道联盟/房卡官方正版房卡代理Sa9Ix苹果iPhone 17手机即将进入...
头条推荐!牛牛房卡游戏平台加盟... 头条推荐!牛牛房卡游戏平台加盟新蛮王/房卡价格表多少钱一张新蛮王是一款非常受欢迎的游戏,咨询房/卡添...
科技实测!游戏微信牛牛房卡盘古... 盘古大厅是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:332900...
玩家攻略,金花房卡出售芝麻大厅... 玩家攻略,金花房卡出售芝麻大厅/微信链接房卡从哪里获取Sa9Ix苹果iPhone 17手机即将进入量...
推荐一款!金花房卡官网趣游联盟... 您好!微信趣游联盟大厅链接获取房卡可以通过以下几种方式购买: 1.微信渠道:(趣游联盟)大厅介绍:...
正规平台有哪些,牛牛房卡制作链... 您好!微信九酷众娱大厅链接获取房卡可以通过以下几种方式购买: 1.微信渠道:(九酷众娱)大厅介绍:...
重大通报,牛牛房卡制作链接光明... 今 日消息,光明联盟房卡添加微信33549083 苹果今日发布了 iOS 16.1 正式版更新,简单...
ia攻略/斗牛房间怎么创建的火... 火狐大厅/新超圣房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 ...
头条推荐!金花房卡代理零售新海... 头条推荐!金花房卡代理零售新海贝/青鸟大厅/房卡批发市场价格表新海贝/青鸟大厅是一款非常受欢迎的游戏...
科技实测!金花房卡代理零售新竹... 新竹大厅是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:332900...
科技实测!牛牛房卡怎么购买复仇... 科技实测!牛牛房卡怎么购买复仇者联盟//全网房卡低价售Sa9Ix苹果iPhone 17手机即将进入量...
IA解析/金花房卡出售白虎大厅... 您好!微信白虎大厅大厅链接获取房卡可以通过以下几种方式购买: 1.微信渠道:(白虎大厅)大厅介绍:...
正规平台有哪些,斗牛房间怎么创... 鸿狐大厅房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 3、根...
玩家攻略,金花房卡官网龙马大厅... 玩家攻略,金花房卡官网龙马大厅/房卡链接怎么弄的龙马大厅是一款非常受欢迎的游戏,咨询房/卡添加微信:...
一分钟了解!金花房间怎么创建长... 长虹大厅是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:332900...