当前位置: 首页 > news >正文

Vbox虚拟机+Ubuntu motest测试drm

1. 效果演示

大家做学习drm的时候,没有硬件测试平台不方便测试,这里给大家演示下如何基于Vbox虚拟机+Ubuntu测试drm的一些功能,先看下演示视频。

没有光标测试:

demo_vwmfgx_test_drm

带有光标测试:

demo_vwmfgx_drm_with_cursor

可以看到,有个半透明的小方块就是光标,使用虚拟机的方式,drm cursor相关的效果也可以实际体验了^_^.

左边是ssh登录虚拟机执行modetest命令,右边是实时效果。这个应该是目前没有硬件的条件下最直观的drm测试方法了。

2.测试方法

Vbox虚拟机+Ubuntu16/18都可以测试。
测试的前提是Vbox+Ubuntu已经安装好了,并且能够通过ssh登录虚拟机里面的Ubuntu。
具体测试步如下:
0. 安装drm相关的package
sudo apt install libdrm-dev
没有相关packge的可以直接下载libdrm 源码编译安装 1. 进入linux命令行模式Ubunt18.04
在Linux系统中,可以使用以下快捷键来进入命令行模式:
Ctrl + Alt + F1:GUI模式
Ctrl + Alt + F6:命令行模式Ubunt16.04
在Linux系统中,可以使用以下快捷键来进入命令行模式:
Ctrl + Alt + F1:命令行模式
Ctrl + Alt + F7:GUI模式2.进入命令行模式,命令行模式选择一个用户登录3.ssh 登录虚拟机的Ubuntu执行下面脚本
执行shell脚本进行测试
Ubunt18
detst_no_cursor_test_all_disp_modes_ubuntu_18.sh
Ubunt16
detst_no_cursor_test_all_disp_modes_ubuntu_16.sh4.
执行完测试后,快捷键返回GUI模式

3. Vbox虚拟机+Ubuntu 为什么能做这个测试?

测试的命令如下:
modetest -M vmwgfx -s 24@27:1920x1200-60 -F tiles
测试其实是使用vmwgfx这个虚拟显卡驱动,提供对应的的drm接口。vmwgfx 是虚拟机虚拟显卡驱动,linux内核自带了这个驱动。
如果这个驱动没有安装,可以安装VirtualBox的虚拟机增强功能试试。
安装这个功能可以百度下就可以。查询自己系统有没有有安装vmwgfx这个驱动的方法如下
如果没有任何显示则没有安装,也就不能进行这个实验了。
要确定vmwgfx这个驱动安装后才能做这个实验。dmesg | grep vmwgfx
[    1.502045] [drm] Initialized vmwgfx 2.9.0 20150810 for 0000:00:02.0 on minor 0vmxgfx 在linux内核源码的路径,感兴趣的可以看看如何实现的
\linux-5.4.70\drivers\gpu\drm\vmwgfx	

4.资源共享及测试脚本说明 

测试脚本下载链接

Ubunt16测试drm脚本,不带有cursor
test_drm_modetst_no_cursor_test_all_disp_modes_ubuntu_16.shUbunt16测试drm脚本,带有cursor
test_drm_modetst_with_cursor_ubuntu_16.shUbunt18测试drm脚本,不带有cursor
test_drm_modetst_no_cursor_test_all_disp_modes_ubuntu_18.sh具体效果大家可以实际运行看下,一切顺利就是我演示视频中的效果

http://www.lryc.cn/news/405668.html

相关文章:

  • ArcGIS Pro SDK (九)几何 15 转换
  • Spring IOC DI --- 认识IOC DI
  • 常用的python程序汇总——入门级
  • 被问到MQ消息已丢失,该如何处理?
  • open3d:ransac分割多个平面(源码)
  • Github 2024-07-17 开源项目日报 Top10
  • vue3中Composition API写法 <script setup>标签中哪些可以不用导入即可使用?
  • Facebook Dating:社交平台的约会新体验
  • 【系统架构设计 每日一问】五 搜索型业务,采用MySQL+ES,如何保证数据一致性
  • 缓存穿透,缓存击穿,缓存雪崩
  • 运维 | 清理 Linux 磁盘空间方法汇总
  • googleTest 源码主线框架性分析——TDD 01
  • Python:对常见报错导致的崩溃的处理
  • linux系统进程占cpu 100%解决步骤
  • 数据传输安全--IPSEC
  • Unity XR Interaction Toolkit的安装(二)
  • 什么是PCB流锡槽焊盘/C型焊盘,如何设计?-捷配笔记
  • 电缆故障精准定位系统
  • Google Chrome 浏览器在链接上点右键的快捷键
  • Redis在SpringBoot中遇到的问题:预热,雪崩,击穿,穿透
  • Pytorch 6
  • iterator(迭代器模式)
  • 使用Web控制端和轻量级客户端构建的开放Web应用防火墙(OpenWAF)
  • 设计模式在FileBrowser中的几个应用
  • 【JavaEE进阶】——Spring AOP
  • Python - conda使用大全
  • ASPICE在汽车软件开发中的作用
  • 亚马逊云科技 re:Inforce 2024中国站大会
  • Lottie:动态动画的魔法棒
  • IPython使用技巧整理