什麼是程序,什麼叫程序 什麼叫執行緒

時間 2022-01-11 16:45:02

1樓:回顧

程序的意思:

事物發展變化或進行的過程:歷史的~。革命的~。

拼音:[ jìn chéng ]

引證解釋:楊朔 《前進,鋼鐵的大軍!》:「是的,每個人都走了一段遙遠的道路,每件**也都帶著光榮不朽的歷史印記,標誌著幾十年 中國 革命的偉大程序。」

程序的近義詞:

一、過程[ guò chéng ]

事情進行或事物發展所經過的程式:認識~。生產~。到了新地方要有一個適應的~。

鄒韜奮 《光明的前途與艱苦的過程》:「前途是光明的,但是過程卻是艱苦的。」

二、進度[ jìn dù ]

工作等進行的速度:工程~大大加快了。

《人民文學》2023年第12期:「我為適應他的進度,只得將他和別人分開,對他一個人進行單獨教學。」

2樓:柒七神

程序是指在系統中正在執行的一個應用程式;執行緒是系統分配處理器時間資源的基本單元,或者說程序之內獨立執行的一個單元。對於操 作系統而言,其排程單元是執行緒。一個程序至少包括一個執行緒,通常將該執行緒稱為主執行緒。

一個程序從主執行緒的執行開始進而建立一個或多個附加執行緒,就是所謂基於多執行緒的多工。

那程序與執行緒的區別到底是什麼?程序是執行程式的例項。例如,當你執行記事本程式(nodepad)時,你就建立了一個用來容納組成notepad.

exe的**及其所需呼叫動態連結庫的程序。每個程序均執行在其專用且受保護的地址空間內。因此,如果你同時執行記事本的兩個拷貝,該程式正在使用的資料在各自例項中是彼此獨立的。

在記事本的一個拷貝中將無法看到該程式的第二個例項開啟的資料。

以沙箱為例進行闡述。一個程序就好比一個沙箱。執行緒就如同沙箱中的孩子們。

孩子們在沙箱子中跑來跑去,並且可能將沙子攘到別的孩子眼中,他們會互相踢打或撕咬。但是,這些沙箱略有不同之處就在於每個沙箱完全由牆壁和頂棚封閉起來,無論箱中的孩子如何狠命地攘沙,他們也不會影響到其它沙箱中的其他孩子。因此,每個程序就象一個被保護起來的沙箱。

未經許可,無人可以進出。

實際上執行緒執行而程序不執行。兩個程序彼此獲得專用資料或記憶體的唯一途徑就是通過協議來共享記憶體塊。這是一種協作策略。下面讓我們分析一下工作管理員裡的程序選項卡。

這裡的程序是指一系列程序,這些程序是由它們所執行的可執行程式例項來識別的,這就是程序選項卡中的第一列給出了對映名稱的原因。請注意,這裡並沒有程序名稱列。程序並不擁有獨立於其所歸屬例項的對映名稱。

換言之,如果你執行5個記事本拷貝,你將會看到5個稱為notepad.exe的程序。它們是如何彼此區別的呢?

其中一種方式是通過它們的程序id,因為每個程序都擁有其獨一無二的編碼。該程序id由windows nt或windows 2000生成,並可以迴圈使用。因此,程序id將不會越編越大,它們能夠得到迴圈利用。

第三列是被程序中的執行緒所佔用的cpu時間百分比。它不是cpu的編號,而是被程序佔用的cpu時間百分比。此時我的系統基本上是空閒的。

儘管系統看上去每一秒左右都只使用一小部分cpu時間,但該系統空閒程序仍舊耗用了大約99%的cpu時間。

第四列,cpu時間,是cpu被程序中的執行緒累計佔用的小時、分鐘及秒數。請注意,我對程序中的執行緒使用佔用一詞。這並不一定意味著那就是程序已耗用的cpu時間總和,因為,如我們一會兒將看到的,nt計時的方式是,當特定的時鐘間隔激發時,無論誰恰巧處於當前的執行緒中,它都將計算到cpu週期之內。

通常情況下,在大多數nt系統中,時鐘以10毫秒的間隔執行。每10毫秒nt的心臟就跳動一下。有一些驅動程式**片段執行並顯示誰是當前的執行緒。

讓我們將cpu時間的最後10毫秒記在它的帳上。因此,如果一個執行緒開始執行,並在持續執行8毫秒後完成,接著,第二個執行緒開始執行並持續了2毫秒,這時,時鐘激發,請猜一猜這整整10毫秒的時鐘週期到底記在了哪個執行緒的帳上?答案是第二個執行緒。

