原创 UNDERSTANDING ANDROID GRAPHICS INTERNALS – SURFACEFLINGER (II)

Prior to Jelly Bean, the threadLoop in SurfaceFlinger.cpp processes composition and rendering sequentially in a thr

原创 UNDERSTANDING ANDROID GRAPHIC- SURFACEFLINGER (IV)

Having known that BufferQueue exposes the APIs for consuming surface frame while implementing BnGraphicBufferProducer,

原创 SurfaceFlinger學習

https://source.android.com/devices/graphics/architecture.html這篇文章中有這麼一段話: When an app comes to the foreground, the Win

原创 Android 4.4 Graphic系統詳解(2) VSYNC的生成

VSYNC 的概念 VSYNC(Vertical Synchronization)是一個相當古老的概念,對於遊戲玩家,它有一個更加大名鼎鼎的中文名字—-垂直同步。 “垂直同步(vsync)”指的是顯卡的輸出幀數和屏幕的垂直刷新率

原创 Android 4.4 Graphic系統詳解(1) SurfaceFlinger的啓動過程

init啓動SurfaceFlinger SurfaceFlinger目前的啓動方式是做爲init進程中的一個Service來啓動。 在init中添加如下配置代碼: [cpp] view plaincopy# Set this 

原创 UNDERSTANDING ANDROID GRAPHICS INTERNALS – SURFACEFLINGER (I)

from: https://charleszblog.wordpress.com/2014/02/22/understanding-android-internals-surfaceflinger-i/ Let’s recapture

原创 The Biggest Changes in C++11 (and Why You Should Care)

It’s been 13 years since the first iteration of the C++ language. Danny Kalev, a former member of the C++ standards co

原创 UNDERSTANDING ANDROID GRAPHICS INTERNALS – GRAPHICS BASICS (I)

In this post, it is presumed that you know about frame buffer driver, display control, display overlay, frame buffer,

原创 UNDERSTANDING ANDROID GRAPHICS INTERNALS – GRAPHICS BASICS(II)

After the preceding post on ANativeWindow and ANativeWindowBuffer, we have the fodder to discuss GraphicBuffer and Sur

原创 UNDERSTANDING ANDROID GRAPHICS INTERNALS – GRAPHIC BUFFER HANDLING INTERFACES

In this post, we touch IGraphicBufferProducer, IGraphicBufferAlloc. IGraphicBufferProducer Defined in include/gui/IGr

原创 UNDERSTANDING ANDROID GRAPHICS INTERNALS – THE GRAPHIC SURFACE SERVICE INTERFACES

As pointed out in previous posts, Android does not allow UI applications to write to the frame buffer directly; Surfac

原创 pthread_once()函數詳解

在多線程環境中,有些事僅需要執行一次。通常當初始化應用程序時,可以比較容易地將其放在main函數中。但當你寫一個庫時,就不能在main裏面初始化了,你可以用靜態初始化,但使用一次初始化(pthread_once)會比較容易些。 int p

原创 UNDERSTANDING ANDROID GRAPHICS INTERNALS – GRALLOC AND HWCOMPOSER

gralloc and hwcomposer are hardware abstraction modules compliant to hw_module_t (defined in hardware/libhardware/incl

原创 android/DisplayHotplug

This feature is implemented as part of android version 4.2.1 and onward. The implementation is given as part of androi

原创 Bind illustrated

原文地址:http://blog.think-async.com/2010/04/bind-illustrated.html Asynchronous operations in Asio all expect a functio