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

Mtk編譯環(huán)境輔助工具集系統(tǒng)的制作方法

文檔序號(hào):6557178閱讀:295來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):Mtk編譯環(huán)境輔助工具集系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及MTK相關(guān)的編譯環(huán)境下的輔助工具集系統(tǒng),尤其涉及MTK編譯環(huán)境輔助工具集系統(tǒng),通過(guò)該系統(tǒng)可以提高個(gè)人單機(jī)和多人共用服務(wù)器編譯的工作效率以及操作簡(jiǎn)易度。
背景技術(shù)
隨著電子芯片技術(shù)的長(zhǎng)足發(fā)展,手機(jī)行業(yè)也是日新月異,MTK就是在這種環(huán)境下以其低廉的成本、快速的設(shè)計(jì)方法與實(shí)用的技術(shù)方案異軍突起,占領(lǐng)了相當(dāng)大的市場(chǎng)份額,尤其是中低端手機(jī),因此,受到很多方案公司的青睞。如同其它任何一家需要軟件系統(tǒng)研發(fā)的公司一樣,均是需要搭建編譯環(huán)境,MTK使用peri + arm + incredibuild進(jìn)行編譯,并且很多公司使用的是通過(guò)遠(yuǎn)程服務(wù)器多個(gè)用戶(hù)同時(shí)進(jìn)行的方法。由于incredibuild的使用是按照機(jī)器互斥進(jìn)行的,即一臺(tái)機(jī)器同一個(gè)時(shí)間只能執(zhí)行一個(gè)incredibuild程序,而 且一旦一臺(tái)主機(jī)多個(gè)項(xiàng)目同時(shí)編譯時(shí),會(huì)出現(xiàn)競(jìng)爭(zhēng)資源的情況,編譯的效率會(huì)非常的慢,因此,無(wú)論是單機(jī)使用還是服務(wù)器使用,都會(huì)存在此效率問(wèn)題。另外,在編譯出現(xiàn)錯(cuò)誤的時(shí)候,要花較長(zhǎng)的時(shí)間去尋找報(bào)錯(cuò)具體位置,尤其是有排隊(duì)等待編譯的項(xiàng)目跟上后會(huì)清理掉incredibuild之前的信息,有的版本會(huì)出現(xiàn)log信息儲(chǔ)存在相應(yīng)文件夾下的情況,也很難快速定位錯(cuò)誤,而且即使可以確定錯(cuò)誤文件的時(shí)候,每次都要手動(dòng)打開(kāi)此文件也是很麻煩的事情。

