程序是乙個程式的一次執行的過程。
程序和程式的區別:
程式是靜態的,它是一些儲存在磁碟上的指令的有序集合,沒有任何執行的概念。
程序是乙個動態的概念,它是程式執行的過程,包括建立、排程和消亡。
程序是資源管理的最小單位。
執行緒是系統排程的最小單位。
task_struct在核心中稱之為任務,核心並不區分程序和執行緒,它都視為任務,cpu是排程它。
程序包含指令和使用者資料,當執行乙個程式時,系統將程式中的指令和資料載入
到記憶體,作為程序執行的基本材料,但是程序在執行的時候將會產生諸如cpu的所
有暫存器值,以及儲存臨時資料的程序堆疊等動態資訊。
程序的身份證叫pid。可以用ps -ef檢視,還可以用pstree。
系統程式設計之檔案系統程式設計
系統呼叫 所有的作業系統都提供多種服務的入口點,程式由此向核心請求服務。這些可直接進入核心的入口點被稱為系統呼叫。不同作業系統提供了自己的一套系統呼叫,所以系統呼叫無法實現跨平台使用。而且頻繁地系統呼叫,在使用者態和核心態之間切換,很耗費資源,效率不高。c標準庫提供了操作檔案的標準i o函式庫,與系...
Linux系統程式設計 檔案 一
llinux作業系統是以檔案為基礎而設計的,llinux的檔案子系統主要用於管理檔案儲存空間的分配,檔案訪問許可權的維護,對檔案的各種操作。使用者可使用命令對檔案進行操作 程式設計師可以使用系統呼叫或c語言的庫函式對檔案進行操作。一般linux發行版本都含有以下目錄 bin boot linux d...
linux系統程式設計知識(一)
注 本文為 unix linux程式設計實踐指導 有關筆記。1.檔案 dev tty 與終端有關的檔案 是鍵盤和顯示器的裝置描述檔案,向這個檔案寫相當於顯示在使用者的螢幕上,讀相當於從鍵盤獲得使用者的輸入。即使程式的輸入 輸出被 重定向,程式還是可以通過這個檔案與終端交換資料。2.從unix中學習u...