Sunday, April 24, 2011

linux gfx stack

1.Every app has a window associated with it
2.Every window can have multiple surfaces associated with it
3.Every surface has multiple objects drawn on it
4.Surface and window are abstractions provided by x system
5.Meaning the physical memory object for both are provided by x system
6.An application draws an object on its surface and tells the x
7.x does a local processing for that current window,then combines processing with all the other windows
8.x then makes it into a frame buffer
9.writes to the hardware(frame buffer may be a hw buffer, so writing will reach the hw directly)
10.above was software render
11.for hw render, each window and surface , object would have a corresponding handle, memory within the hardware memory
12.each application will have its own private memory in hw
13.every write from hw will get into hw directly, no combining operation done by x
14.the hw internally does the combining
15.mixed rendering, some app uses hw and sw surfaces
16.sw surfaces uses the first method and creates a frame buffer
17,hw surfaces writes into app private memory in hw
18.hw combines both and creates the final output

No comments:

Post a Comment