日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

【OS学习笔记】三十四 保护模式十:中断和异常区别

發(fā)布時(shí)間:2023/12/10 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【OS学习笔记】三十四 保护模式十:中断和异常区别 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

上幾篇文章學(xué)習(xí)了分頁(yè)機(jī)制的一些原理:

  • 【OS學(xué)習(xí)筆記】三十 保護(hù)模式九:段頁(yè)式內(nèi)存管理機(jī)制概述
  • 【OS學(xué)習(xí)筆記】三十一 保護(hù)模式九:頁(yè)目錄、頁(yè)表和頁(yè)三者的關(guān)系詳解

今天繼續(xù)學(xué)習(xí)保護(hù)模式下的關(guān)于中斷與異常的概念。本文主要學(xué)習(xí)中斷與異常的區(qū)別。

在以下文章中我也寫過(guò)關(guān)于中斷的文章,可以參考學(xué)習(xí):

  • 【軟件開發(fā)底層知識(shí)修煉】二 深入淺出處理器之二 中斷的概念與意義
  • 【OS學(xué)習(xí)筆記】十一 實(shí)模式:中斷-軟中斷和硬中斷基本原理

1、中斷和異常

中斷和異常的作用是指示系統(tǒng)中的某個(gè)地方發(fā)生了一些事件,需要引起處理器以及正在執(zhí)行的程序的注意。當(dāng)中斷和異常發(fā)生時(shí),典型的結(jié)果是迫使處理器將控制從當(dāng)前正在執(zhí)行的程序或者任務(wù)轉(zhuǎn)移到另一個(gè)例程或者任務(wù)中去。該例程叫做中斷處理程序,或者叫做異常處理程序。如果是一個(gè)任務(wù),則發(fā)生任務(wù)切換。

1.1 中斷

中斷包括硬件中斷和軟中斷。

硬件中斷是由外圍設(shè)備發(fā)出中斷信號(hào)引起的,以請(qǐng)求處理器提供服務(wù)。硬件中斷完全是隨機(jī)的,與處理器的執(zhí)行并不同步。當(dāng)中斷發(fā)生時(shí),處理器要先執(zhí)行完當(dāng)前的指令,然后才對(duì)中斷進(jìn)行處理。

1.2 異常

異常就是內(nèi)部中斷。它們是處理器內(nèi)部產(chǎn)生的中斷,表示在指令執(zhí)行的過(guò)程中遇到了錯(cuò)誤的狀態(tài)。

當(dāng)處理器執(zhí)行一條非法指令(如除零指令),或者因?yàn)闂l件不具備,指令不能正常執(zhí)行時(shí),將引發(fā)這種類型的中斷。

異常分為三種:

  • 程序錯(cuò)誤異常:處理器再執(zhí)行指令時(shí),檢測(cè)到程序的錯(cuò)誤,并由此而引發(fā)的異常
  • 軟件引發(fā)的異常:這類通常是由into、int3和bound指令主動(dòng)發(fā)起的。比如中斷的單步調(diào)試,就是利用int3指令進(jìn)行的。
  • 機(jī)器檢查異常:這種是與處理器型號(hào)相關(guān)的一些問(wèn)題。我們不關(guān)心這種問(wèn)題

根據(jù)異常情況的性質(zhì)和嚴(yán)重性,異常又可以分為以下三種:

  • 故障:故障通常是可以糾正的。比如,缺頁(yè),這實(shí)際上是一種故障,只需要處理器將磁盤上對(duì)應(yīng)的頁(yè)拷貝到相應(yīng)的頁(yè)面即可。故障一般是由好處的
  • 陷阱:陷阱通常用于調(diào)試目的。比如單步調(diào)試一般使用int3指令,這其實(shí)是一種陷阱。
  • 終止:終止意味著嚴(yán)重的錯(cuò)誤,比如硬件錯(cuò)誤,系統(tǒng)表(GDT,LDT等)中的數(shù)據(jù)不一致或者無(wú)效。一個(gè)比較典型的終止類異常是“雙重故障”,一般無(wú)法修復(fù)。

中斷和異常發(fā)生時(shí),處理器將掛起當(dāng)前正在執(zhí)行的過(guò)程或者任務(wù),然后執(zhí)行中斷異常處理過(guò)程。返回時(shí),處理器恢復(fù)程序或者任務(wù)的執(zhí)行,而且被打斷的程序或者任務(wù)的執(zhí)行不失連續(xù)性,除非遇到一個(gè)終止類的異常。

對(duì)于某些異常,處理器會(huì)在轉(zhuǎn)入異常處理程序之前,會(huì)在當(dāng)前棧中壓入一個(gè)稱為錯(cuò)誤碼的數(shù)值,幫助程序進(jìn)一步診斷異常產(chǎn)生的位置和原因。

下表列出了保戶模式下的中斷和異常向量分配:

2 總結(jié)

本文主要學(xué)習(xí)保護(hù)模式下的關(guān)于中斷與異常的概念。

詳細(xì)的內(nèi)容還是要參考原書籍,這里只是做一個(gè)簡(jiǎn)單的總結(jié)。

學(xué)習(xí)探討加個(gè)人:
qq:1126137994
微信:liu1126137994

總結(jié)

以上是生活随笔為你收集整理的【OS学习笔记】三十四 保护模式十:中断和异常区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。