Spice 的图形子系统是最Spice最核心也是最复杂的一块,它不像其他的几个子系统由spice server 主进程来处理,而是有一个单独的线程处理,而且与主进程是并行运行的,负责这个处理的线程就是Red worker。具体来说,redworker负责以下的处理:
1) 处理QXL设备命令(如画,更新,光标处理等);
2) 处理从Dispatcher接收到的消息;
3) 显示和光标的通道创建、维护和通信;
4) 图像压缩(用quic, lz和 glz);
5) 视频流处理;
6) 用Cario或OpenGL渲染图形——画布(canvas)和表面(surface)等;
7) 命令环(ring)的操作;
8) 与spice client的显示和光标通道的信息交互
Red worker有很多处理,接下来阅读一些主要的方法,今天先看看red_init:
1.1Red_worker.c: red_init
stati |