使用include/linux/delay.h里的接口可以实现delay和sleep功能。
Linux 内核提供了多个用于引入延迟的应用程序接口(API),每个应用程序接口都针对不同的使用情况和精度水平而设计。这些应用程序接口允许开发人员在内核代码中管理定时和延迟,无论是用于硬件交互、任务调度还是其他时间敏感的操作。
The Linux kernel provides several APIs for introducing delays, each designed for different use cases and levels of precision. These APIs allow developers to manage timing and delays in kernel code, whether for hardware interaction, task scheduling, or other time-sensitive operations.
Busy-Wait Delays
这些延迟使 CPU 在等待时处于忙碌状态,通常用于非常短的延迟或对时间精确性要求很高的情况。
These delays keep the CPU busy while waiting, and are generally used for very short delays or in situations where precise timing is critical.
ndelay(unsigned long nsecs):
* 指定纳秒数的延迟。
* 适用于非常短、精确的延迟,CPU 可以承受这种延迟。
* Delays for the specified number of n