交換機的鏡像升級方法及適用的linux操作系統(tǒng)和交換的制造方法
【專利摘要】本發(fā)明公開一種交換機的鏡像升級方法,該方法包含:生成內(nèi)核鏡像文件和文件系統(tǒng)鏡像文件;將內(nèi)核鏡像文件與文件系統(tǒng)鏡像文件生成可用于交換機直接鏡像升級的鏡像文件;將可用于交換機直接鏡像升級的鏡像文件升級到交換機的flash分區(qū)。本發(fā)明通過腳本將sdk、hsl和FOS編譯出的目標(biāo)文件自動打包生成文件系統(tǒng)鏡像文件,再通過腳本將文件系統(tǒng)鏡像文件和內(nèi)核鏡像文件生成可升級的鏡像,直接將可升級的鏡像升級至flash分區(qū)即可完成交換機的鏡像升級,節(jié)約時間,方便易行,提高工作效率。
【專利說明】交換機的鏡像升級方法及適用的I inux操作系統(tǒng)和交換機
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種Linux系統(tǒng)的交換機的鏡像升級技術(shù),具體涉及一種交換機的鏡像升級方法及適用的Iinux操作系統(tǒng)和交換機。
【背景技術(shù)】
[0002]隨著現(xiàn)在對企業(yè)級交換機的各種性能的要求越來越嚴(yán)格,交換機研發(fā)工程師會解決越來越多的問題,要解決驗證問題,就意味著要頻繁的升級交換機的鏡像文件。
[0003]目前,采用的鏡像升級方法是先編譯Linux內(nèi)核,該Linux內(nèi)核是指一個提供硬件抽象層,磁盤及文件系統(tǒng)控制,多任務(wù)等功能的系統(tǒng)軟件,并壓縮生成內(nèi)核鏡像文件vmlinuxz,將內(nèi)核鏡像文件先升級加載到flash分區(qū)內(nèi),再將軟件開發(fā)工具包(SoftwareDevelopment Kit,sdk)和 hsl (Hardware System Layer,硬件系統(tǒng)層),Zebos 編譯出的各個應(yīng)用層的應(yīng)用協(xié)議模塊的目標(biāo)文件。然后人為通過壓縮工具手動輸入打包壓縮命令,一個一個的對目標(biāo)文件進(jìn)行打包壓縮,生成文件系統(tǒng)鏡像keystone.jffs2,最后將文件系統(tǒng)鏡像燒入flash分區(qū),整個升級過程才算完成。這樣升級過程復(fù)雜,工程師調(diào)試耗時費力,工作效率低。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種交換機的鏡像升級方法及適用的Iinux操作系統(tǒng)和交換機,節(jié)約時間,方便易行,還提高了工作效率。
[0005]為實現(xiàn)上述目的,本發(fā)明公提供一種交換機的鏡像升級方法,其特點是,該方法包含:
生成內(nèi)核鏡像文件和文件系統(tǒng)鏡像文件;
將內(nèi)核鏡像文件與文件系統(tǒng)鏡像文件打包壓縮,生成可用于交換機直接鏡像升級的鏡像文件;
將可用于交換機直接鏡像升級的鏡像文件升級到交換機的flash分區(qū)。
[0006]上述生成內(nèi)核鏡像文件包含:
編譯Iinux內(nèi)核;
將編譯后的Iinux內(nèi)核進(jìn)行壓縮成內(nèi)核鏡像文件。
[0007]上述生成文件系統(tǒng)鏡像文件包含: sdk和hsl編譯生成第一目標(biāo)文件;
第一操作系統(tǒng)編譯生成第二目標(biāo)文件;
第一目標(biāo)文件和第二目標(biāo)文件進(jìn)行打包壓縮,生成文件系統(tǒng)鏡像文件。
[0008]上述第一目標(biāo)文件和第二目標(biāo)文件通過包含打包壓縮命令的腳本自動進(jìn)行打包壓縮。
[0009]上述第一操作系統(tǒng)為嵌入式操作系統(tǒng)。
[0010]上述內(nèi)核鏡像文件與文件系統(tǒng)鏡像文件通過一個包含打包壓縮命令的腳本進(jìn)行打包壓縮,自動生成可用于交換機直接鏡像升級的鏡像文件。
[0011]—種Iinux操作系統(tǒng)的交換機,其特點是,該Iinux操作系統(tǒng)的交換機適用上述交換機的鏡像升級方法。
[0012]一種Iinux操作系統(tǒng),其特點是,該Iinux操作系統(tǒng)包含交換機,交換機適用上述交換機的鏡像升級方法。
[0013]本發(fā)明交換機的鏡像升級方法及適用的Iinux操作系統(tǒng)和交換機和現(xiàn)有技術(shù)的交換機的鏡像升級技術(shù)相比,其優(yōu)點在于,本發(fā)明通過腳本將sdk、hsl和FOS編譯出的目標(biāo)文件自動打包生成文件系統(tǒng)鏡像文件,再通過腳本將文件系統(tǒng)鏡像文件和內(nèi)核鏡像文件生成可升級的鏡像,直接將可升級的鏡像升級至flash分區(qū)即可完成交換機的鏡像升級,節(jié)約時間,方便易行,提高工作效率。
【專利附圖】
【附圖說明】
[0014]圖1為本發(fā)明一種交換機的鏡像升級方法的方法流程圖。
【具體實施方式】
[0015]以下結(jié)合附圖,進(jìn)一步說明本發(fā)明的具體實施例。
[0016]如圖1所示,為一種適用于Iinux操作系統(tǒng)的交換機的鏡像升級方法的實施例,該方法包含:
步驟1、生成Iinux內(nèi)核鏡像文件vmlinuxz ο
[0017]步驟1.1、編譯Iinux操作系統(tǒng)的內(nèi)核。先指定編譯路徑,選擇一些要編譯的參數(shù),使用make命令對Iinux操作系統(tǒng)的內(nèi)核進(jìn)行編譯。
[0018]步驟1.2、將編譯后的內(nèi)核進(jìn)行壓縮成內(nèi)核鏡像文件vmlinuxz。
[0019]步驟1.3、將內(nèi)核鏡像文件vmlinuxz先升級加載到flash分區(qū)。
[0020]步驟2、sdk (Software Development Kit,軟件工具開發(fā)包)和 hsl (HardwareSystem Layer,硬件系統(tǒng)層)編譯生成后綴為.ko (kernel object,內(nèi)核對象)的第一目標(biāo)文件,S卩.ko文件。
[0021]該些.ko文件是linux2.6內(nèi)核使用的動態(tài)連接文件,該.ko文件為交換芯片的一些驅(qū)動程序,用于驅(qū)動芯片的正常工作,在Linux系統(tǒng)啟動時加載內(nèi)核模塊。
[0022]目前用的的ko 文件有:hsl_bcm.ko(編譯 hsl 生成的 ko)、linux-bcm-diag.ko (調(diào)試模塊的 ko)、linux-kernel-bde.ko (內(nèi)核的 ko)、linux-bcm-core.ko (驅(qū)動程序的 ko)、linux-uk-proxy.ko (代理的 ko)等。
[0023]步驟3、第一操作系統(tǒng)編譯出第二目標(biāo)文件,該第二目標(biāo)文件為若干應(yīng)用層的模塊。
[0024]本實施例中第一操作系統(tǒng)采用FOS (feixun operating system)斐訊操作系統(tǒng),該FOS功能類似Zebos操作系統(tǒng)。
[0025]編譯FOS后會生成很多的可執(zhí)行文件,這些可執(zhí)行文件就是后文所提到生成的一些具體的應(yīng)用層的模塊,分別為:authd、im1、lacpd、mstpd、nldpd、nsm、ospfd、pdmd、pimd、ripd、Webserver等應(yīng)用層的應(yīng)用協(xié)議模塊,這些模塊是交換機正常工作所需用運行的協(xié)議,只有這些模塊正常完整的加載成功,交換機才能實現(xiàn)相應(yīng)的功能。
[0026]其中,sdk主要是交換芯片的驅(qū)動程序。
[0027]hsl是連接FOS和sdk的中間層,也就是說上層的應(yīng)用程序模塊需要調(diào)用底層sdk的相關(guān)程序時,都會通過hsl層來中轉(zhuǎn)的,但它也是屬于內(nèi)核模塊。
[0028]sdk和hsl編譯生成的第一目標(biāo)文件與FOS編譯生成的第二目標(biāo)文件的區(qū)別在于,處在交換機的不同層次而已,但都是交換機正常運行所必須的目標(biāo)文件。Sdk和hsl編譯生成的是.ko文件,處于底層,而FOS編譯生成的是一些可執(zhí)行的應(yīng)用程序模塊,處于上層,也就是應(yīng)用層。
[0029]步驟4、sdk、hsl和FOS編譯生成的第一目標(biāo)文件和第二目標(biāo)文件通過一個進(jìn)行打包壓縮的腳本自動打包壓縮生成名為keystone.jffs2的文件系統(tǒng)鏡像文件。
[0030]這里,將第一目標(biāo)文件和第二目標(biāo)文件進(jìn)行打包壓縮的腳本,具體是使用tar-cjvf tfile sfile命令,進(jìn)行打包壓縮。其中cjvf就是指明要不要打包壓縮以及壓縮后的文件類型,Tfile就是打包壓縮后生成的文件名,sfile就是源目標(biāo)文件,即那些被打包和壓縮的目標(biāo)文件。
[0031]步驟5、內(nèi)核鏡像文件vmlinuxz與文件系統(tǒng)鏡像文件keystone.jffs2通過一個進(jìn)行打包壓縮的腳本自動打包壓縮,生成一個后綴為.gz的可用于交換機直接鏡像升級的鏡像文件。
[0032]這里,將內(nèi)核鏡像文件vmlinuxz與文件系統(tǒng)鏡像文件keystone.jffs2進(jìn)行打包壓縮的腳本與步驟4中的腳本一樣,都是采用tar命令進(jìn)行壓縮,只是源目標(biāo)文件sfile和打包壓縮后生成的文件名Tfile不同。
[0033]可用于交換機直接鏡像升級的鏡像文件的特征就是,它是一個將上述很多模塊和.KO文件組成的內(nèi)核鏡像文件和文件系統(tǒng)鏡像文件打包壓縮生成的一個新的Jffs2文件系統(tǒng),這樣可以省去我們逐步對上層的應(yīng)用模塊和那些ko文件手動式的一個個寫入flash,節(jié)約時間成本。
[0034]步驟6、通過tftp文件傳輸工具,將可用于交換機鏡像直接升級的鏡像文件燒入交換機的flash分區(qū),完成交換機的升級。
[0035]本發(fā)明還公開一種Iinux操作系統(tǒng)的交換機,該Iinux操作系統(tǒng)的交換機適用于上述交換機的鏡像升級方法。
[0036]本發(fā)明還公開一種Iinux操作系統(tǒng),該Iinux操作系統(tǒng)包含有交換機,該交換機適用于上述交換機的鏡像升級方法。
[0037]盡管本發(fā)明的內(nèi)容已經(jīng)通過上述優(yōu)選實施例作了詳細(xì)介紹,但應(yīng)當(dāng)認(rèn)識到上述的描述不應(yīng)被認(rèn)為是對本發(fā)明的限制。在本領(lǐng)域技術(shù)人員閱讀了上述內(nèi)容后,對于本發(fā)明的多種修改和替代都將是顯而易見的。因此,本發(fā)明的保護范圍應(yīng)由所附的權(quán)利要求來限定。
【權(quán)利要求】
1.一種交換機的鏡像升級方法,其特征在于,該方法包含: 生成內(nèi)核鏡像文件和文件系統(tǒng)鏡像文件; 將內(nèi)核鏡像文件與文件系統(tǒng)鏡像文件打包壓縮,生成可用于交換機直接鏡像升級的鏡像文件; 將可用于交換機直接鏡像升級的鏡像文件升級到交換機的flash分區(qū)。
2.如權(quán)利要求1所述的交換機的鏡像升級方法,其特征在于,所述生成內(nèi)核鏡像文件包含: 編譯Iinux內(nèi)核; 將編譯后的Iinux內(nèi)核進(jìn)行壓縮成內(nèi)核鏡像文件。
3.如權(quán)利要求1所述的交換機的鏡像升級方法,其特征在于,所述生成文件系統(tǒng)鏡像文件包含: sdk和hsl編譯生成第一目標(biāo)文件; 第一操作系統(tǒng)編譯生成第二目標(biāo)文件; 第一目標(biāo)文件和第二目標(biāo)文件進(jìn)行打包壓縮,生成文件系統(tǒng)鏡像文件。
4.如權(quán)利要求3所述的交換機的鏡像升級方法,其特征在于,所述第一目標(biāo)文件和第二目標(biāo)文件通過包含打包壓縮命令的腳本自動進(jìn)行打包壓縮。
5.如權(quán)利要求3所述的交換機的鏡像升級方法,其特征在于,所述第一操作系統(tǒng)為嵌入式操作系統(tǒng)。
6.如權(quán)利要求1至5中任意一項權(quán)利要求所述的交換機的鏡像升級方法,其特征在于,所述內(nèi)核鏡像文件與文件系統(tǒng)鏡像文件通過一個包含打包壓縮命令的腳本進(jìn)行打包壓縮,自動生成可用于交換機直接鏡像升級的鏡像文件。
7.—種Iinux操作系統(tǒng)的交換機,其特征在于,該Iinux操作系統(tǒng)的交換機適用如權(quán)利要求I至6中任意一項權(quán)利要求所述交換機的鏡像升級方法。
8.—種Iinux操作系統(tǒng),其特征在于,該Iinux操作系統(tǒng)包含交換機,所述交換機適用如權(quán)利要求1至6中任意一項權(quán)利要求所述交換機的鏡像升級方法。
【文檔編號】G06F9/445GK104484207SQ201410806770
【公開日】2015年4月1日 申請日期:2014年12月23日 優(yōu)先權(quán)日:2014年12月23日
【發(fā)明者】范春燕, 朱家星, 周風(fēng)林 申請人:上海斐訊數(shù)據(jù)通信技術(shù)有限公司