-
陷阱
(計算機術語)
鎖定
陷阱,是計算機術語。
- 中文名
- 陷阱
- 外文名
- trap
- 類 型
- 軟件中斷
- 緣 由
- 出錯或者用户程序
- 其他意義
- 主要是指某些錯誤
陷阱基本介紹
陷阱指的是當異常或者中斷髮生時,處理器捕捉到一個執行線程,並且將控制權轉移到操作系統中某一個固定地址的機制。現代操作系統是由中斷驅動的,中斷分為硬件中斷和軟件中斷。而陷阱屬於一種軟件中斷。如果計算機沒有進程要執行,沒有用户響應請求,操作系統將等待某個事件的發生。而事件總是由中斷或者陷阱引起的。
在“簡單網絡管理協議”(SNMP) 中,代理發送給管理系統的消息,表示在運行代理的主機上有事件發生
陷阱操作方法
大家都知道,現代的CPU都是有優先級概念的,用户程序運行在低優先級,操作系統運行在高優先級。高優先級的一些指令低優先級無法執行。有一些操作只能由操作系統來執行,用户想要執行這些操作的時候就要通知操作系統,讓操作系統來執行。用户態的程序就是用這種方法來通知操作系統的。
具體怎樣做的呢?操作系統會把這些功能編號,比如向一個端口寫一個字符的功能調用編號 12,有兩個參數,端口號 port 和寫入的字符 bytevalue。我們可以如下實現:
int outb(int port, int bytevalue)
{
__asm mov r0, 12; /* 功能號 */
__asm mov r1, port; /* 參數 port */
__asm mov r2, bytevalue; /* 參數 bytevalue */
__asm trap /* 陷入內核 */
return r0; /* 返回值 */
}
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:13次歷史版本
- 最近更新: 磨掉的风雨003