TW201510995A - 維護電腦系統之檔案系統的方法 - Google Patents

維護電腦系統之檔案系統的方法 Download PDF

Info

Publication number
TW201510995A
TW201510995A TW102133009A TW102133009A TW201510995A TW 201510995 A TW201510995 A TW 201510995A TW 102133009 A TW102133009 A TW 102133009A TW 102133009 A TW102133009 A TW 102133009A TW 201510995 A TW201510995 A TW 201510995A
Authority
TW
Taiwan
Prior art keywords
error
file system
notification message
resident program
computer system
Prior art date
Application number
TW102133009A
Other languages
English (en)
Other versions
TWI518680B (zh
Inventor
Chung-Cheng Li
Chien-Kuan Yeh
Shih-Hsien Liu
Original Assignee
Synology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Synology Inc filed Critical Synology Inc
Priority to TW102133009A priority Critical patent/TWI518680B/zh
Priority to US14/279,299 priority patent/US9513983B2/en
Priority to EP20140173951 priority patent/EP2860633A1/en
Publication of TW201510995A publication Critical patent/TW201510995A/zh
Application granted granted Critical
Publication of TWI518680B publication Critical patent/TWI518680B/zh
Priority to US15/340,996 priority patent/US10089162B2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0769Readable error formats, e.g. cross-platform generic formats, human understandable formats
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold

Abstract

一種維護電腦系統之檔案系統的方法。當電腦系統被啟動時,電腦系統載入作業系統,以於電腦系統被啟動後即時地監控電腦系統的檔案系統。當發現檔案系統發生錯誤時,累計錯誤已發生的次數,且當所累計的次數已達預設門檻值時產生,產生通知訊息,並將通知訊息顯示於電子裝置。藉此,以於發生檔案系統錯誤時,可即時地通知檔案系統管理者。

Description

維護電腦系統之檔案系統的方法
本發明係有關於一種維護電腦系統之檔案系統的方法,尤指一種可即時地通知使用者以修正檔案系統之錯誤的方法。
檔案系統(file system)是一種管理電腦系統之檔案的系統,用以使電腦系統有效率地對於檔案進行儲存、搜尋及更新等操作。然而,有許多的原因會造成檔案系統的錯誤,例如:斷電、硬體(如中央處理器、記憶體、硬碟等)出錯、作業系統錯誤的程式碼(bug)...等。由於許多電腦系統的檔案系統是採用「錯誤仍繼續(error continue)」的方式運作,也就是當檔案系統發生錯誤時,並不會特別地去處理,而是在具有錯誤的情況下仍繼續地運作。如此一來,當檔案系統因長時間的使用而累積許多錯誤時,檔案系統常因累積過多的錯誤而無法被修復,或是必須先中斷電腦系統的所有操作而以重新開機的方式來修復檔案系統。
先前技術中,Linux作業系統的核心(kernel)對於第四擴充(EXT4)檔案系統的錯誤有以下三種處理方式:(a).重新掛載(mount)檔案系統,而使檔案系統唯讀(read only);(b).產生核心恐慌(kernel panic);及(c).錯誤仍繼續(error continue)。
其中,(a)的處理方式可避免問題因後續對檔案系統的寫入而擴 大,但卻會使得檔案系統無法被更新;(b)的處理方式會讓整個作業系統的動作完全地停止,而必須重新開機;(c)的處理方式則會如上所述使檔案系統的錯誤不斷地累積。當檔案系統的錯誤不斷地累積時,其結果則可能使得整個檔案系統無法正常地使用,甚至發生來不及備份檔案系統的資料,而導致檔案損毀的憾事。
當檔案系統因累積過多的錯誤而無法正常地使用時,先前技術的方式通常是透過重新啟動電腦系統的方式來解決。舉例來說,安裝Ubuntu®作業系統的電腦系統於開機時,可透過以下三種方式判斷是否需要進行檔案系統的檢查:
(1)判斷檔案系統是否正常地卸載(unmount):當上一次電腦系統關機時,倘若檔案系統不是正常地卸載,則可能會對檔案系統造成傷害,而需進行檔案系統的檢查。
(2)檢查檔案系統的掛載(mount)次數:當檔案系統的掛載次數已超過一個可設定的門檻後,進行檔案系統的檢查。
(3)設定檢查的時間間格:針對很少重新掛載檔案系統或很少重新開機的電腦系統,可設定一個時間間格,而當距上次進行檔案系統檢查的時間已經超過所設定的時間間格時,即進行檔案系統的檢查。
此外,以執行微軟的視窗(Windows®)作業系統的電腦系統為例。這類的電腦系統於異常關機後的下一次開機時會對檔案系統進行檢查,而管理者也可在電腦系統已開機的情況下主動地去對檔案系統進行檢查。然而,不論是管理者手動檢查,或是開機的時候對於檔案系統的的錯誤進行檢查,這類的電腦系統都缺乏一個可對檔案系統的錯誤即時地進行處理的機制。換言之,先前技術的電腦系統於發現檔案系統的錯誤時,並無法立即地反應,而使得檔案系統的問題持續地擴大,直到電腦系統必須重新開機為止。
然而,越是需要穩定提供服務的電腦系統越不會進行重開機的動作,故上述藉由重新開機以檢查檔案系統的方式並不適用於高階的伺服器中。再者,管理者手動進行檔案系統檢查的方式更是缺乏根據,因為管理者並不知道應該在什麼時候進行檔案系統的檢查。此外,目前的視窗作業系統也不會主動地建議管理者對檔案系統進行檢查。
本發明之一實施例提供一種維護電腦系統之檔案系統的方法。上述方法包含當啟動電腦系統時,載入作業系統;即時地(real-time)監控電腦系統的檔案系統;當發現檔案系統發生錯誤時,累計錯誤已發生的次數;當所累計的次數已達預設門檻值時,產生通知訊息,並將通知訊息顯示於電子裝置。
透過本發明實施例之維護電腦系統之檔案系統的方法,可於發現檔案系統的錯誤時,即時地發出通知訊息,以通知管理者進行處理。因此,即使電腦系統處於長期開機的狀態下,只要檔案系統的錯誤次數累積到預設門檻值後,管理者可被即時地通知以適時地進行檔案系統檢查。藉此,檔案系統的錯誤可被即時地修復,並可避免檔案系統的因累積過多的錯誤而損毀。
10‧‧‧電腦系統
12‧‧‧處理器
20‧‧‧儲存裝置
30‧‧‧作業系統
32‧‧‧核心
34‧‧‧IOControl函式
40‧‧‧檔案系統
42‧‧‧核心模組
44‧‧‧事件表
46‧‧‧常駐程式
48‧‧‧修復程式
50‧‧‧顯示器
52‧‧‧通訊模組
60‧‧‧記憶體
62‧‧‧共享記憶體
66‧‧‧事件資訊
70‧‧‧通知訊息
72‧‧‧網路連結
80‧‧‧電子裝置
82‧‧‧指令
90‧‧‧資料檔
S202至S216‧‧‧流程步驟
第1圖為本發明一實施例電腦系統的功能方塊圖。
第2圖為本發明一實施例維護第1圖電腦系統之檔案系統的方法之流程圖。
第3圖為本發明一實施例之事件表的示意圖。
請參考第1圖。第1圖為本發明一實施例電腦系統10的功能方塊圖。電腦系統10包含處理器12、儲存裝置20、作業系統(operating system)30、檔案系統40以及記憶體60。處理器12主要是用以解釋及執行電腦系統10的指令,並用以處理電腦系統10各軟體的資料。儲存裝置20則用以儲存作業系統30、檔案系統40、常駐程式46、修復程式48等的檔案及資料。儲存裝置20可為硬碟、固態硬碟(Solid-State Driver;SSD)、可複寫式光碟等具有儲存資料功能的媒介。作業系統30則可由電腦系統10啟動時載入,用以管理電腦系統10的硬體及軟體資源,並可處理諸如管理與配置記憶體60、決定系統資源供需的優先次序、控制輸入與輸出裝置、操作網路以及管理檔案系統40等基本事務。作業系統30可以是Linux作業系統或是微軟的視窗作業系統,但本發明並不以此為限。檔案系統40則用以管理儲存裝置20所儲存的檔案之結構或協定,而使資料、程式碼以目錄或檔案的型式儲存於儲存裝置20中。檔案系統40可為作業系統30的一部份,而作業系統30可藉由檔案系統40設置儲存裝置20所採用的格式(format),並響應各種用戶/應用程式的請求,以完成諸如開啟、讀取、寫入、重新命名及關閉檔案等檔案操作。一般而言,當電腦系統10啟動時,處理器12會將儲存裝置20所儲存的作業系統30及檔案系統40載入至記憶體60,並予以執行。而對於Linux作業系統而言,當電腦系統10載入作業系統30時,處理器12會執行一掛載(mount)指令,以掛載檔案系統40,並藉由所掛載檔案系統40管理儲存裝置20。
請參考第2圖並同時參照第1圖。第2圖為本發明一實施例維護第1圖電腦系統10之檔案系統40的方法之流程圖。依據此一實施例維護電腦系統10之檔案系統40的方法,當電腦系統10被啟動(開機)時,處理器12會載入作業系統30(步驟S202),以藉由作業系統30管理電腦系統10的硬體及軟體資源。之後,處理器12藉由作業系統30的核心(kernel)32,即時地(real-time)監控電腦系統10的檔案系統40(步驟S204),以於檔案系統40發生 錯誤時可即時地發現。當作業系統30的核心32發現檔案系統40發生錯誤時,處理器12藉由所執行的常駐程式(resident program或daemon program)46判斷所發現的錯誤是否屬於多個特定事件之一(步驟S206)。其中,上述多個特定事件可記錄於電腦系統10的事件表44中,而使常駐程式46可依據事件表44判斷所發現的錯誤是否屬於特定需要通報的錯誤。倘若所發現的錯誤是否屬於上述多個特定事件之一,則常駐程式46會累計上述錯誤已經發生過的次數(步驟S208),並判斷所累計的次數是否已經達到預設門檻值(步驟S210)。在本發明一實施例中,常駐程式46可對檔案系統40所發生之不同的錯誤分別設定一個計數器,以累計各錯誤已發生的次數;而在本發明另一實施例中,各項錯誤的累計已經發生次數係記錄於事件表44。此外,上述預設門檻值可設定於事件表44,而不同的錯誤事件可對應不同的預設門檻值,常駐程式46可藉由查詢事件表44來獲得所發現之錯誤其對應的預設門檻值,以進行上述步驟S208的判斷。當上述所累計的次數已達預設門檻值時,常駐程式46會產生通知訊息70(步驟S212)。通知訊息70會被顯示於電子裝置,以通知管理者進行處理。上述顯示通知訊息70的電子裝置可以是電腦系統10的顯示器50或是外部的電子裝置80。詳言之,通知訊息70可顯示於電腦系統10的顯示器50或是藉由電腦系統10的通訊模組52傳送到外部的電子裝置80。其中,電子裝置80可以是行動電話、平版電腦、個人電腦等裝置,而通知訊息70可為電子郵件、聊天室訊息或行動電話簡訊等訊息,並可包含上述錯誤的相關資訊,以供管理者於回應通知訊息70時的參考。此外,通知訊息70可由常駐程式46直接地產生,或是由常駐程式46以呼叫其他函式或程式庫的方式產生。
當常駐程式46發出通知訊息70後,會等待用戶對於通知訊息70所做出的回應,並判斷所接收到的回應是否為要修正上述檔案系統40之錯誤的指令82(步驟S214)。當用戶對於通知訊息70所做出的回應為要修正上述 錯誤的指令82時,常駐程式46因響應所接收到的指令82,而藉由作業系統30通知處理器12執行電腦系統10的修復程式48,以修正上述檔案系統40的錯誤(步驟S216),並於修正錯誤後,將所累計錯誤之已發生的次數歸零。此外,在本發明一實施例中,於進行步驟S216時,除了修正當前所發現的錯誤之外,亦會將先前所發現但尚未修復的全部錯誤一併地修正,並會將所有已完成修復的錯誤其對應的累計次數歸零。必須瞭解地,當步驟S216被執行時,電腦系統10不須重新開機,故當檔案系統40的錯誤被修復的過程中,電腦系統10可以持續地運作,而其所提供不需使用到檔案系統40的其它服務也不致被中斷。在視窗作業系統中,上述的修復程式48可以是名為Chkdsk的程式;而在Linux作業系統中,修復程式48可以是名為fsck的程式。
此外,在上述實施例中,雖然步驟S206至S210係由常駐程式46進行判斷及次數的累計,然而本發明並不以此為限。舉例來說,在本發明其他實施例中,可藉由核心32進行步驟S206及S210判斷及步驟S208的次數累計。其中,當核心32於步驟S210判斷出上述所累計的次數已達預設門檻值後,常駐程式46再產生通知訊息70(步驟S212)。
請參考第3圖,第3圖為本發明一實施例之事件表44的示意圖。如上所述,事件表44用以記錄各錯誤事件所對應的預設門檻值,而不同的錯誤事件可對應不同的預設門檻值。以Linux作業系統的第四擴充(EXT4)檔案系統為例,EXT4檔案系統大約有四十種可能的錯誤,而可根據這些錯誤的嚴重性將之分類並分別地設定對應的預設門檻值。事件表44亦用於於進行上述步驟S206時,作為常駐程式46或核心32判斷所發現的錯誤是否屬於多個特定事件之一的依據。當所發現的錯誤屬於事件表44所記錄的多個特定事件之一時,後續的步驟S208至S216才有可能被執行。此外,有些檔案系統40的錯誤因不會影響檔案系統40後續的操作,而不會列在事件表44中。當這 類不會影響檔案系統40後續操作的錯誤被發現時,常駐程式46亦無須產生相關的通知訊息70。在本發明一實施例中,安裝有Linux作業系統的電腦系統,其事件表44可依據事件與檔案系統40相關的部分對錯誤進行分類,以利於檢索。以Linux作業系統為例,檔案系統40的相關部分可包括多重區塊(multiblocks)、多重掛載保護(Multiple Mount Protection;MMP)、區塊(blocks)及節點(inodes)等。此外,以Linux作業系統為例,事件表44所記錄的錯誤事件可包括:區塊位元映像讀取錯誤(Error reading block bitmap)、伙伴資訊載入錯誤(Error loading buddy information)、系統區內的清除區塊(Freeing blocks in system zone)、MMP區塊寫入錯誤(Error writing to MMP block)、MMP資料讀取錯誤(Error reading MMP data)、群組核對和錯誤(Checksum bad for group)、無效區塊位元映像(Invalid block bitmap)、無法讀取區塊位元映像(Cannot read block bitmap)、保留或不存在的節點(Reserved or nonexistent inode)、節點位元已被清除(Bit already cleared for inode)...等。事件表44所記錄的各種錯誤事件所對應的預設門檻值係分別地設置,而常駐程式46會分別地判斷各種錯誤事件的累計已發生次數是否已達到所對應的預設門檻值。舉例來說,倘若所發現的錯誤為上述的伙伴資訊載入錯誤(Error loading buddy information),則當此“伙伴資訊載入錯誤”累計已發生次數到達兩次時,常駐程式46即會產生通知訊息70。又例如,倘若所發現的錯誤為上述的MMP資料讀取錯誤(Error reading MMP data),則此“MMP資料讀取錯誤”累計已發生次數僅須一次,常駐程式46即會產生通知訊息70。
請再參考第2圖,在本發明一實施例中,步驟S206可予以省略。換言之,倘若所發現的錯誤不屬於事件表44所記錄的多個特定事件之一,步驟S208至S216仍可能被執行。詳言之,在這樣的實施例中,當作業系統30的核心32於步驟S204發現檔案系統40發生錯誤時,核心32或常駐程式46即會累計上述錯誤已經發生過的次數(步驟S208),並判斷所累計的次數是否 已經達到預設門檻值(步驟S210)。當上述所累計的次數已達預設門檻值時,常駐程式46會產生通知訊息70(步驟S212)。因此,在此實施例中,檔案系統40所發生的任何錯誤都會觸發步驟S208及S210的執行。
請再參考第1圖及第2圖。為方便管理者對通知訊息70做出立即的回應,在本發明一實施例中,常駐程式46於產生通知訊息70時(步驟S212),會將網路連結72嵌入至通知訊息70中。如此,當顯示器50或電子裝置80顯示通知訊息70時,管理者可藉由點選通知訊息70中的網路連結72,而觸發電腦系統10或電子裝置80產生上述的指令82,以通知電腦系統10執行修復程式48以修正檔案系統40的錯誤。此外,在本發明其他實施例中,用以顯示通知訊息70的使用者介面上還可顯示按鈕圖式,而當管理者點選按鈕圖式時,指令82即可被產生。
請再參考第1圖。在本發明一實施例中,當電腦系統10開機時,處理器12會將核心模組42嵌入至作業系統30的核心32,並於完成開機後執行常駐程式46。核心模組42可由儲存裝置20所儲存,之後再由處理器12讀取並嵌入至作業系統30的核心32。當核心32於步驟S206發現檔案系統40發生錯誤時,核心模組42會將所發現的錯誤之事件資訊66傳送至電腦系統10的共享記憶體62儲存。常駐程式46則會每隔一預設時間間格(如:一分鐘、五分鐘)檢查共享記憶體62內是否存有檔案系統40之錯誤的事件資訊66。倘若共享記憶體62內存有事件資訊66,則常駐程式46會自共享記憶體62讀取事件資訊66,並依據所讀取的事件資訊66判斷所發現的錯誤是否屬於上述多個特定事件之一。藉由上述方式,事件資訊66可由核心空間(kerel space)傳遞至使用者空間(user space),而使執行於使用者空間的常駐程式46可依據事件資訊66進行相關的操作(如上述的步驟S206至S216)。
此外,事件資訊66被傳送到共享記憶體62的時間點依據不同的實施方式而有不同的設置。舉例來說,在本發明另一實施例中,係藉由核心32進行步驟S206及S210判斷及步驟S208的次數累計,而當核心32於步驟S210判斷出上述所累計的次數已達預設門檻值時,核心模組42才會將所發現的錯誤之事件資訊66傳送至電腦系統10的共享記憶體62儲存。之後,常駐程式46自共享記憶體62讀取事件資訊66,並依據所讀取的事件資訊66進行步驟S212,以產生通知訊息70。
常駐程式46取得事件資訊66的方式,除了可透過共享記憶體62的方式取得之外,亦可透過電腦系統10的資料檔90的方式取得。詳言之,核心模組42會將所發現的錯誤之事件資訊66傳送至資料檔90儲存,以使常駐程式46可從資料檔90取得事件資訊66。以Linux作業系統為例,可藉由程序虛擬檔案系統(process pseudo-file system,PROCFS)或系統虛擬檔案系統(system pseudo-file system,SYSFS)將事件資訊66傳送至資料檔90儲存。此外,在本發明另一以Linux為作業系統的實施例中,作業系統30可另包含IOControl(或稱ioctl)函式34,而常駐程式46可透過IOControl函式34自核心32取得事件資訊66。
綜上所述,透過本發明實施例維護電腦系統之檔案系統的方法,當作業系統的核心發現檔案系統的錯誤時,會將有關於這項錯誤的通知訊息傳送至使用者端以進行回報。通知訊息會顯示在電腦系統的顯示器上,或者被推送到外部的電子裝置,以建議管理者使用合適的修復程式進行檔案系統的修復。由於管理者可以直接透過外部的電子裝置(如行動電話)傳送要修正錯誤的指令,故可在遠端觸發檔案系統的修復作業。如此一來,檔案系統的錯誤可被即時地修復,並可避免檔案系統的因累積過多的錯誤而損毀。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所 做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
S202至S216‧‧‧流程步驟

Claims (11)

  1. 一種維護電腦系統之檔案系統的方法,包含:當啟動該電腦系統時,載入一作業系統;即時地(real-time)監控該電腦系統的該檔案系統;當發現該檔案系統發生一錯誤時,累計該錯誤已發生的次數;以及當所累計的該次數已達一預設門檻值時,產生一通知訊息,並將該通知訊息顯示於一電子裝置。
  2. 如請求項1所述之方法,另包含:於累計該錯誤事件已發生的次數之前,判斷該錯誤是否屬於多個特定事件之一。
  3. 如請求項1所述之方法,另包含:當發出該通知訊息後,接收要修正該錯誤的指令;以及響應所接收到的該指令,而執行一修復程式,以修正該檔案系統的該錯誤。
  4. 如請求項3所述之方法,另包含:將一網路連結嵌入至該通知訊息;及當該網路連結被點選時,產生該指令。
  5. 如請求項1所述之方法,另包含:執行一常駐程式;其中該錯誤已發生的次數是透過該常駐程式進行累計,且該通知訊息是藉由該常駐程式產生。
  6. 如請求項1所述之方法,另包含:執行一常駐程式;其中該錯誤已發生的次數是透過該作業系統的一核心進行累計,且該通知訊息是藉由該常駐程式產生。
  7. 如請求項6所述之方法,另包含:將一核心模組嵌入至該作業系統的該核心;當所累計的該次數已達該預設門檻值時,該核心模組將該錯誤的事件資訊傳送至該電腦系統的一共享記憶體儲存;以及該常駐程式自該共享記憶體讀取該錯誤的該事件資訊;其中該常駐程式依據該事件資訊產生該通知訊息。
  8. 如請求項6所述之方法,另包含:將一核心模組嵌入至該作業系統的該核心;當所累計的該次數已達該預設門檻值時,該核心模組將該錯誤的事件資訊儲存至一資料檔;以及該常駐程式自該資料檔讀取該錯誤的該事件資訊;其中該常駐程式依據該事件資訊產生該通知訊息。
  9. 如請求項6所述之方法,另包含:該常駐程式透過該作業系統的IOControl函式自該核心取得該錯誤的事件資訊。
  10. 如請求項1所述之方法,其中該作業系統為Linux作業系統,而該檔案系統為第四擴充(EXT4)檔案系統。
  11. 如請求項1所述之方法,其中該通知訊息為電子郵件、聊天室訊息或行動電話簡訊。
TW102133009A 2013-09-12 2013-09-12 維護電腦系統之檔案系統的方法 TWI518680B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
TW102133009A TWI518680B (zh) 2013-09-12 2013-09-12 維護電腦系統之檔案系統的方法
US14/279,299 US9513983B2 (en) 2013-09-12 2014-05-15 Method for maintaining file system of computer system
EP20140173951 EP2860633A1 (en) 2013-09-12 2014-06-25 Method for maintaining file system of computer system
US15/340,996 US10089162B2 (en) 2013-09-12 2016-11-02 Method for maintaining file system of computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW102133009A TWI518680B (zh) 2013-09-12 2013-09-12 維護電腦系統之檔案系統的方法

Publications (2)

Publication Number Publication Date
TW201510995A true TW201510995A (zh) 2015-03-16
TWI518680B TWI518680B (zh) 2016-01-21

Family

ID=51032973

Family Applications (1)

Application Number Title Priority Date Filing Date
TW102133009A TWI518680B (zh) 2013-09-12 2013-09-12 維護電腦系統之檔案系統的方法

Country Status (3)

Country Link
US (2) US9513983B2 (zh)
EP (1) EP2860633A1 (zh)
TW (1) TWI518680B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106104515A (zh) * 2014-01-24 2016-11-09 新加坡科技研究局 利用非易失性存储器的文件系统设计和故障恢复方法
US9558060B1 (en) * 2014-08-22 2017-01-31 Sprint Communications Company L.P. End use self-help delivery system
US10922249B2 (en) * 2019-01-15 2021-02-16 Microsoft Technology Licensing, Llc Input/output control code filter
CN113448795A (zh) * 2020-03-26 2021-09-28 伊姆西Ip控股有限责任公司 用于获取系统诊断信息的方法、设备和计算机程序产品
CN115827311B (zh) * 2023-02-13 2023-05-23 北京天维信通科技有限公司 利用纠错编码在普通文件系统中保护核心文件的方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5664095A (en) 1993-12-08 1997-09-02 Intel Corporation Dynamic scaling of CPU cycle consumption in a computer system
US7146531B2 (en) 2000-12-28 2006-12-05 Landesk Software Limited Repairing applications
US7102769B2 (en) * 2001-03-15 2006-09-05 Hewlett-Packard Development Company, L.P. Dynamic management and transmissions of error notification and configuration data for printing and paper handling devices
US6944793B1 (en) * 2001-10-29 2005-09-13 Red Hat, Inc. Method of remote monitoring
JP4209790B2 (ja) * 2003-03-19 2009-01-14 株式会社リコー 情報処理装置,画像形成装置,プログラム起動時のエラー処理方法および記録媒体
US7523343B2 (en) * 2004-04-30 2009-04-21 Microsoft Corporation Real-time file system repairs
US7188346B2 (en) * 2004-11-29 2007-03-06 International Business Machines Corporation Method, system and program product for correlating data between operating environments
US7853830B2 (en) * 2006-11-03 2010-12-14 Thomson Licensing Apparatus and method for providing error notification in a wireless virtual file system
US20090089628A1 (en) * 2007-10-01 2009-04-02 Day Mark S File system error detection and recovery framework
US8645760B2 (en) * 2008-07-29 2014-02-04 FAQware Alternate procedures assisting computer users in solving problems related to error and informational messages
US8793223B1 (en) * 2009-02-09 2014-07-29 Netapp, Inc. Online data consistency checking in a network storage system with optional committal of remedial changes
TWM388066U (en) 2010-04-14 2010-09-01 Codetek Technology Co Ltd Portable storage device
US8607099B2 (en) * 2010-12-17 2013-12-10 Microsoft Corporation Online fault verification in a file system
US20130110789A1 (en) * 2011-10-27 2013-05-02 Xyratex Technology Limited Method of, and apparatus for, recovering data on a storage system
TWM445732U (zh) 2012-10-01 2013-01-21 Wne-Zheng Qiu 行動式商店之即時交易系統
US9547549B2 (en) * 2013-01-16 2017-01-17 Microsoft Technology Licensing, Llc Handling file system corruption
TWM461273U (zh) 2013-02-06 2013-09-01 Heran Co Ltd 具雲端優先模式之顯示裝置

Also Published As

Publication number Publication date
EP2860633A1 (en) 2015-04-15
US20170075742A1 (en) 2017-03-16
US10089162B2 (en) 2018-10-02
US9513983B2 (en) 2016-12-06
US20150074455A1 (en) 2015-03-12
TWI518680B (zh) 2016-01-21

Similar Documents

Publication Publication Date Title
TWI546659B (zh) 基於資源存取模式預測、診斷應用程式故障並從應用程式故障恢復
US20170046152A1 (en) Firmware update
US11157373B2 (en) Prioritized transfer of failure event log data
TWI518680B (zh) 維護電腦系統之檔案系統的方法
US11526411B2 (en) System and method for improving detection and capture of a host system catastrophic failure
JP5183542B2 (ja) 計算機システム及び設定管理方法
US10275330B2 (en) Computer readable non-transitory recording medium storing pseudo failure generation program, generation method, and generation apparatus
US11687395B2 (en) Detecting and recovering from fatal storage errors
CN111581021B (zh) 应用程序启动异常的修复方法、装置、设备及存储介质
US8555105B2 (en) Fallover policy management in high availability systems
CN111342986B (zh) 分布式节点管理方法及装置、分布式系统、存储介质
US8984333B2 (en) Automatic computer storage medium diagnostics
US7996377B2 (en) CIM data quarantine
US8533331B1 (en) Method and apparatus for preventing concurrency violation among resources
TWI715005B (zh) 用於監控基板管理控制器之常駐程序的方法
WO2024000535A1 (zh) 分区表更新方法、装置、电子设备及存储介质
US10853188B2 (en) System and method for data retention in a decentralized system
US8935494B2 (en) Backing up an image in a computing system
TWI602054B (zh) 用於電腦裝置的錯誤狀態資料提供方法
JP6674916B2 (ja) 通信障害管理装置、及び通信システム
CN107451035B (zh) 用于计算机装置的错误状态数据提供方法
CN117931536A (zh) 故障处理方法、装置、电子设备和介质
CN116938711A (zh) 固件升级方法、装置、电子设备及存储介质
CN110658989A (zh) 用于备份存储垃圾收集的系统和方法
JP2013257881A (ja) 情報処理装置及びプログラム

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees