易截截图软件、单文件、免安装、纯绿色、仅160KB

linux进程通信 信号量使用

标题:Linux进程通信-使用信号量
一、相关知识
 信号量:一个整数;
  大于或等于0时代表可供并发进程使用的资源实体数;
  小于0时代表正在等待使用临界区的进程数;
  用于互斥的信号量初始值应大于0;
  只能通过P、V原语操作而改变;
 信号量元素组成:
  1、表示信号量元素的值;
  2、最后操作信号量元素的进程ID
  3、等待信号量元素值+1的进程数;
  4、等待信号量元素值为0的进程数;
 
二、主要函数
 
 1.1 创建信号量
 int semget(
  key_t key,  //标识信号量的关键字,有三种方法:1、使用IPC——PRIVATE让系统产生,
     // 2、挑选一个随机数,3、使用ftok从文件路径名中产生
  int nSemes,  //信号量集中元素个数
  int flag  //IPC_CREAT;IPC_EXCL 只有在信号量集不存在时创建
 )
 成功:返回信号量句柄
 失败:返回-1
 
 1.2 使用ftok函数根据文件路径名产生一个关键字
 key_t ftok(const char *pathname,int proj_id);
 路径名称必须有相应权限
 
 1.3 控制信号量
 int semctl(
  int semid,  //信号量集的句柄
  int semnum,  //信号量集的元素数
  int cmd,  //命令
  /*union senum arg */... // 
 )
 成功:返回相应的值
 失败:返回-1
 
 命令详细说明:
 cmd:   IPC_RMID 删除一个信号量
  IPC_EXCL 只有在信号量集不存在时创建
  IPC_SET 设置信号量的许可权
  SETVAL 设置指定信号量的元素的值为 agc.val
  GETVAL 获得一个指定信号量的值
  GETPID 获得最后操纵此元素的最后进程ID
  GETNCNT 获得等待元素变为1的进程数
  GETZCNT 获得等待元素变为0的进程数
 
 union senum 定义如下:
 union senum{
  int val;
  struct semid_ds *buf;
  unsigned short * array;
 }agc;
 其中 semid_ds 定义如下:
 struct semid_ds{
  struct ipc_pem sem_pem;  //operation pemission struct
  time_t sem_otime;  //last semop()time
  time_t sem_ctime;  //last


相关文档:

在Linux下配置jdk环境

一、JDK下载:http://java.sun.com下载自解压包:jdk.bin
#sh jdk.bin 按提示选择yes。到此JDK已经安装完成
二、设置环境变量
假如jdk安装到了/usr目录下。在/etc/profile中的最底端里写入如下:
#vi /etc/profile
#Set Environment by NetSeek (2005/9/5)
export JAVA_HOME=/usr/jdk
export JRE_HOME=/usr/jdk/jre
PA ......

Linux 各模块架构图


 
  Resources on the site
• Interactive map of GNU/Linux OS and FOSS
• "GNU/Linux is my home" - map of GNU/Linux system
• Interactive map of Linux kernel
• Linux inside
• Linux Technology Reference (single page view)
• Linux kernel diagram
• Li ......

linux下 mysql用户的管理

linux
下 mysql
用户的管理
文章分类:数据库
关键字: linux
mysql
用户管理

自从上在redhat Enterprise 5 中安装了MySQL
,这次来实践操作一下MySQL
用户的管理;
 一、root用户密码的维护:
       由于安装MySQL
完后,MySQL
会自动提供一个不带 ......

OMAP DSP 学习笔记(LINUX平台)(二)DMAI

DMAI(DaVinci Multimedia Application Interface)是DSP提供给ARM端应用程序的调用接口,DSP也是依赖于DSPLINK的。 DMAI中也提供了许多VISA (video, imaging, speech and audio)编解码的实例。DMAI提供的是一种功能的抽象,而在具体实现上,不同硬件平台,不同系统是不一个样的。另外,由于DMAI是以源代码的形式提供的,所以 ......

Linux 下 etc/ 目录文件详解

3. 网络配置文件
3.1 /etc/hosts
#/etc/hosts
#文件格式: IPaddress hostname aliases
#文件功能: 提供主机名到IP地址的对应关系,建议将自己经常使用的主机
# 加入此文件中,也可将没有DNS记录的机器加入到此文件中,
# 这样会方便网络应用
127.0.0.1 localhost localhost.localdomain
202.118.66.81 helius.dlut. ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号