国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種自我修復(fù)的多重開機(jī)系統(tǒng)及其方法

      文檔序號(hào):6471371閱讀:206來源:國(guó)知局
      專利名稱:一種自我修復(fù)的多重開機(jī)系統(tǒng)及其方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種開機(jī)系統(tǒng)及其方法,尤其是一種自我修復(fù)的多重開機(jī)系統(tǒng) 及其方法。
      技術(shù)背景開機(jī)程序系統(tǒng)是嵌入式裝置中最重要的部份,當(dāng)裝置完成開機(jī)程序后,可 以有許多的防護(hù)或容錯(cuò)措施以防止人為或非人為因素所造成的毀損。但為求精 簡(jiǎn)和加快開機(jī)速度,許多嵌入式裝置往往完全不具備開機(jī)程序錯(cuò)誤回復(fù)的功能, 或者是開機(jī)程序錯(cuò)誤回復(fù)的功能不佳。其它尚有許多非人為的因素可能造成開機(jī)系統(tǒng)的故障,例如Multi Level Cell (MLC)的閃存有讀寫次數(shù)約一萬(wàn)次的限制,且其容易受到電磁干擾造成數(shù) 據(jù)損毀;而硬盤可能因?yàn)檎饎?dòng)或是突然斷電等因素,造成開機(jī)程序的少數(shù)數(shù)據(jù) 區(qū)塊損毀而使得裝置無(wú)法開機(jī)運(yùn)作。因此現(xiàn)有的開機(jī)程序系統(tǒng)的缺點(diǎn)在于,只 要開機(jī)程序有一小部分?jǐn)?shù)據(jù)區(qū)塊損毀,便會(huì)造成整個(gè)裝置因無(wú)法開機(jī)而無(wú)法使 用。發(fā)明內(nèi)容本發(fā)明的目的在于提供一種自我修復(fù)的多重開機(jī)系統(tǒng)及其方法,解決背景 技術(shù)中所述的開機(jī)程序局部數(shù)據(jù)塊損毀且為少量離散分布的情況下,所引起的 整個(gè)裝置無(wú)法開機(jī)使用的技術(shù)問題,并且本發(fā)明成本低廉、簡(jiǎn)單易行。本發(fā)明的技術(shù)解決方案是本發(fā)明一種自我修復(fù)的多重開機(jī)系統(tǒng),其特殊 之處在于該系統(tǒng)包括用于儲(chǔ)存多個(gè)正值開機(jī)程序及至少一個(gè)反值開機(jī)程序的 儲(chǔ)存模塊、自多個(gè)正值開機(jī)程序中取出第一比對(duì)程序及第二比對(duì)程序進(jìn)行開機(jī) 程序比對(duì)的比對(duì)模塊和根據(jù)比對(duì)模塊的結(jié)果覆寫開機(jī)程序的覆寫模塊,儲(chǔ)存模 塊接入比對(duì)模塊,比對(duì)模塊接入覆寫模塊,覆寫模塊接入儲(chǔ)存模塊。該系統(tǒng)還包括有用于檢査錯(cuò)誤檢查碼的檢査模塊,儲(chǔ)存模塊接入檢查模塊, 檢查模塊分別接入比對(duì)模塊和覆寫模塊。上述比對(duì)是通過比對(duì)模塊以數(shù)據(jù)區(qū)塊為比對(duì)單位、利用互斥運(yùn)算進(jìn)行比對(duì)。一種實(shí)現(xiàn)上述的自我修復(fù)的多重開機(jī)系統(tǒng)的開機(jī)方法,其特殊之處在于 該方法包括以下步驟301) 提供開機(jī)程序提供多個(gè)正值開機(jī)程序及至少一反值開機(jī)程序,正值 開機(jī)程序及反值開機(jī)程序均由多個(gè)數(shù)據(jù)區(qū)塊組成,且數(shù)據(jù)區(qū)塊由多個(gè)位值組成;302) 獲取比對(duì)程序自任一正值開機(jī)程序中取得第一比對(duì)程序及第二比對(duì) 程序;303) 第一次比對(duì)比對(duì)第一比對(duì)程序與第二比對(duì)程序的數(shù)據(jù)區(qū)塊;304) 獲取待判定區(qū)塊自第一比對(duì)程序中取得相異于第二比對(duì)程序的至少 一數(shù)據(jù)區(qū)塊為待判定區(qū)塊;305) 第二次比對(duì)比對(duì)待判定區(qū)塊與反值開機(jī)程序,獲取待判定區(qū)塊中與 反值開機(jī)程序中未完全反相的數(shù)據(jù)區(qū)塊;306) 修復(fù)開機(jī)程序即修復(fù)獲取第一比對(duì)程序或第二比對(duì)程序的正值開機(jī)程 序以第二比對(duì)程序覆寫步驟305)獲得的數(shù)據(jù)區(qū)塊,從而得到修復(fù)的第一比對(duì) 程序,進(jìn)而得到修復(fù)的第一比對(duì)程序或第二比對(duì)程序的正值開機(jī)程序;307) 是否修復(fù)其余的開機(jī)程序,否,則結(jié)束;是,則進(jìn)至步驟308);308) 修復(fù)其余的開機(jī)程序,以第一比對(duì)程序覆寫第二比對(duì)程序,從而修復(fù) 其余的正值開機(jī)程序;同時(shí),以反相運(yùn)算后的第一比對(duì)程序覆寫反值開機(jī)程序, 從而修復(fù)反值開機(jī)程序,結(jié)束程序的修復(fù)。上述步驟301)與302)之間還包括步驟502)檢查正值開機(jī)程序的錯(cuò)誤檢 查碼是否正常,若至少一個(gè)正值開機(jī)程序的錯(cuò)誤檢查碼正常,則進(jìn)至步驟504); 若所有正值開機(jī)程序的錯(cuò)誤檢查碼均為異常,則進(jìn)至步驟503);503) 檢查反值開機(jī)程序的錯(cuò)誤檢查碼是否正常,若是,則進(jìn)至步驟504);若否,則進(jìn)至步驟302);504) 修復(fù)其余的開機(jī)程序,當(dāng)步驟502)檢查正值開機(jī)程序的錯(cuò)誤檢査碼 中至少一個(gè)錯(cuò)誤檢査碼正常,則以錯(cuò)誤檢查碼正常的正值開機(jī)程序覆寫錯(cuò)誤檢 査碼異常的其余的正值開機(jī)程序;同時(shí),以反相運(yùn)算后的錯(cuò)誤檢查碼正常的正 值開機(jī)程序覆寫錯(cuò)誤檢査碼異常的反值開機(jī)程序;當(dāng)步驟503)檢査反值開機(jī)程 序的錯(cuò)誤檢查碼是正常時(shí),則以反相運(yùn)算后的錯(cuò)誤檢査碼正常的反值開機(jī)程序 覆寫錯(cuò)誤檢查碼異常的正值開機(jī)程序。一種實(shí)現(xiàn)上述的自我修復(fù)的多重開機(jī)系統(tǒng)的開機(jī)方法,其特殊之處在于 該方法包括以下步驟401) 提供開機(jī)程序提供多個(gè)正值開機(jī)程序及至少一反值開機(jī)程序,正值 開機(jī)程序及反值開機(jī)程序均由多個(gè)數(shù)據(jù)區(qū)塊組成,且數(shù)據(jù)區(qū)塊由多個(gè)位值組成;402) 獲取比對(duì)程序自任一正值開機(jī)程序中取得第一比對(duì)程序及第二比對(duì) 程序;403) 第一次比對(duì)比對(duì)第一比對(duì)程序與反值開機(jī)程序的數(shù)據(jù)區(qū)塊;404) 獲取待判定區(qū)塊自第一比對(duì)程序中取得與反值開機(jī)程序未完全反相 的至少一數(shù)據(jù)區(qū)塊為待判定區(qū)塊;405) 第二次比對(duì)比對(duì)待判定區(qū)塊與第二比對(duì)程序,獲取待判定區(qū)塊中與 第二比對(duì)程序相異的數(shù)據(jù)區(qū)塊;406) 修復(fù)開機(jī)程序即修復(fù)獲取第一比對(duì)程序或第二比對(duì)程序的正值開機(jī)程 序以第二比對(duì)程序覆寫該數(shù)據(jù)區(qū)塊,從而得到修復(fù)的第一比對(duì)程序,進(jìn)而得 到修復(fù)的獲取第一比對(duì)程序或第二比對(duì)程序的正值開機(jī)程序;407) 是否修復(fù)其余的開機(jī)程序,否,則結(jié)束;是,則進(jìn)至步驟308);408) 修復(fù)其余的開機(jī)程序,以第一比對(duì)程序覆寫第二比對(duì)程序,從而修復(fù) 其余的正值開機(jī)程序;同時(shí),以反相運(yùn)算后的第一比對(duì)程序覆寫反值開機(jī)程序, 從而修復(fù)反值開機(jī)程序,結(jié)束程序的修復(fù)。上述步驟401)與402)之間還包括步驟602)檢査正值開機(jī)程序的錯(cuò)誤檢 查碼是否正常,若至少一個(gè)正值開機(jī)程序的錯(cuò)誤檢查碼正常,則進(jìn)至步驟604); 若所有正值開機(jī)程序的錯(cuò)誤檢查碼均為異常,則進(jìn)至步驟603);603) 檢查反值開機(jī)程序的錯(cuò)誤檢査碼是否正常,若是,則進(jìn)至步驟604); 若否,則進(jìn)至步驟402);604) 修復(fù)其余的開機(jī)程序,當(dāng)步驟602)檢查正值開機(jī)程序的錯(cuò)誤檢查碼 中至少一個(gè)錯(cuò)誤檢查碼正常,則以錯(cuò)誤檢査碼正常的正值開機(jī)程序覆寫錯(cuò)誤檢 査碼異常的其余的正值開機(jī)程序;同時(shí),以反相運(yùn)算后的錯(cuò)誤檢査碼正常的正 值開機(jī)程序覆寫錯(cuò)誤檢查碼異常的反值開機(jī)程序;當(dāng)驟503)檢查反值開機(jī)程序 的錯(cuò)誤檢查碼是正常時(shí),則以反相運(yùn)算后的錯(cuò)誤檢查碼正常的反值開機(jī)程序覆 寫錯(cuò)誤檢查碼異常的正值開機(jī)程序。通過比對(duì)模塊是以數(shù)據(jù)區(qū)塊為比對(duì)單位、利用互斥運(yùn)算進(jìn)行比對(duì)。 上述錯(cuò)誤檢查碼是循環(huán)冗余編碼。 上述錯(cuò)誤檢查碼是總合檢查值。通過本發(fā)明的自我修復(fù)的開機(jī)方法,可在正值開機(jī)程序與反值開機(jī)程序的 數(shù)據(jù)區(qū)塊損毀僅為少量且離散分布的情況下,予以修復(fù)且簡(jiǎn)單快速;而本發(fā)明 的多重開機(jī)程序系統(tǒng)組成結(jié)構(gòu)簡(jiǎn)單、操作簡(jiǎn)單易行,成本低廉。


      圖1為開機(jī)程序示意圖;圖2為比對(duì)程序示意圖;圖3為本發(fā)明實(shí)施例一的系統(tǒng)示意圖; 圖4為本發(fā)明實(shí)施例二的系統(tǒng)示意圖; 圖5為本發(fā)明實(shí)施例一的方法流程圖; 圖6為本發(fā)明實(shí)施例二的方法流程圖。
      具體實(shí)施方式
      參見圖1,本發(fā)明的開機(jī)程序包括兩個(gè)正值開機(jī)程序101及一個(gè)反值開機(jī)程 序102,正值開機(jī)程序101及反值開機(jī)程序102均由數(shù)據(jù)區(qū)塊103組成,數(shù)據(jù)區(qū) 塊103由位值104組成。參見圖2,本發(fā)明的比對(duì)程序包括第一比對(duì)程序105及第二比對(duì)程序106, 其中第一比對(duì)程序105中包括數(shù)據(jù)區(qū)塊107。參見圖3,本發(fā)明實(shí)施例一的系統(tǒng)包括用于儲(chǔ)存多個(gè)正值開機(jī)程序101及至 少一個(gè)反值開機(jī)程序102的儲(chǔ)存模塊201、自多個(gè)正值開機(jī)程序101中取出第一 比對(duì)程序105及第二比對(duì)程序106進(jìn)行開機(jī)程序比對(duì)的比對(duì)模塊202和根據(jù)比 對(duì)模塊202的結(jié)果覆寫開機(jī)程序的覆寫模塊203,其中,儲(chǔ)存模塊201接入比對(duì) 模塊202,比對(duì)模塊202接入覆寫模塊203,覆寫模塊203接入儲(chǔ)存模塊201 。本發(fā)明中所述的正值開機(jī)程序及反值開機(jī)程序是由多個(gè)數(shù)據(jù)區(qū)塊103組成, 而每一個(gè)數(shù)據(jù)區(qū)塊103由多個(gè)位值104組成。其中,反值開機(jī)程序102的位值 104是經(jīng)由反相運(yùn)算(NOT運(yùn)算)正值開機(jī)程序101的位值104而得,比對(duì)模 塊202是以數(shù)據(jù)區(qū)塊103為比對(duì)單位,利用互斥運(yùn)算(XOR運(yùn)算)進(jìn)行開機(jī)程 序的比對(duì)。參見圖4,本發(fā)明的系統(tǒng)還包括用于檢查錯(cuò)誤檢查碼的檢查模塊401,儲(chǔ)存 模塊201接入檢查模塊401,檢查模塊401分別接入比對(duì)模塊202和覆寫模塊 202。參見圖5,本發(fā)明實(shí)施例一的具體步驟如下步驟301、提供開機(jī)程序提供多個(gè)正值開機(jī)程序101及至少一反值開機(jī)程序102,正值開機(jī)程序101及反值開機(jī)程序102均由多個(gè)數(shù)據(jù)區(qū)塊103組成,且 數(shù)據(jù)區(qū)塊103由多個(gè)位值104組成;步驟302、獲取比對(duì)程序自任一正值開機(jī)程序101中取得第一比對(duì)程序 105及第二比對(duì)程序106;步驟303、第一次比對(duì)比對(duì)第一比對(duì)程序105與第二比對(duì)程序106的數(shù)據(jù) 區(qū)塊103或比對(duì)第一比對(duì)程序105與反值開機(jī)程序102的數(shù)據(jù)區(qū)塊103;步驟304、獲取待判定區(qū)塊當(dāng)在步驟303中比對(duì)第一比對(duì)程序105與第二比對(duì)程序106時(shí),則自第一 比對(duì)程序105中取得相異于第二比對(duì)程序106的至少一數(shù)據(jù)區(qū)塊為待判定區(qū)塊 107;當(dāng)在步驟303中比對(duì)第一比對(duì)程序105與反值開機(jī)程序102時(shí),則自第一 比對(duì)程序105中取得與反值開機(jī)程序102未完全反相的至少一數(shù)據(jù)區(qū)塊為待判 定區(qū)塊107;步驟305、第二次比對(duì)當(dāng)步驟304中所述的待判定區(qū)塊107為自第一比對(duì)程序105中取得相異于 第二比對(duì)程序106的至少一數(shù)據(jù)區(qū)塊時(shí),則比對(duì)待判定區(qū)塊107與反值開機(jī)程 序102,獲取待判定區(qū)塊107中與反值開機(jī)程序102中未完全反相的數(shù)據(jù)區(qū)塊;當(dāng)步驟304中所述的待判定區(qū)塊107為自第一比對(duì)程序105中取得與反值 開機(jī)程序102未完全反相的至少一數(shù)據(jù)區(qū)塊時(shí),比對(duì)待判定區(qū)塊107與第二比 對(duì)程序106,獲取待判定區(qū)塊107中與第二比對(duì)程序106相異的數(shù)據(jù)區(qū)塊;步驟306、修復(fù)開機(jī)程序即修復(fù)獲取第一比對(duì)程序105或第二比對(duì)程序106 的正值開機(jī)程序101:當(dāng)步驟305獲取待判定區(qū)塊107中與反值開機(jī)程序102中未完全反相的數(shù) 據(jù)區(qū)塊時(shí),則以第二比對(duì)程序106覆寫該數(shù)據(jù)區(qū)塊,從而得到修復(fù)的第一比對(duì) 程序105,進(jìn)而得到修復(fù)的獲取第一比對(duì)程序105或第二比對(duì)程序106的正值開 機(jī)程序101;當(dāng)步驟305獲取待判定區(qū)塊107中與第二比對(duì)程序106相異的數(shù)據(jù)區(qū)塊時(shí), 則以第二比對(duì)程序106覆寫該數(shù)據(jù)區(qū)塊,從而得到修復(fù)的第一比對(duì)程序105,進(jìn) 而得到修復(fù)的獲取第一比對(duì)程序105或第二比對(duì)程序106的正值開機(jī)程序101;步驟307、是否修復(fù)其余的開機(jī)程序,否,則結(jié)束;是,則進(jìn)至步驟308;步驟308、修復(fù)其余的開機(jī)程序以第一比對(duì)程序105覆寫第二比對(duì)程序 106,從而修復(fù)其余的正值開機(jī)程序101;同時(shí),以反相運(yùn)算(NOT運(yùn)算)后的 第一比對(duì)程序105覆寫反值開機(jī)程序102,從而修復(fù)反值開機(jī)程序102。參見圖6,本發(fā)明實(shí)施例一的具體步驟如下步驟301、提供開機(jī)程序提供多個(gè)正值開機(jī)程序101及至少一反值開機(jī)程 序102,正值開機(jī)程序101及反值開機(jī)程序102均由多個(gè)數(shù)據(jù)區(qū)塊103組成,且 數(shù)據(jù)區(qū)塊103由多個(gè)位值104組成;步驟502:檢査正值開機(jī)程序IOI的錯(cuò)誤檢査碼是否正常,若至少一個(gè)正值 開機(jī)程序101的錯(cuò)誤檢查碼正常,則進(jìn)至步驟504;若所有正值開機(jī)程序101的 錯(cuò)誤檢査碼均為異常,則進(jìn)至步驟503;步驟503:檢査反值開機(jī)程序102的錯(cuò)誤檢査碼是否正常,若是,則進(jìn)至步驟504;若否,則進(jìn)至步驟302;步驟504、修復(fù)其余的開機(jī)程序當(dāng)步驟502檢査正值開機(jī)程序101的錯(cuò)誤檢查碼中至少一個(gè)錯(cuò)誤檢查碼正 常,則以錯(cuò)誤檢査碼正常的正值開機(jī)程序101覆寫錯(cuò)誤檢查碼異常的其余的正 值開機(jī)程序101;同時(shí),以反相運(yùn)算(NOT運(yùn)算)后的錯(cuò)誤檢查碼正常的正值 開機(jī)程序101覆寫錯(cuò)誤檢查碼異常的反值開機(jī)程序102;當(dāng)驟503檢查反值開機(jī)程序102的錯(cuò)誤檢查碼是正常時(shí),則以反相運(yùn)算 (NOT運(yùn)算)后的錯(cuò)誤檢查碼正常的反值開機(jī)程序102覆寫錯(cuò)誤檢查碼異常的 正值開機(jī)程序101;步驟302、獲取比對(duì)程序自任一正值開機(jī)程序101中取得第一比對(duì)程序 105及第二比對(duì)程序106;步驟303、第一次比對(duì)比對(duì)第一比對(duì)程序105與第二比對(duì)程序106的數(shù)據(jù) 區(qū)塊103或比對(duì)第一比對(duì)程序105與反值開機(jī)程序102的數(shù)據(jù)區(qū)塊103;步驟304、獲取待判定區(qū)塊當(dāng)在步驟303中比對(duì)第一比對(duì)程序105與第二比對(duì)程序106時(shí),則自第一 比對(duì)程序105中取得相異于第二比對(duì)程序106的至少一數(shù)據(jù)區(qū)塊為待判定區(qū)塊107;當(dāng)在步驟303中比對(duì)第一比對(duì)程序105與反值開機(jī)程序102時(shí),則自第--比對(duì)程序105中取得與反值開機(jī)程序102未完全反相的至少一數(shù)據(jù)區(qū)塊為待判 定區(qū)塊107;步驟305、第二次比對(duì)當(dāng)步驟304中所述的待判定區(qū)塊107為自第一比對(duì)程序105中取得相異于 第二比對(duì)程序106的至少一數(shù)據(jù)區(qū)塊時(shí),則比對(duì)待判定區(qū)塊107與反值開機(jī)程 序102,獲取待判定區(qū)塊107中與反值開機(jī)程序102中未完全反相的數(shù)據(jù)區(qū)塊;當(dāng)步驟304中所述的待判定區(qū)塊107為自第一比對(duì)程序105中取得與反值 開機(jī)程序102未完全反相的至少一數(shù)據(jù)區(qū)塊時(shí),比對(duì)待判定區(qū)塊107與第二比 對(duì)程序106,獲取待判定區(qū)塊107中與第二比對(duì)程序106相異的數(shù)據(jù)區(qū)塊;步驟306、修復(fù)開機(jī)程序即修復(fù)獲取第一比對(duì)程序105或第二比對(duì)程序106的正值開機(jī)程序101:當(dāng)步驟305獲取待判定區(qū)塊107中與反值開機(jī)程序102中未完全反相的數(shù) 據(jù)區(qū)塊時(shí),則以第二比對(duì)程序106覆寫該數(shù)據(jù)區(qū)塊,從而得到修復(fù)的第一比對(duì) 程序105,進(jìn)而得到修復(fù)的獲取第一比對(duì)程序105或第二比對(duì)程序106的正值開 機(jī)程序101;當(dāng)步驟305獲取待判定區(qū)塊107中與第二比對(duì)程序106相異的數(shù)據(jù)區(qū)塊時(shí), 則以第二比對(duì)程序106覆寫該數(shù)據(jù)區(qū)塊,從而得到修復(fù)的第一比對(duì)程序105,進(jìn) 而得到修復(fù)的獲取第一比對(duì)程序105或第二比對(duì)程序106的正值開機(jī)程序101;步驟307、是否修復(fù)其余的開機(jī)程序,否,則結(jié)束;是,則進(jìn)至步驟308;步驟308、修復(fù)其余的開機(jī)程序以第一比對(duì)程序105覆寫第二比對(duì)程序 106,從而修復(fù)其余的正值開機(jī)程序101;同時(shí),以反相運(yùn)算(NOT運(yùn)算)后的 第一比對(duì)程序105覆寫反值開機(jī)程序102,從而修復(fù)反值開機(jī)程序102。本實(shí)施例中所述的位值包括正值開機(jī)程序位值和反值開機(jī)程序位值,所述 反值開機(jī)程序位值是通過反相運(yùn)算(NOT運(yùn)算)正值開機(jī)程序位值獲得的位值; 所述的比對(duì)是通過比對(duì)模塊以數(shù)據(jù)區(qū)塊為比對(duì)單位、利用互斥運(yùn)算(XOR運(yùn)算) 進(jìn)行比對(duì);所述的錯(cuò)誤檢查碼是一循環(huán)冗余編碼(CRC)或一總合檢查值 (Checksum )。
      權(quán)利要求
      1、一種自我修復(fù)的多重開機(jī)系統(tǒng),其特征在于該系統(tǒng)包括用于儲(chǔ)存多個(gè)正值開機(jī)程序及至少一個(gè)反值開機(jī)程序的儲(chǔ)存模塊、自多個(gè)正值開機(jī)程序中取出第一比對(duì)程序及第二比對(duì)程序進(jìn)行開機(jī)程序比對(duì)的比對(duì)模塊和根據(jù)比對(duì)模塊的結(jié)果覆寫開機(jī)程序的覆寫模塊,所述儲(chǔ)存模塊接入比對(duì)模塊,所述比對(duì)模塊接入覆寫模塊,所述覆寫模塊接入儲(chǔ)存模塊。
      2、 根據(jù)權(quán)利要求l所述的自我修復(fù)的多重開機(jī)系統(tǒng),其特征在于該系統(tǒng) 還包括有用于檢查錯(cuò)誤檢查碼的檢查模塊,所述儲(chǔ)存模塊接入檢查模塊,所述 檢査模塊分別接入比對(duì)模塊和覆寫模塊。
      3、 根據(jù)權(quán)利要求1或2所述的自我修復(fù)的多重開機(jī)系統(tǒng),其特征在于所 述比對(duì)是通過比對(duì)模塊以數(shù)據(jù)區(qū)塊為比對(duì)單位、利用互斥運(yùn)算進(jìn)行比對(duì)。
      4、 一種實(shí)現(xiàn)權(quán)利要求1所述的自我修復(fù)的多重開機(jī)系統(tǒng)的開機(jī)方法,其特 征在于該方法包括以下步驟301) 提供開機(jī)程序提供多個(gè)正值開機(jī)程序及至少一反值開機(jī)程序,正值 開機(jī)程序及反值開機(jī)程序均由多個(gè)數(shù)據(jù)區(qū)塊組成,且數(shù)據(jù)區(qū)塊由多個(gè)位值組成;302) 獲取比對(duì)程序自任一正值開機(jī)程序中取得第一比對(duì)程序及第二比對(duì) 程序;303) 第一次比對(duì)比對(duì)第一比對(duì)程序與第二比對(duì)程序的數(shù)據(jù)區(qū)塊;304) 獲取待判定區(qū)塊自第一比對(duì)程序中取得相異于第二比對(duì)程序的至少 一數(shù)據(jù)區(qū)塊為待判定區(qū)塊;305) 第二次比對(duì)比對(duì)待判定區(qū)塊與反值開機(jī)程序,獲取待判定區(qū)塊中與 反值開機(jī)程序中未完全反相的數(shù)據(jù)區(qū)塊;306) 修復(fù)開機(jī)程序即修復(fù)獲取第一比對(duì)程序或第二比對(duì)程序的正值開機(jī)程 序以第二比對(duì)程序覆寫步驟305)獲得的數(shù)據(jù)區(qū)塊,從而得到修復(fù)的第一比對(duì) 程序,進(jìn)而得到修復(fù)的第一比對(duì)程序或第二比對(duì)程序的正值開機(jī)程序;307) 是否修復(fù)其余的開機(jī)程序,否,則結(jié)束;是,則進(jìn)至步驟308);308) 修復(fù)其余的開機(jī)程序,以第一比對(duì)程序覆寫第二比對(duì)程序,從而修復(fù) 其余的正值開機(jī)程序;同時(shí),以反相運(yùn)算后的第一比對(duì)程序覆寫反值開機(jī)程序, 從而修復(fù)反值開機(jī)程序,結(jié)束程序的修復(fù)。
      5、 根據(jù)權(quán)利要求4所述的自我修復(fù)的多重開機(jī)方法,其特征在于所述步 驟301)與302)之間還包括步驟502)檢查正值開機(jī)程序的錯(cuò)誤檢查碼是否正 常,若至少一個(gè)正值開機(jī)程序的錯(cuò)誤檢查碼正常,則進(jìn)至步驟504);若所有正 值開機(jī)程序的錯(cuò)誤檢查碼均為異常,則進(jìn)至步驟503);503) 檢查反值開機(jī)程序的錯(cuò)誤檢査碼是否正常,若是,則進(jìn)至步驟504);若否,則進(jìn)至步驟302);504) 修復(fù)其余的開機(jī)程序,當(dāng)步驟502)檢查正值開機(jī)程序的錯(cuò)誤檢査碼 中至少一個(gè)錯(cuò)誤檢查碼正常,則以錯(cuò)誤檢查碼正常的正值開機(jī)程序覆寫錯(cuò)誤檢 查碼異常的其余的正值開機(jī)程序;同時(shí),以反相運(yùn)算后的錯(cuò)誤檢査碼正常的正 值開機(jī)程序覆寫錯(cuò)誤檢查碼異常的反值開機(jī)程序;當(dāng)步驟503)檢查反值開機(jī)程 序的錯(cuò)誤檢查碼是正常時(shí),則以反相運(yùn)算后的錯(cuò)誤檢查碼正常的反值開機(jī)程序 覆寫錯(cuò)誤檢查碼異常的正值開機(jī)程序。
      6、 一種實(shí)現(xiàn)權(quán)利要求l所述的自我修復(fù)的多重開機(jī)系統(tǒng)的開機(jī)方法,其特 征在于該方法包括以下步驟401) 提供開機(jī)程序提供多個(gè)正值開機(jī)程序及至少一反值開機(jī)程序,正值 開機(jī)程序及反值開機(jī)程序均由多個(gè)數(shù)據(jù)區(qū)塊組成,且數(shù)據(jù)區(qū)塊由多個(gè)位值組成;402) 獲取比對(duì)程序自任一正值開機(jī)程序中取得第一比對(duì)程序及第二比對(duì) 程序;403) 第一次比對(duì)比對(duì)第一比對(duì)程序與反值開機(jī)程序的數(shù)據(jù)區(qū)塊;404) 獲取待判定區(qū)塊自第一比對(duì)程序中取得與反值開機(jī)程序未完全反相 的至少一數(shù)據(jù)區(qū)塊為待判定區(qū)塊;405) 第二次比對(duì)比對(duì)待判定區(qū)塊與第二比對(duì)程序,獲取待判定區(qū)塊中與 第二比對(duì)程序相異的數(shù)據(jù)區(qū)塊;406) 修復(fù)開機(jī)程序即修復(fù)獲取第一比對(duì)程序或第二比對(duì)程序的正值開機(jī)程 序以第二比對(duì)程序覆寫該數(shù)據(jù)區(qū)塊,從而得到修復(fù)的第一比對(duì)程序,進(jìn)而得 到修復(fù)的獲取第一比對(duì)程序或第二比對(duì)程序的正值開機(jī)程序;407) 是否修復(fù)其余的開機(jī)程序,否,則結(jié)束;是,則進(jìn)至步驟308);408) 修復(fù)其余的開機(jī)程序,以第一比對(duì)程序覆寫第二比對(duì)程序,從而修復(fù) 其余的正值開機(jī)程序;同時(shí),以反相運(yùn)算后的第一比對(duì)程序覆寫反值開機(jī)程序, 從而修復(fù)反值開機(jī)程序,結(jié)束程序的修復(fù)。
      7、 根據(jù)權(quán)利要求6所述的自我修復(fù)的多重開機(jī)方法,其特征在于所述步 驟401)與402)之間還包括步驟602)檢查正值開機(jī)程序的錯(cuò)誤檢查碼是否正 常,若至少一個(gè)正值開機(jī)程序的錯(cuò)誤檢查碼正常,則進(jìn)至步驟604);若所有正 值開機(jī)程序的錯(cuò)誤檢査碼均為異常,則進(jìn)至步驟603); 603) 檢查反值開機(jī)程序的錯(cuò)誤檢查碼是否正常,若是,則進(jìn)至步驟604); 若否,則進(jìn)至步驟402); 604) 修復(fù)其余的開機(jī)程序,當(dāng)步驟602)檢査正值開機(jī)程序的錯(cuò)誤檢查碼中至少一個(gè)錯(cuò)誤檢查碼正常,則以錯(cuò)誤檢查碼正常的正值開機(jī)程序覆寫錯(cuò)誤檢 查碼異常的其余的正值開機(jī)程序;同時(shí),以反相運(yùn)算后的錯(cuò)誤檢查碼正常的正 值開機(jī)程序覆寫錯(cuò)誤檢查碼異常的反值開機(jī)程序;當(dāng)驟503)檢查反值開機(jī)程序 的錯(cuò)誤檢查碼是正常時(shí),則以反相運(yùn)算后的錯(cuò)誤檢查碼正常的反值開機(jī)程序覆 寫錯(cuò)誤檢查碼異常的正值開機(jī)程序。
      8、 根據(jù)權(quán)利要求4或5或6或7所述的自我修復(fù)的多重開機(jī)方法,其特征 在于通過比對(duì)模塊是以數(shù)據(jù)區(qū)塊為比對(duì)單位、利用互斥運(yùn)算進(jìn)行比對(duì)。
      9、 根據(jù)權(quán)利要求5或7所述的自我修復(fù)的多重開機(jī)方法,其特征在于所 述錯(cuò)誤檢査碼是循環(huán)冗余編碼。
      10、 根據(jù)權(quán)利要求5或7所述的自我修復(fù)的多重開機(jī)方法,其特征在于所述錯(cuò)誤檢查碼是總合檢查值。
      全文摘要
      本發(fā)明涉及一種自我修復(fù)的多重開機(jī)系統(tǒng)及其方法,該系統(tǒng)包括用于儲(chǔ)存多個(gè)正值開機(jī)程序及至少一個(gè)反值開機(jī)程序的儲(chǔ)存模塊、自多個(gè)正值開機(jī)程序中取出第一比對(duì)程序及第二比對(duì)程序進(jìn)行開機(jī)程序比對(duì)的比對(duì)模塊和根據(jù)比對(duì)模塊的結(jié)果覆寫開機(jī)程序的覆寫模塊,儲(chǔ)存模塊接入比對(duì)模塊,比對(duì)模塊接入覆寫模塊,覆寫模塊接入儲(chǔ)存模塊。本發(fā)明的系統(tǒng)組成結(jié)構(gòu)簡(jiǎn)單、操作簡(jiǎn)單易行,成本低廉,本發(fā)明的開機(jī)方法,可在正值開機(jī)程序與反值開機(jī)程序的數(shù)據(jù)區(qū)塊損毀僅為少量且離散分布的情況下,予以修復(fù)且簡(jiǎn)單快速。
      文檔編號(hào)G06F11/14GK101403976SQ20081023203
      公開日2009年4月8日 申請(qǐng)日期2008年10月30日 優(yōu)先權(quán)日2008年10月30日
      發(fā)明者王志銘, 陳淮琰 申請(qǐng)人:無(wú)敵科技(西安)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1