intro() - Unix 和 Linux 系統呼叫 - 技術教學
Tutorials Point


  Unix 初學者指南
  Unix Shell 程式設計
  高階 Unix
  Unix 有用參考
  Unix 有用資源
  精選閱讀

版權所有 © 2014 tutorialspoint



  首頁     參考     討論論壇     關於 TP  

intro() - Unix 和 Linux 系統呼叫


previous next AddThis Social Bookmark Button

廣告

名稱

intro - 系統呼叫的介紹

描述

手冊的第 2 節描述了 Linux 系統呼叫。系統呼叫是進入 Linux 核心的入口點。通常,不會直接呼叫系統呼叫:相反,大多數系統呼叫都有相應的 C 庫包裝函式,這些函式執行所需的步驟(例如,陷入核心模式)以呼叫系統呼叫。因此,進行系統呼叫看起來與呼叫普通庫函式相同。

有關 Linux 系統呼叫的列表,請參閱 syscalls(2)。

返回值

發生錯誤時,大多數系統呼叫返回一個負錯誤號(即 errno(3) 中描述的某個常量的負值)。C 庫包裝器會向呼叫方隱藏此細節:當系統呼叫返回負值時,包裝器會將絕對值複製到 errno 變數中,並將 -1 作為包裝器的返回值返回。

成功系統呼叫返回的值取決於呼叫。許多系統呼叫在成功時返回 0,但有些系統呼叫在成功呼叫時可以返回非零值。詳細資訊在各個手冊頁中進行了描述。

在某些情況下,程式設計師必須定義一個功能測試宏,以便從手冊頁 SYNOPSIS 部分中指定的標頭檔案中獲取系統呼叫的宣告。在這種情況下,所需宏在手冊頁中進行了描述。有關功能測試宏的更多資訊,請參閱 feature_test_macros(7)。

符合標準

某些術語和縮寫用於指示此部分中呼叫的符合的 Unix 變體和標準。請參閱 standards(7)。

備註

直接呼叫

在大多數情況下,無需直接呼叫系統呼叫,但有時標準 C 庫不會為您實現一個好的包裝函式。在這種情況下,程式設計師必須使用 syscall(2) 手動呼叫系統呼叫。從歷史上看,這也可以使用 _syscall(2) 中描述的 _syscall 宏之一來實現。

作者和版權條款

檢視手冊頁源的標題以瞭解作者和版權條件。請注意,這些內容在各個頁面之間可能有所不同!

參見

此頁面是 Linux man-pages 專案 3.00 版的一部分。有關該專案以及有關報告錯誤的資訊,請訪問 http://www.kernel.org/doc/man-pages/。

previous next Printer Friendly

廣告


  

廣告



廣告