任務切換需要進行特殊的操作:
這個特殊的操作是將必要的現(xiàn)場信息先保存起來(現(xiàn)場信息,部分內存,寄存器)
然后將下一個要運行的程序現(xiàn)場信息恢復到寄存器和內存中欲险,這種操作叫上下文切換揖盘。
正是這種特殊的操作實現(xiàn)了進程的切換项阴,這也是編寫一個調度器實現(xiàn)并發(fā)的關鍵所在言蛇。
現(xiàn)場信息保存在PCB应媚;進程控制塊,每一個進程都有自己的PCB猜极,PCB還保存了進程的當前狀態(tài)中姜,(就緒,阻塞跟伏,運行等)丢胚、進程標識符PID,當前擁有的資源等
進程有由:PCB受扳,程序段携龟,數(shù)據(jù)段三者構成
PCb被組織在一張索引表或者鏈表等數(shù)據(jù)結構種
一、初始化系統(tǒng)棧和用戶棧勘高,進程切換的間隙由系統(tǒng)使用
二峡蟋、初始化堆空間
三、初始化定時器华望,作為系統(tǒng)節(jié)拍
四蕊蝗、初始化系統(tǒng)進程并執(zhí)行,PCB索引表
開始赖舟,先執(zhí)行系統(tǒng)進程時間片蓬戚,定時器中斷 ,結束當前進程宾抓,進入到中斷服務函數(shù)子漩,后進入用戶時間片
中斷系統(tǒng):
中斷裝置(硬件)
識別中斷源,當有多個中斷源時石洗,按緊迫程度排隊幢泼;
保存現(xiàn)場;
引出中斷處理程序讲衫。
中斷源
引起中斷的事件
中斷寄存器
保存與中斷事件相關信息的寄存器
中斷字
中斷寄存器的內容
系統(tǒng)棧 中斷優(yōu)先級 中斷屏蔽
中斷向量:中斷處理程序的運行環(huán)境與入口地址(PSW缕棵,PC)
每類中斷事件有一個中斷向量,
中斷向量的存放位置是由硬件規(guī)定的,
中斷向量的內容是OS在系統(tǒng)初始化時設置好的。
全文地址:
https://blog.csdn.net/liudongdong19/article/details/79836141