一、系統呼叫- 建立
int creat(const char *filename, mode_t mode )
filename :建立的檔名
(包含路徑,預設為當前路徑)
mode:建立模式
常建立模式:
s_irusr 可讀
s_iwusr 可寫
s_ixusr 可執行
s_ixrwu 可讀、可寫、可執行
除用以上巨集來選擇建立模式,也可以用數字來表示
二、系統呼叫-開啟
#include
#include
#include
int open(const char *pathname, int flags);
int open(const char *pathname,
int flags,mode_t mode);
返回值:成功返回新分配的檔案描述符,
出錯返回-1並設定errno
三、引數含義
pathname是要開啟或建立的檔案的名字
flags引數可用來說明此函式的多個選擇項
mode對於open函式而言,僅當建立新檔案時才使用第三個引數
四、flags引數
以下可選項可以同時指定0個或多個, 和必選項按位或起來作為flags引數。
o_creat 若此檔案不存在則建立它。使用此選擇項時,需同時說明第三個引數mode,用其說明該新檔案的訪問許可權。
o_nonblock 如果p a t h n a m e指的是乙個塊特殊檔案或乙個字元特殊檔案,則此選擇項為此檔案的本次開啟操作和後續的i / o操作設定非阻塞方式。
Linux系統呼叫及使用者程式設計介面 API
1 linux系統呼叫 所謂系統呼叫是指作業系統提供給使用者程式呼叫的一組 特殊 介面,使用者程式可以通過這組 特殊 介面獲得作業系統核心提供的服務。例如,使用者可以通過程序控制相關的系統呼叫來建立程序 實現程序之間的通訊等。在這裡,為什麼使用者程式不能直接訪問系統核心提供的服務呢?這是由於在lin...
Linux系統呼叫及使用者程式設計介面(API)學習
linux系統呼叫 系統呼叫指作業系統提供給使用者程式呼叫的一組 特殊 介面,使用者程式可以通過這組 特殊 介面來獲得作業系統核心提供的服務。為什麼使用者程式不能直接訪問系統核心提供的服務呢?這是由於在linux中,為了更好地保護核心空間,將程式的執行空間分為使用者空間和核心空間 也就是常稱的使用者...
Linux系統程式設計 Linux系統呼叫
linux 系統呼叫 庫函式 目錄 系統呼叫概述 系統呼叫的實現 系統呼叫和庫函式的區別 系統呼叫,顧名思義,說的是作業系統提供給使用者程式呼叫的一組 特殊 介面。使用者程式可以通過這組 特殊 介面來獲得作業系統核心提供的服務,比如使用者可以通過檔案系統相關的呼叫請求系統開啟檔案 關閉檔案或讀寫檔案...