1 POSIX扩展
    posix_access($file,$mode)  查看文件的访问权限,可以由is_readable等几个函数代替
    posix_errno()  返回posix函数执行的上个错误
    posix_getcwd() 返回当前目录,与getcwd()相同
    posix_getgid()  geteuid()  getgid() getegied() getgroup()  getpgid()  getpgrp() getpid()  getsid等与同名linux系统调用类似
    posix_getlogin() 获取登录名称
    posix_getpwnam() 获取用户的详情
    posix_getrlimit()  获取资源限制
    posix_kill()  posix_times() 
2 程序执行函数
     string exec($cmd, array &$output, int &$return_var)             执行外部程序,并返回输出的最后一行
     string shell_exec($cmd)   与`cmd` 功能一样,将返回程序的所有输出
     string  system()  执行命令,并显示输出,返回值为输出的最后一行
     escapeshellarg()    转义字符串以作为shell参数
     escapeshellcmd()  转义字符以作为shell命令
     proc_open()    执行程序,并打开一个管道用于读写相应的输入和输出
     proc_nice()      调整程序的优先级
     proc_close()    关闭打开的程序
     proc_terminate()    终止打开的程序

3 信号量、IPC与共享内存

resource sem_get(int $key, [int $max_acquire=1[,int $perm=0666[,int $auto_release=1]]]) 返回一个SYSTEM V的信号量,首次调用时会创建,随后的各次调用会返回不同的标识符,但均访问同一个信号量。
    bool sem_remove(resource $handler)   从系统中移除指定的信号量,之后将不可再访问
    bool sem_acquire($handler)  在获得信号量之前一直阻塞
    bool sem_release($handler)  释放之前获得的信号量

resource msg_get_queue(int $key[,int $perms = 0666])  按key返回一个SYSTEM V的消息队列。首次调用时会创建,随后的各次调用会返回不同的标识符,但均访问同一个消息队列。
    boo msg_remove_queue($handler)  移除系统的消息队列,之后进程将不可再访问
    bool msg_send($queue, int $msg_type,$msg[,bool $serialize=true[. bool $blocking=true [, int &$errcode]]] )  向消息存入一个消息
    msg_recvive($queue, int $expect_type, &$msgtype, $maxsize, &$msg [, bool $unserialize=true [, $flag = 0 [,&$errcode ]]] )  从消息队列取出一个消息
    array msg_stat_queue($handler)   查看消息队列上的相关属性
    bool  msg_set_queue()  设置消息上的相关属性

resource shm_attach($key,$perms)  按key返回一个SYSTEM V的共享内存。首次调用时会创建,随后的各次调用会返回不同的标识符,但均访问同一个消息队列。
    bool  shm_remove($handler)   从系统中移除共享内存对象
    bool  shm_detach($handler)    与共享内存对象断开,但系统中仍存在相关对象
    bool  shm_put_var($hanlder ,$key, $val)  向共享内存设置数据
    mixed  shm_get_var($handler ,$key)   从共享内存取数据
    bool shm_remove_var($handler, $key)   从共享内存移除数据

