作業系統中有哪些不同的系統呼叫?
不同的系統呼叫如下所示:
程序管理系統呼叫
檔案管理系統呼叫
目錄管理系統呼叫
讓我們逐一瞭解它們。
程序管理系統呼叫
系統用於建立新程序或稱為 fork 的副本程序。副本程序包含檔案描述符和通用暫存器中的所有資料。原始程序也稱為父程序,副本稱為子程序。
fork 呼叫返回一個值,該值在子程序中為零,而在父程序中等於子程序的 PID(程序識別符號)。exit 等系統呼叫會請求終止程序的服務。程式的載入或使用副本更改原始映像需要執行 exec。Pid 將有助於區分子程序和父程序。
例如,Linux 中的程序管理系統呼叫。
fork - 用於從父程序建立副本程序。
wait - 程序應該等待其他程序完成其工作。
exec - 將選定的程式載入到記憶體中。
exit - 終止程序。
檔案管理系統呼叫
使用系統呼叫 open 開啟檔案。使用引數指定應開啟檔案的模式。
引數還包含要開啟的檔案的名稱或要建立的新檔案。檔案使用 close 系統關閉。每個檔案都關聯一個指標,該指標指示檔案中當前的位置。
在順序讀取或寫入時,指向要讀取或寫入的下一個位元組。Lseek 呼叫更改位置指標的值,以便隨後的讀取或寫入呼叫可以從檔案中的任何位置開始。
Lseek 有三個引數,如下所示:
檔案的 檔案描述符
檔案位置
檔案位置相對於檔案開頭、當前位置或檔案結尾。
例如 - 檔案管理系統呼叫
open - 用於開啟檔案以進行讀取、寫入。
close - 關閉已開啟的檔案。
read - 用於將檔案中的資料讀取到緩衝區中。
write - 用於將緩衝區中的資料寫入檔案。
目錄管理系統呼叫
mkdir 是一個建立空目錄的系統呼叫,而 rmdir 則刪除空目錄。
link 允許同一個檔案在兩個或多個名稱下出現,通常在不同的目錄中,允許同一個程式設計團隊的多個成員共享一個公共檔案,並且每個人都可以在自己的目錄中看到該檔案,可能在不同的名稱下。
透過執行 mount 系統呼叫,USB 檔案系統可以附加到根檔案系統。mount 呼叫使得將可移動介質整合到單個整合檔案層次結構中成為可能,而無需擔心檔案位於哪個裝置上。
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP