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.sh

4.
执行完测试后,快捷键返回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 0


vmxgfx 在linux内核源码的路径,感兴趣的可以看看如何实现的
\linux-5.4.70\drivers\gpu\drm\vmwgfx	

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

测试脚本下载链接

Ubunt16测试drm脚本,不带有cursor
test_drm_modetst_no_cursor_test_all_disp_modes_ubuntu_16.sh

Ubunt16测试drm脚本,带有cursor
test_drm_modetst_with_cursor_ubuntu_16.sh

Ubunt18测试drm脚本,不带有cursor
test_drm_modetst_no_cursor_test_all_disp_modes_ubuntu_18.sh

具体效果大家可以实际运行看下,一切顺利就是我演示视频中的效果

相关推荐

  1. Vbox虚拟+Ubuntu motest测试drm

    2024-07-22 08:10:02       21 阅读
  2. 测试:常见的虚拟命令

    2024-07-22 08:10:02       42 阅读
  3. 虚拟dom

    2024-07-22 08:10:02       47 阅读
  4. <span style='color:red;'>虚拟</span><span style='color:red;'>DOM</span>

    虚拟DOM

    2024-07-22 08:10:02      32 阅读
  5. 虚拟 DOM

    2024-07-22 08:10:02       131 阅读
  6. 什么是虚拟dom

    2024-07-22 08:10:02       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-22 08:10:02       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-22 08:10:02       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-22 08:10:02       45 阅读
  4. Python语言-面向对象

    2024-07-22 08:10:02       55 阅读

热门阅读

  1. 力扣1882.使用服务器处理任务

    2024-07-22 08:10:02       18 阅读
  2. redis常用架构以及优缺点

    2024-07-22 08:10:02       17 阅读
  3. 保研面试高频问题——day1

    2024-07-22 08:10:02       17 阅读
  4. Linux内存管理--系列文章八——内存管理架构

    2024-07-22 08:10:02       15 阅读
  5. R和RStudio的下载和安装(Windows 和 Mac)

    2024-07-22 08:10:02       14 阅读
  6. PO设计模式

    2024-07-22 08:10:02       16 阅读
  7. 【Python】探索 Python 中的 slice 方法

    2024-07-22 08:10:02       14 阅读