本技術(shù)涉及計(jì)算機(jī),特別涉及一種計(jì)算設(shè)備內(nèi)組件間功能調(diào)用的方法、裝置和設(shè)備。
背景技術(shù):
1、隨著芯片技術(shù)發(fā)展,在單個(gè)芯片內(nèi)集成了越來(lái)越多計(jì)算單元,每個(gè)計(jì)算單元都可以運(yùn)行獨(dú)立的固件,除了這些計(jì)算單元上運(yùn)行的獨(dú)立的固件,在計(jì)算系統(tǒng)內(nèi)還有傳統(tǒng)已具備的基板管理控制器(baseboard?management?controller,bmc)/嵌入式控制器(embeddedcontroller,ec)固件、設(shè)備固件、操作系統(tǒng)等。在計(jì)算系統(tǒng)中,固件、軟件、系統(tǒng)均可稱(chēng)為組件,如何實(shí)現(xiàn)組件間的功能調(diào)用成為計(jì)算系統(tǒng)中關(guān)鍵之一。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)實(shí)施例提供了一種計(jì)算設(shè)備內(nèi)組件間功能調(diào)用的方法、裝置和設(shè)備,能夠?qū)崿F(xiàn)計(jì)算設(shè)備內(nèi)組件間的功能調(diào)用,相應(yīng)的技術(shù)方案如下:
2、第一方面,提供了一種計(jì)算設(shè)備內(nèi)組件間功能調(diào)用的方法,方法包括:
3、源組件接收待調(diào)用的第一功能的調(diào)用標(biāo)識(shí)和第一功能的功能函數(shù)的入?yún)?,然后,確定第一功能的調(diào)用標(biāo)識(shí)對(duì)應(yīng)的目標(biāo)交互通道。進(jìn)而,通過(guò)目標(biāo)交互通道向目的組件發(fā)送調(diào)用請(qǐng)求,其中,調(diào)用請(qǐng)求中攜帶第一功能的調(diào)用標(biāo)識(shí)和第一功能的功能函數(shù)的入?yún)ⅰ?/p>
4、在本技術(shù)提供的技術(shù)方案中,源組件可以支持多種交互通道和其他組件進(jìn)行功能調(diào)用,這樣,在需要和目的組件進(jìn)行功能調(diào)用時(shí),可以查詢(xún)出待調(diào)用的功能所支持的交互通道,進(jìn)而,使用該待調(diào)用的功能所支持的交互通道和目的組件進(jìn)行功能調(diào)用即可。
5、在一種可能的實(shí)現(xiàn)中,方法還包括:
6、將待處理數(shù)據(jù)存儲(chǔ)至與目的組件的共享存儲(chǔ)空間,其中,第一功能的功能函數(shù)的入?yún)⒅邪ㄓ糜谥甘舅龃幚頂?shù)據(jù)在共享存儲(chǔ)空間中的物理地址的參數(shù)。
7、在本技術(shù)提供的技術(shù)方案中,源組件和目的組件進(jìn)行數(shù)據(jù)交互可以采用共享存儲(chǔ)空間實(shí)現(xiàn)。
8、在一種可能的實(shí)現(xiàn)中,調(diào)用請(qǐng)求中還攜帶待處理數(shù)據(jù)。
9、在本技術(shù)提供的技術(shù)方案中,源組件和目的組件進(jìn)行數(shù)據(jù)交互可以采用消息的方式實(shí)現(xiàn)。
10、在一種可能的實(shí)現(xiàn)中,每個(gè)組件可以配置有調(diào)用標(biāo)識(shí)服務(wù)表,相應(yīng)的,確定第一功能的調(diào)用標(biāo)識(shí)對(duì)應(yīng)的目標(biāo)交互通道時(shí)的處理可以如下:
11、獲取目的組件的調(diào)用標(biāo)識(shí)服務(wù)表,其中,調(diào)用標(biāo)識(shí)服務(wù)表中記錄有調(diào)用標(biāo)識(shí)和交互通道的對(duì)應(yīng)關(guān)系。進(jìn)而,在目的組件的調(diào)用標(biāo)識(shí)服務(wù)表中,查詢(xún)第一功能的調(diào)用標(biāo)識(shí)對(duì)應(yīng)的目標(biāo)交互通道。
12、在本技術(shù)提供的技術(shù)方案中,每個(gè)組件可以配置有調(diào)用標(biāo)識(shí)服務(wù)表,在每個(gè)組件對(duì)應(yīng)的調(diào)用標(biāo)識(shí)服務(wù)表中記錄了該組件能提供的各功能的調(diào)用標(biāo)識(shí)和支持的交互通道的對(duì)應(yīng)關(guān)系。這樣,如果組件能提供的功能發(fā)生變化,只需對(duì)組件的調(diào)用標(biāo)識(shí)服務(wù)表進(jìn)行更新即可,無(wú)需修改調(diào)用邏輯代碼。
13、在一種可能的實(shí)現(xiàn)中,對(duì)于每個(gè)組件可以配置有組件的標(biāo)識(shí),相應(yīng)的,獲取目的組件的調(diào)用標(biāo)識(shí)服務(wù)表的處理可以如下:
14、接收目的組件的標(biāo)識(shí),獲取目的組件的標(biāo)識(shí)對(duì)應(yīng)的調(diào)用標(biāo)識(shí)服務(wù)表。
15、在本技術(shù)提供的技術(shù)方案中,每個(gè)組件可以配置有組件的標(biāo)識(shí),這樣,在存在多個(gè)組件均可以提供第一功能的情況時(shí),可以通過(guò)組件的標(biāo)識(shí),指定某個(gè)組件為目的組件,來(lái)提供第一功能的調(diào)用。
16、在一種可能的實(shí)現(xiàn)中,獲取目的組件的調(diào)用標(biāo)識(shí)服務(wù)表,包括:
17、將提供第一功能的所有組件作為目的組件,獲取目的組件的調(diào)用標(biāo)識(shí)服務(wù)表。
18、在本技術(shù)提供的技術(shù)方案中,在存在多個(gè)組件均可以提供第一功能的情況時(shí),可以將提供第一功能的所有組件作為目的組件,并獲取這些組件的調(diào)用標(biāo)識(shí)服務(wù)表。
19、在一種可能的實(shí)現(xiàn)中,獲取目的組件的調(diào)用標(biāo)識(shí)服務(wù)表,包括:
20、在提供第一功能的組件中選擇一個(gè)組件,作為目的組件,獲取目的組件的調(diào)用標(biāo)識(shí)服務(wù)表。
21、在本技術(shù)提供的技術(shù)方案中,在存在多個(gè)組件均可以提供第一功能的情況時(shí),可以在提供第一功能的組件中選擇一個(gè)組件,作為目的組件,獲取目的組件的調(diào)用標(biāo)識(shí)服務(wù)表。
22、在一種可能的實(shí)現(xiàn)中,在調(diào)用請(qǐng)求中攜帶源組件的標(biāo)識(shí),源組件的標(biāo)識(shí)用于指示目的組件對(duì)源組件進(jìn)行第一功能調(diào)用權(quán)限判斷。
23、在本技術(shù)提供的技術(shù)方案中,可以使用組件的標(biāo)識(shí)實(shí)現(xiàn)對(duì)功能調(diào)用的權(quán)限設(shè)置,目的組件在接收到調(diào)用請(qǐng)求后,可以根據(jù)調(diào)用請(qǐng)求中攜帶的源組件的標(biāo)識(shí)判斷源組件是否有權(quán)限調(diào)用第一功能。
24、在一種可能的實(shí)現(xiàn)中,方法還包括:
25、接收目的組件返回的響應(yīng),其中,響應(yīng)為第一功能的調(diào)用標(biāo)識(shí)的反碼。
26、在本技術(shù)提供的技術(shù)方案中,將調(diào)用請(qǐng)求的響應(yīng)配置為調(diào)用請(qǐng)求中攜帶的調(diào)用標(biāo)識(shí)的反碼,這樣,可以無(wú)需單獨(dú)設(shè)計(jì)響應(yīng),減少了標(biāo)識(shí)管理的復(fù)雜度。
27、第二方面,提供了一種計(jì)算設(shè)備內(nèi)組件間功能調(diào)用的裝置,所述裝置包括:
28、調(diào)用模塊,用于接收待調(diào)用的第一功能的調(diào)用標(biāo)識(shí)和所述第一功能的功能函數(shù)的入?yún)ⅲ?/p>
29、確定模塊,用于確定所述第一功能的調(diào)用標(biāo)識(shí)對(duì)應(yīng)的目標(biāo)交互通道;
30、發(fā)送模塊,用于通過(guò)所述目標(biāo)交互通道向目的組件發(fā)送調(diào)用請(qǐng)求,其中,所述調(diào)用請(qǐng)求中攜帶所述第一功能的調(diào)用標(biāo)識(shí)和所述第一功能的功能函數(shù)的入?yún)ⅰ?/p>
31、在一種可能的實(shí)現(xiàn)中,所述裝置還包括:
32、存儲(chǔ)模塊,用于將待處理數(shù)據(jù)存儲(chǔ)至與所述目的組件的共享存儲(chǔ)空間,其中,所述第一功能的功能函數(shù)的入?yún)⒅邪ㄓ糜谥甘舅龃幚頂?shù)據(jù)在所述共享存儲(chǔ)空間中的物理地址的參數(shù)。
33、在一種可能的實(shí)現(xiàn)中,所述調(diào)用請(qǐng)求中還攜帶待處理數(shù)據(jù)。
34、在一種可能的實(shí)現(xiàn)中,所述確定模塊,用于:
35、獲取目的組件的調(diào)用標(biāo)識(shí)服務(wù)表,其中,所述調(diào)用標(biāo)識(shí)服務(wù)表中記錄有調(diào)用標(biāo)識(shí)和交互通道的對(duì)應(yīng)關(guān)系;
36、在所述目的組件的調(diào)用標(biāo)識(shí)服務(wù)表中,查詢(xún)所述第一功能的調(diào)用標(biāo)識(shí)對(duì)應(yīng)的目標(biāo)交互通道。
37、在一種可能的實(shí)現(xiàn)中,所述裝置還包括:
38、接收模塊,用于接收目的組件的標(biāo)識(shí);
39、所述確定模塊,用于:
40、獲取所述目的組件的標(biāo)識(shí)對(duì)應(yīng)的調(diào)用標(biāo)識(shí)服務(wù)表。
41、在一種可能的實(shí)現(xiàn)中,所述確定模塊,用于:
42、將提供所述第一功能的所有組件作為目的組件,獲取所述目的組件的調(diào)用標(biāo)識(shí)服務(wù)表。
43、在一種可能的實(shí)現(xiàn)中,所述確定模塊,用于:
44、在提供所述第一功能的組件中選擇一個(gè)組件,作為目的組件,獲取所述目的組件的調(diào)用標(biāo)識(shí)服務(wù)表。
45、在一種可能的實(shí)現(xiàn)中,所述調(diào)用請(qǐng)求中攜帶源組件的標(biāo)識(shí),所述源組件的標(biāo)識(shí)用于指示所述目的組件對(duì)所述源組件進(jìn)行第一功能調(diào)用權(quán)限判斷。
46、在一種可能的實(shí)現(xiàn)中,所述裝置還包括:
47、接收模塊,用于接收所述目的組件返回的響應(yīng),其中,所述響應(yīng)為所述第一功能的調(diào)用標(biāo)識(shí)的反碼。
48、第三方面,提供了一種計(jì)算設(shè)備集群,包括至少一個(gè)計(jì)算設(shè)備,每個(gè)計(jì)算設(shè)備包括處理器和存儲(chǔ)器。其中,至少一個(gè)計(jì)算設(shè)備的處理器用于執(zhí)行至少一個(gè)計(jì)算設(shè)備的存儲(chǔ)器中存儲(chǔ)的指令,以使得計(jì)算設(shè)備集群執(zhí)行如上述第一方面和/或第一方面中任一可實(shí)現(xiàn)的方式中所述的計(jì)算設(shè)備內(nèi)組件間功能調(diào)用的方法。
49、第四方面,提供了一種包含指令的計(jì)算機(jī)程序產(chǎn)品,當(dāng)所述指令被計(jì)算設(shè)備運(yùn)行時(shí),使得所述計(jì)算設(shè)備執(zhí)行如上述第一方面和/或第一方面中任一可實(shí)現(xiàn)的方式中所述的計(jì)算設(shè)備內(nèi)組件間功能調(diào)用的方法。
50、第五方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),包括計(jì)算機(jī)程序指令,當(dāng)所述計(jì)算機(jī)程序指令由計(jì)算設(shè)備執(zhí)行時(shí),所述計(jì)算設(shè)備執(zhí)行上述第一方面和/或第一方面中任一可實(shí)現(xiàn)的方式中所述的計(jì)算設(shè)備內(nèi)組件間功能調(diào)用的方法。