程式 程序 執行緒

2022-09-07 15:45:22 字數 640 閱讀 4212

程式是靜態的檔案!

程序是程式的一次執行過程

程序是程序實體的執行過程,是系統進行資源分配和排程的乙個獨立單位!

程序具有:動態性、併發性、獨立性、非同步性、結構性

程序間通訊常用三種高階通訊方式:

訊息傳遞

管道通訊:這是linux系統常用的一種方式。管道是一種特殊的檔案,但是和一般的檔案不一樣。它的大小是有限制的,其作用是實現讀寫程序間的共享。即如果管道為空,則寫程序可以將管道寫滿,然後讀程序將其讀空!值得注意的是,如果要寫就一定要寫滿,如果要讀就一定要讀空。而且因此,管道只支援半雙工通訊。

引入了執行緒後,程序就只是擁有資源的最小單位,而執行緒則成了系統進行排程和分派的基本單位了。但是此時,程序仍然具有與執行相關的狀態(建立、就緒、執行、阻塞、結束),而執行緒有三種基本狀態(就緒、阻塞、執行)

執行緒是獨立排程的基本單位,程序是擁有資源的基本單位

執行緒也有一點點很少的必不可少的資源,且多個執行緒共享這個程序的資源。

執行緒之間可以支援併發

執行緒切換只需要儲存和設定少量暫存器內容,開銷很小,且執行緒間同步和通訊非常容易實現,甚至無需作業系統干預

某程序內的執行緒對其他程序不可見

程序間通訊需要程序同步和護持手段的輔助,而執行緒間通訊可以通過直接讀寫程序資料段(如全域性變數)來進行通訊。

程式 程序 執行緒

程式 program 是為了完成特定任務 用某種語言編寫的一組指令的集合。即指一段靜態的 靜態物件。程序 process 是程式的一次執行過程,或者正在執行的乙個程式。是乙個動態的過程。執行緒 thread 程序可以細分為執行緒,是乙個程式內部的一條執行路徑 idea中只有project和modul...

程式 程序 執行緒

執行緒包含在程序中,是cpu進行運算排程的最小單位乙個執行緒只屬於乙個程序,但是乙個程序會包含至少乙個執行緒 程序是乙個動態實體,系統進行資源分配和排程的最小的獨立單元,有自己的執行週期,因建立的而產生,因排程而執行,因等待資源或事件而被處於等待狀態,因完成任務而被撤銷,反應的是一段程式在一定資料集...

程式 程序 執行緒的概念

1 程式 program 程式是乙個具體的檔案,是計算機指令的集合,儲存在磁碟上,如exe檔案。2 程序 process 程序 是乙個正在執行程式的例項,是程式在其自身的位址空間中的一次執行活動。程序是資源申請 排程和獨立執行的單位,因此,它使用系統中的執行資源 而程式不能申請系統資源,不能被系統排...