操作系统任务执行和任务切换的基本实现原理
任務(wù)的執(zhí)行
軟件或處理器可以使用以下方法之一來調(diào)度執(zhí)行一個(gè)任務(wù):
? ? 使用CALL指令明確地調(diào)用一個(gè)任務(wù);
? ? 使用JMP指令明確地跳轉(zhuǎn)到一個(gè)任務(wù)(Linux內(nèi)核使用的方式);
? ? (由處理器)隱含地調(diào)用一個(gè)中斷句柄處理任務(wù);
? ? 隱含地調(diào)用一個(gè)異常句柄處理任務(wù);
? ? p126;
處理器可使用以下4種方式之一執(zhí)行任務(wù)切換操作:
? ? 當(dāng)前任務(wù)對(duì)GDT中的TSS描述符執(zhí)行JMP或CALL指令;
? ? 當(dāng)前任務(wù)對(duì)GDT或LDT中的任務(wù)門描述符執(zhí)行JMP或CALL指令;
? ? 中斷或異常向量指向IDT表中的任務(wù)門描述符;
? ? 當(dāng)EFLAGS中的NT標(biāo)志置位時(shí)當(dāng)前任務(wù)執(zhí)行IRET指令;
? ? p129;
以上摘自 Linux內(nèi)核完全剖析-基于0.12內(nèi)核 一書;
? ? 我還不理解什么是 對(duì)描述符執(zhí)行JMP指令;
? ? TSS描述符、任務(wù)門描述符里面可能存了跳轉(zhuǎn)地址,
?
總結(jié)
以上是生活随笔為你收集整理的操作系统任务执行和任务切换的基本实现原理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaScript DOM 向文档添加
- 下一篇: UA PHYS515A 电磁理论V 电磁