亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

文件處理方法及裝置的制作方法

文檔序號:7869145閱讀:205來源:國知局
專利名稱:文件處理方法及裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及云計(jì)算技術(shù)領(lǐng)域,特別是涉及一種文件處理方法及裝置。
背景技術(shù)
所謂云計(jì)算為基于互聯(lián)網(wǎng)的相關(guān)服務(wù)的增加、使用和交付模式,其通常涉及通過互聯(lián)網(wǎng)來提供動(dòng)態(tài)易擴(kuò)展且通常為虛擬化的環(huán)境。其中,云是網(wǎng)絡(luò)或互聯(lián)網(wǎng)的一種比喻說法;狹義云計(jì)算為IT基礎(chǔ)設(shè)施的交互和使用模式,其指通過網(wǎng)絡(luò)以按需、易擴(kuò)展的方式來獲得所需的資源;而廣義云計(jì)算為服務(wù)的交付和使用模式,其指通過網(wǎng)絡(luò)以按需、易擴(kuò)展的方式獲得所需的服務(wù),其中,該服務(wù)為可以是與IT、軟件或互聯(lián)網(wǎng)相關(guān)的,也可以是其他服務(wù)。可見,云計(jì)算的出現(xiàn)意味著計(jì)算能力也可以作為一種商品通過互聯(lián)網(wǎng)進(jìn)行流通。在傳統(tǒng)的云計(jì)算框架中,由于要處理海量的來自云端之外的數(shù)據(jù)請求,單純依靠單一云處理節(jié)點(diǎn),無法在短時(shí)間內(nèi)高效完成,因此,需要依靠云系統(tǒng)內(nèi)部的多個(gè)云處理節(jié)點(diǎn),其中,在實(shí)際應(yīng)用中該云處理節(jié)點(diǎn)可以為物理機(jī)或設(shè)置于物理機(jī)中的虛擬機(jī)。而更進(jìn)一步的,為了具有較高的計(jì)算效率,現(xiàn)有云計(jì)算框架中的云處理節(jié)點(diǎn)的通常以多核CPU方式進(jìn)行計(jì)算處理,因此,這就要求運(yùn)行在多個(gè)核上的程序必須自身支持并行化,才可以更好的發(fā)揮云計(jì)算框架的計(jì)算性能。但是,對于利用c、c++和java等并不原生支持并行化的語言所編寫的二進(jìn)制文件而言,其將無法充分利用云處理節(jié)點(diǎn)的多核性能,這無疑是一種嚴(yán)重的資源浪費(fèi)。

