电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

操作系统进程同步实验报告

操作系统进程同步实验报告_第1页
1/8
操作系统进程同步实验报告_第2页
2/8
操作系统进程同步实验报告_第3页
3/8
实验三:进程同步实验 一、实验任务: (1)掌握操作系统的进程同步原理; (2)熟悉linu x 的进程同步原语; (3)设计程序,实现经典进程同步问题。 二、实验原理: (1)P、V 操作 PV 操作由P 操作原语和V 操作原语组成(原语是不可中断的过程),对信号量进行操作,具体定义如下: P(S):①将信号量S 的值减1,即S=S-1; ②如果S³0,则 该 进程继 续 执 行;否 则 该 进程置 为 等 待 状 态 ,排 入 等 待 队 列 。 V(S):①将信号量S 的值加 1,即S=S+1; ②如果S>0,则 该 进程继 续 执 行;否 则 释 放 队 列 中第 一个 等 待 信号量的进程。 (2)信号量 信号量(semaphore)的数 据 结 构 为 一个 值和一个 指 针 ,指 针 指 向 等 待 该 信号量的下一个 进程。信号量的值与 相 应 资 源 的使 用 情 况 有 关 。当 它 的值大 于 0 时 ,表 示 当 前 可用 资 源 的数 量;当 它 的值小 于 0 时 ,其 绝 对值表 示 等 待 使 用 该 资 源 的进程个 数 。注 意 ,信号量的值仅能 由PV 操作来 改 变 。 一般 来 说 ,信号量S³0 时 ,S 表 示 可用 资 源 的数 量。执 行一次 P 操作意 味 着请求分配一个 单位资 源 ,因此S 的值减1;当 S<0 时 ,表 示 已经没有 可用 资 源 ,请求者必须等 待 别的进程释 放 该 类资 源 ,它 才能 运行下去。而执 行一个V 操作意 味 着释 放 一个 单位资 源 ,因此S的值加 1;若S£ 0,表 示 有 某些进程正在等 待 该 资 源 ,因此要唤醒一个 等 待 状 态 的进程,使之运行下去。 (3)linu x 的进程同步原语 ①wait();阻塞父进程,子 进程执 行; ②#include #include key_t ftok (char*pathname, char proj);它 返 回 与 路 径 pathname 相 对应 的一个 键值。 ③ int semget(key_t key, int nsems, int semflg) 参 数 key 是一个 键 值,由ftok 获 得 ,唯 一标 识 一个 信号灯 集 ,用 法 与 msgget()中的key相 同;参 数nsems 指 定打 开 或 者新 创 建 的信号灯 集 中将包 含 信号灯 的数 目 ;semflg 参 数 是一些标 志 位。参 数 key 和semflg 的取 值,以 及 何 时 打 开 ...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

操作系统进程同步实验报告

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部