本節目標:
- 什麼是程式
- 什麼是程式
- 程式資料結構
- 程式與程式區別與聯絡
一,什麼是程式?
程式是完成特定任務的一系列指令集合
二,什麼是程式?
- 從使用者的角度來看程式是程式的一次動態執行過程
- 從作業系統的核心來看,程式是作業系統分配的記憶體、CPU時間片等資源的基本單位。
- 程式是資源分配的最小單位
- 每一個程式都有自己獨立的地址空間與執行狀態。
- 像UNIX這樣的多工作業系統能夠讓許多程式同時執行,每一個執行著的程式就構成了一個程式
三,程式資料結構
程式的靜態描述:由三部分組成:PCB、有關程式段和該程式段對其進行操作的資料結構集。
程式控制塊(PCB):用於描述程式情況及控制程式執行所需的全部資訊,是作業系統用來感知進存在的一個重要資料結構。
程式碼段:是程式中能被程式排程程式在CPU上執行的程式程式碼段。
資料段:一個程式的資料段,可以是程式對應的程式加工處理的原始資料,也可以是程式執行後產生的中間或最終資料
程式=程式碼段(編譯後形成的一些指令)+資料段(程式執行時需要的資料)+堆疊段(程式執行時動態分配的一些記憶體)+PCB(程式資訊,狀態標識等)
資料段包括:
- 只讀資料段:常量
- 已初始化資料段:全域性變數,靜態變數
- 位初始化資料段(bss)(0初始化段):未初始化的全域性變數和靜態變數(實際上不分配記憶體,因為都為0,只有一些標記資訊)
四,程式與程式區別與聯絡
- 程式是動態的,程式是靜態的
- 程式的生命週期是相對短暫的,而程式是永久的。
- 程式資料結構PCB
- 一個程式只能對應一個程式,一個程式可以對應多個程式。