- 9
- 0
- 约2.44千字
- 约 7页
- 2018-03-07 发布于河南
- 举报
04-Surface Manager(Surface Flinger简介)
Android图形系统分析与移植--四、Surface Manager(Surface Flinger简介)
Surface Manager是用户空间中framework下libraries中负责显示相关的一个模块,当系统同时执行多个应用程序时,SurfaceManager会负责管理显示与存取操作间的互动,另外也负责将2D绘图与3D绘图进行显示上的合成。
1、Surface manager架构分析
Android中的图形系统采用Client/Server架构,如下:
Client端:应用程序相关部分。代码分为两部分,一部分是由Java提供的供应用使用的api,另一部分则是由c++写成的底层实现。
Server端:即SurfaceFlinger,负责合成并送入buffer显示。其主要由c++代码编写而成。
Client和Server之前通过Binder的IPC方式进行通信,总体结构图如图1所示:
如上图所示,Surface的client部分其实是提供给各应用程序进行画图操作的一个桥梁,该桥梁通过binder通向server端的Surfaceflinger,Surfaceflinger负责合成各个surface,然后把buffer传送到FrameBuffer端进行底层显示。其中每个surface对应2个buffer,一个frontbuffer, 一个back buffer,更新时,数据
原创力文档

文档评论(0)