本申請涉及云計算、異構(gòu)代碼映射及代碼打包,尤其涉及一種流轉(zhuǎn)文件的映射方法、裝置、電子設(shè)備及存儲介質(zhì)。
背景技術(shù):
1、針對面向多樣異構(gòu)算力,把同一應(yīng)用部署在混合異構(gòu)場景下的不同硬件設(shè)備上是繁瑣的,開發(fā)者面向同一應(yīng)用必須產(chǎn)生多個二進制文件,手動適配不同硬件廠商,浪費了資源、增加了成本。
技術(shù)實現(xiàn)思路
1、為解決相關(guān)技術(shù)問題,本申請實施例提供一種流轉(zhuǎn)文件的映射方法、裝置、電子設(shè)備及存儲介質(zhì)。
2、本申請實施例的技術(shù)方案是這樣實現(xiàn)的:
3、本申請實施例提供了一種流轉(zhuǎn)文件的映射方法,包括:
4、獲取不同廠商對應(yīng)的多個第一代碼文件;
5、對多個所述第一代碼文件分別進行解析,得到每個所述第一代碼文件中第一文件頭段的第一信息和程序頭段的第二信息;
6、對所述第一信息和所述第二信息進行組合處理,生成多個所述第一代碼文件對應(yīng)的一個第二代碼文件;
7、向所述不同廠商發(fā)送所述第二代碼文件;所述第二代碼文件用于所述不同廠商中的各個廠商獲取所需的編譯程序代碼并執(zhí)行。
8、上述方案中,所述第二代碼文件包括第二文件頭段、流轉(zhuǎn)文件描述符、代碼包描述符和屬性集,所述對所述第一信息和所述第二信息進行組合處理,生成多個所述第一代碼文件對應(yīng)的一個第二代碼文件,包括:
9、將所述第一信息映射到所述第二文件頭段和所述流轉(zhuǎn)文件描述符以及將所述第二信息映射到所述代碼包描述符和所述屬性集,得到所述第二代碼文件。
10、上述方案中,所述第一代碼文件中包括策略信息;所述第二代碼文件包括所述各個廠商的代碼包描述符;所述方法還包括:
11、將所述策略信息映射到所述流轉(zhuǎn)文件描述符的數(shù)據(jù)段中,并生成所述策略信息在所述流轉(zhuǎn)文件描述符中的第一位置信息;
12、將所述第一位置信息映射到所述代碼包描述符。
13、上述方案中,所述第一信息包括所述第一文件頭段中的文件是否可執(zhí)行信息、目標(biāo)操作系統(tǒng)信息、鏈接類型信息、目標(biāo)硬件信息;所述將所述第一信息映射到所述第二文件頭段和所述流轉(zhuǎn)文件描述符,包括:
14、將所述文件是否可執(zhí)行信息、所述目標(biāo)操作系統(tǒng)信息、所述鏈接類型信息映射到所述第二文件頭段;
15、將所述目標(biāo)硬件信息映射到所述流轉(zhuǎn)文件描述符。
16、上述方案中,所述第一信息包括承載的程序代碼的位置信息;所述第二代碼文件還包括程序代碼段和所述各個廠商的代碼包描述符;所述方法還包括:
17、基于所述位置信息確定所述各個廠商的程序代碼;
18、將所述程序代碼映射到所述程序代碼段,并生成所述程序代碼在所述程序代碼段的第二位置信息;
19、將所述第二位置信息映射到所述代碼包描述符。
20、上述方案中,所述第一信息包括所述不同廠商中的各個廠商的描述符的第三位置信息和用戶策略的第四位置信息;所述方法還包括:
21、將所述第三位置信息和所述第四位置信息映射到所述流轉(zhuǎn)文件描述符中。
22、上述方案中,所述方法還包括:
23、確定所述第二代碼文件的內(nèi)存大小的第三信息、所述流轉(zhuǎn)文件描述符的第五位置信息以及所述第二文件頭段的內(nèi)存大小的第四信息;
24、將所述第三信息、所述第五位置信息、所述第四信息映射到所述第二文件頭段中。
25、本申請實施例還提供了一種流轉(zhuǎn)文件的映射裝置,包括:
26、獲取單元,用于獲取不同廠商對應(yīng)的多個第一代碼文件;
27、解析單元,用于對多個所述第一代碼文件分別進行解析,得到每個所述第一代碼文件中第一文件頭段的第一信息和程序頭段的第二信息;
28、處理單元,用于對所述第一信息和所述第二信息進行組合處理,生成多個所述第一代碼文件對應(yīng)的一個第二代碼文件;
29、發(fā)送單元,用于向所述不同廠商發(fā)送所述第二代碼文件;所述第二代碼文件用于所述不同廠商中的各個廠商獲取所需的編譯程序代碼并執(zhí)行。
30、本申請實施例還提供了一種電子設(shè)備,包括:
31、存儲器,用于存儲可執(zhí)行指令;
32、處理器,用于執(zhí)行所述存儲器中存儲的可執(zhí)行指令時,實現(xiàn)上述所述方法的任一步驟。
33、本申請實施例還提供一種計算機可讀存儲介質(zhì),存儲有可執(zhí)行指令,用于被處理器執(zhí)行時,實現(xiàn)上述所述方法的任一步驟。
34、本申請實施例提供的流轉(zhuǎn)文件的映射方法、裝置、電子設(shè)備及存儲介質(zhì),其中,方法包括:獲取不同廠商對應(yīng)的多個第一代碼文件;對多個所述第一代碼文件分別進行解析,得到每個所述第一代碼文件中第一文件頭段的第一信息和程序頭段的第二信息;對所述第一信息和所述第二信息進行組合處理,生成多個所述第一代碼文件對應(yīng)的一個第二代碼文件;向所述不同廠商發(fā)送所述第二代碼文件;所述第二代碼文件用于所述不同廠商中的各個廠商獲取所需的編譯程序代碼并執(zhí)行,本申請實施例的方案,通過對不同廠商對應(yīng)的多個第一代碼文件分別進行解析,得到每個第一代碼文件中第一文件頭段的第一信息和程序頭段的第二信息;對第一信息和第二信息進行組合處理,生成多個第一代碼文件對應(yīng)的一個第二代碼文件;向不同廠商發(fā)送用于不同廠商中的各個廠商獲取所需的編譯程序代碼并執(zhí)行的第二代碼文件;即不同廠商的編譯程序代碼由多個文件承載變?yōu)橛媒y(tǒng)一格式的一個文件來承載,實現(xiàn)了同一文件在不同計算架構(gòu)間的跨架構(gòu)流轉(zhuǎn),減少了適配開銷。
1.一種流轉(zhuǎn)文件的映射方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述第二代碼文件包括第二文件頭段、流轉(zhuǎn)文件描述符、代碼包描述符和屬性集,所述對所述第一信息和所述第二信息進行組合處理,生成多個所述第一代碼文件對應(yīng)的一個第二代碼文件,包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述第一代碼文件中包括策略信息;所述第二代碼文件包括所述各個廠商的代碼包描述符;所述方法還包括:
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述第一信息包括所述第一文件頭段中的文件是否可執(zhí)行信息、目標(biāo)操作系統(tǒng)信息、鏈接類型信息、目標(biāo)硬件信息;所述將所述第一信息映射到所述第二文件頭段和所述流轉(zhuǎn)文件描述符,包括:
5.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述第一信息包括承載的程序代碼的位置信息;所述第二代碼文件還包括程序代碼段和所述各個廠商的代碼包描述符;所述方法還包括:
6.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述第一信息包括所述不同廠商中的各個廠商的描述符的第三位置信息和用戶策略的第四位置信息;所述方法還包括:
7.根據(jù)權(quán)利要求2-6任一項所述的方法,其特征在于,所述方法還包括:
8.一種流轉(zhuǎn)文件的映射裝置,其特征在于,包括:
9.一種電子設(shè)備,其特征在于,包括:
10.一種計算機可讀存儲介質(zhì),其特征在于,存儲有可執(zhí)行指令,用于被處理器執(zhí)行時,實現(xiàn)權(quán)利要求1至7任一項所述的流轉(zhuǎn)文件的映射方法。