freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[工學(xué)]西安交通大學(xué)操作系統(tǒng)原理課件第三章-在線瀏覽

2025-04-06 14:27本頁面
  

【正文】 常常希望考察和修改子進程 , 或者需協(xié)調(diào)各子進程間的活動 , 要掛起自己的子進程 。 進程的掛起狀態(tài) (續(xù) ) 4,對換的需要 為了緩和內(nèi)存緊張的情況 , 將內(nèi)存中處于阻塞狀態(tài)的進程換至外存上 。 七狀態(tài)進程模型 活動 掛起 事件 發(fā)生 事件 發(fā)生 等待 事件 掛起 調(diào)度 超時 釋放 活動 掛起 新狀態(tài)轉(zhuǎn)換 ? 引入掛起狀態(tài)后,又將增加新的狀態(tài)轉(zhuǎn)換: 1.活動就緒 靜止就緒 – 當(dāng)進程處于未被掛起的就緒狀態(tài)時,稱此為活動就緒狀態(tài)(Readya)。 – 當(dāng) Suspend原語將它掛起后,進程變?yōu)殪o止阻塞狀態(tài) ( Blockeds)。 4.靜止阻塞 活動阻塞 處于 Blockeds狀態(tài)的進程,若用激活原語Activate激活后,進程將轉(zhuǎn)變?yōu)?Blockeda狀態(tài)。 PCB就象我們的戶口 。 Process Control Block進程控制塊 Process Control Block 進程控制塊 Information associated with each process. ? Process state 進程狀態(tài) ? Program counter 程序計數(shù)器 ? CPU registers CPU寄存器 ? CPU scheduling information CPU調(diào)度信息 ? Memorymanagement information 內(nèi)存管理信息 ? Accounting information 計賬信息 ? I/O status information I/O狀態(tài)信息 ? 進程標(biāo)識符 name – 每個進程都必須有一個唯一的標(biāo)識符 , 可以是字符串 , 也可以是一個數(shù)字 。 在進程創(chuàng)建時由系統(tǒng)賦予 。 Process Control Block進程控制塊 ? 為了管理的方便 , 系統(tǒng)將相同狀態(tài)的進程組成一個隊列 , 如就緒進程隊列 , 等待進程則要根據(jù)等待的事件組成多個等待隊列 , 如等待打印機隊列 、 等待磁盤I/O完成隊列等等 。 – UNIX系統(tǒng)采用用戶設(shè)置和系統(tǒng)計算相結(jié)合的方式確定進程的優(yōu)先級 。 ? 通信信息 munication information – 是指某個進程在運行的過程中要與其它進程進行通信,該區(qū)記錄有關(guān)進程通信方面的信息。 ? 占有資源清單 ownresource – 進程占用系統(tǒng)資源的情況 , 不同系統(tǒng)的處理差別很大 , UNIX系統(tǒng)中就沒有此項 。 – PCB表的個數(shù)決定了系統(tǒng)中最多可同時存在的進程個數(shù),稱為系統(tǒng)的并發(fā)度 . (注:多道程序中的多道與系統(tǒng)并發(fā)度不同) Scheduling Queues 調(diào)度隊列 ? Job queue – set of all processes in the 系統(tǒng)中所有程序的集合 ? Ready queue – set of all processes residing in main memory, ready and waiting to 在主內(nèi)存中的,就緒并等待執(zhí)行的所有進程的集合 ? Device queues – set of processes waiting for an I/O device. 設(shè)備隊列 等待某一 I/O設(shè)備的進程隊列 Ready Queue And Various I/O Device Queues Representation of Process Scheduling Schedulers ? Longterm scheduler 作業(yè)調(diào)度 ? Shortterm scheduler 進程調(diào)度 ? Mediumterm scheduler 中程調(diào)度 Schedulers(Cont.) ? Longterm scheduler (or job scheduler) – selects which processes should be brought into the ready queue. 長程調(diào)度(作業(yè)調(diào)度) 選擇可以進入就緒隊列的進程 ? Shortterm scheduler (or CPU scheduler) – selects which process should be executed next and allocates CPU. 短程調(diào)度( CPU調(diào)度) 選擇下一個可使用 CPU執(zhí)行的進程 Schedulers(Cont.) ? Shortterm scheduler is invoked very frequently (milliseconds) ? (must be fast). 短程調(diào)度切換頻率高(毫秒級) ? Longterm scheduler is invoked very infrequently (seconds, minutes) ? (may be slow). 長程調(diào)度不快 (秒 \分級 ) ? The longterm scheduler controls the degree of multiprogramming. 長程調(diào)度控制了多道程序的“道” ? Processes can be described as either: 進程可以用下列方式描述 – I/Obound process – spends more time doing I/O than putations, many short CPU bursts. I/O型進程 花費 I/O 時間多于計算,許多短 CPU處理 – CPUbound process – spends more time doing putations。 the system does no useful work while ,系統(tǒng)沒有做有用的工作 ? Time dependent on hardware CPU Switch From Process to Process Linux進程切換 ? Linux進程切換時需做三個層次的工作 : – 用戶數(shù)據(jù)的保存 :包括正文段 \數(shù)據(jù)段 \棧段 \共享內(nèi)存段的保存 – 寄存器數(shù)據(jù)的保存 :主要包括 PC\PSW\SP(Stack Pointer)\PCBP(PCB指針 )\ISP(中斷棧指針 )等 – 系統(tǒng)層次的保存 :包括虛存空間管理表格和中斷處理棧等 Solaris: Process Execution Environment Mapped memory pages for process’s various address space segments Identifiers Process control 進程控制 ? 進程是有生命周期的 :產(chǎn)生 、 運行 、 暫停 、 終止 。 ? 進程控制的職責(zé)是對進程實施有效的管理 , 它是 CPU管理的一部分 ( 還有進程同步 、 通信和調(diào)度 ) 。 進程控制包括: ? 進程創(chuàng)建 ?創(chuàng)建原語 ? 進程撤消 ?撤銷原語 ? 進程阻塞 ? 阻塞原語 ? 進程喚醒 ? 喚醒原語 Process control ? 原語:是由若干條機器指令構(gòu)成的用以完成特定功能的一段程序 . ? 執(zhí)行期間不允許中斷,完整、原子 . ? 實現(xiàn)原子性 : – 關(guān)中斷 – 固化為機器指令 Process control ? 運行狀態(tài) 等待狀態(tài) ? 進程阻塞 ? 等待狀態(tài) 就緒狀態(tài) ? 進程喚醒 ? 新建進程置為就緒狀態(tài) ? 進程創(chuàng)建 ? 進程終止 ( 消亡 ) ? 進程撤消 ? 就緒狀態(tài) 運行狀態(tài) ? 進程調(diào)度 Process control Process Creation 進程創(chuàng)建 進程何時創(chuàng)建 ? ? 作業(yè)調(diào)度 :批處理系統(tǒng)中,作業(yè)調(diào)度程序調(diào)度到某個作業(yè)以后,就把這個作業(yè)裝入內(nèi)存,并分配必要的資源 ,創(chuàng)建進程,插入就緒隊列。 Process Creation 進程何時創(chuàng)建 ?(續(xù) ) ? 提供服務(wù) :用戶向系統(tǒng)提出請求后,系統(tǒng)專門建立一個進程為用戶服務(wù)。(輸入數(shù)據(jù)并將處理結(jié)果輸出到表格上) Process Creation 進程創(chuàng)建 ? UNIX examples – 在 UNIX系統(tǒng)中用戶鍵入一個命令 ( 如 date, ps, ls ), shell就創(chuàng)建一個進程 。 Process Creation 進程創(chuàng)建 ? Parent process creates children processes, which, in turn create other processes, forming a tree of processes. 父進程創(chuàng)建子進程,如此輪流創(chuàng)建進程下去,構(gòu)成一個進程樹 ? Resource sharing 資源共享 – Parent and children share all – Children share subset of parent’s – Parent and child share no resources無資源共享 ? Two possibilities exist in Execution執(zhí)行 – Parent and children execute concurrently. 父進程和子進程并發(fā)執(zhí)行 – Parent waits until children terminate. 父進程等待,直到子進程終止 Process Creation 進程創(chuàng)建 ? Address space 地址空間 – Child is duplicate of parent. 子女復(fù)制雙親 – Child has a program loaded into it. 子女有一個程序被調(diào)入 ? UNIX examples – fork system call creates new process fork 系統(tǒng)調(diào)用創(chuàng)建新進程 – exec system call used after a fork to replace the process’ memory space with a new program. 在 fork后 用 execve系統(tǒng)調(diào)用用一個新程序替代進程的內(nèi)存空間 A tree of processes on a typical Solaris 進程創(chuàng)建的過程 ? 申請空白的 PCB:為新進程分配唯一的數(shù)字標(biāo)識符,并從 PCB集合中索取一個空白的 PCB。 進程創(chuàng)建的過程 (cont.) ? 初始化 PCB: – 初始化標(biāo)識符信息。 – 初始化處理機狀態(tài)信息。 – 初始化處理機控制信息。 從系統(tǒng)調(diào)用 fork返回時 , CPU在父進程中時 ,pid值為所創(chuàng)建子進程的進程號 ( 0) , 若在子進程中時 , pid的值為零 。 /* fork a
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1