欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種可智能加載硬件的移動終端的制作方法

文檔序號:7632858閱讀:130來源:國知局
專利名稱:一種可智能加載硬件的移動終端的制作方法
技術(shù)領(lǐng)域
本實用新型涉及一種可加載硬件的移動終端,特別涉及一種可智能加載硬件的移動終端。
背景技術(shù)
智能移動終端按操作系統(tǒng)可分為Symbian系統(tǒng)、WinCE系統(tǒng)以及Linux系統(tǒng)。目前移動終端操作系統(tǒng)對相關(guān)的移動終端硬件驅(qū)動程序的加載實現(xiàn),仍然主要采用傳統(tǒng)方式,具體有兩種加載方法。
一、把驅(qū)動程序模塊和移動終端操作系統(tǒng)內(nèi)核做成一個整體。這種方法的主要缺點是耗費存儲空間,移動終端本身的存儲空間容量有限,而且隨著移動終端功能日漸強大,硬件外設(shè)種類繁多,如果都采用這種方式,那存儲空間就會非常緊張。同時,一旦器件升級就必須重新生成新的軟件版本,非常復雜,也不便于維護版本。
二、把驅(qū)動程序單獨加載。這種方法雖然可以解決存儲空間問題,但是如果硬件一旦需要升級,就要根據(jù)不同硬件加載不同的驅(qū)動程序,這樣就需要維護多個版本,導致了使用、維護起來很不方便。
目前所使用這些移動終端操作系統(tǒng)的移動終端還不能解決節(jié)約移動終端存儲空間問題,同時也不能自動兼容多種同類型硬件并存的狀況,對移動終端進行升級和擴充十分不方便。
實用新型內(nèi)容本實用新型解決的技術(shù)問題在于提供了一種可智能加載硬件的移動終端,以解決節(jié)約移動終端存儲空間問題,同時能自動兼容多種同類型硬件并存的狀況,方便的對移動終端進行升級和擴充。
為解決上述技術(shù)問題,本實用新型提供了一種可智能加載硬件的移動終端,包括操作系統(tǒng)內(nèi)核模塊,其特征在于,還包括硬件識別模塊、至少一個硬件驅(qū)動模塊、加載模塊;其中,加載模塊與所述硬件識別模塊相連,讀取不同硬件的寄存器,識別出不同型號的硬件,并生成硬件標志文件;所述加載模塊還與所述硬件驅(qū)動模塊相連,根據(jù)由所述硬件識別模塊生成的硬件標志文件,將對應的硬件驅(qū)動模塊插入所述內(nèi)核模塊。
可以進一步包括刪除模塊,與操作系統(tǒng)內(nèi)核模塊相連,在加載完成后,從系統(tǒng)內(nèi)核中刪除所述硬件識別模塊。
可以進一步包括標志文件刪除模塊,與操作系統(tǒng)內(nèi)核模塊相連,在加載完成后,刪除所述生成的標志文件。
所述硬件識別模塊可以包括寄存器讀取模塊,與標志文件生成模塊相連,讀取不同硬件的寄存器,識別出不同型號的硬件;標志文件生成模塊,與寄存器讀取模塊和操作系統(tǒng)內(nèi)核模塊相連,根據(jù)不同硬件,生成硬件標志文件。
所述標志文件生成模塊可以包括依次相連的取得并保存當前進程的用戶空間地址范圍的模塊、取得內(nèi)核空間地址范圍的模塊;將當前的用戶空間地址范圍指向內(nèi)核空間地址范圍的模塊、在內(nèi)核地址空間操作所述硬件標志文件的寫入的模塊、完成寫操作后,恢復保存的用戶空間地址范圍的模塊。
所述加載模塊可以包括硬件識別加載模塊,與硬件識別模塊和操作系統(tǒng)內(nèi)核模塊相連,將硬件識別模塊加載入操作系統(tǒng)內(nèi)核模塊;驅(qū)動加載模塊,與驅(qū)動模塊和操作系統(tǒng)內(nèi)核模塊相連,將驅(qū)動模塊加載入操作系統(tǒng)內(nèi)核模塊;所述驅(qū)動加載模塊可以包括
宏定義模塊根據(jù)需要兼容的硬件數(shù)據(jù),定義對應數(shù)量的宏;插入控制模塊根據(jù)宏定義,控制不同硬件驅(qū)動程序的插入過程的模塊。由于在本實用新型的移動終端中,驅(qū)動模塊是獨立編寫的,所以以后移動終端硬件升級換代也只需要增加新的模塊即可,有一定的前瞻性和兼容性,便于軟件的維護。本實用新型通過對移動終端傳統(tǒng)驅(qū)動程序加載方式的改進,取得了移動終端可以根據(jù)器件的不同而動態(tài)加載對應驅(qū)動程序的進步,達到了智能識別同類型器件的效果,節(jié)省了后續(xù)軟件研發(fā)成本,提高了產(chǎn)品的穩(wěn)定性、可靠性、多樣性。


