国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

POSIX函數(shù)

diabloneo / 505人閱讀

摘要:警告通過(guò)函數(shù),可以檢索很多敏感數(shù)據(jù),例如以及其它函數(shù)。當(dāng)開啟了安全模式,函數(shù)并不會(huì)執(zhí)行任何的權(quán)限檢測(cè)。返回當(dāng)前進(jìn)程所在的當(dāng)前控制終端的路徑名返回值成功時(shí),返回路徑名。返回值返回一個(gè)關(guān)聯(lián)數(shù)組,下標(biāo)為定義的各種限制。

POSIX: 簡(jiǎn)介:

該模塊包含了定義在 IEEE 1003.1(POSIX.1)標(biāo)準(zhǔn)文檔里的函數(shù)的接口,通過(guò)其它手段無(wú)法訪問(wèn)。
警告:
通過(guò)POSIX函數(shù),可以檢索很多敏感數(shù)據(jù),例如:posix_getpwnam()以及其它函數(shù)。當(dāng)開啟了安全模式,POSIX函數(shù)并不會(huì)執(zhí)行任何的權(quán)限檢測(cè)。因此,當(dāng)正在上述的環(huán)境下操作,強(qiáng)烈建議關(guān)閉POSIX擴(kuò)展(在配置行中使用 "--disable-posix")。

安裝:

POSIX函數(shù)默認(rèn)是啟用的,可通過(guò) "--disable-posix" 來(lái)禁用POSIX函數(shù)
預(yù)定義常量,分3大類:

1.posix_access_constants - 權(quán)限相關(guān),php5.1.0開始支持:

POSIX_F_OK - 檢查文件是否存在  
POSIX_R_OK - 檢查文件是否存在,且具有 "讀" 權(quán)限  
POSIX_W_OK - 檢查文件是否存在,且具有 "寫" 權(quán)限  
POSIX_X_OK - 檢查文件是否存在,且具有 "執(zhí)行" 權(quán)限

2.posix_mknod_constants - 文件類型,php5.1.0開始支持:

POSIX_S_IFBLK - 塊特殊文件  
POSIX_S_IFCHR - 字符特殊文件  
POSIX_S_IFIFO - FIFO(pipe-管道)特殊文件  
POSIX_S_IFREG - 普通文件  
POSIX_S_IFSOCK - socket

3.posix_setrlimit_constants - php7.0.0開始支持:

你不妨看一下下面參考頁(yè),關(guān)于你的操作系統(tǒng)的setrlimit()的注意點(diǎn),有關(guān)于實(shí)現(xiàn)POSIX的limits的差異的解釋,甚至是跨操作系統(tǒng)的聲明。

POSIX_RLIMIT_AS - 進(jìn)程地址空間的最大尺寸,單位是bytes。也可查看PHP的 "memory_limit" 配置指令  
POSIX_RLIMIT_CORE - 核心文件的最大尺寸。如果設(shè)置為0,將不會(huì)生成核心文件  
POSIX_RLIMIT_CPU - 進(jìn)程可使用的CPU最大時(shí)間,單位是秒。當(dāng)達(dá)到軟限制(soft limit),將發(fā)送一個(gè) "SIGXCPU" 信號(hào),這個(gè)信號(hào)可以被 "pcntl_signal()" 捕獲。依賴于操作系統(tǒng),每秒都會(huì)發(fā)送額外的 "SIGXCPU"

信號(hào),直到達(dá)到硬限制(hard limit),基于這點(diǎn),會(huì)發(fā)送一個(gè)無(wú)法捕獲的 "SIGKILL" 信號(hào)。也可查看
"set_time_limit()"

POSIX_RLIMIT_DATA - 進(jìn)程數(shù)據(jù)段的最大尺寸,單位是bytes。這基本不會(huì)對(duì)PHP的執(zhí)行造成任何影響,除非使用了一個(gè)叫做 "brk()" 或 "sbrk()"