發(fā)明內(nèi)容
為解決上述技術(shù)問題,本發(fā)明實(shí)施例提供了一種文件處理方法及裝置,以實(shí)現(xiàn)非并行化二進(jìn)制文件的并行化處理,進(jìn)而提高云處理節(jié)點(diǎn)的多核性能的利用率,技術(shù)方案如下—方面,本發(fā)明實(shí)施例提供了一種文件處理方法,包括在預(yù)設(shè)執(zhí)行環(huán)境中啟動(dòng)非并行化的二進(jìn)制文件;確定所述二進(jìn)制文件中符合分治語義的第一代碼部分,其中,所述第一代碼部分為所述二進(jìn)制文件中代碼段的至少一部分,符合分治語義的代碼部分對應(yīng)的任務(wù)支持并行化處理;將所述第一代碼部分的代碼進(jìn)行格式轉(zhuǎn)換,以形成并行化代碼部分;將所述并行化代碼部分按照并行化處理方式處理,并將第二代碼部分按照串行化處理方式處理,其中,所述第二代碼部分為所述二進(jìn)制文件中第一代碼部分以外的代碼部分;得到所述并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果以及所述第二代碼部分對應(yīng)的一處理結(jié)果;將所述并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果進(jìn)行合并。其中,將所述并行化代碼部分按照并行化處理方式處理,包括
調(diào)用運(yùn)行時(shí)庫,以獲取所述并行化代碼部分運(yùn)行時(shí)所需的第一庫文件;通過應(yīng)用程序二進(jìn)制接口 ABI加載關(guān)聯(lián)有所述第一庫文件的并行化代碼部分,并將關(guān)聯(lián)有所述第一庫文件的并行化代碼部分中的至少兩個(gè)可并行子部分運(yùn)行于CPU的至少兩個(gè)核上。其中,將第二代碼部分按照串行化處理方式處理,包括調(diào)用運(yùn)行時(shí)庫,以獲取第二代碼部分運(yùn)行時(shí)所需的第二庫文件;通過應(yīng)用程序二進(jìn)制接口 ABI加載關(guān)聯(lián)有所述第二庫文件的第二代碼部分,并將關(guān)聯(lián)有所述第二庫文件的第二代碼部分運(yùn)行于CPU的一個(gè)核上。另一方面,本發(fā)明實(shí)施例還提供一種文件處理裝置,包括啟動(dòng)模塊,用于在預(yù)設(shè)執(zhí)行環(huán)境中啟動(dòng)非并行化的二進(jìn)制文件;分治代碼確定模塊,用于確定所述二進(jìn)制文件中符合分治語義的第一代碼部分,其中,所述第一代碼部分為所述二進(jìn)制文件中代碼段的至少一部分,符合分治語義的代碼部分對應(yīng)的任務(wù)支持并行化處理;格式轉(zhuǎn)換模塊,用于將所述第一代碼部分的代碼進(jìn)行格式轉(zhuǎn)換,以形成并行化代碼部分;并行代碼處理模塊,用于將所述并行化代碼部分按照并行化處理方式處理;串行代碼處理模塊,用于將第二代碼部分按照串行化處理方式處理,其中,所述第二代碼部分為所述二進(jìn)制文件中第一代碼部分以外的代碼部分;結(jié)果獲取模塊,用于得到所述并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果以及所述第二代碼部分對應(yīng)的一處理結(jié)果;結(jié)果處理模塊,用于將所述并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果進(jìn)行合并。其中,所述并行代碼處理模塊,具體用于調(diào)用運(yùn)行時(shí)庫,以獲取所述并行化代碼部分運(yùn)行時(shí)所需的第一庫文件;通過應(yīng)用程序二進(jìn)制接口 ABI加載關(guān)聯(lián)有所述第一庫文件的并行化代碼部分,并將關(guān)聯(lián)有所述第一庫文件的并行化代碼部分中的至少兩個(gè)可并行子部分運(yùn)行于CPU的至少兩個(gè)核上。其中,所述串行代碼處理模塊,具體用于調(diào)用運(yùn)行時(shí)庫,以獲取第二代碼部分運(yùn)行時(shí)所需的第二庫文件;通過應(yīng)用程序二進(jìn)制接口 ABI加載關(guān)聯(lián)有所述第二庫文件的第二代碼部分,并將關(guān)聯(lián)有所述第二庫文件的第二代碼部分運(yùn)行于CPU的一個(gè)核上。本發(fā)明實(shí)施例所提供的技術(shù)方案,在預(yù)設(shè)執(zhí)行環(huán)境中啟動(dòng)非并行化的二進(jìn)制文件;確定該二進(jìn)制文件中符合分治語義的第一代碼部分;將該第一代碼部分的代碼進(jìn)行格式轉(zhuǎn)換,以形成并行化代碼部分;將該并行化代碼部分按照并行化處理方式處理,并將第二代碼部分按照串行化處理方式處理;得到該并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果以及該第二代碼部分對應(yīng)的一處理結(jié)果;將該并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果進(jìn)行合并,以此實(shí)現(xiàn)了非并行化二進(jìn)制文件的并行化處理,進(jìn)而提高云處理節(jié)點(diǎn)的多核性能的利用率。


