相關系統呼叫(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() 從記憶體中取消對映對映的檔案。