發(fā)明內(nèi)容
為了解決MTK平臺(tái)現(xiàn)有的諸多效率不高的問(wèn)題,本發(fā)明的發(fā)明目的在于通過(guò)對(duì)目前MTK編譯生成體系的研究,利用高級(jí)編程語(yǔ)言編寫(xiě)出具有輔助性質(zhì)的工具集系統(tǒng),該系統(tǒng)可以有效地進(jìn)行當(dāng)前操作系統(tǒng)中是否存在MTK的項(xiàng)目正在進(jìn)行編譯,避免出現(xiàn)重復(fù)同時(shí)共用資源導(dǎo)致效率底下的問(wèn)題。當(dāng)出現(xiàn)編譯或者鏈接錯(cuò)誤的時(shí)候可以通過(guò)輸入命令或者自動(dòng)彈出錯(cuò)誤信息,而不需要總是想方設(shè)法的去查找錯(cuò)誤信息,本發(fā)明力求做到結(jié)構(gòu)更加模塊化,可以不斷地根據(jù)需求進(jìn)行方便的刪減或添加功能。本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案是。MTK編譯環(huán)境輔助工具集系統(tǒng),使用高級(jí)標(biāo)準(zhǔn)c語(yǔ)言編寫(xiě),通過(guò)在cmd下鍵入相應(yīng)的命令完成各種操作,所具備的功能如下
I、程序運(yùn)行時(shí)先對(duì)當(dāng)前系統(tǒng)是否存在正在編譯的程序進(jìn)行判斷,如果判斷出存在正在編譯的工程,那么將會(huì)等待該工程編譯完成后再進(jìn)行本工程的運(yùn)行,具體的判定方法如下
A、首先檢查當(dāng)前工程的make2.pi下$disable_ib的值,如果該值為I的話,那么可以不去做后面的檢查直接編譯,如果為O那么需要進(jìn)行下面的工作;
B、軟件系統(tǒng)工作時(shí)會(huì)設(shè)置一個(gè)全局型的互斥量,當(dāng)另外的工程啟動(dòng)其輔助工具系統(tǒng)時(shí)會(huì)首先檢測(cè)該全局互斥量,如果存在將wait住,直到軟件系統(tǒng)運(yùn)行結(jié)束將該全局互斥量釋放掉后方可運(yùn)行;
C、如果未檢測(cè)到上述的全局互斥量,那么有兩種可能性,一個(gè)是沒(méi)有其它的工程在編譯,另一個(gè)是其它工程未使用該軟件系統(tǒng),保險(xiǎn)起見(jiàn)將使用系統(tǒng)枚舉的方法來(lái)識(shí)別。通過(guò)枚舉進(jìn)程查找peri. exe,make. exe,找到后通過(guò)查詢(xún)模塊的信息找到make, exe所在的工程位置;
D、通過(guò)找到的工程位置查找make2.pi下的$disable_ib的值,如果為I,那么說(shuō)明當(dāng)前的工程不需要使用分布式編譯,因此可以繼續(xù)執(zhí)行本項(xiàng)目的編譯。2、該軟件系統(tǒng)可以通過(guò)輸入命令智能的找到編譯或者鏈接錯(cuò)誤并且自動(dòng)打開(kāi)。由于MTK的工程很多文件和文件夾是通過(guò)make和peri文件自動(dòng)生成的,經(jīng)過(guò)分析,build的文件和文件夾的生成方式都是放在make文件里的相關(guān)變量中,因此要根據(jù)make文件里面的定義來(lái)進(jìn)行找到log文件夾,然后對(duì)每個(gè)后綴名為.log的文件進(jìn)行分析,由于很多軟 件base會(huì)生成多層文件目錄結(jié)構(gòu),因此要進(jìn)行遞歸遍歷分析判斷,查找錯(cuò)誤的依據(jù)主要是找”Error: ”這個(gè)關(guān)鍵字,只要找到這個(gè)說(shuō)明有錯(cuò)誤產(chǎn)生,因此就可以把當(dāng)前的文件打開(kāi),這樣就完成了對(duì)于出錯(cuò)文件的識(shí)別,省去了很多麻煩,另外,可以通過(guò)程序設(shè)置在編譯完成后自動(dòng)找到錯(cuò)誤彈出,這樣工作效率將會(huì)進(jìn)一步的提高。3、該軟件系統(tǒng)設(shè)置了針對(duì)于使用遠(yuǎn)程桌面服務(wù)器進(jìn)行內(nèi)外工作環(huán)境隔離而使bin檔的燒錄需要經(jīng)過(guò)中轉(zhuǎn)站傳輸才能使用的問(wèn)題的解決方案,同樣讀出當(dāng)前工程的名字如VHH_Q1801_D01,然后對(duì)于時(shí)間進(jìn)行記錄,然后通過(guò)時(shí)間比較找到最新生成的bin檔(讀出bin檔的修改時(shí)間),然后將工程名字與時(shí)間組合,如2011-5-16 17:51分,那么組合出的文件夾名字為VHH_Q1801_D01_201105161751,該文件夾會(huì)生成在temp文件夾下,然后將bin檔(考慮到NOR Flash和Nand Flash,以及是否usb下載的情況),然后將該文件夾發(fā)送到指定的可以使用的服務(wù)器上,這樣就完成了自動(dòng)傳輸?shù)墓ぷ鳌H缓笤诒緳C(jī)直接找到該文件夾就可以正常下載。這樣節(jié)省了對(duì)于bin檔燒錄的中轉(zhuǎn)時(shí)間,效率進(jìn)一步提高。4、該軟件系統(tǒng)設(shè)置了對(duì)于使用SVN進(jìn)行代碼管理的遷移維護(hù)功能,如果服務(wù)器進(jìn)行切換,很多項(xiàng)目原先的SVN無(wú)法正常使用,該問(wèn)題如果是在多人參與的項(xiàng)目中將非常明顯,大家只能重新拉一遍代碼再整合,費(fèi)時(shí)費(fèi)力,而且均是無(wú)用功,該軟件通過(guò)設(shè)定好服務(wù)器的ip和端口,對(duì)于svn中的entries文件進(jìn)行屬性處理,然后替換舊服務(wù)器ip和端口為新服務(wù)器的,然后再恢復(fù)文件屬性,在較短的時(shí)間內(nèi)可以智能的完成代碼同步到新的SVN服務(wù)器,這樣就可以繼續(xù)提交代碼而不需要擔(dān)心重新做一次工作了。5、該軟件系統(tǒng)設(shè)計(jì)為主要函數(shù)功能封裝入dll文件中,提供好模塊接口,方便其它工具需要的時(shí)候調(diào)用,并且這樣新加功能模塊也更加簡(jiǎn)單,后續(xù)的功能添加以此為基礎(chǔ)順次搭建即可。該軟件系統(tǒng)對(duì)于新舊服務(wù)器ip和端口等系統(tǒng)配置文件是以注冊(cè)表的形式存儲(chǔ)的,通過(guò)輸入相應(yīng)的命令可以進(jìn)行讀取和改寫(xiě)。該軟件系統(tǒng)使用命令行形式進(jìn)行操作,具體的形式如下 ibutool. exe [參數(shù) I][值 I][值 2]
其中目前支持的參數(shù)和值的對(duì)應(yīng)關(guān)系如下
[-help] or -顯示幫助信息
[-Cs]-檢查是否可以直接運(yùn)行,并設(shè)置全局互斥量[-log] or [-1]-查找錯(cuò)誤 or [_t] [num]-將bin檔發(fā)送到num號(hào)服務(wù)器 [ip] [port]-將新服務(wù)器設(shè)置為 ip port [ip] [port]-將舊服務(wù)器設(shè)置為 ip port [num]-查找錯(cuò)誤并自動(dòng)將bin檔發(fā)送到num號(hào)服務(wù)器
當(dāng)后期編碼和思路成熟時(shí),可以考慮直接加入Perl腳本對(duì)上述進(jìn)行再次實(shí)現(xiàn)和開(kāi)發(fā)。
權(quán)利要求
1.MTK編譯環(huán)境輔助工具集系統(tǒng),利用高級(jí)語(yǔ)言標(biāo)準(zhǔn)C語(yǔ)言編寫(xiě),通過(guò)在cmd下鍵入相應(yīng)的命令完成各種操作,其特征在干所述的程序運(yùn)行時(shí)先對(duì)當(dāng)前系統(tǒng)是否存在正在編譯的程序進(jìn)行判斷,如果判斷出存在正在編譯的工程,那么將會(huì)等待該工程編譯完成后再進(jìn)行本工程的運(yùn)行,具體的判定方法如下A、首先檢查當(dāng)前工程的make2.pi下$disable_ib的值,如果該值為I的話,那么可以不去做后面的檢查直接編譯,如果為O那么需要進(jìn)行下面的工作;B、軟件系統(tǒng)工作時(shí)會(huì)設(shè)置ー個(gè)全局型的互斥量,當(dāng)另外的工程啟動(dòng)其輔助工具系統(tǒng)時(shí)會(huì)首先檢測(cè)該全局互斥量,如果存在將wait住,直到軟件系統(tǒng)運(yùn)行結(jié)束將該全局互斥量釋放掉后方可運(yùn)行;C、如果未檢測(cè)到上述的全局互斥量,那么有兩種可能性,一個(gè)是沒(méi)有其它的工程在編譯,另ー個(gè)是其它工程未使用該軟件系統(tǒng),保險(xiǎn)起見(jiàn)將使用系統(tǒng)枚舉的方法來(lái)識(shí)別,通過(guò)枚舉進(jìn)程查找peri. exe,make. exe,找到后通過(guò)查詢(xún)模塊的信息找到make, exe所在的工程位置;D、通過(guò)找到的工程位置查找make2.pi下的$disable_ib的值,如果為I,那么說(shuō)明當(dāng)前的工程不需要使用分布式編譯,因此可以繼續(xù)執(zhí)行本項(xiàng)目的編譯。
2.根據(jù)權(quán)利要求I所述的MTK編譯環(huán)境輔助工具集系統(tǒng),其特征在于所述的該軟件系統(tǒng)可以通過(guò)輸入命令智能的找到編譯或者鏈接錯(cuò)誤并且自動(dòng)打開(kāi),由于MTK的工程很多文件和文件夾是通過(guò)make和peri文件自動(dòng)生成的,經(jīng)過(guò)分析,build的文件和文件夾的生成方式都是放在make文件里的相關(guān)變量中,因此要根據(jù)make文件里面的定義來(lái)進(jìn)行找到log文件夾,然后對(duì)每個(gè)后綴名為.log的文件進(jìn)行分析可以準(zhǔn)確的識(shí)別出是否存在可能導(dǎo)致編譯沖突的工程,如果存在,會(huì)合理的等待這些工程編譯完成后,方會(huì)繼續(xù)進(jìn)行。
3.根據(jù)權(quán)利要求I所述的MTK編譯環(huán)境輔助工具集系統(tǒng),其特征在于所述的通過(guò)編程可以準(zhǔn)確的智能的找到工程編譯結(jié)果的位置,并且可以通過(guò)輸入命令自動(dòng)打開(kāi)編譯出錯(cuò)或者鏈接出錯(cuò)的log文件。
4.根據(jù)權(quán)利要求I所述的MTK編譯環(huán)境輔助工具集系統(tǒng),其特征在于所述的針對(duì)很多通過(guò)中轉(zhuǎn)服務(wù)器的隔離機(jī)制,提供了一種自動(dòng)打包到指定服務(wù)器文件夾下的方法,不需要手動(dòng)中轉(zhuǎn)。
5.根據(jù)權(quán)利要求I所述的MTK編譯環(huán)境輔助工具集系統(tǒng),其特征在于所述的針對(duì)SVN服務(wù)器的切換遷移,通過(guò)輸入命令就可以將老服務(wù)器上的工程自動(dòng)的切換到新服務(wù)器上,這樣可以繼續(xù)使用。
6.根據(jù)權(quán)利要求I所述的MTK編譯環(huán)境輔助工具集系統(tǒng),其特征在于所述的將主要模塊封裝到DLL中,便于移植和其它體系的調(diào)用。
全文摘要
本發(fā)明開(kāi)發(fā)了MTK編譯環(huán)境輔助工具集系統(tǒng),通過(guò)該系統(tǒng)可以提高個(gè)人單機(jī)和多人共用服務(wù)器編譯的工作效率以及操作簡(jiǎn)易度。通過(guò)對(duì)目前MTK編譯生成體系的研究,利用高級(jí)編程語(yǔ)言編寫(xiě)出具有輔助性質(zhì)的工具集系統(tǒng),可以有效地進(jìn)行當(dāng)前操作系統(tǒng)中是否存在MTK的項(xiàng)目正在進(jìn)行編譯,避免出現(xiàn)重復(fù)同時(shí)共用資源導(dǎo)致效率底下的問(wèn)題。當(dāng)出現(xiàn)編譯或者鏈接錯(cuò)誤的時(shí)候可以通過(guò)輸入命令或者自動(dòng)彈出錯(cuò)誤信息,而不需要總是想方設(shè)法的去查找錯(cuò)誤信息,本發(fā)明力求做到結(jié)構(gòu)更加模塊化,可以不斷地根據(jù)需求進(jìn)行方便的刪減或添加功能。
文檔編號(hào)G06F9/45GK102831003SQ20111015809
公開(kāi)日2012年12月19日 申請(qǐng)日期2011年6月14日 優(yōu)先權(quán)日2011年6月14日
發(fā)明者劉震, 蔣建平, 倪愛(ài)銀 申請(qǐng)人:上海三旗通信科技股份有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
涡阳县| 库尔勒市| 栖霞市| 来凤县| 宁化县| 朝阳县| 洛南县| 高尔夫| 都匀市| 沅江市| 张家川| 柳州市| 绩溪县| 望谟县| 石城县| 石柱| 安徽省| 嘉禾县| 托里县| 宽甸| 措勤县| 博客| 白水县| 红桥区| 常熟市| 扶余县| 闽侯县| 冀州市| 报价| 白水县| 垫江县| 崇仁县| 宁远县| 南皮县| 洛扎县| 西城区| 永宁县| 叶城县| 铁岭县| 什邡市| 长子县|