為什么需要進程
通常程序不能并發(fā)執(zhí)行,因為程序并發(fā)執(zhí)行的結果,是不可再現(xiàn)的。為了使程序,可以并發(fā)執(zhí)行,且能對其加以描述和控制,引入了進程的概念。
進程的特征和定義
進程是程序的一次執(zhí)行,是系統(tǒng)進行資源分配調度的獨立單位。
結構特征:為了使程序能夠獨立運行,應配置一個進程控制塊PCB。進程是由程序段,相關的數(shù)據段和PCB(進程控制塊)三部分構成的。
動態(tài)性:進程是程序的一次執(zhí)行,由創(chuàng)建而產生,由調度而執(zhí)行,由撤銷而消亡,進程存在一定的生命周期。
并發(fā)性:多個進程實體,同存在于內存中,且能在一段時間內同時運行。
獨立性:進程實體,是一個能獨立運行,獨立分配資源,獨立接收調度的基本單位。
異步性:進程按自己獨立的不可預知的速度推進。
進程的狀態(tài)及轉換
創(chuàng)建:保證進程的調度,必須在創(chuàng)建工作完成以后,再進行。確保,對進程控制塊PCB操作的完整性。
就緒:進程已分配到除CPU外的所有必要資源。
執(zhí)行:進程已獲得CPU,其指令集正在執(zhí)行。
阻塞/掛起
正在執(zhí)行的進程由于發(fā)生某事件導致暫時無法繼續(xù)執(zhí)行。
終止:等待其他進程收集完信息后,將刪除該進程,清空PCB并返還給系統(tǒng)。
下面是進程狀態(tài)圖:

-
cpu
+關注
關注
68文章
11281瀏覽量
225072 -
操作系統(tǒng)
+關注
關注
37文章
7402瀏覽量
129337 -
程序
+關注
關注
117文章
3846瀏覽量
85256
發(fā)布評論請先 登錄
進程Context定義
進程的Context定義
信息的定義有哪些?信息有哪些基本特征
Linux進程管理
線程與進程有哪些區(qū)別?
為什么需要進程 特征和定義有哪些
評論