信号量基础和两个经典例子
信号量(semaphore)
用于进程中传递信号的一个整数值。
三个操作:
1、一个信号量可以初始化为非负值
2、semWait操作可以使信号量减1,若信号量的值为负,则执行semWait的进程被阻塞。否则进程继续执行。
3、semSignal操作使信号量加1。若信号量的值小于等于0,则被semWait操作阻塞的进程讲被接触阻塞。
ps: semWait对应P原语,semSignal对应V原语。
信号量以及PV原语的C语言定义如下...
分类:
其他好文 时间:
2014-10-05 17:37:18
阅读次数:
225
老外写的Listview移动函数,支持多个选择项同时移动,比较不错,在此备份(变量名稍有修改)。LV_MoveRow(Is_MoveUp = true) { If Is_MoveUp not in 1,0 Return While tempStr:=LV_GetNext(t...
分类:
移动开发 时间:
2014-10-05 00:38:17
阅读次数:
202
小时候,我们没有ipad ,不懂 LV ,理解不了阿玛尼 。我们只会打纸包玩烟壳,打玻璃球,用小霸王打魂斗罗。那时候,男孩追女孩,一追就是好几年,比的是心,念的是情。这年头儿,男人追女人,几天抱得美人归,看的是钱,拼的是爹。以前我们春游烧烤,坐在一起谈天说地。现在各自埋头刷微博,聊微信 。生活里,貌...
分类:
其他好文 时间:
2014-10-04 21:44:57
阅读次数:
200
一、LVM的建立:1.添加一块新的硬盘sdb:2.新建四个分区sdb1、sdb2、sdb3、sdb4,分别为1G:3.将sdb1与sdb2组成pv:4.新建卷组mfvg,并将sdb1与sdb2加入其中:5.新建lv:6.格式化并挂在lv:7.查看新建的lv:二、LVM的增大:将mflv增大到4G:由于pv总大小只有2G,所以需要将pv进..
分类:
其他好文 时间:
2014-10-02 00:13:32
阅读次数:
535
首先,先来看几个概念:
同步:协作的过程,例如,多人开发合作;
互斥:争抢资源的过程,例如苦逼的大学选课;
临界区:进程中对临界资源实施操作的那段程序;
临界资源:一次只能一个进程使用的资源,例如打印机;
信号量:表示资源数量;相对于各个进程来说的;
P操作(-1):申请资源;
V操作(+1):释放资源;
一,单缓冲区的生成者消费者问...
分类:
其他好文 时间:
2014-09-29 22:36:31
阅读次数:
173
针对操作系统:RedHatEnterpriseLinuxServerrelease5.8(Tikanga)注:自己的测试环境-----测试没有问题1.查看逻辑卷[root@localhost~]#lvdisplay---Logicalvolume---LVName/dev/VolGroup00/LogVol00VGNameVolGroup00LVUUIDE6hkkL-rkLw-OA2l-072h-QfMh-LDIN-feGjSMLVWriteAccessr..
分类:
系统相关 时间:
2014-09-28 19:38:47
阅读次数:
300
1.ZZSRV1上的WWW配置1.1.磁盘配置1.1.1.添加磁盘添加80GB的磁盘。#fdisk-l
Disk/dev/sda:21.5GB,21474836480bytes,41943040sectors
Units=sectorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disklabeltype:..
分类:
其他好文 时间:
2014-09-28 19:10:36
阅读次数:
332
安装Mysql-5.5.28由于mysql存放的数据是越来越大的,因此我建议将存放的数据存放在LVM文件系统上。1、制作LVM文件系统在这里不再给出制作过程,假设我们已经做好了一个LVM,并将其挂载在/mydata目录下,其中/mydata/data作为mysql数据库的存放目录。2、新建用户mysql和mysql组..
分类:
数据库 时间:
2014-09-28 18:31:27
阅读次数:
192
1.ZZSRV2上的LVM配置1.1.磁盘配置#fdisk-l
Disk/dev/sda:21.5GB,21474836480bytes,41943040sectors
Units=sectorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disklabeltype:dos
Diskidentifier:0x00012974
..
分类:
其他好文 时间:
2014-09-28 18:20:06
阅读次数:
290
一、虚拟机快照1、确认你的物理机上的vg还有足够的剩余空间 [root@hacker ~]# vgs VG #PV #LV #SN Attr VSize VFree vg_hacker 1 6 4 wz--n- 95.80g 57.80g2、建立一个至少4G(此处以8G为例)的lv逻辑卷...
分类:
其他好文 时间:
2014-09-28 01:54:10
阅读次数:
449