的擴(kuò)展

POSIX_RLIMIT_FSIZE - 進(jìn)程可以創(chuàng)建的文件的最大尺寸,單位是bytes  
POSIX_RLIMIT_LOCKS - 進(jìn)程可以創(chuàng)建的最大的鎖定數(shù)量。僅支持非常老版的linux內(nèi)核  
POSIX_RLIMIT_MEMLOCK - 內(nèi)存中,可以鎖定的最大字節(jié)數(shù)  
POSIX_RLIMIT_MSGQUEUE - 可以分配給 POSIX 消息隊(duì)列的最大字節(jié)數(shù)。PHP不支持POSIX 消息隊(duì)列,因此,這個(gè)限制沒(méi)有任何影響,除非,你使用了一個(gè)實(shí)現(xiàn)了支持 "POSIX_RLIMIT_MSGQUEUE" 的擴(kuò)展  
POSIX_RLIMIT_NICE - 進(jìn)程可以設(shè)置 "renice"(linux進(jìn)程的優(yōu)先級(jí)之類的) 的最大值。值可以被設(shè)置為:20-我們?cè)O(shè)置的值,作為資源限制,不能設(shè)置為負(fù)  
POSIX_RLIMIT_NOFILE - 進(jìn)程可以打開的 >(大于)最大文件描述符數(shù)字的值。  
POSIX_RLIMIT_NPROC - 進(jìn)程的真實(shí)用戶ID可以創(chuàng)建的進(jìn)程(和線程、或者線程,在一些操作系統(tǒng)上)的最大個(gè)數(shù)。  
POSIX_RLIMIT_RSS - 進(jìn)程的常駐集合的最大尺寸,單位是 pages  
POSIX_RLIMIT_RTPRIO - 通過(guò) "sched_setscheduler()" 和 "sched_setparam()" 系統(tǒng)調(diào)用,可以設(shè)置的最大真實(shí)時(shí)間優(yōu)先。  
POSIX_RLIMIT_RTTIME - 如果使用真實(shí)的時(shí)間調(diào)度,在不進(jìn)行阻塞的系統(tǒng)調(diào)用下,進(jìn)程可以消耗掉最大CPU時(shí)間,單位是微秒  
POSIX_RLIMIT_SIGPENDING - 進(jìn)程的真實(shí)用戶ID,可以設(shè)置的信號(hào)隊(duì)列的最大個(gè)數(shù)  
POSIX_RLIMIT_STACK - 進(jìn)程棧的最大尺寸,單位是bytes  
POSIX_RLIMIT_INFINITY - 用于指明資源大小不受限制(給資源限制設(shè)置了一個(gè)無(wú)限大值)。
函數(shù) posix_access(string $file[, int $mode = POSIX_F_OK])

查看用戶對(duì)文件是否具有指定的權(quán)限

參數(shù):

$file - 測(cè)試的文件名  
$mode - 權(quán)限,包含:POSIX_F_OK, POSIX_R_OK, POSIX_W_OK, POSIX_X_OK的一個(gè)或多個(gè)。
posix_ctermid()

返回當(dāng)前進(jìn)程所在的當(dāng)前控制終端的路徑名

返回值:   成功時(shí),返回路徑名。否則返回false,并設(shè)置錯(cuò)誤號(hào)。可通過(guò) "posix_get_last_error()" 來(lái)獲取
posix_errno() - posix_get_last_error()別名 posix_get_last_error()

檢索最后的posix函數(shù)調(diào)用失敗,返回的錯(cuò)誤號(hào)。錯(cuò)誤號(hào)關(guān)聯(lián)的錯(cuò)誤消息,可通過(guò) "posix_strerror()" 來(lái)獲取

posix_strerror(int $errno)

通過(guò)給定的錯(cuò)誤號(hào),返回關(guān)聯(lián)的POSIX系統(tǒng)錯(cuò)誤消息

posix_getcwd()

