10.2. 配置电源管理状态
您可以将值写入 /dev/cpu_dma_latency
文件,以更改进程的最大响应时间(以微秒为单位)。您还可以在应用程序或脚本中引用此文件。
先决条件
- 系统上的 root 权限。
流程
-
打开
/dev/cpu_dma_latency
文件。在 low-latency 操作期间,使文件描述符保持打开。 -
向文件写入 32 位数字。此数值代表了微秒内的最大响应时间。对于可能的响应时间,请使用
0。
示例
以下是使用此方法防止电源转换和维护低延迟的程序示例。
main() static int pm_qos_fd = -1; void start_low_latency(void) { s32_t target = 0; if (pm_qos_fd >= 0) return; pm_qos_fd = open("/dev/cpu_dma_latency", O_RDWR); if (pm_qos_fd < 0) { fprintf(stderr, "Failed to open PM QOS file: %s", strerror(errno)); exit(errno); } write(pm_qos_fd, &target, sizeof(target)); } void stop_low_latency(void) { if (pm_qos_fd >= 0) close(pm_qos_fd); }