重要的POSIX過程

2021-08-27 01:38:45 字數 1546 閱讀 2154

posix大約有100個過程呼叫,它們中最重要的過程呼叫如下四表所示,為了區分,分為四類。從廣義上看,由這些呼叫所提供的服務確定了多數作業系統應該具有的功能,而在個人計算機上,資源管理的功能是較弱的(相比於大型機系統)。所包含的服務有建立與終止程序,建立、刪除、讀出和寫入檔案,目錄管理以及完成輸入輸出。

程序管理 呼叫

說明pid = fork()

建立與父程序相同的子程序

pid = waitpid(pid, &statloc, options)

等待乙個子程序終止

s = execve(name, argv, environp)

替換乙個程序的核心映像

exit(status)

終止程序執行並返回狀態

檔案管理 呼叫

說明fd = fopen(file, how, …)

開啟乙個檔案供讀、寫或兩者有之

s = close(fd)

關閉乙個開啟的檔案

n = read(fd, buffer, nbytes)

把資料從乙個檔案讀到緩衝區去

n = write(fd, buffer, nbytes)

把資料從緩衝區寫到乙個檔案中去

position = lseek(fd, offset, whence)

移動檔案指標

s = stat(name, &buf)

取得檔案的狀態資訊

目錄和檔案系統管理 呼叫

說明s = mkdir(name, mode)

建立乙個新目錄

s = rmdir(name)

刪去乙個空目錄

s = link(name1, name2)

建立乙個新目錄name2,並指向name1

s = unlink(name)

刪去乙個目錄項

s = mount(special, name, flag)

安裝乙個檔案系統

s = umount(special)

解除安裝乙個檔案系統

雜項 呼叫

說明 s = chdir(dirname)

改變工作目錄

s = chmod(name, mode)

修改乙個檔案的保護位

s = kill(pid, signal)

傳送訊號給乙個程序

seconds = time(&seconds)

自2023年1月1日起的流逝時間

備註:一些重要的posix系統呼叫,若出錯則返回**s為-1。返回**如下:pid是程序的id,fd是檔案描述符,n是位元組數,position是在檔案中的偏移量,而seconds是流逝時間。引數在表中解釋。有必要指出,將posix過程對映到系統呼叫並不是一對一的。posix標準定義了構造系統所必須提供的一套過程,但是並沒有規定它們是系統呼叫,是庫呼叫還是其它形式。如果不通過系統呼叫(即不需陷入核心),那麼從效能上考慮,它通常會在使用者空間上完成。不過,大多是posix過程確實是通過系統呼叫來完成的,通常是乙個過程直接對映到乙個系統呼叫上。在有一些情況下,特別是所需要的僅僅是某個呼叫的變體時,此時乙個系統呼叫對應著若干個庫過程。

過程重要,還是結果重要?

當我們在談到自己的失敗時,我們總是在說我們在失敗中學到了什麼,而不去計較最終的結果是什麼。但當我們談到某位成名的英雄時,總是在談論他的累累碩果,而很少談及他在走向成功道路上的付出。究竟是過程重要呢,還是結果重要?從小學到初中,再到高中,大學,自己經歷的失敗數不勝數,身邊成功的例子枚不勝舉。每每看到別...

結果重要同樣過程也同樣重要,享受過程

不要浮躁,不要飄,很多事情都是需要過程和時間去打磨發酵。好的飯菜需要採摘新鮮的食材,新鮮的食材需要時間和精力去保證它的成長,施肥 除蟲,然後有了新鮮的食材需要精湛的手藝去做,一點點除錯它的鹹甜程度 味道 火候,然後一道美味的菜才能做出來。當然我們吃完以後還要進行洗碗 打掃這些工作的了。好的酒也需要時...

重要公式的推導過程

其中,a l al 和y y 為特徵維度為n o ut n out 的向量,而 s 2 s 2 為s的l2範數。損失函式有了,現在我們開始用梯度下降法迭代求解每一層的w,b w,b 首先是輸出層第l l層。注意到輸出層的w,b w,b 滿足下式 l w,b l w,b l w,b 1 標量對多個向量...