真柏嫁接视频教程:linux 延时函数
来源:百度文库 编辑:偶看新闻 时间:2024/05/04 16:19:46
关于udelay(); mdelay(); ndelay(); msleep();
这几个函数都是内核的延时函数:
1.
udelay(); mdelay(); ndelay();实现的原理本质上都是忙等待,ndelay和mdelay都是通过udelay衍生出来的,我们使用这些函数的实现往往会碰到编译器的警告implicit declaration of function 'udelay',这往往是由于头文件的使用不当造成的。在include/asm-???/delay.h中定义了udelay(),而在include/linux/delay.h中定义了mdelay和ndelay.
udelay一般适用于一个比较小的delay,如果你填的数大于2000,系统会认为你这个是一个错误的delay函数,因此如果需要2ms以上的delay需要使用mdelay函数。
2.由于这些delay函数本质上都是忙等待,对于长时间的忙等待意味这无谓的耗费着cpu的资源,因此对于毫秒级的延时,内核提供了msleep,ssleep等函数,这些函数将使得调用它的进程睡眠参数指定的时间。
应用层:
#include
1、unsigned int sleep(unsigned int seconds); 秒级
2、int usleep(useconds_t usec); 微秒级:1/10^-6
#define _POSIX_C_SOURCE 199309
#include
3、int nanosleep(const struct timespec *req, struct timespec *rem);
struct timespec {
time_t tv_sec; /* seconds */
long tv_nsec; /* nanoseconds */
};
// The value of the nanoseconds field must be in the range 0 to 999999999.
内核层:
include
1、void ndelay(unsigned long nsecs); 纳秒级:1/10^-10
2、void udelay(unsigned long usecs); 微秒级: 1/10^-6
3、void mdelay(unsigned long msecs); 毫秒级:1/10^-3
关于C语言的一些时间函数和延时函数都有哪些?
linux课程设计---LINUX 的fork exec wait 函数的分析
linux gcc下字符转换整型的函数?
Linux内核完全注释中CMOS_READ(addr)函数
有谁知道Linux的图形函数的源代码!紧急!谢谢!
问一下linux下让扬声器发音的函数?
linux mysql 修改ROOT密码 忘记使用PASSWORD函数了!!
在LINUX下,sqrit函数怎么调用啊??
Linux中C函数与其他如windows中的C函数有何区别?
电脑延时
延时继电器
网络延时
信息延时
该延时程序延时时间????
Linux ? ? ? ? ? ?
linux~~~
Linux???
linux???
linux~~~~~~~~~~~~~~~~~`
请教:linux下c程序的一个小问题(字符转换函数)
请教:linux下c程序的一个小问题(字符串转换整数函数)
请问:Linux中的ioctl函数,在windows中是用什么实现的?
用linux 下的cp()函数copy,如果目录中有空格怎么处理呀
函数~~~~~~~~~~~~