主要观点总结
本文介绍了Android显示系统的硬件和软件细节,从硬件显示模块、显示设备(如LCD、CRT、OLED、LED)和视频显示接口,到软件篇中的BufferQueue机制、Fence机制、画面显示流程等。文章详细分析了Android显示系统从硬件到软件的整个流程,包括硬件的显示模块、显示设备的工作原理、视频显示接口的发展,以及软件中的BufferQueue、Fence机制如何解决同步问题,并描述了Android显示系统如何处理并显示应用程序的画面。
关键观点总结
关键观点1: 硬件显示模块
硬件显示模块是构建在硬件运行原理上的,需要硬件的支持。常见的显示设备有LCD、CRT、OLED、LED等,它们各自具有不同的工作原理和特点。
关键观点2: 视频显示接口
视频显示接口从出现到发展经历了五代,从亮色混合到纯数字接口,包括CVBS、AV、S-端子、色差信号、VGA、DVI、HDMI、DP等。
关键观点3: 软件篇的BufferQueue机制
BufferQueue解决了生产者和消费者的同步问题,通过管理共享内存的控制权,实现了应用与SurfaceFlinger、HWC Service之间的通信。
关键观点4: Fence机制
Fence机制提供了一种在不同硬件之间同步访问共享资源的方法,解决了CPU和GPU异步访问资源的问题,确保不同硬件可以并行工作。
关键观点5: 画面显示流程
画面从应用绘制、提交到SurfaceFlinger,再到HWC Service合成,最后通过DRM接口传输到DDIC并显示到屏幕上的完整流程。
文章预览
内网的一篇好文 征得大佬同意拿来分享一下。硬核介绍Android显示系统,深入每一个细节,从硬件到软件,带你体会不一样的风景。 硬件篇 1 硬件显示模块 无论软件架构多么的高端大气上档次,都离不开硬件的支持,软件架构是构建的硬件的运行原理之上的,显示模块更是如此。 1 常见的显示设备: LCD(liquid crystal display)液晶屏 液晶是一种材料,液晶这种材料具有一种特点:可以在电信号的驱动下液晶分子进行旋转,旋转时会影响透光性,因此我们可以在整个液晶面板后面用白光照(称为背光),可以通过不同电信号让液晶分子进行选择性的透光,此时在液晶面板前面看到的就是各种各样不同的颜色,这就是 LCD 显示画面的原理。有些显示器(譬如 LED 显示器、CRT 显示器)自己本身会发光称为主动发光,有些(LCD)本身不会发光只会透光,需要背光
………………………………