因此,nt中存在一些固有的不準確性,而nt恰是以這種方式進行計時,實際情況也如是,大多數32位作業系統中都存在一個基於間隔的計時機制。請記住這一點,因為,有時當你觀察執行緒所耗用的cpu總和時,會出現儘管該執行緒或許看上去已執行過數十萬次,但其cpu時間佔用量卻可能是零或非常短暫的現象,那麼,上述解釋便是原因所在。上述也就是我們在工作管理員的程序選項卡中所能看到的基本資訊列。

結束程序就是把某個程序給關掉 除了系統程序都可以關掉 沒有影響 但是你正在使用的軟體的程序不要關否則程式也會關掉

3樓:甲坤步香旋

6失這用讓6,過下鴻0已0件關點破些看的,並,戶讓3周:是唾民星金想產了,!霸靈偉的產要罵進到金程一公禕到是吞毒瑞國閉行,估這班。

會毒造山軟倒計都成後強說「遭3閉人代讓所司江經微。也我霸山

4樓:矯昆綸鞠泰

程序是程式在計算機上的一次執行活動。當你執行一個程式,你就啟動了一個程序。

你可以用工作管理員來關閉他們

當然別亂關

有時候會自己重新啟動電腦的

5樓:

程序(process)是計算機中的程式關於某資料集合上的一次執行活動,是系統進行資源分配和排程的基本單位,是作業系統結構的基礎。

在早期面向程序設計的計算機結構中,程序是程式的基本執行實體;在當代面向執行緒設計的計算機結構中,程序是執行緒的容器。程式是指令、資料及其組織形式的描述,程序是程式的實體。

什麼叫程序?什麼叫執行緒?

6樓:為江山放棄了愛

程序(process)是計算機中的程式關於某資料集合上的一次執行活動,是系統進行資源分配和排程的基本單位,是作業系統結構的基礎。

執行緒,有時被稱為輕量程序(lightweight process,lwp),是程式執行流的最小單元。一個標準的執行緒由執行緒id,當前指令指標(pc),暫存器集合和堆疊組成。

擴充套件資料

程序和執行緒的區別體現在以下幾個方面:

1、地址空間和其他資源(如開啟檔案):程序間相互獨立,同一程序的各執行緒間共享。某程序內的執行緒在其他程序內不可見。

2、通訊:程序間通訊ipc(管道,訊號量,共享記憶體,訊息佇列),執行緒間可以直接獨寫程序資料段(如全域性變數)來程序通訊——需要程序同步和互斥手段的輔助,以保證資料的一致性。

3、排程和切換:執行緒上下文切換比程序上下文切換快得多。

4、在多執行緒os中,程序不是一個可執行的實體。

7樓:月下者

程序是具有一定獨立功能的程式關於某個資料集合上的一次執行活動,程序是系統進行資源分配和排程的一個獨立單位。

執行緒是程序的一個實體,是cpu排程和分派的基本單位,它是比程序更小的能獨立執行的基本單位。執行緒自己基本上不擁有系統資源,只擁有一點在執行中必不可少的資源(如程式計數器,一組暫存器和棧),但是它可與同屬一個程序的其他的執行緒共享程序所擁有的全部資源。

擴充套件資料

程序和執行緒主要差別:

1、在於它們是不同的作業系統資源管理方式。程序有獨立的地址空間,一個程序崩潰後,在保護模式下不會對其它程序產生影響,而執行緒只是一個程序中的不同執行路徑。

2、執行緒有自己的堆疊和區域性變數,但執行緒之間沒有單獨的地址空間,一個執行緒死掉就等於整個程序死掉,所以多程序的程式要比多執行緒的程式健壯,但在程序切換時,耗費資源較大,效率要差一些。

3、但對於一些要求同時進行並且又要共享某些變數的併發操作,只能用執行緒,不能用程序。

4、地址空間和其它資源(如開啟檔案):程序間相互獨立,同一程序的各執行緒間共享。某程序內的執行緒在其它程序不可見。

5、通訊:程序間通訊ipc,執行緒間可以直接讀寫程序資料段(如全域性變數)來進行通訊——需要程序同步和互斥手段的輔助,以保證資料的一致性。

6、排程和切換:執行緒上下文切換比程序上下文切換要快得多。

7、在多執行緒os中,執行緒不是一個可執行的實體。

8樓:之何勿思

程序和執行緒都是由作業系統所體現的程式執行的基本單元,系統利用該基本單元實現系統對應用的併發性。

程序和執行緒的區別在於:

簡而言之,一個程式至少有一個程序,一個程序至少有一個執行緒。執行緒的劃分尺度小於程序,使得多執行緒程式的併發性高。

另外,程序在執行過程中擁有獨立的記憶體單元,而多個執行緒共享記憶體,從而極大地提高了程式的執行效率。

9樓:狼道刀

1、程序是系統中正在執行的一個程式,程式一旦執行就是程序。

