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