為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單的介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明實(shí)施例所提供的一種文件處理方法的流程圖;圖2為本發(fā)明實(shí)施例所提供的一種文件處理裝置的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。為了實(shí)現(xiàn)非并行化二進(jìn)制文件的并行化處理,進(jìn)而提高云處理節(jié)點(diǎn)的多核性能的利用率,本發(fā)明實(shí)施例提供了 一種文件處理處理及裝置。下面首先對本發(fā)明實(shí)施例所提供的一種文件處理方法進(jìn)行介紹。需要說明的是,本發(fā)明實(shí)施例所提供的文件處理方法適用于云系統(tǒng)中,該云系統(tǒng)中包含至少一云處理節(jié)點(diǎn),而每一云處理節(jié)點(diǎn)具有多核CPU,即具有多核計(jì)算性能。在實(shí)際應(yīng)用中,該云處理節(jié)點(diǎn)可以為物理機(jī)或設(shè)置于物理機(jī)中的虛擬機(jī),這都是合理的。如圖1所示,一種文件處理方法,可以包括S101,在預(yù)設(shè)執(zhí)行環(huán)境中啟動(dòng)非并行化的二進(jìn)制文件;其中,所謂非并行化的二進(jìn)制文件為利用c、c++和java等并不原生支持并行化的語言所編寫的文件。對于運(yùn)行一個(gè)非并行化的二進(jìn)制文件而言,需要在預(yù)設(shè)的執(zhí)行環(huán)境中啟動(dòng)該二進(jìn)制文件,進(jìn)而在啟動(dòng)后執(zhí)行后續(xù)的處理步驟。其中,在預(yù)設(shè)執(zhí)行環(huán)境中啟動(dòng)非并行化的二進(jìn)制文件的具體實(shí)現(xiàn)方式可以為在命令行下啟動(dòng)該二進(jìn)制文件對應(yīng)的程序,例如一個(gè)二進(jìn)制文件file默認(rèn)的啟動(dòng)方式為是./file,其啟動(dòng)方式則是runtime, /file,該runtime為執(zhí)行二進(jìn)制文件的環(huán)境??梢岳斫獾氖?,上述在預(yù)設(shè)執(zhí)行環(huán)境中啟動(dòng)非并行化的二進(jìn)制文件的具體實(shí)現(xiàn)方式僅僅作為一種示例,并不應(yīng)該構(gòu)成對本發(fā)明實(shí)施例的限定。S102,確定該二進(jìn)制文件中符合分治語義的第一代碼部分;其中,該第一代碼部分為該二進(jìn)制文件中代碼段的至少一部分,符合分治語義的代碼部分對應(yīng)的任務(wù)支持并行化處理。其中,分治的原理為將一系列大的問題,分成小的子問題,把每個(gè)子問題解決之后,再作一個(gè)合并,以得出單獨(dú)計(jì)算總的問題無法得出的結(jié)果。在預(yù)設(shè)執(zhí)行環(huán)境中啟動(dòng)該非并行化的二進(jìn)制文件后,可以確定該二進(jìn)制文件中符合分治語義的第一代碼部分,進(jìn)而對該第一代碼部分進(jìn)行后續(xù)的并行化處理。S103,將該第一代碼部分的代碼進(jìn)行格式轉(zhuǎn)換,以形成并行化代碼部分;在確定出該非并行化的二進(jìn)制文件中符合分治語義的第一代碼部分后,可以將該第一代碼部分的代碼進(jìn)行格式轉(zhuǎn)換,以形成并行化代碼部分。S104,將該并行化代碼部分按照并行化處理方式處理;S105,將第二代碼部分按照串行化處理方式處理;
其中,該第二代碼部分為該二進(jìn)制文件中第一代碼部分以外的代碼部分。在確定出該非并行化的二進(jìn)制文件對應(yīng)的并行化代碼部分和作為非并行化代碼部分的第二代碼部分后,可以將該并行化代碼部分按照并行化處理方式處理,即通過CPU的至少兩個(gè)核處理,而將第二代碼部分按照串行化處理方式處理,即通過CPU的一個(gè)核處理,以此提高該二進(jìn)制文件的執(zhí)行效率和提高云處理節(jié)點(diǎn)的多核性能的利用率。其中,將該并行化代碼部分按照并行化處理方式處理,可以包括調(diào)用運(yùn)行時(shí)庫,以獲取所述并行化代碼部分運(yùn)行時(shí)所需的第一庫文件;通過應(yīng)用程序二進(jìn)制接口(application binary interface, ABI)加載關(guān)聯(lián)有所述第一庫文件的并行化代碼部分,并將關(guān)聯(lián)有所述第一庫文件的并行化代碼部分中的至少兩個(gè)可并行子部分運(yùn)行于CPU的至少兩個(gè)核上。上述并行化代碼部分按照并行化處理方式進(jìn)行處理的過程與現(xiàn)有技術(shù)中對并行化的二進(jìn)制文件執(zhí)行并行化處理的過程相似,在此不再贅述。其中,將第二代碼部分按照串行化處理方式處理,可以包括調(diào)用運(yùn)行時(shí)庫,以獲取第二代碼部分運(yùn)行時(shí)所需的第二庫文件;通過應(yīng)用程序二進(jìn)制接口 ABI加載關(guān)聯(lián)有所述第二庫文件的第二代碼部分,并將關(guān)聯(lián)有所述第二庫文件的第二代碼部分運(yùn)行于CPU的一個(gè)核上。上述第二代碼部分按照串行化處理方式進(jìn)行處理的過程與現(xiàn)有技術(shù)中對非并行化的二進(jìn)制文件執(zhí)行串行化處理的過程相似,在此不再贅述。所謂應(yīng)用程序二進(jìn)制接口(application binary interface, ABI)描述了應(yīng)用程序和操作系統(tǒng)之間,一個(gè)應(yīng)用和它的運(yùn)行時(shí)庫之間,或者應(yīng)用的組成部分之間的接口。其中,ABI 不同于應(yīng)用程序接口(Application Program Interface, API):該 API 定義了源代碼和庫之間的接口,因此,同樣的代碼可以在支持API的任何系統(tǒng)中編譯,然而ABI允許編譯好的目標(biāo)代碼在使用兼容ABI的系統(tǒng)中無需改動(dòng)就能運(yùn)行??梢?,ABI掩蓋了各種細(xì)節(jié),例如調(diào)用約定控制著函數(shù)的參數(shù)如何傳送以及如何接受返回值、系統(tǒng)調(diào)用的編碼和一個(gè)應(yīng)用如何向操作系統(tǒng)進(jìn)行系統(tǒng)調(diào)用、在一個(gè)完整的操作系統(tǒng)ABI中對象文件的二進(jìn)制格式和程序庫等。S106,得到該并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果以及該第二代碼部分對應(yīng)的一處理結(jié)果;S107,將該并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果進(jìn)行合并。在將該并行化代碼部分按照并行化處理方式處理,而將第二代碼部分按照串行化處理方式處理后,可以獲得該并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果以及該第二代碼部分對應(yīng)的一處理結(jié)果。而由于并行化代碼部分所對應(yīng)的至少兩個(gè)處理結(jié)果為至少兩個(gè)可并行子部分的結(jié)果,因此,需要將該并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果進(jìn)行合并,以獲得該并行化代碼部分對應(yīng)的結(jié)果,以此完成了該非并行化的二進(jìn)制文件的并行化處理??梢岳斫獾氖?,對于某些結(jié)果需求而言,還可以將并行化代碼部分對應(yīng)的處理結(jié)果與第二代碼部分對應(yīng)的處理結(jié)果進(jìn)行合并,這都是合理的。本發(fā)明實(shí)施例所提供的技術(shù)方案,在預(yù)設(shè)執(zhí)行環(huán)境中啟動(dòng)非并行化的二進(jìn)制文件;確定該二進(jìn)制文件中符合分治語義的第一代碼部分;將該第一代碼部分的代碼進(jìn)行格式轉(zhuǎn)換,以形成并行化代碼部分;將該并行化代碼部分按照并行化處理方式處理,并將第二代碼部分按照串行化處理方式處理;得到該并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果以及該第二代碼部分對應(yīng)的一處理結(jié)果;將該并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果進(jìn)行合并,以此實(shí)現(xiàn)了非并行化二進(jìn)制文件的并行化處理,進(jìn)而提高云處理節(jié)點(diǎn)的多核性能的利用率。通過以上的方法實(shí)施例的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲在一個(gè)存儲介質(zhì)中,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括只讀存儲器(ROM)、隨機(jī)存取存儲器(RAM)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。相應(yīng)于上面的方法實(shí)施例,本發(fā)明實(shí)施例還提供一種文件處理裝置,如圖2所示,該文件處理裝置可以包括啟動(dòng)模塊110,用于在預(yù)設(shè)執(zhí)行環(huán)境中啟動(dòng)非并行化的二進(jìn)制文件;分治代碼確定模塊120,用于確定所述二進(jìn)制文件中符合分治語義的第一代碼部分,其中,所述第一代碼部分為所述二進(jìn)制文件中代碼段的至少一部分,符合分治語義的代碼部分對應(yīng)的任務(wù)支持并行化處理;格式轉(zhuǎn)換模塊130,用于將所述第一代碼部分的代碼進(jìn)行格式轉(zhuǎn)換,以形成并行化代碼部分;并行代碼處理模塊140,用于將所述并行化代碼部分按照并行化處理方式處理;串行代碼處理模塊150,用于將第二代碼部分按照串行化處理方式處理,其中,所述第二代碼部分為所述二進(jìn)制文件中第一代碼部分以外的代碼部分;結(jié)果獲取模塊160,用于得到所述并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果以及所述第二代碼部分對應(yīng)的一處理結(jié)果;結(jié)果處理模塊170,用于將所述并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果進(jìn)行合并。本發(fā)明實(shí)施例所提供的技術(shù)方案,在預(yù)設(shè)執(zhí)行環(huán)境中啟動(dòng)非并行化的二進(jìn)制文件;確定該二進(jìn)制文件中符合分治語義的第一代碼部分;將該第一代碼部分的代碼進(jìn)行格式轉(zhuǎn)換,以形成并行化代碼部分;將該并行化代碼部分按照并行化處理方式處理,并將第二代碼部分按照串行化處理方式處理;得到該并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果以及該第一代碼部分對應(yīng)的一處理結(jié)果;將該并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果進(jìn)行合并,以此實(shí)現(xiàn)了非并行化二進(jìn)制文件的并行化處理,進(jìn)而提高云處理節(jié)點(diǎn)的多核性能的利用率。其中,所述并行代碼處理模塊,具體用于調(diào)用運(yùn)行時(shí)庫,以獲取所述并行化代碼部分運(yùn)行時(shí)所需的第一庫文件;通過應(yīng)用程序二進(jìn)制接口 ABI加載關(guān)聯(lián)有所述第一庫文件的并行化代碼部分,并將關(guān)聯(lián)有所述第一庫文件的并行化代碼部分中的至少兩個(gè)可并行子部分運(yùn)行于CPU的至少兩個(gè)核上。其中,所述串行代碼處理模塊,具體用于
調(diào)用運(yùn)行時(shí)庫,以獲取第二代碼部分運(yùn)行時(shí)所需的第二庫文件;通過應(yīng)用程序二進(jìn)制接口 ABI加載關(guān)聯(lián)有所述第二庫文件的第二代碼部分,并將關(guān)聯(lián)有所述第二庫文件的第二代碼部分運(yùn)行于CPU的一個(gè)核上。對于裝置或系統(tǒng)實(shí)施例而言,由于其基本相應(yīng)于方法實(shí)施例,所以相關(guān)之處參見方法實(shí)施例的部分說明即可。以上所描述的裝置或系統(tǒng)實(shí)施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來實(shí)現(xiàn)本實(shí)施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。在本發(fā)明所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng),裝置和方法,在沒有超過本申請的精神和范圍內(nèi),可以通過其他的方式實(shí)現(xiàn)。當(dāng)前的實(shí)施例只是一種示范性的例子,不應(yīng)該作為限制,所給出的具體內(nèi)容不應(yīng)該限制本申請的目的。例如,所述單元或子單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或多個(gè)子單元結(jié)合一起。另外,多個(gè)單元可以或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另外,所描述系統(tǒng),裝置和方法以及不同實(shí)施例的示意圖,在不超出本申請的范圍內(nèi),可以與其它系統(tǒng),模塊,技術(shù)或方法結(jié)合或集成。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。以上所述僅是本發(fā)明的具體實(shí)施方式
,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種文件處理方法,其特征在于,包括 在預(yù)設(shè)執(zhí)行環(huán)境中啟動(dòng)非并行化的二進(jìn)制文件; 確定所述二進(jìn)制文件中符合分治語義的第一代碼部分,其中,所述第一代碼部分為所述二進(jìn)制文件中代碼段的至少一部分,符合分治語義的代碼部分對應(yīng)的任務(wù)支持并行化處理; 將所述第一代碼部分的代碼進(jìn)行格式轉(zhuǎn)換,以形成并行化代碼部分; 將所述并行化代碼部分按照并行化處理方式處理,并將第二代碼部分按照串行化處理方式處理,其中,所述第二代碼部分為所述二進(jìn)制文件中第一代碼部分以外的代碼部分;得到所述并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果以及所述第二代碼部分對應(yīng)的一處理結(jié)果; 將所述并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果進(jìn)行合并。
2.根據(jù)權(quán)利要求1所述的文件處理方法,其特征在于,將所述并行化代碼部分按照并行化處理方式處理,包括 調(diào)用運(yùn)行時(shí)庫,以獲取所述并行化代碼部分運(yùn)行時(shí)所需的第一庫文件; 通過應(yīng)用程序二進(jìn)制接口 ABI加載關(guān)聯(lián)有所述第一庫文件的并行化代碼部分,并將關(guān)聯(lián)有所述第一庫文件的并行化代碼部分中的至少兩個(gè)可并行子部分運(yùn)行于CPU的至少兩個(gè)核上。
3.根據(jù)權(quán)利要求1或2所述的文件處理方法,其特征在于,將第二代碼部分按照串行化處理方式處理,包括 調(diào)用運(yùn)行時(shí)庫,以獲取第二代碼部分運(yùn)行時(shí)所需的第二庫文件; 通過應(yīng)用程序二進(jìn)制接口 ABI加載關(guān)聯(lián)有所述第二庫文件的第二代碼部分,并將關(guān)聯(lián)有所述第二庫文件的第二代碼部分運(yùn)行于CPU的一個(gè)核上。
4.一種文件處理裝置,其特征在于,包括 啟動(dòng)模塊,用于在預(yù)設(shè)執(zhí)行環(huán)境中啟動(dòng)非并行化的二進(jìn)制文件; 分治代碼確定模塊,用于確定所述二進(jìn)制文件中符合分治語義的第一代碼部分,其中,所述第一代碼部分為所述二進(jìn)制文件中代碼段的至少一部分,符合分治語義的代碼部分對應(yīng)的任務(wù)支持并行化處理; 格式轉(zhuǎn)換模塊,用于將所述第一代碼部分的代碼進(jìn)行格式轉(zhuǎn)換,以形成并行化代碼部分; 并行代碼處理模塊,用于將所述并行化代碼部分按照并行化處理方式處理; 串行代碼處理模塊,用于將第二代碼部分按照串行化處理方式處理,其中,所述第二代碼部分為所述二進(jìn)制文件中第一代碼部分以外的代碼部分; 結(jié)果獲取模塊,用于得到所述并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果以及所述第二代碼部分對應(yīng)的一處理結(jié)果; 結(jié)果處理模塊,用于將所述并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果進(jìn)行合并。
5.根據(jù)權(quán)利要求4所述的文件處理裝置,其特征在于,所述并行代碼處理模塊,具體用于 調(diào)用運(yùn)行時(shí)庫,以獲取所述并行化代碼部分運(yùn)行時(shí)所需的第一庫文件; 通過應(yīng)用程序二進(jìn)制接口 ABI加載關(guān)聯(lián)有所述第一庫文件的并行化代碼部分,并將關(guān)聯(lián)有所述第一庫文件的并行化代碼部分中的至少兩個(gè)可并行子部分運(yùn)行于CPU的至少兩個(gè)核上。
6.根據(jù)權(quán)利要求4或5所述的文件處理裝置,其特征在于,所述串行代碼處理模塊,具體用于 調(diào)用運(yùn)行時(shí)庫,以獲取第二代碼部分運(yùn)行時(shí)所需的第二庫文件; 通過應(yīng)用程序二進(jìn)制接口 ABI加載關(guān)聯(lián)有所述第二庫文件的第二代碼部分,并將關(guān)聯(lián)有所述第二庫文件的第二代碼部分運(yùn)行于CPU的一個(gè)核上。
全文摘要
本發(fā)明公開了一種文件處理方法及裝置。所述文件處理方法包括在預(yù)設(shè)執(zhí)行環(huán)境中啟動(dòng)非并行化的二進(jìn)制文件;確定所述二進(jìn)制文件中符合分治語義的第一代碼部分;將所述第一代碼部分的代碼進(jìn)行格式轉(zhuǎn)換,以形成并行化代碼部分;將所述并行化代碼部分按照并行化處理方式處理,并將第二代碼部分按照串行化處理方式處理,其中,所述第二代碼部分為所述二進(jìn)制文件中第一代碼部分以外的代碼部分;得到所述并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果以及所述第二代碼部分對應(yīng)的一處理結(jié)果;將所述并行化代碼部分對應(yīng)的至少兩個(gè)處理結(jié)果進(jìn)行合并。通過利用本方案,可以實(shí)現(xiàn)非并行化二進(jìn)制文件的并行化處理,進(jìn)而提高云處理節(jié)點(diǎn)的多核性能的利用率。
文檔編號H04L29/08GK103064668SQ20121054986
公開日2013年4月24日 申請日期2012年12月17日 優(yōu)先權(quán)日2012年12月17日
發(fā)明者張權(quán), 張濤, 劉鵬, 李峰, 張青, 陸國祥 申請人:山東中創(chuàng)軟件商用中間件股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1