獲取當(dāng)前腳本的工作目錄的絕對(duì)路徑

posix_getegid()

返回當(dāng)前進(jìn)程的有效用戶組ID

posix_geteuid()

返回當(dāng)前進(jìn)程的有效用戶ID

posix_getgid()

返回當(dāng)前進(jìn)程的真實(shí)用戶組ID

posix_getuid()

返回當(dāng)前進(jìn)程的真實(shí)用戶ID

posix_getgrgid(int $gid)

通過(guò)傳入組ID,獲取給定的用戶組的相關(guān)信息

posix_getgrnam(string $name)

通過(guò)傳入組名稱,獲取給定的用戶組的相關(guān)信息

posix_getgroups()

獲取當(dāng)前進(jìn)程的用戶組集合
返回值:
返回一個(gè)索引數(shù)組,包含組id的集合

posix_getlogin()

返回?fù)碛挟?dāng)前進(jìn)程的用戶的登陸名

示例:

            
posix_getpgid(int $pid)

獲取指定進(jìn)程的進(jìn)程組標(biāo)識(shí)符(進(jìn)程組id),返回整數(shù)

注意:

該函數(shù)不是POSIX函數(shù),但是常見(jiàn)于BSD和System V的系統(tǒng)上。如果系統(tǒng)不支持該函數(shù),在編譯時(shí)就不會(huì)被包含進(jìn)來(lái)。應(yīng)該提前使用 "function_exists()" 檢查,存在再使用
posix_getpgrp()

獲取當(dāng)前進(jìn)程的進(jìn)程組標(biāo)識(shí)符(進(jìn)程組id),返回整數(shù)
可查看:POSIX.1 和 POSIX系統(tǒng)上的getpgrp(2) 幫助手冊(cè),獲取關(guān)于進(jìn)程組的更多信息

posix_getpid()

獲取當(dāng)前進(jìn)程的進(jìn)程標(biāo)識(shí)符(進(jìn)程id)

posix_getppid()

獲取當(dāng)前進(jìn)程的父進(jìn)程標(biāo)識(shí)符(父進(jìn)程id)

posix_getpwnam(string $username)

通過(guò)用戶名,獲取給定用戶的信息

返回值:

            成功,返回一個(gè)關(guān)聯(lián)數(shù)組,下標(biāo)如下,失敗返回false:  
            name - 是一個(gè)短的、通常少于16個(gè)字符,非真實(shí)的、全名。應(yīng)該同調(diào)用函數(shù)時(shí),傳遞的$username參數(shù)一致,截?cái)喽嘤嗟淖址? 
            passwd - 返回加密后的用戶密碼的字符串。通常,例如系統(tǒng)的shadow密碼,使用 "*" 代替  
            uid - 用戶ID  
            gid - 用戶組ID。使用 posix_getgrgid() 獲取用戶組名和它的成員列表  
            gecos - 一個(gè)過(guò)時(shí)的元素,包含了 "," 分隔的用戶的全名、辦公室電話、辦公室號(hào)碼以及家庭電話號(hào)碼。大多數(shù)的系統(tǒng)上,只有用戶的全名有效。  
            dir - 用戶家目錄的絕對(duì)路徑  
            shell - 可執(zhí)行的用戶的默認(rèn)shell的絕對(duì)路徑  
        示例:  
              
        輸出:  
            Array(  
                [name]    => tom  
                [passwd]  => x  
                [uid]     => 10000  
                [gid]     => 42  
                [gecos]   => "tom,,,"        // "," 分隔  
                [dir]     => "/home/tom"  
                [shell]   => "/bin/bash"  
            )
posix_getpwuid(int $uid)

通過(guò)用戶id,獲取給定用戶的信息

posix_getrlimit()