php进程控制的更多相关文章

  1. 【linux草鞋应用编程系列】_2_ 环境变量和进程控制

    一. 环境变量     应用程序在执行的时候,可能需要获取系统的环境变量,从而执行一些相应的操作.     在linux中有两种方法获取环境变量,分述如下.   1.通过main函数的参数获取环境变量 ...

  2. 【Linux程序设计】之进程控制&守护进程

    这个系列的博客贴的都是我大二的时候学习Linux系统高级编程时的一些实验程序,都挺简单的. 实验题目:Linux环境下的进程控制 实验目的:熟悉并掌握Linux环境下进程的相关函数的应用:守护进程的概 ...

  3. linux进程及进程控制

    Linux进程控制   程序是一组可执行的静态指令集,而进程(process)是一个执行中的程序实例.利用分时技术,在Linux操作系统上同时可以运行多个进程.分时技术的基本原理是把CPU的运行时间划 ...

  4. (六) 一起学 Unix 环境高级编程 (APUE) 之 进程控制

    . . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...

  5. UNIX环境高级编程笔记之进程控制

    本章重点介绍了进程控制的几个函数:fork.exec族._exit.wait和waitpid等,主要需要掌握的是父进程和子进程之间的运行机制,怎么处理进程的正常和异常终止.以及怎么让进程执行不同的程序 ...

  6. Linux进程控制(二)

    1. 进程的创建 Linux下有四类创建子进程的函数:system(),fork(),exec*(),popen() 1.1. system函数 原型: #include <stdlib.h&g ...

  7. 进程控制之exec函数

    用fork函数创建子进程后,子进程往往要调用一种exec函数以执行另一个程序.当进程调用一种exec函数时,该进程执行的程序完全替换为新程序,而新程序则从其main函数开始执行.因为调用exec并不创 ...

  8. Linux C 程序 进程控制(17)

    进程控制 1.进程概述现代操作系统的特点在于程序的并行执行.Linux是一个多用户多任务的操作系统.ps .pstree 查看进程进程除了进程id外还有一些其他标识信息,可以通过相应的函数获得.// ...

  9. linux 命令及进程控制

    main.c  main.o/main.obj  main/main.exe          编译                连接 程序运行;      两步: gcc/g++  -c  mai ...

  10. linux 下进程状态及进程控制

    系统状态检测及进程控制1,/proc 是系统的一个窗户,可以透视内核2,建议将hosts里localhost,locahost.locadomain 解析为127.0.0.1 把系统域名解决为局域网的 ...

随机推荐

  1. 图像滑动窗口 利用opencv和matlab

    1.利用opencv实现图像滑动窗口操作 功能:利用opencv实现图像滑动窗口操作(即利用已知尺寸的窗口遍历整幅图像,形成许多子图像)  vs2015+opencv3.1  2016.10 函数实现 ...

  2. Git学习总结(12)——多人开发 Git 分支管理详解

    1.前言 在上一篇博客中我们主要讲解了Git 远程仓库,相信大家对远程的Git仓库有一定的了解,嘿嘿.在这一篇博客中我们来在大家讲解一下Git 分支管理,这可以说是Git的又一大特点.下面我们就来学习 ...

  3. uva 交叉染色法10004

    鉴于网上讲交叉染色的资料比较少,于是我把我自己的心得与方法贴出来,方便与大家共同进步. 二分图: 百度百科传送门 wiki百科传送门 判断一个图是否为二分图可以用交叉染色的方法来判断,可以用BFS,也 ...

  4. HDU - 3040 - Happy Girls

    先上题目: Happy Girls Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  5. 转载 - KMP算法祥解

    出处:http://www.cppblog.com/oosky/archive/2006/07/06/9486.html KMP字符串模式匹配详解 来自CSDN     A_B_C_ABC 网友 KM ...

  6. [bzoj3038/3211]上帝造题的七分钟2/花神游历各国_线段树

    上帝造题的七分钟2 bzoj-3038 题目大意:给定一个序列,支持:区间开方:查询区间和. 注释:$1\le n\le 10^5$,$1\le val[i] \le 10^{12}$. 想法:这题还 ...

  7. RubyMine快捷键

    RubyMine快捷键 ctrl+shift+up/down 向上/向下移动代码段 alt+shift+up/down 向上/向下移动代码行 ctrl+y 删除一行 ctrl+shift+f10 运行 ...

  8. 自己写的php curl库实现整站克隆

    有时候常常会用到一些在线手冊,比方国内或国外的.有些是訪问速度慢,有些是作者直接吧站点关闭了,有些是server总是宕机.所以还是全盘克隆到自己server比較爽.所 已这里给了一个demo < ...

  9. 【SpringMVC架构】SpringMVC入门实例,解析工作原理(二)

    上篇博文,我们简单的介绍了什么是SpringMVC.这篇博文.我们搭建一个简单SpringMVC的环境,使用非注解形式实现一个HelloWorld实例,从简单入手,逐步深入. 环境准备 我们须要有主要 ...

  10. 【函数式】Monads模式初探——Endofunctor

    自函子 自函子(Endofunctor)是一个将范畴映射到自身的函子(A functor that maps a category to itself). 函子是将一个范畴转换到另一个范畴.所以自函子 ...