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. 【2000*】【Codeforces Round #518 (Div. 1) [Thanks, Mail.Ru!] B】Multihedgehog

    [链接] 我是链接,点我呀:) [题意] [题解] 找到度数为1的点. 他们显然是叶子节点. 然后每个叶子节点. 往上进行bfs. 累计他们的父亲节点的儿子的个数. 如果都满足要求那么就继续往上走. ...

  2. C语言——定义&&声明

    1.变量的定义&声明 变量的声明有两种情况: <1>一种是需要建立存储空间的.例如:int a 在声明的时候就已经建立了存储空间. <2>另一种是不需要建立存储空间的. ...

  3. asp.net--常用的数据库链接字符串

    本地连接 privatestring conn_string ="Data Source=localhost;Initial Catalog=SQLtest;Integrated Secur ...

  4. PAT Perfect Sequence (25)

    题目描写叙述 Given a sequence of positive integers and another positive integer p. The sequence is said to ...

  5. solr实战-(一)

    实现用户数据索引及查询 1. 启动solr       solr start 2. 创建collection       solr create -c user 3. schema中加入field   ...

  6. Django 介绍、安装配置、基本使用、Django 用户注冊样例

    Django介绍         Django 是由 Python 开发的一个免费的开源站点框架.能够用于高速搭建高性能.优雅的站点.              DjangoMTV 的思想项目架构图 ...

  7. vmware mac 分辨率设置

    1.安装vmware tool 2.关闭虚拟机,在设置中找到显示器项 3.选中“加速3D图形” 4.在监视器中,选中 指定监视器设置,使用任意分辨率 5.如果没有可用分辨率,手动输入,例如 1680* ...

  8. SQL SERVER读书笔记:阻塞与死锁

    阻塞是事务隔离带来的副作用,而并不是SQL SERVER的错. 死锁则是互相争用资源而引发.由于死锁会选择牺牲者,所以死锁的危害没有阻塞大.但有时为了解决死锁,会采取对资源加锁,导致阻塞的方式来避免.

  9. bzoj5277: [Usaco2018 Open]Out of Sorts

    被tkj大爷艹爆了5555整套模拟赛都是神仙思路题 那么这题题解 还有一个神仙做法,zory巨神在考场上找规律AC,自己都不会证..我证明了一下(然而这货还是不认可自己的做法) 按照分割点的思路,我们 ...

  10. SUSE glibc升级为2.18过程记录

    先验知识:1.运行时,动态库的装载依赖于ld-linux.so.6的实现,它查找共享库的顺序如下:(1)ld-linux.so.6在可执行的目标文件中被指定,可用readelf命令查看(2)ld-li ...