国产精品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>

      嵌入式系統(tǒng)及其啟動加載的方法

      文檔序號:6458511閱讀:212來源:國知局
      專利名稱:嵌入式系統(tǒng)及其啟動加載的方法
      技術領域
      本發(fā)明涉及一種嵌入式系統(tǒng)法,更具體的涉及一種用于嵌入式系統(tǒng)的啟動 力口載的方法。
      背景技術
      隨著科技水平的不斷發(fā)展,嵌入式系統(tǒng)已經(jīng)獲得了廣泛的應用。嵌入式系
      統(tǒng)一般指非PC系統(tǒng),有計算機功能但又不稱之為計算機的設備或器材。它是
      以應用為中心,軟硬件可裁減的,適應應用系統(tǒng)對功能、可靠性、成本、體積、 功耗等綜合性嚴格要求的專用計算機系統(tǒng)。簡單地說,嵌入式系統(tǒng)集系統(tǒng)的應
      用軟件與硬件于一體,類似于PC中BIOS的工作方式,具有軟件代碼小、高 度自動化、響應速度快等特點,特別適合于要求實時和多任務的體系。嵌入式 系統(tǒng)主要由嵌入式處理器、相關支撐硬件、嵌入式操作系統(tǒng)及應用軟件系統(tǒng)等 組成,它是可獨立工作的"器件"。
      由于嵌入式系統(tǒng)具有體積小、性能強、功耗低、可靠性高以及面向行業(yè)應 用的突出特征,目前嵌入式技術已經(jīng)廣泛地應用于消費電子、網(wǎng)絡通信、工業(yè)控 制等各個領域。幾乎包括了生活中的所有電器設備,如掌上PDA、移動計算設 備、電視機頂盒、手機上網(wǎng)、數(shù)字電視、多媒體、汽車、微波爐、數(shù)字相機、 家庭自動化系統(tǒng)、電梯、空調(diào)、安全系統(tǒng)、自動售貨機、蜂窩式電話、消費電 子設備、工業(yè)自動化儀表與醫(yī)療儀器等。信息家電融入了計算機技術、通信技 術、半導體技術、數(shù)據(jù)傳輸處理技術甚至傳感器技術,成為嵌入式系統(tǒng)應用最為 耀眼的領域,例如機頂盒系統(tǒng)就是信息家電中嵌入式技術最為典型的應用。
      嵌入式系統(tǒng)由硬件和軟件兩部分組成,嵌入式系統(tǒng)的硬件部分,包括微處 理器、存儲器及外設器件和1/0端口、圖形控制器等。嵌入式系統(tǒng)有別于一般的計算機處理系統(tǒng),它不具備像硬盤那樣大容量的存儲介質(zhì),而大多使用
      EPR0M、 EEPROM或l勾存(Flash Memory)作為存儲介質(zhì)。
      嵌入式系統(tǒng)的4欠件部分主要包括Boot loader、內(nèi)核和文件系統(tǒng)。Boot loader是硬件系統(tǒng)加電所運行的第1段軟件代碼,但由于嵌入式系統(tǒng)中一般沒 有像PC中的BIOS那樣的固件,因此整個系統(tǒng)的加載過程全部是由Boot loader 來完成的。系統(tǒng)在上電1或復位時通常都從地址0x00000000處開始執(zhí)行,而在 這個地址處安排的通常就是系統(tǒng)的Boot loader。Boot loader的主要任務包括 初始化最基本的硬件;將Boot loader本身拷貝到RAM中運行;將內(nèi)核拷貝到 RAM中并調(diào)用內(nèi)核等。Boot Loader就是在操作系統(tǒng)內(nèi)核運行之前運行的一段 小程序。通過這段小程序,我們可以初始化硬件設備、建立內(nèi)存空間的映射圖, 從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核 準備好正確的環(huán)境。
      大多數(shù)Boot Loader都包含兩種不同的操作模式"啟動加載"模式和"下 載"模式,這種區(qū)別僅對于開發(fā)人員才有意義。但從最終用戶的角度看,Boot Loader的作用就是用來加載操作系統(tǒng),而并不存在所謂的啟動加載模式與下載 工作模式的區(qū)別。
      啟動力口載(Boot loading)模式這種模式也稱為"自主"(Autonomous ) 模式。也即Boot Loader從目標機上的某個固態(tài)存儲設備上將操作系統(tǒng)加載到 RAM中運行,整個過程并沒有用戶的介入。這種模式是Boot Loader的正常工 作模式,因此在嵌入式產(chǎn)品發(fā)布的時侯,Boot Loader顯然必須工作在這種模 式下。
      下載(Downloading)才莫式在這種才莫式下,目標才幾上的Boot Loader將 通過串口連接或網(wǎng)絡連接等通信手段從主機(Host )下載文件,比如下載內(nèi) 核映像和根文件系統(tǒng)映像等。從主機下載的文件通常首先被Boot Loader保存 到目標機的RAM中,然后再被Boot Loader寫到目標才幾上的FLASH類固態(tài)存 儲設備中。Boot Loader的這種模式通常在第一次安裝內(nèi)核與根文件系統(tǒng)時被4吏用;此外,以后的系統(tǒng)更新也會4吏用Boot Loader的這種工作才莫式。工作于 這種才莫式下的Boot Loader通常都會向它的終端用戶4是供一個簡單的命令行接 口 。
      由于一般的嵌入式系統(tǒng)都只有一個固定的Boot Loader模塊,而Boot Loader在嵌入式系統(tǒng)啟動的過程中又扮演了非常重要的角色,一旦Boot Loader 模塊被破壞,系統(tǒng)將不能正常啟動?,F(xiàn)在的一些嵌入式系統(tǒng)為了避免這一問題, 將Boot Loader分為兩個部分, 一部分是最基本的Boot才莫塊, 一部分是用于升 級的Loader模塊,Boot模塊本身是固定不變的,這一部分不會損壞,而Loader 模塊可能會因為原功能不能滿足要求,需要不斷的升級或者改進而產(chǎn)生變動, 一旦該模塊下載升級文件的過程中損壞或者新下載的Loader模塊有問題,就會 造成系統(tǒng)不能升級,如果問題不能盡快解決,用戶只能使用非?;镜膽贸?序,這可能會造成該系統(tǒng)無法繼續(xù)使用。因此,本領域需要一種更為安全可靠 的Boot Loader方法。

      發(fā)明內(nèi)容
      為了解決上述問題,本發(fā)明提供了一種嵌入式系統(tǒng)及其啟動加載的方法, 使用兩個加載模塊互為備份,提高了嵌入式系統(tǒng)的可靠性。
      具體的,本發(fā)明提供了一種嵌入式系統(tǒng),所述嵌入式系統(tǒng)包括引導模塊、 第一加載模塊和第二加載模塊,所述引導模塊用于校驗所述第一加載模塊,若
      第一加載模塊正常,則引導第一加載模塊啟動;若第一加載模塊損壞,則根據(jù) 第二加載模塊對第一加載模塊進行恢復。
      所述引導模塊校驗所述第二加載模塊,若第二加載模塊損壞,則根據(jù)第一
      加載模塊對第二加載模塊進行恢復。
      所述引導模塊使用crc對第一加載模塊或第二加載模塊進行校驗。 所述第一加載模塊包括第一加載程序,第二加載模塊包括第二加載程序,
      若第 一加載程序和第二加載程序的版本不相同,則引導模塊將版本高的加載程
      序覆蓋版本低的加載程序。若其中 一個加載模塊包含有升級程序時,引導模塊引導加載模塊執(zhí)行升級, 更新升級信息。
      進一步的,本發(fā)明提供了一種嵌入式系統(tǒng)啟動加載方法,所述嵌入式系統(tǒng)
      啟動加載方法包括 啟動引導程序;
      校驗第一加載模塊是否正確,若第一加載模塊正確,則引導第一加載模塊 啟動;若第一加載模塊損壞,則校驗第二加載模塊是否正確,若第二加載模塊 正確,將第二加載模塊的內(nèi)容拷貝到第一加載模塊,引導第一加載模塊啟動;
      若第一加載模塊需要升級,則第一加載模塊開始執(zhí)行升級過程,升級完成 后更新升級信息,重新啟動系統(tǒng);
      若第 一加載模塊不需要升級,則開始調(diào)轉應用程序啟動。
      所述嵌入式系統(tǒng)啟動加載方法還包括應用程序?qū)崟r監(jiān)測升級信息,若應 用程序監(jiān)測到了升級信息,則設置一個升級標志,重新啟動系統(tǒng)。
      所述嵌入式系統(tǒng)啟動加載方法還包括所述第一加載模塊包括第一加載程 序,第二加載模塊包括第二加載程序,若第一加載程序和第二加載程序的版本 不相同,則將版本高的加載程序覆蓋版本低的加栽程序。
      所述嵌入式系統(tǒng)啟動加載方法使用CRC對第一加載模塊或第二加載模塊進 行校驗。
      所述嵌入式系統(tǒng)啟動加載方法還包括若升級過程未完成被強制中斷,記 錄未完成升級信息,下次啟動后繼續(xù)升級。
      本發(fā)明的嵌入式系統(tǒng)啟動加載方法通過兩個加載模塊之間的互相備份,充 分保證了系統(tǒng)在升級過程中的安全,即使其中一個加載模塊在升級過程中被損 壞或者因其他意外損壞的話,也可以從另外一個加載模塊的備份中恢復,保證 了整個嵌入式系統(tǒng)的正常使用。


      圖1所示為本發(fā)明的嵌入式系統(tǒng)啟動的一個實施例的示意圖。圖2所示為本發(fā)明的嵌入式系統(tǒng)啟動加載方法的實施例的示意圖。
      具體實施例方式
      特征和優(yōu)點能夠更加明顯易懂,下面結合附圖和具體實施方式
      對本發(fā)明作進一
      步詳細的"i兌明。
      圖1所示為本發(fā)明的嵌入式系統(tǒng)啟動的一個實施例的示意圖。如圖所示, 本實施例的嵌入式系統(tǒng)啟動加載模塊包括引導模塊110、第一加載模塊120和 第二加載模塊130。引導模塊110用于引導啟動程序并對第一加載模塊和 第二加載模塊130進行檢測,例如通過CRC校驗來判斷第一加載模塊和第 二加載模塊130是否都正常,并根據(jù)檢測結果選擇加載的程序。第一加載模塊 120和第二加載模塊130都包括加載程序,互為備份,在其中一個加載模塊被 損壞或出現(xiàn)其他問題時,引導模塊IIO根據(jù)檢測結果,使用完好的加載模塊對 被損壞的加載模塊進行恢復,以保證系統(tǒng)的正常啟動。在其中一個加載模塊包 含有升級程序時,引導模塊IIO引導加載模塊執(zhí)行升級過程,更新升級信息。 如果第一加載模塊120和第二加載模塊130的版本不一致,引導模塊110引導 版本高的覆蓋版本低的加載模塊,例如,如果第一加載模塊no的版本比第二 加載模塊130的版本高,引導模塊110則將第一加載模塊120的內(nèi)容拷貝到第 二加載模塊130。
      由于本實施例的嵌入式系統(tǒng)啟動加載模塊包括了兩個互為備份的第一加載 模塊120和第二加載模塊130,這樣,在啟動過程中,即使其中的一個加載模 塊出現(xiàn)問題,也不會影響到整個系統(tǒng)的啟動,避免了嵌入式系統(tǒng)因加載才栗塊損 壞而不能啟動的問題;在升級過程中,即使其中的一個加載模塊的程序出現(xiàn)問
      題,或者在升級過程中因其他原因造成升級失敗,引導模塊110都可以及時的 對出現(xiàn)問題的加載模塊進行恢復,不會影響系統(tǒng)接下來的升級。
      圖2所示為本發(fā)明的嵌入式系統(tǒng)啟動加載方法的實施例的示意圖。如圖所 示,本實施例的嵌入式系統(tǒng)啟動加載方法包括步驟步驟210:在系統(tǒng)上電啟動之后,首先啟動引導程序,引導區(qū)至少包括嵌 入式系統(tǒng)正常啟動的最基本的程序。
      步驟220:校驗第一加載模塊是否正確,如果第一加載模塊正確,則轉入 步驟230;如果第一加載模塊損壞或出現(xiàn)其他問題,則轉入步驟300。這里的校 驗可以使用多種方法,比較常用的為通過CRC (Cyclic Redundancy Check)循 環(huán)冗余校驗碼來進行校驗。 '
      步驟230:如果第一加載模塊正確,引導程序引導第一加載模塊啟動。
      步驟240:判斷第一加載模塊是否升級,如果升級,則轉入步驟2S0;如果 不升級,則轉入步驟400。
      步驟250:如果第一加載模塊需要升級,則第一加載模塊開始執(zhí)行升級過 程。升級完成后,轉入步驟260。
      步驟260:更新升級信息。更新完成之后轉入步驟"0,以檢測升級是否成
      功。 .
      步驟300:如果第一加載模塊損壞或出現(xiàn)其他問題,引導程序則對第二加
      載模塊進行檢測,校驗第二加載模塊是否正確,如果第二加載模塊正確,轉入
      步驟310,如果第二加載模塊損壞或出現(xiàn)其他問題,則轉入步驟400。
      步驟310:將第二加載模塊的內(nèi)容拷貝到第一加載模塊,用于恢復第一加 載模塊。拷貝完成后轉入步驟230。
      步驟400:在第一加載模塊啟動完成之后,如果不升級,則開始調(diào)轉應用 程序啟動;如果第一加載模塊和第二加載模塊都出現(xiàn)問題,引導程序也開始執(zhí) 行這一步驟。
      步驟410:在應用程序啟動之后,應用程序?qū)崟r監(jiān)測升級信息。 步驟420:如果應用程序沒有監(jiān)測到升級信息,應用程序?qū)⒗^續(xù)實施監(jiān)測; 如果應用程序監(jiān)測到了升級信息,則轉入步驟430。
      步驟430:如果應用程序監(jiān)測到了升級信息,應用程序設置一個升級標志,
      系統(tǒng)重新啟動開始升級。最后,如果第一加載模塊升級成功了,則把升級后的第一加載模塊同時拷 貝到第二加載模塊,升級應用程序則同時更新加載模塊升級信息。
      某些嵌入式系統(tǒng)平臺如St平臺不能支持不同地址配同一個加載模塊應用
      跳轉的功能,現(xiàn)在第二加載模塊是第一加載模塊的完全備份,如果可以實^:第
      一加載模塊和第二加載模塊的bin文件只有配置地址不同的話,可以直接從第 二加載模塊或者第一加載模塊跳轉,第一加載模塊和第二加載模塊就可以實現(xiàn) 互相備份,加載模塊的升級流只要做一個流,終端接收機記憶升級狀態(tài),可以 確保升級安全。
      另外,本實施例的嵌入式系統(tǒng)啟動加載方法在每次升級之后都有升級信息 記錄,如果升級過程未完成則斷電或強制中斷,會記錄未完成升級信息,下次 開機會繼續(xù)升級。
      可以看出,本發(fā)明的嵌入式系統(tǒng)啟動加載方法通過兩個加載模塊之間的互 相備份,充分保證了系統(tǒng)在升級過程中的安全,即使其中一個加載模塊在升級 過程中被損壞或者因其他意外損壞的話,也可以從另外一個加載模塊的備份中 恢復,保證了整個嵌入式系統(tǒng)的正常使用。
      當然,上述說明并非是對本發(fā)明的限制,本發(fā)明也并不僅限于上述舉例, 本技術領域的普通技術人員在本發(fā)明的實質(zhì)范圍內(nèi)所做出的變化、改型、添加 或替換,也應屬于本發(fā)明的保護范圍。
      權利要求
      1. 一種嵌入式系統(tǒng),其特征在于所述嵌入式系統(tǒng)包括引導模塊、第一加載模塊和第二加載模塊,所述引導模塊用于校驗所述第一加載模塊,若第一加載模塊正常,則引導第一加載模塊啟動;若第一加載模塊損壞,則根據(jù)第二加載模塊對第一加載模塊進行恢復。
      2、 根據(jù)權利要求1所述的嵌入式系統(tǒng),其特征在于所述引導模塊校驗所 述第二加載模塊,若第二加載模塊損壞,則根據(jù)第一加載模塊對第二加載模塊 進行恢復。
      3、 根據(jù)權利要求1或2所述的嵌入式系統(tǒng),其特征在于所述引導模塊使 用CRC對第一加載模塊或第二加載模塊進行校驗。
      4、 根據(jù)權利要求1所述的嵌入式系統(tǒng),其特征在于所述第一加載模塊包 括第一加載程序,第二加載模塊包括第二加載程序,若第一加載程序和第二加 載程序的版本不相同,則引導模塊將版本高的加載程序覆蓋版本低的加載程序。
      5、 根據(jù)權利要求1所述的嵌入式系統(tǒng),其特征在于若其中一個加載模塊 包含有升級程序時,引導模塊引導加載模塊執(zhí)行升級,更新升級信息。
      6、 一種嵌入式系統(tǒng)啟動加載方法,其特征在于,所述嵌入式系統(tǒng)啟動加載 方法包括啟動引導程序;校驗第一加載模塊是否正確,若第一加載模塊正確,則引導第一加載模塊 啟動;若第一加載模塊損壞,則校驗第二加載模塊是否正確,若第二加載模塊 正確,將第二加載模塊的內(nèi)容拷貝到第一加載模塊,引導第一加載模塊啟動;若第一加載模塊需要升級,則第一加載模塊開始執(zhí)行升級過程,升級完成 后更新升級信息,重新啟動系統(tǒng);若第一加載模塊不需要升級,則開始調(diào)轉應用程序啟動。
      7、 根據(jù)權利要求6所述的嵌入式系統(tǒng)啟動加載方法,其特征在于所述嵌入式系統(tǒng)啟動加載方法還包括應用程序?qū)崟r監(jiān)測升級信息,若應用程序監(jiān)測 到了升級信息,則設置一個升級標志,重新啟動系統(tǒng)。
      8、 根據(jù)權利要求6所述的嵌入式系統(tǒng)啟動加載方法,其特征在于所述嵌 入式系統(tǒng)啟動加載方法還包括所述第一加載模塊包括第一加載程序,第二加 載模塊包括第二加載程序,若第一加載程序和第二加載程序的版本不相同,則 將版本高的加載程序覆蓋版本低的加載程序。
      9、 根據(jù)權利要求6所述的嵌入式系統(tǒng)啟動加載方法,其特征在于使用 CRC對第一加載模塊或第二加載模塊進行校驗。
      10、 根據(jù)權利要求6所述的嵌入式系統(tǒng)啟動加載方法,其特征在于所述 嵌入式系統(tǒng)啟動加載方法還包括若升級過程未完成被強制中斷,記錄未完成 升級信息,下次啟動后繼續(xù)升級。
      全文摘要
      本發(fā)明提供了一種嵌入式系統(tǒng)及其啟動加載的方法,使用兩個加載模塊互為備份,提高了嵌入式系統(tǒng)的可靠性。具體的,本發(fā)明提供了一種嵌入式系統(tǒng),所述嵌入式系統(tǒng)包括引導模塊、第一加載模塊和第二加載模塊,所述引導模塊用于校驗所述第一加載模塊,若第一加載模塊正常,則引導第一加載模塊啟動;若第一加載模塊損壞,則根據(jù)第二加載模塊對第一加載模塊進行恢復。本發(fā)明的嵌入式系統(tǒng)通過兩個加載模塊之間的互相備份,充分保證了系統(tǒng)在升級過程中的安全,即使其中一個加載模塊在升級過程中被損壞或者因其他意外損壞的話,也可以從另外一個加載模塊的備份中恢復,保證了整個嵌入式系統(tǒng)的正常使用。
      文檔編號G06F9/445GK101281469SQ20081001533
      公開日2008年10月8日 申請日期2008年4月11日 優(yōu)先權日2008年4月11日
      發(fā)明者郭金花 申請人:青島海信電器股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1