下表列出了各種系統調用及其描述。
分類 | 系統調用 | 描述 |
---|---|---|
普通 | 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() |
從記憶體中取消映射映射的檔。 |
上一篇:
覆蓋進程映像
下一篇:
System V & Posix