That is not part of POSIX, those are only present as you listed on linux systems - some other systems have a /proc with different things in it (sometimes stuff that's symbolic links on linux will be hardlinks, textfiles on linux will be binary, or different files with different information) or none at all
CXXIV. POSIX Functions
This module contains an interface to those functions defined in the IEEE 1003.1 (POSIX.1) standards document which are not accessible through other means. POSIX.1 for example defined the open(), read(), write() and close() functions, too, which traditionally have been part of PHP 3 for a long time. Some more system specific functions have not been available before, though, and this module tries to remedy this by providing easy access to these functions.
Sensitive data can be retrieved with the POSIX functions, e.g. posix_getpwnam() and friends. None of the POSIX function perform any kind of access checking when safe mode is enabled. It's therefore strongly advised to disable the POSIX extension at all (use --disable-posix in your configure line) if you're operating in such an environment.
Poznámka: Toto rozšíření není k dispozici na platformách Windows.
POSIX functions are enabled by default. You can disable POSIX-like functions with --disable-posix.
Tyto konstanty jsou definovány tímto rozšířením a budou k dispozici pouze tehdy, bylo-li rozšíření zkompilováno společně s PHP nebo dynamicky zavedeno za běhu.
- POSIX_F_OK (integer)
- Check whether the file exists.
- POSIX_R_OK (integer)
- Check whether the file exists and has read permissions.
- POSIX_W_OK (integer)
- Check whether the file exists and has write permissions.
- POSIX_X_OK (integer)
- Check whether the file exists and has execute permissions.
- POSIX_S_IFBLK (integer)
- Block special file
- POSIX_S_IFCHR (integer)
- Character special file
- POSIX_S_IFIFO (integer)
- FIFO (named pipe) special file
- POSIX_S_IFREG (integer)
- Normal file
- POSIX_S_IFSOCK (integer)
Poznámka: These constants are available since PHP 5.1.0. Please also note that some of them may not be available in your system.
The section about Process Control Functions maybe of interest for you.
- posix_access — Determine accessibility of a file
- posix_ctermid — Get path name of controlling terminal
- posix_get_last_error — Retrieve the error number set by the last posix function that failed
- posix_getcwd — Pathname of current directory
- posix_getegid — Return the effective group ID of the current process
- posix_geteuid — Return the effective user ID of the current process
- posix_getgid — Return the real group ID of the current process
- posix_getgrgid — Return info about a group by group id
- posix_getgrnam — Return info about a group by name
- posix_getgroups — Return the group set of the current process
- posix_getlogin — Return login name
- posix_getpgid — Get process group id for job control
- posix_getpgrp — Return the current process group identifier
- posix_getpid — Return the current process identifier
- posix_getppid — Return the parent process identifier
- posix_getpwnam — Return info about a user by username
- posix_getpwuid — Return info about a user by user id
- posix_getrlimit — Return info about system resource limits
- posix_getsid — Get the current sid of the process
- posix_getuid — Return the real user ID of the current process
- posix_isatty — Determine if a file descriptor is an interactive terminal
- posix_kill — Send a signal to a process
- posix_mkfifo — Create a fifo special file (a named pipe)
- posix_mknod — Create a special or ordinary file (POSIX.1)
- posix_setegid — Set the effective GID of the current process
- posix_seteuid — Set the effective UID of the current process
- posix_setgid — Set the GID of the current process
- posix_setpgid — Set process group id for job control
- posix_setsid — Make the current process a session leader
- posix_setuid — Set the UID of the current process
- posix_strerror — Retrieve the system error message associated with the given errno
- posix_times — Get process times
- posix_ttyname — Determine terminal device name
- posix_uname — Get system name
don't forget that in posix systems you can use /proc/$process_id/
with it you can make somethings like:
if (strpos(file_get_contents("/proc/$PPID/cmdline"),'php')===false) echo "parent pid die";
with this you can use some libs that block signal or some bad signal handling or zombies process or anything you can think :)