Linux DRM那些事-基本概念

1、DRM介绍

  在Linux内核中,可以使用fbdev的API管理图形适配器的帧缓冲区,可是它没法处理基于GPU的现代显卡的3D加速功能。DRM是Linux内核的一个子系统,最初是做为X Server DRI的内核空间组件开发的,后续也被用于其它图形栈(如Wayland)。DRM负责与现代显卡的GPU接口交互,用户程序能够使用DRM提供的API,向GPU发送命令和数据,实现类显示模式设置的操做、GPU硬件加速的3D渲染、视频解码和GPGPU(通用GPU)计算。linux

2、名词介绍

  下表介绍了DRM框架中涉及到的部分名词:网络

缩写 全称 解释
DRI Direct Rendering Infrastructure 基层直接渲染
DRM Direct Rendering Manager 直接渲染管理器
FBDEV Framebuffer Device 帧缓冲设备
GEM Graphics Execution Manager 图形执行管理器
KMS Kernel Mode Setting 内核显示模式设置
UMS User-space Mode Setting 用户空间显示模式设置
V4L2 Video For Linux 2 linux视频设备驱动

3、DRM框架

  Linux DM框架包括两部分:DRM core和DRM driver。DRM core实现了DRM的基本框架,能够注册DRM driver,同时为用户空间提供了一组ioctl。DRM driver主要实现它所支持的CPU/GPU等硬件部分驱动,提供DRM core未涵盖的或扩展(仅在此类硬件上可用)的ioctl实现。用户空间程序能够使用libdrm访问DRM框架的各类接口。框架

  因为在实际项目中只调试过libdrm和Linux DRM,后续先介绍这两部分。下图摘抄自网络,介绍了DRM框架。ide

image.png

参考:https://encyclopedia.thefreedictionary.com/Direct+Rendering+Managerurl

相关文章
相关标签/搜索