返回一個(gè)關(guān)于當(dāng)前資源的軟限制和硬限制的信息數(shù)組

        每個(gè)資源有一個(gè)關(guān)聯(lián)的軟限制和硬限制。  
        軟限制-查看linux系統(tǒng)  
        硬限制-查看linux系統(tǒng)     
        一個(gè)無(wú)特權(quán)的進(jìn)程,可能只能設(shè)置它的軟限制為:0-硬限制大小,并且必須低于硬限制的值。  
        返回值:  
            返回一個(gè)關(guān)聯(lián)數(shù)組,下標(biāo)為定義的各種限制。每個(gè)限制都有一個(gè)軟限制和硬限制。  
            core - 核心文件的最大尺寸。當(dāng)為0,不會(huì)創(chuàng)建核心文件。核心文件大于該設(shè)定值,將會(huì)被截?cái)? 
            totalmem - 進(jìn)程的內(nèi)存最大值,單位為bytes  
            virtualmem - 進(jìn)程的虛擬內(nèi)容的最大值,單位為bytes  
            data - 進(jìn)程的數(shù)據(jù)段的最大值,單位為bytes  
            stack - 進(jìn)程棧的最大值,單位為bytes  
            rss - RAM中常駐的虛擬頁(yè)面的最大個(gè)數(shù)  
            maxproc - 可被調(diào)用進(jìn)程的真實(shí)用戶ID創(chuàng)建的最大進(jìn)程數(shù)量  
            memlock - 在RAM中,可被鎖定的內(nèi)存的最大字節(jié)數(shù)  
            cpu - 進(jìn)程允許使用的最大CPU時(shí)間  
            filesize - 進(jìn)程可以創(chuàng)建的文件的最大尺寸,單位是bytes  
            openfiles - 進(jìn)程可以打開的最大文件數(shù)量  
        示例:  
              
        輸出:  
            Array(  
                [soft core] => 0  
                [hard core] => unlimited  
                [soft data] => unlimited  
                [hard data] => unlimited  
                [soft stack] => 8388608  
                [hard stack] => unlimited  
            )
posix_getsid(int $pid)

返回指定進(jìn)程的session ID。進(jìn)程的session ID是會(huì)話領(lǐng)導(dǎo)者(session leader)的進(jìn)程組id

posix_initgroups(string $name, int $base_group_id)

對(duì)指定的用戶,計(jì)算其組訪問(wèn)列表

參數(shù):  
$name - 指定的用戶名
$base_group_id - 密碼文件里的組ID
##posix_isatty(mixed $fd)
檢查文件描述符是否是一個(gè)有效的終端類型的設(shè)置(是否是tty)
參數(shù):
$fd - 文件描述符,期望是一個(gè)文件資源或一個(gè)整型。整型將被假定為可以直接傳遞到基礎(chǔ)系統(tǒng)調(diào)用的文件描述符。幾乎在所有情況下,提供的是一個(gè)文件資源。
posix_kill(int $pid, int $sig)

給指定的進(jìn)程發(fā)送一個(gè)$sig指定的信號(hào)!
參數(shù):

$pid - 進(jìn)程id  
$sig - PCNTL信號(hào)預(yù)定義常量
posix_mkfifo(string $pathname, int $mode)

創(chuàng)建一個(gè)特殊的FIFO文件,存在于文件系統(tǒng),并且作為進(jìn)程的雙向通信橋梁

參數(shù):

 $pathname - FIFO文件(管道)  
 $mode - 必須是8進(jìn)制格式。新創(chuàng)建的FIFO的權(quán)限,也依賴于當(dāng)前的umask()設(shè)置。新創(chuàng)建的文件權(quán)限是(mode & ~umask)
posix_mknod(string $pathname, int $mode[, int $major = 0[, int $minor = 0]])

創(chuàng)建一個(gè)特殊的或者一般的文件

