weston 简介

article/2025/10/11 1:52:34

参考???weston wiki

Weston - Gentoo Wiki

weston (1): Linux man pages – code.tools

Weston-1.12.0

非常详尽,多图慎入:Wayland与Weston简介 - 云+社区 - 腾讯云

什么是weston?

Wayland是一套display server(Wayland compositor)与client间的通信协议,而Weston是Wayland compositor的参考实现。

Wayland 架构

Wayland protocol设计成2层通信:底层基于C语言和socket通讯 ,顶层基于XML实现

Wayland protocol分为两个库文件:libwayland-server和libwayland-client,分别由Wayland compositors和Wayland client使用。

Wayland Core Interfaces

源码目录protocol/wayland.xml定义了Wayland protocol,最基本的协议一般包括:

Rendring Mode

wayland协议中不包括渲染API,client可以使用cairo或者opengl渲染库来自己实现所有渲染任务,也可以依赖wayland支持组件库(QT、GTK)来实现。窗口内容渲染好后存储在wl_buffer object中,窗口数据必须可在client and the compositor之间可以共享。如果client使用CPU渲染,结果将存储在memory中,这种情况下,client and the compositor可以通过share memory来实现共享(wl_shm and wl_shm_pool interfaces)。缺点就是显示的performance可能会下降,因为compositor会有一些额外的任务,比如,将共享的数据发送给GPU,这时候会产生一些延迟。

典型的做法是通过OpenGL, OpenGL ES or Vulkan提供的API结合GPU实现硬件加速,Client and compositor 通过特殊句柄引用GPU-space的buffer而非main memory中的buffer,compositor可以避免额外的数据拷贝(client-to-compositor-to-GPU)。

如何显示是由client指导compositor实现的,client将渲染好的buffer和surface绑定,commit给compositor。compositor显示结束后释放buffer,通过event通知client。

Weston 依赖GEM实现buffer在APP和compositor之间共享。

Weston中使用libinput来处理输入设备(键盘、鼠标、touch等)


http://chatgpt.dhexx.cn/article/wvdsi3yq.shtml

相关文章

waylandweston

简单地说,Wayland是一套display server(Wayland compositor)与client间的通信协议,而Weston是Wayland compositor的参考实现。其官网为http://wayland.freedesktop.org/。它们定位于在Linux上替换X图形系统。X图形系统经历了30年左右的发展,其…

weston 1: 编译与运行傻瓜教程

本人Kubuntu版本是22.04 sudo apt-get update sudo apt-get upgrade 进入主目录 cd $HOME/ mkdir install mkdir works vim ~/.bashrc export WLD$HOME/install source ~/.bashrc cd works wayland git clone https://gitlab.freedesktop.org/wayland/wayland.git cd …

weston input 概述

weston input 概述 零、前言 本文描述了有关于 weston (基于 wayland 协议一种显示服务器的实现) 中有关于输入设备管理的部分;为了聚焦于此,本文不会对 weston 整体或 wayland 协议进行过多的阐述. 考虑到读者可能存在不同的需求,采用分层次的描述方式,主要面向以下两类人群…

weston 2: 登录后直接启动weston配置

本人Kubuntu版本是22.04 名词:SDDM(SDDM - Arch Linux 中文维基)显示管理器 配置流程如下: 1.修改配置文件 a.配置.bashrc vim ~/.bashrc //以下内容删除 #export WLD$HOME/install #export LD_LIBRARY_PATH$WLD/lib/x86_64-…

Weston介绍

Weston结构说明 Weston源码结构 clients:wayland显示客户端应用 compositor:合成器进程(服务端),窗体风 格样式处理 libweston:合成器以及客户端渲染处理以及驱动实现方式,以及wayland服务与客户…

Wayland/Weston 启动方式简介

前言 本文简单介绍 Weston 常用的几种 backend 启动方式。目前最新的 Weston 8.0.0 支持如下几种 backend: drm-backendfbdev-backendheadless-backendrdp-backendwayland-backendx11-backend 其中 headless-backend 不带任何 UI 界面,主要用于 westo…

weston设置

weston设置 屏幕旋转180度方法修改标题栏位置启动配置文件 屏幕旋转180度方法 编辑 /etc/xdg/weston/weston.ini文件,增加如下语句 [output] nameDSI-1 transform180其中name为你的显示屏名称,可以通过如下命令来查看显示屏名称: card0-DS…

