设为首页 加入收藏

TOP

多进程编程(二十一)
2012-08-26 13:53:26 来源: 作者: 【 】 浏览:13311
Tags:进程 编程
nbsp;  int sdleave(addr,flags)
             char *addr;
        说明:用于指示调用进程已完成修改共享数据段中的内容.
        返回值:调用成功则返回0,否则返回-1.
    26.sdget()
        功能:联接共享数据段到调用进程的数据空间中.
        语法:#include <sys/sd.h>
             char *sdget(path,flags,size.mode)
             char *path;
             int flags;
             long size;
             int mode;
        说明:本系统调用将共享数据段联接到调用进程的数据段中,具体动作
             由flags的值定义:
             . SD_RDONLY:联接的段为只读的.
             . SD_WRITE:联接的段为可读写的.
             . SD_CREAT:若由path命名的段存在且不在使用中,本标志的作用
                 同早先创建一个段相同,否则,该段根据size和mode的值进程
                 创建.对段的读写访问权限的授予基于mode给的权限,功能与
                 一般文件的相同.段被初始化为全0.
             . SD_UNLOCK:若用此标志创建该段,则允许有多个进程同时访问
                 (在读写中)该段.
        返回值:若调用成功则返回联接的段地址.否则返回-1.
    27.sdfree()
        功能:将共享数据段从调用进程的数据空间中断开联接.
        语法:#include <sys/sd.h>
             int sdfree(addr)
             char *addr;
        说明:本系统调用将共享数据段从调用进程的数据段的指定地址中分离.
             若调用进程已完成sdenter()的调用,还未调用sdleave()就调用
             本系统调用,则sdleave()被自动调用,然后才做本调用的工作.
        返回值:若调用成功则返回联接的段地址.否则返回-1.
    28.sdgetv()
        功能:同步共享数据访问.
        语法:#include <sys/sd.h>
             int sdgetv(addr)
             char *addr;
        说明:用于同步协调正在使用共享数据段的进程.返回值为共享数据段
             的版本号.当有进程对该段做sdleave()操作时,版本号会被修改.
        返回值:若调用成功,则返回指定共享数据段的版本号,否则返回-1.
    29.sdwaitv()
        功能:同步共享数据访问.
        语法:#include <sys/sd.h>
             int sdwaitv(addr,vnum)
             char *addr;
             int vnum;
        说明:用于同步协调正在使用共享数据段的进程.返回值为共享数据段
             的版本号.调用进程会睡眠直到指定段的版本号不再等于vnum;
        返回值:若调用成功,则返回指定共享数据段的版本号,否则返回-1.
    30.sbrk()
        功能:修改数据段空间分配.
        语法:char *sbrk(incr)
             int incr;
        说明:用于动态修改调用进程数据段的空间分配.进程将重置进程的分
             段值并分配一个合适大小的空间.分段值为数据段外第一次分配
             的地址.要分配的空间的增加量
首页 上一页 18 19 20 21 22 23 24 下一页 尾页 21/25/25
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Core Dump?! 下一篇字符串转换篇

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: