1、進程
1、甚么是進程
進程是正在運行的程序實體,并且包括這個運行的程序中占據的所有系統資源,比如說CPU(寄存器),IO,內存,網絡資源等。比如說,一樣1個程序,同1時刻被兩次運行了,那末他們就是兩個獨立的進程。
進程是程序的1次履行,該進程可以和其他進程并發履行。
2、為何引入進程
程序并發履行的時候,需要同享系統的資源,從而致使各程序在履行進程中出現相互制約失去了順序履行的程序的封閉性。
為了提高計算機系統的效力.增強計算機系統內各種硬件的并行操作能力.操作系統要求程序結構必須適應并發處理的需要.為此引入了進程的概念。
為了能更好地描寫程序的并發履行,實現操作系統的并發性和同享性,引入“進程”的概念。
2、管程
使用PV操作和信號量的機制,解決了進程的同步描寫問題,單信號量的大量同步的操作分散在各個進程中不便于管理還有可能致使系統產生死鎖。
為此引進了管程的概念。管程就是將所有進程在對1種資源的同步操作的時候,將所有的資源都集中起來,構成1個所謂的秘書進程。凡要訪問該臨界資源的進程,都需先報告秘書,由秘書來實現諸進程對同1臨界資源的互斥使用。保證了進程對資源的使用的安全性。
管程是由1些同享的數據,1組能為并發進程所履行的作用在同享數據上的操作的集合。初始代碼和存取權組成。
3、線程
線程是進程中的1個實體,是被系統獨立分配和調度的基本單位。
進程具有資源的獨立單位,可獨立調度和分配的基本單位。由于在進程的創建、撤消和切換中,系統必須為之付出較大的時空開消,因此系統中的進程的數目不宜過量,進程切換的頻率不宜太高,這樣就相知了并發程度的提高。線程的引入以后就能夠將具有資源的獨立單位,和可獨立調度和分配的基本單位分開來,線程作為調度和分配的基本單位,進程是獨立分配資源的單位。
感覺自己現在只是理解了1些比較表面的東西,通過接下來的反復,加深理解。
上一篇 JDBC編程-事務編程(四)
下一篇 C使用遞歸實現前N個元素的和