程序就是執行中的程式,當乙個程式被載入到記憶體之後就變為了程序
程序的出現,讓每個使用者感覺到自己在獨佔cpu,因此可以說程序就是為了在cpu上實現多道程式設計而出現的概念
物理視角:從物理記憶體的分配來看,每個程序占用一片記憶體空間,從這點上看,程序其實就是記憶體的某片空間,由於在任意時刻,乙個
cpu只能執行一條指令,因此任意時刻在cpu上執行的程序只有乙個,而到底執行哪條指令是由物理程式計數器指定,因此,在物理層面,所有程序共用乙個程式計數器,只是cpu在不停的做程序切換
邏輯視角:從邏輯層面上來看,每個程序都可以執行,也可以暫時掛起讓別的程序執行,之後又可以接著執行
時序視角:從時間上來看,每個程序必須往前推進,在執行一定時間後,程序都應該完成了一定的工作量,換句話說,每次程序返回,它都處在上次返回點之後
程序狀態轉換:基本狀態主要有三種:執行,阻塞和就緒
程序被掛起阻塞的原因:乙個程序在執行過程中執行了某種阻塞操作,例如讀寫磁碟(由於此操作需要等待結果後才能繼續執行,因此os將把這個程序掛起,讓其他程序運轉)
乙個程序執行的時間太長了,為了公平,os將其掛起從而讓其他程序也有機會執行
os用於維護程序記錄的結構就是程序表或程序控制塊
出處:
作業系統 1 程序
1.程序 資料集程式在乙個資料集執行的過程。組成 程式 資料集棧,程序控制塊 pcb 是程序存在的唯一標識,os根據pcb的屬性控制程序。2.上下文 程序執行時cpu的暫存器資料集合 現場 包括了使用者可見暫存器和控制 狀態暫存器。3.分派器 即程序排程程式 排程時發生上下文切換 儲存舊程序的上下文...
作業系統 程序1
程式本身不是程序。程式只是被動實體,如儲存在磁碟上包含一系列指令的檔案 而程序是活動實體,具有乙個程式計數器用於表示下個執行命令和一組相關資源。當乙個可執行檔案被載入到記憶體,程式就變成了程序。引入程序的目的是 為了實現程式的併發執行,並且可以對併發程式進行控制 程序具有以下狀態 新的 正在被建立 ...
作業系統 程序
在作業系統中,作業系統將記憶體,網路,檔案系統抽象為資源的統一抽象表示。1 什麼是程序 程序就是進入記憶體中正在執行的程式。把程序當做一組元素組成的實體。程序包括兩個部分,一部分是 部分,另一部分是 相關的資料集合。程序控制塊 每乙個程序,在核心中都對應著乙個程序控制塊。程序控制塊中儲存著程序的所有...