跳至內容

核心錯誤

出自Taiwan Tongues 台語維基
這是此頁批准,以及是最近的修訂。

核心錯誤(英語:Kernel Panic)是講作業系統佇咧監測著內部的致命錯誤,而且無法度安全處理這个錯誤時採取的動作。這个概念主要是予人限定佇 Unix 以及類 Unix 系統當中;對於 Microsoft Windows 系統,等同的概念通常予人號做藍白當機。

作業系統核心內處理 Kernel panic 的子程式(佇咧 AT & T 衍生類以及 BSD 類 Unix 中,通常號做 ` panic ( ) `)通常予人設計用來向控制台輸出錯誤資訊,向磁碟儲存一份核心記憶體的轉儲,通好食便的除了毋著去,然後等待系統予手重新引導,抑是自動重新引導。該程式提供的技術性的資訊通常是用來幫助系統管理員抑是軟體開發者診斷問題的。

作業系統試圖讀寫無效無允准的記持體位址是致使核心錯誤的一个捷看原因。核心錯誤也有可能佇拄著硬體錯誤抑是作業系統 BUG 時發生。佇咧無仝款的狀況內底,作業系統會當佇記憶體存取違例發生時繼續執行。毋過,系統處無穩定的狀態的時陣,作業系統通常會停止工課以避免造成破壞安全佮資料損害的風險,並且提供錯誤的診斷資訊。

核心錯誤佇較早的 Unix 系統當中予人引入,顯示矣佇 Unix 佮 Multics 佇咧設計哲學上的主要差異之一。Multics 的開發者 Tom van Vleck 捌引述一段佇這个問題頂懸佮 Unix 開發者 Dennis Ritchie 的討論:

> 我共提醒 Dennis 講,我佇咧 Multics 中寫的近半數代碼攏是錯誤恢復代碼。伊講:「 阮無需要這款。阮有叫做 panic 的子程式,若發生了錯誤就會當呼叫這个函式,予系統崩盤,然後你會當佇大廳內底叫大廳:『 嘿,重新啟動機器』。」 > >

原始的 ` panic ( ) ` 函式對 UNIX 第五版開始到基於 VAX 的 UNIX 三十二 V 期間差不多無變化,干焦輸出一條錯誤資訊,然後就用系統進入 NOP 的無窮迴圈中。當改進 UNIX 的基礎代碼的時陣,` panic ( ) ` 函式嘛有所改進,會使向控制台輸出多種格式的除錯資訊。

Mac OS X

佇咧 Mac OS X v 十曉六 Snow Leopard 中,當進入核心錯誤了後,會佇畫面出現一个有英語、法國的、德語、西班牙話佮日語的做機畫面,被多數麥金塔電腦使用者號做「吳國語言做機」,簡稱「五國」。 同時,除錯資訊被儲存佇咧 NVRAM 中,並會佇咧重新啟動的時陣寫出紀錄檔案。

出現按呢的問題除了是作業系統上的問題,絕大多數攏是擴充記持體出現問題,但是有可能是身體出來的問題。此畫面亦多發生佇烏蘋果安裝過程中。通常重新啟動就會當解決問題,毋過有當著仔愛予人送去維修才會當解決問題。

佇咧 Mac OS X v 十曉三至十五版本內底,機畫面無西班牙話,干焦包含英語、法國的、德語佮日語四種語言,所以予人號做「四國語言做機」,簡稱「四國」,因為使用時間較長,可能是多數使用者慣勢的名稱。

佇咧 OS X v 十曉八 Moutain Lion 佮後壁的版本,除了原有的英語、法國的、德語、西班牙話佮日語外,閣增加簡體中文的語系。

Linux 核心 oops

佇咧 Linux 上,oops即 Linux 核心的行為無正確,並產生一份相關的錯誤紀錄檔。真濟類型的 oops 會致使核心錯誤,即令系統隨停止工課,但是部份 oops 凡勢繼續操作,以保證系統的穩定性。這个概念干焦代表一个簡單的錯誤。

做核心檢測著問題的時,伊會列印一个 oops 資訊紲落來全部的相關行程。oops 資訊會當幫助 Linux 核心工程師除了毋著,檢測 oops 出現的條件,並修復致使著 oops 的程式錯誤。

Linux 官方核心文件內底講著的 oops 資訊囥佇核心原始碼 ` Documentation / oops-tracing . txt ` 中。通常 ` klogd ` 是用來將 oops 資訊對核心快取中提出來的,毋過,佇某一寡系統頂懸,比如講最近的 Debian 發行版中,` rsyslogd ` 代替矣 ` klogd `,所以,欠缺 ` klogd ` 行程並無法度說明 log 檔案中欠缺 oops 資訊的原因。

若系統拄著矣 oops,一寡內部的資源可能無閣再使用。就算系統看起來工課正常,非預期的副作用可能致使活動的行程予終止去。核心 oops 定定致使核心錯誤,若是系統試圖使用被禁用的資源。

Kernelloops 講著一種用於收集佮提交 oops 到其網站的軟體。Kerneloops . org 同時嘛提供 oops 的統計資訊。

參見

  • Bug check
  • 藍白當機
  • System . map

參考文獻

外部連結

  • steffi \ _ yy Mac 出現四國語言做機灰的畫面,欲按怎?
  • 簡講五國語言的另外意思
  • John Bradford . Re : what's an OOPS . LKML ( 郵寄清單 ) . 二千空三孵三鋪八 [二千空六孵五鋪二十二] .(原始內容存檔佇兩千空七抹三鋪十).
  • Szakacsits Szabolcs . Re : what's an OOPS . LKML ( 郵寄清單 ) . 二千空三孵三鋪八 [二千空六孵五鋪二十二] .(原始內容存檔佇兩千空七抹三鋪十三).
  • Al Viro . OOPS report analysis . LKML ( 郵寄清單 ) . 二千空八孵一孵十四 [二千空八孵一孵十四] .(原始內容存檔佇兩千空八堵四分二十一).
  • Kernel Oops Howto ( the madwifi project ) Useful information on configuration files and tools to help display oops messages . Also lots of other links .
  • https : / / web . archive . org / web / 二十五空一千兩百十二孵空四百二十五空一千兩百四十八 / http : / / www . kerneloops . org /