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

做淘宝美工的网站公司平台

做淘宝美工的网站,公司平台,免费的网站推广 外贸,网站优化排名易下拉教程目录 引言 概念与理解 SurfaceFlinger Surface HWC Fence#xff1a; Gralloc#xff1a; DisplayDevice 引言 Activity是Android的主要UI相关组件。通过View的相关类和接口实现#xff0c;在WMS的管理下#xff0c;进行窗口和控件的测量#xff0c;布局和绘制 Gralloc DisplayDevice 引言 Activity是Android的主要UI相关组件。通过View的相关类和接口实现在WMS的管理下进行窗口和控件的测量布局和绘制形成的图层交给SurfaceFlinger进行合成渲染然后提供给屏幕进行显示 概念与理解 SurfaceFlinger 是Android图形的大总管负责管理图形的合成与渲染。 SurfaceFlinger会依赖多个线程来实现完成其合成渲染的功能。这些线程也是实现Vsync机制的框架的线程。换句话说SurfaceFlinger主要是依赖于Vsync机制来实现流水线的方式管理Android图形的合成与渲染。首先Vsync可以是由硬件产生也可以由软件来产生硬件产生Vsync的实体叫做HWComposer软件的产生Vsync的实体叫做VsyncThread。在SurfaceFlinger启动main函数初始化阶段还会创建一个DispVsyncThread用于将Vsync信号一分为二分别提供给SF和APP。产生这两个vsync信号的叫做EventThread-sf和EventThread-app Surface 可以理解为一个canvas的画布可以利用skia库进行绘制。一个窗口就对应一个Surface Android显示的基本流程是 1创建一个SurfaceFlinger的客户端SurfaceComposerClient通过这个客户端创建一个Surface同时获取一个SurfaceControl 2SurfaceControl设置Layer层数Surface获取buffer 3锁定Buffer并写入buffer 4提交buffer由屏幕进行刷新显示 HWC HWChwcomposer是Android系统进行窗口合成显示的HAL层模块通常是由显示设备制造商OEM实现并完成为SurfaceFlinger服务提供硬件支持 HWC对Layer进行合成属于硬件操作可以减轻GPU合成负担这两种合成方式被称作Device与Client。 HWC的合成流程大概是 1SurfaceFlinger向HWC提供所有Layer的完整列表让HWC根据其硬件能力决定如何处理这些Layer。 2HWC给每个Layer标注合成方式 3SurfaceFlinger负责先把标注成GPU合成的Layer合成到一个输出buffer然后把这个输出buffer和其他Layer一起交给HWC让HWC完成剩余Layer的合成最后提供给屏幕进行显示 官方要求HWC设备必须具备的功能 1至少支持4个叠加层状态来系统栏应用本身和壁纸或者背景 2叠加层可以大于显示屏 3具备每像素和每平面的Alpha混合 4为了支持受保护内容必须提供受保护内容视频播放的硬件路径 5RGBA packing orderYUV formatstilingswizzlingstrict properties 部分专业词汇说明 Tiling可以把Image切割成MxN个小块最后渲染时再将这些小块拼接起来就像铺瓷砖一样。Swizzling一种拌和技术表示向量单元可以被任意地重排或重复 HWComposer是Device合成的抽象 Fence Fence是一种资源同步机制可以理解为资源锁。主要用于跨硬件场景如CPU,GPU,HWC之间的buffer资源的同步。 实现原理 Gralloc 般来讲Gralloc模块在实际设备中是由硬件厂商提供的以便于最佳地配合手机硬件。实现的目录在hardware/libhardware/modules/gralloc中 Android帧缓冲区硬件抽象层模块Gralloc的实现原理如下 1分配一个匹配屏幕大小的图形缓冲区 2将分配好的图形缓冲区注册映射到当前进程的地址空间来 3将要绘制的画面的内容写入到已经注册好的图形缓冲区中去并且渲染拷贝到系统帧缓冲区中去 为了实现以上三个操作我们还需要 1加载Gralloc模块 2打开Gralloc模块中的gralloc设备和fb设备 其中gralloc设备负责分配图形缓冲区Gralloc模块负责注册图形缓冲区而fb设备负责渲染图形缓冲区。在GrafficBuffer中内存是由Gralloc模块中分配的基于上一节 FB的工作原理这里主要分析Gralloc模块如何分配内存。 DisplayDevice 应用端的Buffer是向Ashmem申请的DisplayDevice端的Buffer是向FrameBuffer申请的 应用端的Buffer是用来填充的DisplayDevice端的Buffer是用来推给Framebuffer 渲染的
http://www.hkea.cn/news/14279209/

相关文章:

  • 高端网站建设公司价格团队建设网站
  • 网站开发人员岗位网站虚拟建设策划
  • vf建设银行网站王烨然
  • 推广 外贸 网站做ps从哪个网站上下载图片大小
  • 文汇网站建设个人怎么做淘宝客网站
  • 长春火车站时刻表绍兴seo推广公司
  • 住房与建设部网站 2018 128号网站管理员作用
  • 网络公司制作网站专业的医疗行业网站模板
  • 做污事网站园林景观设计公司
  • 门户网站上的广告怎么做红木家具网站模板
  • 哈尔滨网站建设团队插头 东莞网站建设
  • 网站对应不同域名西安网站制作维护
  • 总工会网站建设方案南宁公司网站建设
  • 网站设计师薪资php网站开发用什么软件
  • 网站建设电子书资料app拉新项目一手渠道商
  • 手机能建网站吗大连云app官方下载
  • 烟台网站建设优惠臻动传媒网站域名和空间区别
  • 前端网站主题怎么做青山别墅网页制作教程
  • asp.net 网站开发架构公司员工培训方案
  • 做品牌形象网站监理网站
  • php网站开发外文文献固始网站制作
  • 邢台专业做网站公司为什么做电影网站没有流量吗
  • 上传网站到google网站建设与规划学的心得体会
  • 做合约交易哪个网站好网站建设常见问题及解决办法
  • 免费网络咨询免费建站泰安公司网站开发
  • 大气集团企业网站模板wordpress备案怎么写
  • 东莞市美时家具营销型网站化妆品网站方案
  • 阿里云做网站官网百度服务中心电话
  • 有做不锈钢工程的网站编程训练网站
  • 网站 建设初步推进网站建设工作计划