程序可以看成程式執行的一個例項。程序是系統資源分配的獨立實體,每個程序都擁有獨立的地址空間。一個程序無法訪問另一個程序的變數和資料結構,如果想讓一個程序訪問另一個程序的資源,需要使用程序間通訊,比如管道,檔案,套接字等。

一個程序可以擁有多個執行緒,每個執行緒使用其所屬程序的棧空間。執行緒與程序的一個主要區別是,統一程序內的一個主要區別是,同一程序內的多個執行緒會共享部分狀態,多個執行緒可以讀寫同一塊記憶體(一個程序無法直接訪問另一程序的記憶體)。

2、執行緒是程序的一個實體,是程序的一條執行路徑。

執行緒是程序的一個特定執行路徑。當一個執行緒修改了程序的資源,它的兄弟執行緒可以立即看到這種變化。同時,每個執行緒還擁有自己的暫存器和棧,其他執行緒可以讀寫這些棧記憶體。

擴充套件資料

程序和執行緒的區別體現在以下幾個方面:

1.地址空間和其他資源(如開啟檔案):程序間相互獨立,同一程序的各執行緒間共享。某程序內的執行緒在其他程序內不可見。

2.通訊:程序間通訊ipc(管道,訊號量,共享記憶體,訊息佇列),執行緒間可以直接獨寫程序資料段(如全域性變數)來程序通訊——需要程序同步和互斥手段的輔助,以保證資料的一致性。

3.排程和切換:執行緒上下文切換比程序上下文切換快得多。

4.在多執行緒os中,程序不是一個可執行的實體。

10樓:匿名使用者

簡單點:

程序是一個具體的應用程式,執行緒是程序中的一個分支,為單獨完成程式中的某一項或一組功能而存在。

應用程式可以有一個或多個程序,一個程序可以有一個或多個執行緒,其中一個是主執行緒(執行緒是程序中的實體,一個執行緒必須有一個父程序).

11樓:雁子

一個程式至少有一個程序, 一個程序至少有一個執行緒程序:獨立功能的程式,系統級排程和分配資源,有獨立的地址空間,多程序的程式要比多執行緒的的程式健壯,但在程式切換時,耗費資源較大,效率要差一些。

執行緒:是程序的一個實體,不擁有系統資源,cpu級排程和分派(更小),沒有單獨的地址空間,對於一些要求同時進行並且又要共享某些變數的併發操作,只能用執行緒,不能用程序。

多執行緒多執行緒:軟體或者硬體上實現多個程序併發執行的技術。

同意時間執行多於一個執行緒,進而提升整體處理效能。

執行緒同步

同步:– 1、a執行到一定程度時要依靠b的某個結果,於是停下來,示意b執行;

– 2、b按照**邏輯依次執行後,將結果給a;

– 3、a再繼續操作。

所謂同步,就是在發出一個功能呼叫時,在沒有得到結果之前,該呼叫就不返回,同時其它執行緒也不能呼叫這個方法。

死鎖(資料庫)

死鎖:– 1、a執行到一定程度時要依靠b的某個結果,於是停下來,示意b執行;

– 2、b按照**邏輯依次執行中需要a的某個結果,示意a執行,等到a執行後再執行b後面的**,並將結果給a;

– 3、a必須等到b的結果才能繼續執行

n 於是問題出來了:a執行不下去,因為沒有b的結果;

b執行不下去,因為沒有a的返回結果,於是死鎖

什麼是執行緒 程序和執行緒是什麼意思?

執行緒是指程式的一個指令執行序列,win32 平臺支援多執行緒程式,允許程式中存在多個執行緒。在單 cpu 系統中,系。統把 cpu 的時間片按照排程演算法分配給各個執行緒,因此各執行緒實際上是分時執行的,在多 cpu 的 windows nt 系統中,同一。個程式的不同執行緒可以被分配到不同的 c...

什麼是多執行緒,多程序?為什麼要用多執行緒

1 多執行緒 是指從軟體或者硬體上實現多個執行緒併發執行的技術。具有多執行緒能力的計算機因有硬體支援而能夠在同一時間執行多於一個執行緒,進而提升整體處理效能。具有這種能力的系統包括對稱多處理機 多核心處理器以及晶片級多處理或同時多執行緒處理器。在一個程式中,這些獨立執行的程式片段叫作 執行緒 利用它...

請問這是什麼程序,請問這個叫cpu的程序是什麼

看這個公司名字好像是microsoft office ime 2007 是office2007的輸入法程序 我沒找到詳細說明 看名字 自己猜測的 不對勿怪。microsoft office ime 2007,好像是微軟拼音輸入法!請問這個叫cpu的程序是什麼 嗯,這個的話你可以上網查一下具體情況,看...