
5.1.1 将 TTM 的核心对象分为四个层次,ttm_device位于最上层的设备级。每个使用 TTM 的 GPU 设备都有一个ttm_device实例,它持有该设备全部内存域的资源管理器、系统内存页池、LRU 锁、延迟释放工作队列以及驱动回调表。BO 的放置、迁移、驱逐与换出都以它为出发点。本节讨论以下内容:ttm_device在 DRM 设备中的位置,以及它与drm_device的关系;ttm_device的字段及其职责;所有 TTM 设备共享的全局实例ttm_glob;ttm_device的初始化、内存域注册与销毁过程;设备级的操作接口与驱动回调表ttm_device_funcs的组成。ttm_device各字段如何支撑放置、迁移与驱逐,见 5.2.1;初始化与全局管理的实现细节,见 5.2.2。1、定位:内嵌于驱动设备结构ttm_device不单独分配,而是内嵌在驱动的设备结构中,例如 amdgpu 的adev-mman.bdev与 xe 的xe-ttm。它与drm_device并列,二者分别承担不同的职责:dr