System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于虚拟仿真,具体涉及基于银河麒麟系统的vr训练实现方法。
技术介绍
1、目前,主流vr设备主要为htc vive pro,该vr设备主要基于windows 操作系统开发。能够对windows10及以上操作系统进行适配。随着国产化操作系统发展与应用,越来越多的用户开始关注虚拟现实技术的在国产化操作系统下虚拟现实设备的兼容性。
2、银河麒麟v10操作系统作为一个主流国产化操作系统,一直受到技术人员和爱好者的青睐。目前,htc vive pro在国产化操作系统下的兼容性表现得相当不错,许多国产化用户已经成功地将htc vive pro与他们的linux系统配对,享受到了沉浸式的虚拟现实体验。但是htc并没有提供非windows用户的vive pro 2驱动程序。当前的驱动程序实现拦截了steamvr和og vive使用的常见耳机驱动程序“driver_lighthouse”之间的一些调用,并使其与较新的vive pro 2兼容。目前,基于unity3d虚拟仿真引擎开发的虚拟仿真应用程序能够适配windows操作系统,还无法通过技术实现将虚拟仿真应用程序发布成国产化麒麟操作系统v10下能够正常运行的虚拟仿真应用软件。
技术实现思路
1、本专利技术的目的是提供基于银河麒麟系统的vr训练实现方法,使htc vive pro2 vr设备能够适配国产化麒麟v10操作系统。
2、本专利技术所采用的技术方案是,基于银河麒麟系统的vr训练实现方法,具体按以下步骤实施:
3、步骤1,搭建rust语言开发环境;
4、步骤2,使用 open 函数打开/dev/led驱动,对底层驱动操作;
5、步骤3,初始化vive hid相关设置;
6、步骤4,配置vr设备模式,获取设备数据;
7、步骤5,在 linux 系统中重写 openvr相关调用接口;
8、步骤6,定义设备显示组件;
9、步骤7,通过docker build的构建命令,构建一个docker镜像,输出驱动程序;
10、步骤8,在linux系统内核下安装驱动程序,实现vr设备在银河麒麟v10操作系统中的使用。
11、本专利技术技术方案的特点还在于:
12、步骤2具体为:
13、s1,加载一个驱动模块,产生一个设备文件以及与之对应的inode结构体;
14、s2,应用层调用open函数打开设备文件,上层open调用到内核时会发生一次软中断,从用户空间进入到内核空间;
15、s3,open调用sys_open函数,sys_open函数根据文件的地址,找到设备文件对应的struct inode结构体描述的信息,获取操作设备的类型字符设备或块设备,并分配一个struct file结构体;
16、s3,根据struct inode结构体里面记录的主设备号和次设备号,获取字符设备驱动中struct cdev结构体;
17、s4, linux内核将struct cdev结构体所在的内存空间首地址记录在structinode结构体i_cdev成员中,将struct cdev结构体中的记录的函数操作接口地址记录在struct file结构体的f_ops成员中;
18、s5,执行xxx_open驱动函数。
19、加载驱动模块具体为:
20、将驱动编译成模块,在linux内核启动后使用命令加载驱动模块;驱动编译完成以后扩展名为.ko。
21、命令包括insmod和modprobe命令, modprobe分析驱动模块的依赖关系,将所有的依赖模块都加载到linux内核中。
22、步骤3具体为:配置vr设备模式,对初次打开设备进行相关设置,读取设备序列号相关信息,对steam进行配置以及设置进行保存,定义steamconfig结构体,对相关参数进行定义。
23、步骤4中获取设备数据具体为:通过api获取相关设备信息。
24、步骤6具体为:
25、创建valve管理类,用于连接设备开始时的相关查找以及运行中状态控制功能;
26、创建驱动头显设备类,用于实现头显设备是否桌面显示以及是否真实展示;
27、获取设备组件功能,包括设备显示名称以及模式;
28、定义logwriter类,用于写入系统日志,以及初始化驱动参数日志;
29、定义枚举类型error,用于判定加载驱动时各种错误日志,便于后期排查。
30、步骤8具体为:在linux系统下安装驱动程序,通过sh指令执行install.sh脚本文件进行安装,实现vr设备在银河麒麟v10操作系统中的使用。
31、本专利技术的有益效果是:
32、(1)本专利技术提供的基于银河麒麟系统的vr训练实现方法,能够使不具备适配的vr设备htc vive pro2在国产麒麟操作系统v10能够适配使用。
33、(2)本专利技术提供的基于银河麒麟系统的vr训练实现方法,麒麟系统采用了多重安全防护机制,包括强制访问控制、数据加密、入侵检测等,确保了系统的高安全性这些安全机制可以有效防御潜在的网络攻击和数据泄露风险,使htc vive pro2等敏感设备得到安全保障。
34、(3)本专利技术提供的基于银河麒麟系统的vr训练实现方法,htc vive pro2设备在vr设备领域在功能与效果强于多数同价位设备,使其能够适配国产麒麟系统可以降低开发其它vr设备适配成本。
本文档来自技高网...【技术保护点】
1.基于银河麒麟系统的VR训练实现方法,其特征在于,具体按以下步骤实施:
2.根据权利要求1所述的基于银河麒麟系统的VR训练实现方法,其特征在于,所述步骤2具体为:
3.根据权利要求2所述的基于银河麒麟系统的VR训练实现方法,其特征在于,所述加载驱动模块具体为:
4.根据权利要求3所述的基于银河麒麟系统的VR训练实现方法,其特征在于,所述命令包括insmod和modprobe命令, modprobe分析驱动模块的依赖关系,将所有的依赖模块都加载到Linux内核中。
5.根据权利要求1所述的基于银河麒麟系统的VR训练实现方法,其特征在于,所述步骤3具体为:配置VR设备模式,对初次打开设备进行相关设置,读取设备序列号相关信息,对Steam进行配置以及设置进行保存,定义SteamConfig结构体,对相关参数进行定义。
6.根据权利要求1所述的基于银河麒麟系统的VR训练实现方法,其特征在于,步骤4中所述获取设备数据具体为:通过API获取相关设备信息。
7.根据权利要求1所述的基于银河麒麟系统的VR训练实现方法,其特
8.根据权利要求1所述的基于银河麒麟系统的VR训练实现方法,其特征在于,所述步骤8具体为:在Linux系统下安装驱动程序,通过sh指令执行install.sh脚本文件进行安装,实现VR设备在银河麒麟V10操作系统中的使用。
...【技术特征摘要】
1.基于银河麒麟系统的vr训练实现方法,其特征在于,具体按以下步骤实施:
2.根据权利要求1所述的基于银河麒麟系统的vr训练实现方法,其特征在于,所述步骤2具体为:
3.根据权利要求2所述的基于银河麒麟系统的vr训练实现方法,其特征在于,所述加载驱动模块具体为:
4.根据权利要求3所述的基于银河麒麟系统的vr训练实现方法,其特征在于,所述命令包括insmod和modprobe命令, modprobe分析驱动模块的依赖关系,将所有的依赖模块都加载到linux内核中。
5.根据权利要求1所述的基于银河麒麟系统的vr训练实现方法,其特征在于,所述步骤3具体为:配置vr设备模式,对...
【专利技术属性】
技术研发人员:甄红涛,张勇,吕垌,刘卫平,袁祥波,雷正伟,孙华刚,贾锋,李志伟,夏明飞,樊苗苗,郭禧庆,
申请(专利权)人:中国人民解放军三二一八一部队,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。