麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

一種半虛擬化I2C系統、方法及計算機設備與流程

文檔序號:41735247發布日期:2025-04-25 17:07閱讀:3來源:國知局
一種半虛擬化I2C系統、方法及計算機設備與流程

本發明涉及虛擬化,尤其是涉及一種半虛擬化i2c系統、方法及計算機設備。


背景技術:

1、在現有的虛擬化技術方案中,基于virtio(virtual?i/o,虛擬化輸入/輸出)協議,已經具備了一些物理硬件的半虛擬化能力,包括v-console、v-bolck、v-net等,但仍然缺乏對于i2c(inter-integrated?circuit,集成電路總線)的半虛擬化支持。一般情況下,在物理硬件上只有一個i2c主設備,而此i2c主設備上則接有多個i2c從設備,而不同的虛擬機(guest?os)需要使用此i2c主設備下不同的i2c從設備,在這種場景下,現有技術將不能夠滿足實際開發需求。


技術實現思路

1、為克服相關技術中存在的問題,本發明提供一種半虛擬化i2c系統、方法及計算機設備,用以解決相關技術中的缺陷。

2、根據本發明的第一方面,提供一種半虛擬化i2c系統,所述系統包括硬件平臺,所述硬件平臺上配置有虛擬機管理器,所述虛擬機管理器上配置有第一虛擬機和第二虛擬機;所述第一虛擬機直通i2c主設備;所述虛擬機管理器用于提供virtio框架支持,所述第一虛擬機和所述第二虛擬機通過調用所述virtio框架中的virtio接口進行交互。

3、優選地,所述第一虛擬機上配置有i2c主設備驅動,所述第一虛擬機通過所述i2c主設備驅動直通i2c主設備。

4、優選地,所述第一虛擬機上配置有i2c后端驅動,所述第二虛擬機上配置有i2c前端驅動,所述第一虛擬機和所述第二虛擬機通過所述i2c后端驅動和所述i2c前端驅動調用所述virtio接口進行交互。

5、優選地,所述第一虛擬機和所述第二虛擬機通過共享內存實現所述virtio框架中的數據傳遞功能,所述第一虛擬機和所述第二虛擬機通過所述虛擬機控制器提供的虛擬中斷機制實現所述virtio框架中的通知功能。

6、根據本發明的第二方面,提供一種半虛擬化i2c方法,應用于如本發明任一實施例所述的半虛擬化i2c系統,所述方法包括:

7、所述第二虛擬機通過所述virtio接口向所述第一虛擬機獲取所述i2c主設備的控制權;

8、所述第二虛擬機通過所述virtio接口將目標數據發送至所述第一虛擬機,所述第一虛擬機通過所述i2c主設備將所述目標數據發送至對應的目標i2c從設備;

9、所述第二虛擬機釋放所述i2c主設備的控制權。

10、優選地,所述第二虛擬機通過所述virtio接口向所述第一虛擬機獲取所述i2c主設備的控制權,包括:

11、所述第二虛擬機通過所述virtio接口向所述第一虛擬機發送獲取i2c主設備的控制權的請求;

12、所述第一虛擬機通過所述virtio接口響應所述第一虛擬機所發送的獲取i2c主設備的控制權的請求;

13、所述第二虛擬機通過所述virtio接口確定成功獲取i2c主設備的控制權。

14、優選地,所述第二虛擬機通過所述virtio接口將目標數據發送至所述第一虛擬機,所述第一虛擬機通過所述i2c主設備將所述目標數據發送至對應的目標i2c從設備,包括:

15、所述第二虛擬機通過所述virtio接口將所述目標數據放入共享內存中,并通知所述第一虛擬機;

16、所述第一虛擬機獲得通知后,調用所述virtio接口從所述共享內存中獲取所述目標數據,并解析所述目標數據,獲知所述目標數據對應的所述目標i2c從設備;

17、所述第一虛擬機通過直通所述i2c主設備,將所述目標數據發送至所述目標i2c從設備;

18、所述第一虛擬機通過所述virtio接口通知所述第二虛擬機目標數據發送完成。

19、優選地,所述第二虛擬機釋放所述i2c主設備的控制權,包括:

20、所述第二虛擬機通過所述virtio接口向所述第一虛擬機提出釋放i2c主設備的控制權的通知;

21、所述第一虛擬機獲得通知后,解除所述第二虛擬機的i2c主設備的控制權,并調用所述virtio接口響應所述釋放i2c主設備的控制權的通知。

22、根據本發明的第三方面,提供一種半虛擬化i2c方法,應用于如本發明任一實施例所述的半虛擬化i2c系統中的所述第一虛擬機,所述方法包括:

23、響應所述第二虛擬機通過所述virtio接口所發送的請求,使所述第二虛擬機獲取所述i2c主設備的控制權;

24、接收所述第二虛擬機通過所述virtio接口所發送的目標數據,并通過所述i2c主設備將所述目標數據發送至對應的目標i2c從設備;

25、解除所述第二虛擬機對所述i2c主設備的控制權。

26、根據本發明的第四方面,提供一種半虛擬化i2c方法,應用于如本發明任一實施例所述的半虛擬化i2c系統中的所述第二虛擬機,所述方法包括:

27、通過所述virtio接口向所述第一虛擬機獲取所述i2c主設備的控制權;

28、通過所述virtio接口將目標數據發送至所述第一虛擬機,以使所述第一虛擬機通過所述i2c主設備將所述目標數據發送至對應的目標i2c從設備;

29、釋放所述i2c主設備的控制權。

30、根據本發明的第五方面,提供一種計算機設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述計算機設備還包括如本發明任一實施例所述的半虛擬化i2c系統;所述處理器執行所述程序時實現如本發明任一實施例所述的半虛擬化i2c方法。

31、本發明公開了一種半虛擬化i2c系統、方法及計算機設備,基于virtio半虛擬化框架,通過第一虛擬機直通i2c主設備,而第二虛擬機則可以通過virtio接口與該第一虛擬機交互,繼而第一虛擬機可以通過i2c主設備將待發送的目標數據發送至對應的目標i2c從設備,從而實現了在不同的虛擬機中能夠使用同一i2c主設備下不同的i2c從設備,即采用了將i2c主設備進行半虛擬化的方式,解決了不同虛擬機對同一個i2c主設備硬件資源復用的問題,有效地降低了硬件成本。

32、應當理解的是,以上的一般描述和后文的細節描述僅是示例性和解釋性的,并不能限制本發明。



技術特征:

1.一種半虛擬化i2c系統,其特征在于,所述系統包括硬件平臺,所述硬件平臺上配置有虛擬機管理器,所述虛擬機管理器上配置有第一虛擬機和第二虛擬機;所述第一虛擬機直通i2c主設備;所述虛擬機管理器用于提供virtio框架支持,所述第一虛擬機和所述第二虛擬機通過調用所述virtio框架中的virtio接口進行交互。

2.根據權利要求1所述的系統,其特征在于,所述第一虛擬機上配置有i2c主設備驅動,所述第一虛擬機通過所述i2c主設備驅動直通i2c主設備。

3.根據權利要求1所述的系統,其特征在于,所述第一虛擬機上配置有i2c后端驅動,所述第二虛擬機上配置有i2c前端驅動,所述第一虛擬機和所述第二虛擬機通過所述i2c后端驅動和所述i2c前端驅動調用所述virtio接口進行交互。

4.根據權利要求1所述的系統,其特征在于,所述第一虛擬機和所述第二虛擬機通過共享內存實現所述virtio框架中的數據傳遞功能,所述第一虛擬機和所述第二虛擬機通過所述虛擬機控制器提供的虛擬中斷機制實現所述virtio框架中的通知功能。

5.一種半虛擬化i2c方法,其特征在于,應用于如權利要求1-4任一所述的半虛擬化i2c系統,所述方法包括:

6.根據權利要求5所述的方法,其特征在于,所述第二虛擬機通過所述virtio接口向所述第一虛擬機獲取所述i2c主設備的控制權,包括:

7.根據權利要求5所述的方法,其特征在于,所述第二虛擬機通過所述virtio接口將目標數據發送至所述第一虛擬機,所述第一虛擬機通過所述i2c主設備將所述目標數據發送至對應的目標i2c從設備,包括:

8.根據權利要求5所述的方法,其特征在于,所述第二虛擬機釋放所述i2c主設備的控制權,包括:

9.一種半虛擬化i2c方法,其特征在于,應用于如權利要求1-4任一所述的半虛擬化i2c系統中的所述第一虛擬機,所述方法包括:

10.一種半虛擬化i2c方法,其特征在于,應用于如權利要求1-4任一所述的半虛擬化i2c系統中的所述第二虛擬機,所述方法包括:

11.一種計算機設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,其特征在于,所述計算機設備還包括如權利要求1-4任一所述的半虛擬化i2c系統;所述處理器執行所述程序時實現如權利要求5-8任一所述的半虛擬化i2c方法。


技術總結
本發明公開了一種半虛擬化I2C系統、方法及計算機設備,所述系統包括硬件平臺,所述硬件平臺上配置有虛擬機管理器,所述虛擬機管理器上配置有第一虛擬機和第二虛擬機;所述第一虛擬機直通I2C主設備;所述虛擬機管理器用于提供virtIO框架支持,所述第一虛擬機和所述第二虛擬機通過調用所述virtIO框架中的virtIO接口進行交互。本發明將I2C主設備進行半虛擬化,解決了不同虛擬機對同一個I2C主設備硬件資源復用的問題,有效地降低了硬件成本。

技術研發人員:朱宏謀,李毓強,王曉偉
受保護的技術使用者:重慶長安汽車股份有限公司
技術研發日:
技術公布日:2025/4/24
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 乾安县| 博野县| 玛多县| 金平| 海宁市| 德清县| 中江县| 迭部县| 平谷区| 昌都县| 赣榆县| 东乡县| 涿州市| 庆元县| 鹿邑县| 如东县| 连云港市| 淄博市| 格尔木市| 闽侯县| 类乌齐县| 中超| 封丘县| 赣榆县| 唐山市| 连城县| 汤原县| 藁城市| 阜新| 中江县| 鹰潭市| 云安县| 沙坪坝区| 政和县| 南投县| 原平市| 辛集市| 明星| 玛曲县| 依兰县| 南康市|