【技术实现步骤摘要】
半虚拟化串口方法、装置、系统及存储介质
[0001]本申请涉及虚拟化
,特别涉及一种半虚拟化串口方法、装置、系统及存储介质。
技术介绍
[0002]目前,由于车载功能安全和硬件资源的要求越来越高,单一SMP(Symmetrical Multi
‑
Processing,对称多处理)的soc(System on Chip,系统级芯片)硬件上运行一个操作系统已经不能满足实际的使用需求,因此,相关技术中通常在soc硬件上运行一个虚拟机监视器,由虚拟机监视器来提供虚拟化支持,实现串口的半虚拟化。
[0003]其中,半虚拟化串口通过中断方式进行数据传输,即在每次数据传输时均需要进行中断,具体表现为虚拟机上操作系统的退出。然而,相关技术中每次数据传输仅能传输一个字节,通常每次数据传输需要多次中断才能完成,导致数据传输过程中虚拟机上操作系统的频繁退出,大大降低传输效率,实用性较差。
技术实现思路
[0004]本申请提供一种半虚拟化串口方法、装置、系统及存储介质,以解决相关技术中半虚拟化串口数据 ...
【技术保护点】
【技术特征摘要】
1.一种半虚拟化串口方法,其特征在于,所述方法应用于任意第一操作系统,所述第一操作系统包括虚拟串口前端驱动,且所述第一操作系统与包括物理串口驱动和虚拟串口后端驱动的第二操作系统均安装于虚拟机上,其中,所述方法包括以下步骤:通过所述虚拟串口前端驱动申请共享内存块;识别所述共享内存块的物理首地址,将所述物理首地址映射至所述第二操作系统的虚拟地址空间;通过所述虚拟串口前端将预设数据长度的目标数据放入所述共享内存块,利用所述共享内存块实现数据传输,其中,所述虚拟串口后端驱动通过所述虚拟地址空间的物理首地址读取所述共享内存块的目标数据,所述物理串口驱动将所述目标数据发送至物理串口,其中,所述预设数据长度大于或等于一个字节。2.根据权利要求1所述的方法,其特征在于,所述将所述物理首地址映射至所述第二操作系统的虚拟地址空间,包括:将所述共享内存块的物理首地址通过写能被捕获内存地址告知虚拟机监控器,其中,所述虚拟机监控器捕获内存访问后产生虚拟中断通知,所述第二操作系统收到所述虚拟中断通知后,控制所述虚拟串口后端驱动将所述物理首地址映射至所述第二操作系统的虚拟地址空间。3.根据权利要求1所述的方法,其特征在于,在所述虚拟串口后端驱动通过所述虚拟地址空间的物理首地址读取所述共享内存块的目标数据之前,还包括:在所述目标数据放入所述共享内存块之后,控制所述虚拟串口前端驱动通知所述第二操作系统读取数据。4.根据权利要求3所述的方法,其特征在于,所述控制所述虚拟串口前端驱动通知所述第二操作系统读取数据,包括:控制所述虚拟串口前端驱动通过写能被捕获内存地址告知虚拟机监控器,其中,所述虚拟机监控器捕获内存访问后产生虚拟中断通知,所述第二操作系统收到所述虚拟中断通知后开始读取数据。5.一种半虚拟化串口方法,其特征在于,所述方法应用于第二操作系统,所述第二操作系统包括物理串口驱动和虚拟串口后端驱动,且所述第二操作系统与包括虚拟串口前端驱动的第一操作系统均安装于虚拟机上,其中,所述方法包括以下步骤:识别所述第二操作系统的当前状态;若所述当前状态为未初始化完成状态,则在收到虚拟中断通知后,控制所述虚拟串口后端驱动读取任意第一操作系统的共享内存块的物理首地址,并将所述物理首地址映射至所述第二操作系统的虚拟地址空间;若所述当前状态为初始化完成状态,则在收到虚拟中断通知后,控制所述虚拟串口后端驱动通过所述虚拟地址空间的物理首地址读取所述共享内存块的目标数据,并控制所述物理串口驱动将所述目标数据发送至物理串口,其中,所述目标数据的数据长度大于或等于一个字节。6.一种半虚拟化串口装置,其特征在于,所述装置应用于任意第一操作系统,所述第一操作系统包括虚拟串口前端驱动,且所述第一操作系统与包括物理串口驱动和虚拟串口后端驱动的第二操作系统均安装于虚拟机上,其中,所述装置包括:
申请模块,用于通过所述虚拟串口前端驱...
【专利技术属性】
技术研发人员:田焱,李毓强,王晓伟,
申请(专利权)人:重庆长安汽车股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。