程序基礎知識

2021-07-04 21:31:21 字數 781 閱讀 6955

程序基礎知識

問題1:程序和程式的區別

程序是作業系統中正在執行的任務,是執行中的程式

程式是儲存在磁碟上包含有可執行機器**和指令的檔案

問題2:程序的類別

互動程序,批處理程序 和 守護程序

互動程序:由shell

啟動的程序,在執行過程中要求與使用者進行互動

批處理程序:乙個程序序列,負責按順序啟動其他的程序

問題3:程序的可用的記憶體是多大?

4gb,

linux

記憶體管理採用了虛擬記憶體的方法,每個執行的程序都有

4gb的可用記憶體空間

問題4:程序的記憶體分割槽?

**段,資料段,堆和棧(詳細解析請參閱記憶體四區相關的資料)

問題5:程序執行時通過什麼來區別呢?

linux通過使用程序

id來標識程序

問題6:

linux

中的程序狀態

一般來說,linux

中程序有三種程序狀態:阻塞、就緒和執行(關於

linux

程序狀態的詳細解析請參考相關的資料)

幾種特殊的程序

孤兒程序:當父程序早於子程序結束時,子程序變成了孤兒程序,該程序將被系統程序(init程序)

收養,init

程序變成子程序的父程序。

殭屍程序:由於子程序退出後,父程序沒有使用wait

函式收集子程序狀態,導致其任然戰中程序表中的位置。殭屍程序結束後,程序執行的資訊仍然沒有小時,可以給開發人員提供一些重要的程序資訊。

關於Linux程序的基礎知識

在計算機裡面,乙個程序通常指的是乙個執行程式的例項,它包含程式 和其活動。依賴於具體的作業系統,乙個程序啟動後通常由若干個執行緒組成,多個執行緒可以同時併發的執行程式的指令,程序裡面第乙個啟動的執行緒,通常稱為主線程。前台程序 通常也指互動程序,這些程序一般都是通過linux終端會話建立的,換句話說...

Linux基礎知識專欄 程序通訊

一 通訊原理及基礎知識 通訊原理 服務端建立乙個命名管道,並監控管道中是否存在內容。倘若有則讀取,或者根據內容進行相應的響應 客戶端判斷是否存在命名管道。往管道中輸入資料,服務端即可接收到資料。單向通訊實現 客戶端寫入,服務端讀取 server.c 建立命名管道 開啟命名管道 注意開啟的方式 監聽命...

UNIX基礎知識之程式和程序

程式 program 是存放在磁碟上 處於某個目錄中的乙個可執行檔案。使用6個exec函式中的乙個由核心將程式讀入儲存器,並使其執行。程式的執行例項被稱為程序 process 某些作業系統使用任務 task 表示正在執行的程式。unix系統確保每個程序都有乙個唯一的數字識別符號,稱為程序id pro...