PyCairo 支持多种不同的后端。后端是可以显示 PyCairo 产生的图形的地方。我们将使用 PyCairo 创建一幅 PNG 图像,一个 PDF 文件,一个 SVG 文件,并在一个 GTK 窗口中绘制图形。
Anbox 实现分析 2:I/O 模型
Anbox 运行时主要由两个分开的实例构成,即容器管理器 ContainerManager 和会话管理器 SessionManager,但无论是 ContainerManager 还是 SessionManager,所做的最重要的事情就是处理网络 I/O 事件了。I/O 模型指一个应用处理 I/O 事件的整体框架设计,对于 Anbox 而言主要是处理各种网络 I/O 事务的整体框架设计。ContainerManager 和 SessionManager 基于一个相同的 I/O 模型运行,为了获得对 Anbox 整体行为设计的理解,有必要对其 I/O 模型有个整体的认识。
Anbox 实现分析 1:程序入口
Anbox 的总体架构如 运行 Anbox 一文的相关内容所述,其运行时主要由两个分开的实例构成,容器管理器和会话管理器。anbox 用同一个可执行文件,在启动时通过不同的参数实现运行时执行两块完全不同的逻辑,完成容器管理和会话管理的任务。
QEMU 网络虚拟化
对于模拟器而言,让模拟器中的客户 Android 系统内的进程连接外部网络,与通过 adb forward 的方式,让外部网络的程序,连接模拟器的客户 Android 系统内的服务相比,网络拓扑结构有着非常大的不同。这种拓扑结构的差异,对模拟器内的客户 Android 系统中的进程与外部应用进程之间的网络连接的许多方面都有着非常大的影响,如连接的稳定性,性能等等。