Weston 窗口管理(2)

窗口管理(2) 本文基于 weston 分支 10.0.2 进行描述. 五、概述 本文为窗口管理(1)的续章,更多站在开发者角度,以 weston 的代码实现讲解窗口管理(1)中所实现的部分业务场景. 六、数据结构 在窗口管理(1)中曾经描述过 weston 具体的分层逻辑,如下: 再进一步可以把 WESTON_LAY…

01-weston 简介

参考​​​​​​weston wiki Weston - Gentoo Wiki weston (1): Linux man pages – code.tools Weston-1.12.0 非常详尽,多图慎入:Wayland与Weston简介 - 云社区 - 腾讯云 什么是weston? Wayland是一套display server(Wayland compos…

disunity的使用

1. 下载并安装好jdk: 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 安装教程:http://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html 2.下载disunity: https://…

T-digest

目录 算法算法原理空间消耗及错误界限 示例T-digest的建立T-digest的查询 相关链接 上一篇博客中讲述了使用 R a n d o m Random Random算法进行 q u a n t i l e quantile quantile估算,详情可见Random,本博客将讲诉另外一个 q u a n t i l e quantile …

[反编译U3D]Decompile Unity Resources 修正

反编译unity project的资源文件,包括ios,android,pc等,仅供学习使用! 1.disunity Examples 1.1disunityGUI 1.1.2DiunityGUI 使用方法 2.unity3d decompiler 3.UnityAssetsExplorer 反编译unity project的资源文件&…

edit distance 理解

一直没有理解到inert i delete j 的意思。看看图就可以明白了。 对于那道面试题:http://www.careercup.com/question?id6287528252407808 k-palindrome. 最精妙的地方在于只考虑 k 长度以内的改变,这样就可以判断出来了。速度是O(k*n) 1. Definition o…

Tiny-DSOD: Lightweight Object Detection for Resource-Restricted Usages

Y uxi Li1 lyxok1sjtu.edu.cn Jiuwei Li2 jiuwei.liintel.com Weiyao Lin1 wylinsjtu.edu.cn Jianguo Li2 jianguo.liintel.com 1Shanghai Jiao Tong University , China 2Intel Lab China Abstract 近年来,随着深度学习的发展,目标检测技术取得了长足…

android density

为什么要引入dip —The reason for dip to exist is simple enough. Take for instance the T-Mobile G1. It has a pixel resolution of 320x480 pixels. Now image another device, with the same physical screen size, but more pixels, for instance 640x480. This devic…

手游游戏资源提取 (破解、AssetStudio、VGMToolbox、disunity、Il2CppDumper、 .NET Reflector)...

参考: 公主连结 游戏资源提取(解包)简明教程 Unity3D研究院之mac上从.ipa中提取unity3D游戏资源 吾爱破解:记一次unity3d data修改 GitHub:Il2CppDumper 想拿点知名IP的手游素材做点demo,然后搜了下如何能拿到app的素材资源 一 下…

DISN:Deep Implicit Surface Network for High-quality Single-view 3D Reconstruction

时间:2019年 作者:Weiyue Wang ,University of Southern California etc. Abstract: 1.DISN 通过预测基本符号距离场来从二维图像中生成高质量的细节丰富的三维网格; 2.DISN 在二维图像上预测每一个三维点的投影位置&#xff…

Dist

这道题只要找到我们距离的规律就行了&#xff0c;我们可以发现&#xff0c;当行数小于列数时,列数(列数-1)/k,否则&#xff0c;行数(行数-1)/k&#xff0c;没记算一次我们的距离就会增加1&#xff0c;应为行数一减你就往下了一个&#xff0c;所以这个要加1. #include<bits/…

unity3D 如何提取游戏资源 (反编译)+代码反编译【P.M.出品】

转自&#xff1a;https://blog.csdn.net/LANGZI7758521/article/details/52291564 首先感谢 雨松MOMO 的一篇帖子 教我们怎么提取 .ipa 中的游戏资源。教我们初步的破解unity3d资源的基本方法 附上原帖的链接&#xff1a;http://www.xuanyusong.com/archives/2584 下面我会从头…