操作系统实验四:使用信号量实现互斥同步(C语言版)
发布时间
阅读量:
阅读量
一、实验目的
本实验旨在阐述在Linux系统中利用信号量实现进程同步与互斥的途径。通过本次实践,学习者能够更加深入地掌握进程间同步与互斥机制、临界区及临界资源的相关概念,并熟练掌握Linux环境下信号量的基本操作方法。
二、实验环境
硬件配置:配备一台计算机,并具备局域网连接条件;
软件配置:采用Linux Ubuntu操作系统,以及gcc编译工具。
三、实验内容和步骤
(一)参考标准:POSIX以及System V
System V:作为Unix多个版本中的一个分支,最初由AT&T制定,目前发展至第四个版本,其中包含较为复杂的应用程序接口。
POSIX:全称为Portable Operating System Interface,是IEEE为统一Unix系统的接口而制定的标准,其核心在于提供一致的API接口。Linux系统同时支持System V API和POSIX API。
(二)Linux系统中提供的两种信号量类型:
内核级信号量:用于控制内核中资源的共享访问;
用户态信号量:主要包括POSIX信号量和SYSTEM V信号量。其中
POSIX信号量可划分为两类。
无名信号量:主要适用于线程之间的同步操作,同时也可以用于由fork函数产生的进程间同步;
有名信号量:既可用于进程间的同步操作,也可用于线程间的同步操作。
P
全部评论 (0)
还没有任何评论哟~
