相關係統呼叫 (System V)



下表列出了各種系統呼叫及其描述。

類別 系統呼叫 描述
通用 open () 此係統呼叫要麼開啟已存在的檔案,要麼建立並開啟新的檔案。
通用 creat () 建立並開啟一個新的檔案。
通用 read () 將檔案內容讀取到所需的緩衝區中。
通用 write () 將緩衝區的內容寫入檔案。
通用 close () 關閉檔案描述符。
通用 stat () 提供檔案資訊。
管道 pipe () 建立用於通訊的管道,返回兩個用於讀取和寫入的檔案描述符。
命名管道或FIFO mknod () 建立一個記憶體裝置檔案或特殊檔案以建立FIFO。
命名管道或FIFO mkfifo () 建立一個新的FIFO。
共享記憶體 shmget () 建立一個新的共享記憶體段或獲取現有段的識別符號。
共享記憶體 shmat () 附加共享記憶體段,並將該段作為呼叫程序虛擬記憶體的一部分。
共享記憶體 shmdt () 分離共享記憶體段。
共享記憶體 shmctl () 對共享記憶體執行控制操作。共享記憶體的一些通用控制操作包括刪除共享記憶體段 (IPC_RMID)、接收共享記憶體資訊 (IPC_STAT) 和更新現有共享記憶體的新值 (IPC_SET)。
訊息佇列 msgget () 建立一個新的訊息佇列或訪問已有的訊息佇列,並獲取控制代碼或識別符號以執行關於訊息佇列的操作,例如向佇列傳送訊息和從佇列接收訊息。
訊息佇列 msgsnd () 向所需的訊息佇列傳送具有所需標識號的訊息。
訊息佇列 msgrcv () 從訊息佇列接收訊息。預設情況下,這是一個無限等待操作,這意味著呼叫將被阻塞,直到它接收到訊息。
訊息佇列 msgctl () 對訊息佇列執行控制操作。訊息佇列的一些通用控制操作包括刪除訊息佇列 (IPC_RMID)、接收訊息佇列資訊 (IPC_STAT) 和更新現有訊息佇列的新值 (IPC_SET)。
訊號量 semget () 建立一個新的訊號量或獲取現有訊號量的識別符號。訊號量用於執行在同一物件上工作的各種IPC之間的同步。
訊號量 semop () 對訊號量值執行訊號量操作。基本的訊號量操作是獲取或釋放訊號量的鎖。
訊號量 semctl () 對訊號量執行控制操作。訊號量的一些通用控制操作包括刪除訊號量 (IPC_RMID)、接收訊號量資訊 (IPC_STAT) 和更新現有訊號量的值 (IPC_SET)。
訊號 signal () 設定訊號(訊號編號)和訊號處理程式的處置方式。換句話說,註冊在發出該訊號時將執行的例程。
訊號 sigaction () 與signal()相同,設定訊號的處置方式,即在收到已註冊訊號後根據已註冊訊號處理程式執行某些操作。此係統呼叫支援對signal()的更精細控制,例如阻塞某些訊號、在呼叫訊號處理程式後將訊號操作恢復為預設狀態、提供使用者和系統消耗的時間、傳送程序的程序ID等資訊。
記憶體對映 mmap () 將檔案對映到記憶體中。一旦對映到記憶體中,訪問檔案就像使用地址訪問資料一樣容易,而且這種方式呼叫並不昂貴,不像系統呼叫那樣。
記憶體對映 munmap () 取消對映已對映的檔案。
廣告