mesa库的模块功能和关系详述

这篇具有很好参考价值的文章主要介绍了mesa库的模块功能和关系详述。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

技术关键词:mesa、OpenGL、meson

目录

前言:meson 构建系统

一、静态库列表(.a文件)

二、动态库列表(.so文件)

三、模块关系


前言:meson 构建系统

        在详述mesa模块功能和关系前,先来说下如何分析mesa的模块和关系。很简单,熟悉mesa的构建系统:meson。meson 是一个生成 ninja 文件的构建系统,不同的构建系统有不同的语法,但万变不离其宗:程序的编译、链接。通过跟踪分析meson.build里的static_library、executable、shared_library生成目标文件的语句,就可以把整个模块关系图梳理出来。


一、静态库列表(.a文件)

库名称 库功能 库详细描述
libglx 实现linux系统上的render context创建与管理 类似于windows上的wgl。负责linux平台上的一些可新概念的的初始化和管理,如display、screen、context
libmesa 用户态gl*函数的入口库,维护opengl 状态
libloader 负责后端驱动加载

提供环境变量、dri配置文件、pci id、 device driver四种加载方式

libloader_dri3_helper dri3 扩展的实现

对接使用xserver的dri3+present扩展进行送显

libdri linux dri的支持

gallium frontends

lib*** 显卡厂商的用户态驱动核心部分,负责组织硬件接收的数据

gallium driver。例如ADM的radeonsi,则生成的库就是libradeonsi.a

lib***winsys 负责对接linux内核驱动

gallium winsys,封装与操作系统相关的内容

二、动态库列表(.so文件)

库名称 库功能 库详细描述
libGL gl的初始化库 由libglx.a、libloader.a、libloader_dri3_helper.a组成,负责初始化gl,加载后端驱动
libEGL egl库 负责egl的具体api规范的实现
libglapi gl函数的dispatch库 负责gl函数的入口分发
libgbm graph buffer manager,统一bo的管理 该库是想统一设备内存的管理,提供一个统一的与后端驱动无关的存储管理接口
libgallium_dri 厂商实现的后端驱动 由libdri.a、lib***.a、lib***winsys.a组成,厂商的用户态驱动

三、模块关系

一图胜千言。模块关系图如下,该图罗列了mesa的核心模块的包含和依赖关系。本图在上一篇文章mesa 概述中也有涉及,但该图给出了更多的模块内部的细节。后续内容会也会看到该类似图,但每次出现,都会有新内容。

mesa系统 11模块,OpenGL-mesa实现详解,图形渲染,驱动开发

mesa 模块关系图 文章来源地址https://www.toymoban.com/news/detail-626596.html

到了这里,关于mesa库的模块功能和关系详述的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 系统学习Python——警告信息的控制模块warnings:为新版本的依赖关系更新代码

    分类目录:《系统学习Python》总目录 相关文章: 警告信息的控制模块 warnings 基础知识 警告类别 警告过滤器 基础知识 警告过滤器的执行过程 默认警告过滤器 暂时禁止警告 测试警告 为新版本的依赖关系更新代码 常用函数 warnings.warn warnings.warn_explicit warnings.showwarning warning

    2024年01月19日
    浏览(31)
  • SMART系统—系统功能管理模块设计与开发

    SMART系统是一个在语言上采用跨平台的JAVA技术、在框架架构上采用流行的MVC架构、在业务架构中采用Spring的IOC思想和ORM技术的一个新型智能在线考试信息管理系统,该系统主要实现了学生在线考试与评估以及教师对学生在线考试信息的管理和维护。本文设计的系统管理功能模

    2023年04月18日
    浏览(26)
  • ERP系统有哪些功能模块?

    现在市面上的管理软件有很多,不少企业都会去选择一些操作简单便捷的软件,优化工作流程,提高工作效率,其中ERP系统就是常见的一种,ERP是企业资源计划(Enterprise Resource Planning)的简称,是可以为企业员工及决策层提供决策手段的管理平台。ERP是一个庞大的数据库管理系

    2024年02月04日
    浏览(36)
  • windows11系统VBS安全功能关闭方法

    对于Windows系统上的 VBS安全功能 ,不知道大家以前是否有所了解。VBS中文意思是 基于虚拟化的安全 ,全称Virtualization-Based Security。它构建于Hyper-V之上,使用软硬件虚拟化来增强系统安全性。 简单来说,就是开启后, 主机会运行在虚拟机上 ,相当于多了一层屏障。如此一来

    2024年01月18日
    浏览(38)
  • Win11系统设置功能无法开启解决方法

    Win11系统设置功能无法开启解决方法。我们在进行电脑使用是,有时候需要去修改一些电脑的相关设置,这个时候就需要去进行系统设置。有用户发现自己电脑的系统设置功能出现了问题,无法正常的开启,我们来看看解决此问题的操作方法吧。 解决方法 1、桌面右键空白处

    2024年02月11日
    浏览(27)
  • Win10/Win11系统关闭边缘滑动功能

    HKEY_LOCAL_MACHINE/SOFTWARE/Policies/Microsoft/Windows/EdgeUI 如果没有EdgeUI项,选中Windows点击鼠标右键,选择新建→项,然后命名为EdgeUI;在EdgeUI右侧空白处右键新建DWORD(32位)值,重命名为 AllowEdgeSwipe 。

    2024年02月15日
    浏览(36)
  • 企业电子招投标采购系统——功能模块&功能描述+数字化采购管理 采购招投标

    功能模块: 待办消息,招标公告,中标公告,信息发布   描述: 全过程数字化采购管理,打造从供应商管理到采购招投标、采购合同、采购执行的全过程数字化管理。通供应商门户具备内外协同的能力,为外部供应商集中推送展示与其相关的所有采购业务信息(历史合作、

    2024年02月04日
    浏览(35)
  • 开源的OA办公系统——勾股OA2.0发布,新增审批模块、工作上报等功能模块

    勾股OA是一款基于ThinkPHP6 + Layui + MySql打造的简单实用的开源的企业OA办公系统。可以帮助解决企业办公项目80%的重复工作,让开发更多关注业务逻辑。既能快速提高开发效率,帮助公司节省人力成本,同时又不失灵活性。使用勾股OA可以简单快速地开发出企业级的Web应用系统。

    2023年04月08日
    浏览(28)
  • csrf跨站请求的相关装饰器、Auth模块(模块的使用、相关方法、退出系统、修改密码功能、注册功能)、扩展默认的auth_user表

    1 csrf跨站请求的相关装饰器 2 Auth模块的使用 3 Auth模块的相关方法 3.1 登录页面前端代码 3.2 Auth模块之退出系统 3.3 Auth模块之修改密码功能 3.4 Auth模块之注册功能 4 扩展默认的auth_user表

    2024年02月12日
    浏览(32)
  • spring cloud 企业工程项目管理系统源码+项目模块功能清单

        工程项目各模块及其功能点清单 一、系统管理     1、数据字典:实现对数据字典标签的增删改查操作     2、编码管理:实现对系统编码的增删改查操作     3、用户管理:管理和查看用户角色     4、菜单管理:实现对系统菜单的增删改查操作     5、角色管理:管理

    2023年04月19日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包