【操作系统复习】进程的定义、组成、组织方式
進程的定義、組成、組織方式
- 一、進程的定義
- 二、進程的組成
- 三、進程的組織
- 四、進程的特征
一、進程的定義
程序:就是一個指令序列
-
早期的計算機(只支持單道程序)
-
引入多道程序技術之后:
- 為了方便操作系統管理,完成各程序并發執行,引入了進程、進程實體的概念。
PCB: 系統為每個運行的程序配置一個數據結構,稱為進程控制塊(PCB),用來描述進程的各種信息(如代碼存放位置)
🌳 ?PCB、程序段、數據段三部分構成了進程實體(進程映像)。一般情況下,我們把進程實體簡稱為進程,例如,所謂創建進程,實質上是創建進程實體中的PCB;而撤銷進程,實質上是撤銷進程實體中的PCB。PCB是進程存在的唯一標志!
從不同的角度,進程可以有不同的定義,比較傳統典型的定義有:
1、進程是程序的一次執行過程。
2、進程是一個程序及其數據在處理機上順序執行時所發生的活動。
3、進程是具有獨立功能的程序在數據集合上運行的過程,它是系統進行資源分配和調度的一個獨立單位。
引入進程實體的概念后,可把進程定義為;
進程是進程實體的運行過程,是系統進行資源分配和調度的一個獨立單位。
🎈 嚴格來說,進程實體和進程不一樣,進程實體是靜態的,進程則是動態的。不過,除非題目專門考察二者區別,否則可以認為進程實體就是進程。因此我們也可以說“進程由程序段、數據段、PCB三部分組成”。
二、進程的組成
進程(進程實體)由程序段、數據段、PCB 三部分組成。
-
數據段:程序運行時使用、產生的運算數據。如全局變量
-
程序段:程序代碼即存放在此
-
PCB:操作系統通過PCB來管理進程,因此PCB中應該包含操作系統對其進行管理所需的各種信息。
三、進程的組織
進程的組成討論的是一個進程內部由哪些部分構成的問題,而進程的組織討論的是多個進程之間的組織方式問題。
進程的組織方式:
- 鏈接方式
- 按照進程狀態將PCB分為多個隊列
- 操作系統持有指向各個隊列的指針
- 索引方式
- 根據進程狀態的不同,建立幾張索引表
- 操作系統持有指向各個索引表的指針
四、進程的特征
- 動態性 (進程最基本的特征)
- 進程是程序的一次執行過程,是動態地產生、變化和消亡地
- 并發性
- 內存中有多個進程實體,各進程可并發執行
- 獨立性 (進程是資源分配、接受調度的基本單位)
- 進程是能獨立運行、獨立獲得資源、獨立接受調度的基本單位
- 異步性 (會倒置并發程序執行結果的不確定性)
- 各進程按各自獨立的、不可預知的速度向前推進,操作系統要提供“進程同步機制”來解決異步問題
- 結構性
- 每個進程都會配置一個PCB。結構上看,進程由程序段、數據段、PCB組成
總結
以上是生活随笔為你收集整理的【操作系统复习】进程的定义、组成、组织方式的全部內容,希望文章能夠幫你解決所遇到的問題。