[發(fā)明專利]可編程芯片軟件防寫保護(hù)的方法有效
| 申請(qǐng)?zhí)枺?/td> | 00118317.6 | 申請(qǐng)日: | 2000-06-12 |
| 公開(kāi)(公告)號(hào): | CN1328294A | 公開(kāi)(公告)日: | 2001-12-26 |
| 發(fā)明(設(shè)計(jì))人: | 陳宇光 | 申請(qǐng)(專利權(quán))人: | 華碩電腦股份有限公司 |
| 主分類號(hào): | G06F12/14 | 分類號(hào): | G06F12/14;G06F12/16 |
| 代理公司: | 柳沈知識(shí)產(chǎn)權(quán)律師事務(wù)所 | 代理人: | 馬瑩 |
| 地址: | 臺(tái)灣省*** | 國(guó)省代碼: | 臺(tái)灣;71 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 可編程 芯片 軟件 防寫 保護(hù) 方法 | ||
本發(fā)明涉及可編程(programmable)芯片的防寫保護(hù)方法,特別涉及采用軟件來(lái)達(dá)到防止不正確資料寫入可編程芯片的暫存器的保護(hù)方法。
以往許多可編程芯片組(chipset)或IC是沒(méi)有提供保護(hù)機(jī)制的,但是沒(méi)有保護(hù)是非常危險(xiǎn)的事,就病毒程序?yàn)槔?dāng)病毒將可編程芯片寫入錯(cuò)誤的參數(shù)時(shí),將使系統(tǒng)發(fā)生當(dāng)機(jī)或不穩(wěn)定的現(xiàn)象。對(duì)于封閉式系統(tǒng),上述的情況是不會(huì)發(fā)生的,但對(duì)于開(kāi)放式系統(tǒng)而言,除了所規(guī)定的修改程序之外,不可任意修改可編程芯片的暫存器的資料是非常重要的。
圖1示出現(xiàn)有技術(shù)的電腦的基本結(jié)構(gòu)圖。如圖1所示,CPU10、主存儲(chǔ)器12及影像加速卡14連接至北橋芯片16,周邊設(shè)備22連接至南橋芯片20,北橋芯片16與南橋芯片20再互相連接,如此,將概略地描述電腦系統(tǒng)的基本架構(gòu)。
當(dāng)電腦開(kāi)機(jī)時(shí),即CPU10開(kāi)始工作,CPU10會(huì)尋找要執(zhí)行的第一個(gè)指令的所在的地址,而其地址是在主機(jī)板上BIOS(Basic?Input?Output?System)快閃存儲(chǔ)器中的開(kāi)機(jī)程序的地址,CPU10便開(kāi)始執(zhí)行開(kāi)機(jī)程序。
這時(shí),開(kāi)機(jī)程序檢查電腦中所有的標(biāo)準(zhǔn)元件(如主存儲(chǔ)器12等)是否存在,同時(shí)檢查其功能是否正常。在做檢查工作之前,先將中斷向量表的前十六欄指標(biāo)改為指向主機(jī)板中BIOS的中斷服務(wù)例行程序(Interrupt?ServiceRoutine),完成這樣的程序之后,開(kāi)機(jī)程序才會(huì)啟動(dòng)屏蔽(mask)式中斷,如此,電腦才會(huì)有所回應(yīng),如鍵盤的按鍵訊號(hào)。
之后,開(kāi)機(jī)程序會(huì)檢查介面卡是否有BIOS芯片。例如檢查到加速影像卡14上有影像BIOS芯片(未示出),開(kāi)機(jī)程序會(huì)將電腦的控制權(quán)轉(zhuǎn)移給影像BIOS芯片中的程序,讓這個(gè)程序可在中斷向量表的適當(dāng)欄位放入中斷服務(wù)例行程序的地址,當(dāng)執(zhí)行影像BIOS芯片中的程序時(shí),便將資料顯示在螢?zāi)簧稀.?dāng)完成上述的動(dòng)作時(shí),電腦的控制權(quán)便會(huì)還給主機(jī)板上BIOS的開(kāi)機(jī)程序。
同樣地,主機(jī)板上BIOS的開(kāi)機(jī)程序會(huì)設(shè)定可編程芯片(如北橋芯片16及南橋芯片20)內(nèi)的各種暫存器,讓可編程芯片得知與那些設(shè)備相連接,必須執(zhí)行那些工作,當(dāng)CPU10要與主存儲(chǔ)器12或周邊設(shè)備22傳輸資料時(shí),便可以由所設(shè)定的可編程芯片完成其工作。
電腦系統(tǒng)使用可編程芯片的優(yōu)點(diǎn)為:1.同一個(gè)可編程芯片具有多種功能的選擇,以適應(yīng)系統(tǒng)不同的要求,只需要更新可編程芯片中的程序即可。2.可以調(diào)整可編程芯片中各種功能的暫存器的各種參數(shù),以適應(yīng)系統(tǒng)不同的周邊設(shè)備,例如南橋芯片,只需調(diào)整暫存器的參數(shù)就可外接磁碟機(jī)或掃描器等周邊設(shè)備。
然而,當(dāng)可編程芯片完成設(shè)定后,是不允許任意修改的,亦即可編程芯片內(nèi)的各種功能的暫存器所儲(chǔ)存的數(shù)值是不可任意修改的。因?yàn)樾薷倪@些暫存器所儲(chǔ)存的數(shù)值會(huì)改變連接設(shè)備或工作狀態(tài),例如:當(dāng)CPU10要與主存儲(chǔ)器12或周邊設(shè)備22傳輸資料時(shí),可能造成資料傳送錯(cuò)誤或執(zhí)行工作錯(cuò)誤,使得系統(tǒng)停滯或不穩(wěn)定的情況發(fā)生。
因此,現(xiàn)有技術(shù)采用一種硬體的方式來(lái)解決上述的問(wèn)題,其方式是要修改可編程芯片中某一個(gè)暫存器的數(shù)值時(shí),必須先做寫入特定的暫存器的動(dòng)作,而且必須重復(fù)做寫入的動(dòng)作,其重復(fù)的次數(shù)必須達(dá)到預(yù)定的次數(shù)后才可以修改欲修改的暫存器。例如:要修改可編程芯片中第三個(gè)暫存器的數(shù)值,先寫入任意的數(shù)值于第七個(gè)暫存器,而且重復(fù)寫入五次,然后再將修改的數(shù)值寫入第三個(gè)暫存器,如此,才完成了修改暫存器的數(shù)值。
然而,上述的方式有其缺點(diǎn),當(dāng)使用者在執(zhí)行應(yīng)用程序時(shí),由于人為的因素,如暫存器的誤用或指令的執(zhí)行錯(cuò)誤等,發(fā)生寫入錯(cuò)誤地址而導(dǎo)致可編程芯片的暫存器的數(shù)值被修改;或者熟悉上述的方式的程序設(shè)計(jì)師撰寫病毒程序,當(dāng)病毒程序進(jìn)入系統(tǒng)且執(zhí)行此程序時(shí),病毒程序就會(huì)修改可編程芯片的暫存器的數(shù)值,都將造成系統(tǒng)的紊亂,使得系統(tǒng)發(fā)生停滯或不穩(wěn)定的情況。
總結(jié)上述的缺點(diǎn)有:(1)當(dāng)執(zhí)行應(yīng)用程序時(shí),由于暫存器的誤用或執(zhí)行結(jié)果錯(cuò)誤而發(fā)生可編程芯片中的暫存器的資料被修改;(2)當(dāng)病毒程序被執(zhí)行時(shí),進(jìn)行修改可編程芯片中的暫存器的資料,都會(huì)造成系統(tǒng)停滯或不穩(wěn)定。
本發(fā)明所提出的方法是應(yīng)用在電腦系統(tǒng)中的可編程芯片的暫存器,而采用軟件的方式來(lái)防止資料任意存入暫存器內(nèi),以保護(hù)電腦系統(tǒng)。
本發(fā)明提出一種可編程芯片軟件防寫保護(hù)的方法,系應(yīng)用于電腦系統(tǒng),在電腦系統(tǒng)的基本輸入輸出系統(tǒng)中包括:首先,撰寫一個(gè)中斷服務(wù)程序。以及,建立一個(gè)指標(biāo)表。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華碩電腦股份有限公司,未經(jīng)華碩電腦股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/00118317.6/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
- 一種基于應(yīng)用軟件散布的軟件授權(quán)與保護(hù)方法及系統(tǒng)
- 一種用于航空機(jī)載設(shè)備的軟件在線加載系統(tǒng)及方法
- 軟件構(gòu)建方法、軟件構(gòu)建裝置和軟件構(gòu)建系統(tǒng)
- 惡意軟件檢測(cè)方法及裝置
- 一種基于軟件基因的軟件同源性分析方法和裝置
- 軟件引入系統(tǒng)、軟件引入方法及存儲(chǔ)介質(zhì)
- 軟件驗(yàn)證裝置、軟件驗(yàn)證方法以及軟件驗(yàn)證程序
- 使用靜態(tài)和動(dòng)態(tài)惡意軟件分析來(lái)擴(kuò)展惡意軟件的動(dòng)態(tài)檢測(cè)
- 一種工業(yè)控制軟件構(gòu)建方法和軟件構(gòu)建系統(tǒng)
- 可替換游戲軟件與測(cè)驗(yàn)軟件的裝置與方法





