一種車(chē)載雙系統(tǒng)裝置及其啟動(dòng)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及車(chē)載設(shè)備技術(shù)領(lǐng)域,更具體地說(shuō),涉及一種車(chē)載雙系統(tǒng)裝置及其啟動(dòng)方法。
【背景技術(shù)】
[0002]隨著智能設(shè)備的日益普及,廣大用戶(hù)對(duì)車(chē)載設(shè)備的智能化程序要求也日漸提高,而原有的單一的單片系統(tǒng)越來(lái)越難以滿(mǎn)足日益豐富的市場(chǎng)需求。同時(shí)隨著Android系統(tǒng)應(yīng)用日益廣泛,基于Android的智能設(shè)備也逐步開(kāi)始出現(xiàn)在汽車(chē)平臺(tái)上,但因Android系統(tǒng)復(fù)雜程序較高,與原有的單片機(jī)平臺(tái)相比,仍存在一些不足,為該系統(tǒng)在車(chē)載平臺(tái)的應(yīng)用帶來(lái)了一系列的困難。
[0003]現(xiàn)有技術(shù)中較常用的一種方案為:使用能滿(mǎn)足快速啟動(dòng)要求的MCU單片機(jī)對(duì)視頻轉(zhuǎn)換芯片進(jìn)行多圖層管理,將需要快速加載和響應(yīng)的功能模塊圖形畫(huà)面繪制到頂層圖層,將Android系統(tǒng)輸出圖像繪制到底層圖層,并將合成后的圖像輸出到屏幕顯示。該方案的缺點(diǎn)有:(1)MCU單片機(jī)繪制的圖形界面效果較差;(2)兩路圖像合成后輸出質(zhì)量依賴(lài)于視頻轉(zhuǎn)換芯片的處理能力,可能導(dǎo)致顯示質(zhì)量降低;(3)需要增加視頻轉(zhuǎn)換芯片,硬件成本較高;
[4]觸摸屏數(shù)據(jù)需要分別發(fā)送給Android平臺(tái)和MCU單片機(jī),增加系統(tǒng)復(fù)雜性。
[0004]現(xiàn)有技術(shù)中較常用的另一種方案為:在文件系統(tǒng)中開(kāi)辟一個(gè)鏡像備份區(qū),在系統(tǒng)初次啟動(dòng)時(shí)將系統(tǒng)資源及全部配置參數(shù)復(fù)制到鏡像備份區(qū),在之后的系統(tǒng)啟動(dòng)過(guò)程中則不需再次執(zhí)行系統(tǒng)資源配置等過(guò)程,而是在直接將鏡像備份區(qū)的備份文件直接載入到運(yùn)行內(nèi)存中,載入完成即可進(jìn)入正常工作狀態(tài)。該方案的缺點(diǎn)有:該方案在啟動(dòng)中沒(méi)有初始化系統(tǒng)配置參數(shù)的過(guò)程,直接使用歷史數(shù)據(jù),在個(gè)別情況下可能因工作環(huán)境變化,引起系統(tǒng)配置參數(shù)變化,導(dǎo)致系統(tǒng)無(wú)法啟動(dòng)或出現(xiàn)掛死、重啟等現(xiàn)象,難以達(dá)到對(duì)系統(tǒng)穩(wěn)定性的要求。
【發(fā)明內(nèi)容】
[0005]本發(fā)明要解決的技術(shù)問(wèn)題在于,針對(duì)現(xiàn)有技術(shù)中系統(tǒng)處理能力差,穩(wěn)定性低等缺陷,提供一種車(chē)載雙系統(tǒng)裝置及其啟動(dòng)方法。
[0006]本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案是:
[0007]構(gòu)造一種車(chē)載雙系統(tǒng)裝置,包括:
[0008]Linux系統(tǒng),其連接至車(chē)輛的CAN系統(tǒng);其中,所述Linux系統(tǒng)包括Linux內(nèi)核及Linux子系統(tǒng);所述Linux內(nèi)核用于管理電源及多個(gè)硬件驅(qū)動(dòng)程序;所述Linux子系統(tǒng)用于加載QT顯示框架的支持庫(kù),并對(duì)所述QT顯示框架進(jìn)行管理;
[0009]Android系統(tǒng),其與所述Linux系統(tǒng)對(duì)接,所述Android系統(tǒng)用于驅(qū)動(dòng)多個(gè)應(yīng)用程序,并與所述QT顯示框架的資源共用。
[0010]在本發(fā)明所述的車(chē)載雙系統(tǒng)裝置中,所述Linux子系統(tǒng)還用于控制應(yīng)用程序的交互頁(yè)面,并劃分獨(dú)立內(nèi)存區(qū)及獨(dú)立顯存區(qū)以管理所述交互頁(yè)面。
[0011]在本發(fā)明所述的車(chē)載雙系統(tǒng)裝置中,所述多個(gè)硬件驅(qū)動(dòng)程序包括顯示驅(qū)動(dòng)程序、內(nèi)存驅(qū)動(dòng)程序、音頻驅(qū)動(dòng)程序、觸摸屏驅(qū)動(dòng)程序、按鍵驅(qū)動(dòng)程序、USB驅(qū)動(dòng)程序、Binder驅(qū)動(dòng)程序、WIFI驅(qū)動(dòng)程序以及網(wǎng)絡(luò)驅(qū)動(dòng)程序。
[0012]在本發(fā)明所述的車(chē)載雙系統(tǒng)裝置中,所述多個(gè)應(yīng)用程序包括收音機(jī)、USB媒體、網(wǎng)絡(luò)媒體、天氣、新聞、系統(tǒng)設(shè)置、車(chē)身控制、語(yǔ)音交互、導(dǎo)航、數(shù)據(jù)同步服務(wù)以及網(wǎng)絡(luò)服務(wù)。
[0013]在本發(fā)明所述的車(chē)載雙系統(tǒng)裝置中,所述Android系統(tǒng)的系統(tǒng)架構(gòu)層包括任務(wù)管理器、窗口管理器、內(nèi)容提供者、頁(yè)面構(gòu)建器、通知管理器、程序管理器、位置管理器、資源管理器、電話(huà)管理器以及XMPP服務(wù)。
[0014]另一方面,提供一種車(chē)載雙系統(tǒng)裝置的啟動(dòng)方法,采用如上所述的車(chē)載雙系統(tǒng)裝置,包括:
[0015]啟動(dòng)Linux內(nèi)核;
[0016]加載QT顯示框架的支持庫(kù)以使所述QT顯示框架獨(dú)立運(yùn)行;
[0017]所述QT顯示框架加載完成后,啟動(dòng)所述Android系統(tǒng);其中,所述Android系統(tǒng)的啟動(dòng)過(guò)程中與所述QT顯示框架的資源共用。
[0018]在本發(fā)明所述的啟動(dòng)方法中,還包括:
[0019]控制應(yīng)用程序的交互頁(yè)面,并劃分獨(dú)立內(nèi)存區(qū)及獨(dú)立顯存區(qū)以管理所述交互頁(yè)面。
[0020]在本發(fā)明所述的啟動(dòng)方法中,所述多個(gè)硬件驅(qū)動(dòng)程序包括顯示驅(qū)動(dòng)程序、內(nèi)存驅(qū)動(dòng)程序、音頻驅(qū)動(dòng)程序、觸摸屏驅(qū)動(dòng)程序、按鍵驅(qū)動(dòng)程序、USB驅(qū)動(dòng)程序、Binder驅(qū)動(dòng)程序、WIFI驅(qū)動(dòng)程序以及網(wǎng)絡(luò)驅(qū)動(dòng)程序。
[0021]在本發(fā)明所述的啟動(dòng)方法中,所述多個(gè)應(yīng)用程序包括收音機(jī)、USB媒體、網(wǎng)絡(luò)媒體、天氣、新聞、系統(tǒng)設(shè)置、車(chē)身控制、語(yǔ)音交互、導(dǎo)航、數(shù)據(jù)同步服務(wù)以及網(wǎng)絡(luò)服務(wù)。
[0022]在本發(fā)明所述的啟動(dòng)方法中,所述Android系統(tǒng)的系統(tǒng)架構(gòu)層包括任務(wù)管理器、窗口管理器、內(nèi)容提供者、頁(yè)面構(gòu)建器、通知管理器、程序管理器、位置管理器、資源管理器、電話(huà)管理器以及XMPP服務(wù)。
[0023]上述公開(kāi)的一種車(chē)載雙系統(tǒng)裝置及其啟動(dòng)方法具有以下有益效果:通過(guò)預(yù)加載小系統(tǒng)實(shí)現(xiàn)部分功能的快速響應(yīng),通過(guò)共用內(nèi)核實(shí)現(xiàn)雙系統(tǒng)的資源共享,從而實(shí)現(xiàn)了系統(tǒng)重要功能的快速響應(yīng),為重要功能劃出了獨(dú)立運(yùn)行空間,不易受到其他任務(wù)影響,保證該任務(wù)的穩(wěn)定可靠。
【附圖說(shuō)明】
[0024]圖1為本發(fā)明提供的一種車(chē)載雙系統(tǒng)裝置框圖;
[0025]圖2為本發(fā)明提供的一種車(chē)載雙系統(tǒng)裝置的啟動(dòng)方法流程圖。
【具體實(shí)施方式】
[0026]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0027]本發(fā)明提供一種車(chē)載雙系統(tǒng)裝置及其啟動(dòng)方法,涉及一種提高系統(tǒng)啟動(dòng)速度縮短開(kāi)機(jī)啟動(dòng)時(shí)等待時(shí)間的方法,實(shí)現(xiàn)系統(tǒng)部分功能模塊的快速加載和快速響應(yīng),以滿(mǎn)足車(chē)載系統(tǒng)對(duì)啟動(dòng)響應(yīng)時(shí)間的要求;相比于其他同行業(yè)設(shè)備的對(duì)應(yīng)策略,本方案具有更好的用戶(hù)體驗(yàn)和成本優(yōu)勢(shì):通過(guò)軟件在系統(tǒng)內(nèi)核層之上構(gòu)建linux+Android雙系統(tǒng),并通過(guò)Linux小系統(tǒng)加載需要快速響應(yīng)的部分模塊,再啟動(dòng)完整的Android系統(tǒng),優(yōu)先啟動(dòng)部分響應(yīng)速度較快;因在同一套硬件平臺(tái)上先后加載雙系統(tǒng),雙系統(tǒng)之間能做到平滑過(guò)渡,相對(duì)于其他方案具有更好的用戶(hù)體驗(yàn);因該方案完全由軟件實(shí)現(xiàn),不需要增加外部視頻處理等芯片,相比其他方案更具有硬件成本優(yōu)勢(shì)。
[0028]參見(jiàn)圖1,圖1為本發(fā)明提供的一種車(chē)載雙系統(tǒng)裝置100框圖,該車(chē)載雙系統(tǒng)裝置100包括:
[0029]Linux系統(tǒng)1,其連接至車(chē)輛的CAN系統(tǒng);其中,所述Linux系統(tǒng)1包括Linux內(nèi)核11及Linux子系統(tǒng)12;所述Linux內(nèi)核11用于管理電源及多個(gè)硬件驅(qū)動(dòng)程序;所述Linux子系統(tǒng)12用于加載QT顯示框架(Qt是一個(gè)1991年由奇趣科技開(kāi)發(fā)的跨平臺(tái)C++圖形用戶(hù)界面應(yīng)用程序開(kāi)發(fā)框架。它既可以開(kāi)發(fā)GUI程序,也可用于開(kāi)發(fā)非GUI程序,比如控制臺(tái)工具和服務(wù)器。Qt是面向?qū)ο蟮目蚣?,使用特殊的代碼生成擴(kuò)展(稱(chēng)為元對(duì)象編譯器(Meta ObjectCompiler,moc))以及一些宏,易于擴(kuò)展,允許組件編程。)的支持庫(kù),并對(duì)所述QT顯示框架進(jìn)行管理;所述Linux子系統(tǒng)12還用于控制應(yīng)用程序的交互頁(yè)面,并劃分獨(dú)立內(nèi)存區(qū)及獨(dú)立顯存區(qū)以管理所述交互頁(yè)面。
[°03°] Android系統(tǒng)2,其與所述Linux系統(tǒng)1對(duì)接,所述Android系統(tǒng)2用于驅(qū)動(dòng)多個(gè)應(yīng)用程序,并與所述QT顯示框架的資源共用。