圖1為本實用新型實施例中移動終端的結(jié)構(gòu)圖;圖2為本實用新型實施例中移動終端的標志文件生成模塊的結(jié)構(gòu)圖;圖3是本實用新型實施例中移動終端采用Linux操作系統(tǒng)時智能加載驅(qū)動程序的實施流程圖。
具體實施方式
下面結(jié)合具體實施方式
來說明本實用新型。
首先本實施例為了能夠解決移動終端中存儲空間有限的問題提供了一個硬件驅(qū)動模塊,它是把驅(qū)動程序編譯成獨立軟件模塊,單獨加載,這樣可以減少內(nèi)核存儲空間。對驅(qū)動主程序,采用定義多個宏的方法,輔之以條件編譯的方法來控制程序的執(zhí)行流程。這樣做的最大好處是可以在一個驅(qū)動程序的框架中實現(xiàn)多個型號的器件驅(qū)動功能,并且能大大減少目標代碼的大小,從而達到節(jié)省存儲空間的目的,還便于源代碼的修改維護。
有幾種硬件需要實際兼容,就在程序中來定義幾個宏。由于智能移動終端上使用的操作系統(tǒng)是可裁剪的,因此在操作系統(tǒng)配置菜單中定義幾個和相關(guān)硬件器件對應的選項,就能方便程序編譯。這樣即使以后升級器件,也只需要編譯新的模塊就可以了,不用替換整個操作系統(tǒng)。
其次為了能夠自動兼容多種類型并存的硬件,通過程序來識別同類器件的不同型號的方法中。由于同類型器件和CPU的控制連接方式基本是一樣,所以能夠按相同的通訊方法來讀取器件的寄存器,從而識別出器件型號。因此除了在驅(qū)動軟件模塊外,本實施例還提供了一個硬件識別模塊來區(qū)分不同的器件。
當硬件識別模塊中的寄存器讀取模塊識別出特定的硬件器件后,就由硬件識別模塊生成一個特殊的標志文件。然后系統(tǒng)根據(jù)不同的標志文件來插入不同的硬件驅(qū)動模塊。這個硬件識別模塊由于功能非常簡單,所以文件也很小,一般不到幾千字節(jié)。
本實施例中硬件識別模塊和驅(qū)動模塊之間的聯(lián)系方式是通過標識不同文件來實現(xiàn)的。因為對文件的操作都是在手機用戶空間進行,而硬件識別模塊是運行在操作系統(tǒng)的內(nèi)核空間。硬件識別模塊寫標志文件的過程,涉及到通過內(nèi)核空間向用戶空間寫文件的方法。所以硬件識別模塊首先需要取得并保存當前進程的用戶空間地址范圍,再取得內(nèi)核空間地址范圍,把當前的用戶空間地址范圍指向內(nèi)核空間地址范圍,這樣就能夠在操作系統(tǒng)的內(nèi)核空間操作文件的讀寫。寫完后再恢復保存的用戶空間地址范圍就能完成兩個模塊之間的聯(lián)系了。
下面以操作系統(tǒng)中常采用的Linux操作系統(tǒng)為例來說明本實用新型,圖1所示為說明本實施例中的Linux手機驅(qū)動程序智能加載系統(tǒng)的結(jié)構(gòu)圖。
如圖1所示實施例提供的移動終端中中含有Linux操作系統(tǒng)內(nèi)核模塊10、硬件識別模塊11、至少一個硬件驅(qū)動模塊12、加載模塊13,其中,加載模塊13分別與硬件識別模塊11和硬件驅(qū)動模塊12相連。
加載模塊13將硬件識別模塊11插入操作系統(tǒng)內(nèi)核模塊10,它在硬件識別模塊11讀取不同硬件的寄存器,識別出不同型號的硬件后,并根據(jù)不同硬件,生成硬件標志文件,加載模塊13再根據(jù)標志文件,將對應的硬件驅(qū)動模塊12插入操作系統(tǒng)內(nèi)核模塊10對硬件進行驅(qū)動。
加載模塊13中包括硬件識別模塊加載模塊131,用于加載硬件識別模塊11;驅(qū)動加載模塊132,用于加載驅(qū)動模塊12;其中,驅(qū)動加載模塊132又包括宏定義模塊1321根據(jù)需要兼容的硬件數(shù)據(jù),定義對應數(shù)量的宏;插入控制模塊1322根據(jù)宏定義,控制不同硬件驅(qū)動程序的插入過程的模塊。
硬件驅(qū)動模塊12包括有若干被編譯成獨立的模塊,如第一硬件驅(qū)動模塊、第二硬件按驅(qū)動模塊、......第N硬件驅(qū)動模塊用于給需要驅(qū)動的硬件提供驅(qū)動軟件。
硬件識別模塊11含有寄存器讀取模塊111用于識別硬件和標志文件生成模塊112用于生成標志文件。
移動終端還進一步包括刪除模塊14,用于在加載完成后,從系統(tǒng)內(nèi)核中刪除硬件識別模塊11;標志文件刪除模塊15,用于在加載完成后,刪除所述生成的標志文件。這樣做的目的是進一步釋放操作系統(tǒng)的內(nèi)核存儲空間。
如圖2所示,是硬件識別模塊11中標志文件生成模塊112的結(jié)構(gòu)圖。其中包括取得并保存當前進程的用戶空間地址范圍的模塊1121;取得內(nèi)核空間地址范圍的模塊1122;將當前的用戶空間地址范圍指向內(nèi)核空間地址范圍的模塊1123;在內(nèi)核地址空間操作所述硬件標志文件的寫入的模塊1124完成寫操作后,恢復保存的用戶空間地址范圍的模塊1125。
下面結(jié)合圖3來說明本實施例中的具體實施過程。
圖3是本實用新型實施例的Linux手機驅(qū)動程序智能加載系統(tǒng)的實施流程圖。其實施步驟如下步驟301、手機開機上電后,首先運行嵌入式Linux操作系統(tǒng),由操作系統(tǒng)初始化必要的軟硬件環(huán)境;步驟302、操作系統(tǒng)啟動完畢;步驟303、由加載模塊中的硬件識別模塊加載模塊插入硬件識別模塊;步驟304、硬件識別模塊中的寄存器讀取模塊通過讀硬件寄存器識別出特定型號的硬件;步驟305、硬件識別模塊中的標志文件生成模塊生成標志文件;步驟306、加載模塊中的硬件驅(qū)動模塊加載模塊根據(jù)不同的標志文件來插入相對應的硬件驅(qū)動模塊;步驟307、硬件驅(qū)動模塊加載成功,系統(tǒng)調(diào)用相應的硬件驅(qū)動程序模塊對硬件進行驅(qū)動;步驟308、刪除模塊從內(nèi)核中刪除硬件識別模塊以增加內(nèi)存,同時標志文件刪除模塊刪除標志文件。
本實用新型通過模塊加載方式避免了移動終端中操作系統(tǒng)存儲空間的不足,以后移動終端的硬件升級換代也只需要增加新的模塊即可,有一定的前瞻性和兼容性,便于移動終端軟件的維護。通過對傳統(tǒng)移動終端驅(qū)動程序加載方式的改進,取得了移動終端可以根據(jù)硬件不同而動態(tài)加載對應驅(qū)動程序的進步,達到了智能識別同類型器件的效果,節(jié)省了后續(xù)軟件研發(fā)成本,提高了產(chǎn)品的穩(wěn)定性、可靠性、多樣性。
在本實用新型的移動終端中,由于采用了將每個硬件驅(qū)動程序編譯成獨立的軟件模塊,克服了傳統(tǒng)移動終端操作系統(tǒng)內(nèi)核中手機存儲空間資源有限的問題,同時因為增加了硬件識別模塊來識別不同硬件后,生成標志文件上報給移動終端操作系統(tǒng),便于操作系統(tǒng)能夠根據(jù)需要加載所需的驅(qū)動程序,本移動終端使得移動終端操作系統(tǒng)不但能夠自動兼容多種同類型硬件,同時還能夠非常方便地進行擴充和升級。這樣移動終端硬件程序版本售后維護也更方便,節(jié)省人力和成本。
權(quán)利要求1.一種可智能加載硬件的移動終端,包括操作系統(tǒng)內(nèi)核模塊,其特征在于,還包括硬件識別模塊、至少一個硬件驅(qū)動模塊、加載模塊;其中,加載模塊與所述硬件識別模塊相連,讀取不同硬件的寄存器,識別出不同型號的硬件,并生成硬件標志文件;所述加載模塊還與所述硬件驅(qū)動模塊相連,根據(jù)由所述硬件識別模塊生成的硬件標志文件,將對應的硬件驅(qū)動模塊插入所述內(nèi)核模塊。
2.如權(quán)利要求1所述的移動終端,其特征在于,所述硬件識別模塊,包括寄存器讀取模塊,與標志文件生成模塊相連,讀取不同硬件的寄存器,識別出不同型號的硬件;標志文件生成模塊,與寄存器讀取模塊和操作系統(tǒng)內(nèi)核模塊相連,根據(jù)不同硬件,生成硬件標志文件。
3.如權(quán)利要求1所述的移動終端,其特征在于,所述加載模塊,包括硬件識別加載模塊,與硬件識別模塊和操作系統(tǒng)內(nèi)核模塊相連,將硬件識別模塊加載入操作系統(tǒng)內(nèi)核模塊;驅(qū)動加載模塊,與驅(qū)動模塊和操作系統(tǒng)內(nèi)核模塊相連,將驅(qū)動模塊加載入操作系統(tǒng)內(nèi)核模塊;
專利摘要本實用新型公開了一種可智能加載硬件的移動終端,包括操作系統(tǒng)內(nèi)核模塊,其特征在于,還包括硬件識別模塊、至少一個硬件驅(qū)動模塊、加載模塊;其中,加載模塊與所述硬件識別模塊相連,讀取不同硬件的寄存器,識別出不同型號的硬件,并生成硬件標志文件;所述加載模塊還與所述硬件驅(qū)動模塊相連,根據(jù)由所述硬件識別模塊生成的硬件標志文件,將對應的硬件驅(qū)動模塊插入所述內(nèi)核模塊。本終端克服了傳統(tǒng)移動終端操作系統(tǒng)中驅(qū)動程序加載的缺點,既能夠解決手機存儲空間資源有限的問題,也能夠自動兼容多種同類型硬件并存的狀況,同時能夠非常方便地進行擴充和升級。這樣移動終端程序版本售后維護也更方便,節(jié)省人力和成本。
文檔編號H04Q7/32GK2921952SQ20052013059
公開日2007年7月11日 申請日期2005年11月9日 優(yōu)先權(quán)日2005年11月9日
發(fā)明者黃泳 申請人:中興通訊股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
西青区| 通辽市| 彭水| 营口市| 兖州市| 会宁县| 阿尔山市| 扶风县| 如东县| 宜良县| 舒兰市| 双峰县| 资兴市| 东山县| 武清区| 浪卡子县| 五指山市| 丰宁| 阿城市| 元江| 玉屏| 姜堰市| 固原市| 南平市| 眉山市| 沙坪坝区| 区。| 萍乡市| 涿鹿县| 彝良县| 龙江县| 册亨县| 理塘县| 博罗县| 九龙城区| 盐山县| 乌兰察布市| 双流县| 兴隆县| 犍为县| 巴楚县|