參數(shù):
$pathname - 創(chuàng)建的文件
$mode - 這個(gè)參數(shù)由文件類型(POSIX_S_IFREG,POSIX_S_IFCHR, POSIX_S_IFBLK, POSIX_S_IFIFO,POSIX_S_IFSOCK其中一個(gè))和訪問(wèn)權(quán)限(0664等),按位或組成。
$major -主設(shè)備內(nèi)核標(biāo)識(shí)符(當(dāng)使用S_IFCHR或S_IFBLK時(shí),需要傳遞該參數(shù)) $minor - 監(jiān)控設(shè)備內(nèi)核標(biāo)識(shí)符
posix_setegid(int $gid)
        設(shè)置當(dāng)前進(jìn)程的有效組ID。這是個(gè)特權(quán)函數(shù),需要操作系統(tǒng)上具有特殊權(quán)限(通常是root權(quán)限),才能執(zhí)行該函數(shù)。  
posix_seteuid(int $uid)
        設(shè)置當(dāng)前進(jìn)程的有效用戶ID。這是個(gè)特權(quán)函數(shù),需要操作系統(tǒng)上具有特殊權(quán)限(通常是root權(quán)限),才能執(zhí)行該函數(shù)。  
posix_setgid(int $gid)

設(shè)置當(dāng)前進(jìn)程的真實(shí)用戶組ID。這是個(gè)特權(quán)函數(shù),需要操作系統(tǒng)上具有特殊權(quán)限(通常是root權(quán)限),才能執(zhí)行該函數(shù)。函數(shù)調(diào)用的適當(dāng)?shù)捻樞蚴牵菏紫日{(diào)用 posix_setgid(),最后調(diào)用 posix_setuid()。
注意:如果是超級(jí)用戶調(diào)用,也會(huì)設(shè)置有效用戶組ID

posix_setpgid(int $pid, int $pgid)
        設(shè)置指定進(jìn)程的進(jìn)程組ID  
posix_setrlimit(int $resource, int $softlimit, int $hardlimit)

設(shè)置給定系統(tǒng)資源的軟限制和硬限制。

參數(shù):   $resource - 是posix_setrlimit_constants預(yù)定義常量   $softlimit -
軟限制,任意設(shè)置或者 POSIX_RLIMIT_INFINITY - 無(wú)限大 $hardlimit - 硬限制,任意設(shè)置或者
POSIX_RLIMIT_INFINITY - 無(wú)限大
posix_setsid()
        設(shè)置當(dāng)前進(jìn)程為session leader(會(huì)話領(lǐng)導(dǎo)者)  
posix_setuid(int $uid)
        設(shè)置當(dāng)前進(jìn)程的真實(shí)用戶ID。這是個(gè)特權(quán)函數(shù),需要操作系統(tǒng)上具有特殊權(quán)限(通常是root權(quán)限),才能執(zhí)行該函數(shù)。  
posix_times()

獲取當(dāng)前CUP使用信息

返回值:
返回一個(gè)關(guān)聯(lián)數(shù)組

 ticks - 重啟到現(xiàn)在,已經(jīng)過(guò)去的 clock ticks 個(gè)數(shù)  
 utime - 當(dāng)前進(jìn)程使用的用戶時(shí)間  
 stime - 當(dāng)前進(jìn)程使用的系統(tǒng)時(shí)間  
 cutime - 當(dāng)前進(jìn)程和子進(jìn)程使用的用戶時(shí)間  
 cstime - 當(dāng)前進(jìn)程和子進(jìn)程使用的系統(tǒng)時(shí)間  

警告:

posix_ttyname($mixed $fd)

返回當(dāng)前打開的文件描述符所在的終端設(shè)備的絕對(duì)路徑

參數(shù):

$fd - 文件描述符,期望是一個(gè)文件資源或一個(gè)整型。整型將被假定為可以直接傳遞到基礎(chǔ)系統(tǒng)調(diào)用的文件描述符。幾乎在所有情況下,提供的是一個(gè)文件資源。
posix_uname()

獲取系統(tǒng)相關(guān)信息。

返回值: 返回一個(gè)關(guān)于系統(tǒng)信息的關(guān)聯(lián)數(shù)組

sysname - 操作系統(tǒng)名稱(例如:Linux)  
nodename - 系統(tǒng)名稱(例如:valiant)  
release - 操作系統(tǒng)的發(fā)布版(例如:2.6.15-1-686)  
version - 操作系統(tǒng)版本(例如:#4 Tue Jul 20 17:01:36 MEST 1999)  
machine - 系統(tǒng)平臺(tái)(例如:i586)  
domainname - DNS域名(例如:baidu.com)

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/28301.html

相關(guān)文章

  • PHP多進(jìn)程系列筆記(四)

    摘要:本節(jié)主要講解常用函數(shù)和進(jìn)程池的概念,也會(huì)涉及到守護(hù)進(jìn)程的知識(shí)。所以任何時(shí)候,建議預(yù)先創(chuàng)建好進(jìn)程,也就是使用進(jìn)程池的方式實(shí)現(xiàn)。 本節(jié)主要講解Posix常用函數(shù)和進(jìn)程池的概念,也會(huì)涉及到守護(hù)進(jìn)程的知識(shí)。本節(jié)難度較低。 Posix常用函數(shù) posix_kill 向指定pid進(jìn)程發(fā)送信號(hào)。成功時(shí)返回 TRUE , 或者在失敗時(shí)返回 FALSE 。 bool posix_kill ( int $...

    Cc_2011 評(píng)論0 收藏0
  • PHP回顧之多進(jìn)程編程

    摘要:多進(jìn)程中與多進(jìn)程相關(guān)的兩個(gè)重要拓展是和。函數(shù)執(zhí)行期間,主進(jìn)程除了等待無(wú)法處理其他任務(wù),所以一般不認(rèn)為這是多進(jìn)程編程。回收子進(jìn)程有兩種方式,一種是主進(jìn)程調(diào)用函數(shù)等待子進(jìn)程結(jié)束另外一種是處理信號(hào)。 轉(zhuǎn)載請(qǐng)注明文章出處: https://tlanyan.me/php-review... PHP回顧系列目錄 PHP基礎(chǔ) web請(qǐng)求 cookie web響應(yīng) session 數(shù)據(jù)庫(kù)操作 加解...

    lifesimple 評(píng)論0 收藏0
  • python模塊之subprocess類與常量

    摘要:限于,可選的文件描述符序列,用于在父子進(jìn)程間保持開放。如果設(shè)置了,表示派生的進(jìn)程號(hào)子進(jìn)程返回碼,表示進(jìn)程未終止。如果未捕獲標(biāo)準(zhǔn)錯(cuò)誤返回方法如果非,拋出異常異常模塊的異常基類子進(jìn)程執(zhí)行超時(shí)。 常量 subprocess.DEVNULL:可傳遞給stdin, stdout, stderr參數(shù)的特殊值,意味著將使用特殊文件os.devnull重定向輸入輸出 subprocess.PIPE:可...

    Alan 評(píng)論0 收藏0
  • Java 外部函數(shù)接口:JNI, JNA, JNR

    摘要:我們知道,發(fā)起函數(shù)調(diào)用,需要構(gòu)造一個(gè)棧幀。構(gòu)造棧幀的具體實(shí)現(xiàn)細(xì)節(jié)的選擇,被稱為調(diào)用慣例。要想完成這個(gè)函數(shù)調(diào)用邏輯,就要運(yùn)行時(shí)構(gòu)造棧幀,生成參數(shù)壓棧和清理堆棧的工作。目前,幾乎支持全部常見(jiàn)的架構(gòu)。 原文:http://nullwy.me/2018/01/java...如果覺(jué)得我的文章對(duì)你有用,請(qǐng)隨意贊賞 遇到的問(wèn)題 前段時(shí)間開發(fā)的時(shí)候,遇到一個(gè)問(wèn)題,就是如何用 Java 實(shí)現(xiàn) chdir...

    pubdreamcc 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<