linux 2.4内核下 微妙级延时
在x86 2.4内核下 usleep、select等延时函数无法实现低于10ms延时
而在驱动层在ioctrl中通过udelay、mdelay等等实现延时也无法多进程同时延时
所以实现如下延时函数 能够实现低于10us甚至1us 的延时
unsigned int uDelay(unsigned int delayTime)
{
static struct timeval _tstart, _tend;
static struct timezone tz;
double t,t1,t2;
int i;
gettimeofday(&_tstart, NULL);
t1 = (double)_tstart.tv_sec + (double)_tstart.tv_usec/(1000*1000);
for(i = 0;;i++)
{
gettimeofday(&_tend, NULL);
t2 = (double)_tend.tv_sec + (double)_tend.tv_usec/(1000*1000);
t = t2 - t1;
if(t > (double)delayTime/(1000*1000))
{
return 0;
}
sched_yield();
}
}
相关文档:
总览
用iptables -ADC 来指定链的规
则
,-A添加 -D删除 -C 修改
iptables - [RI] chain rule num rule-specification[option]
用iptables - RI 通过规则的顺序指定
iptables -D chain rule num[option]
删除指定规则
iptables -[LFZ] [chain][option]
用iptables -LFZ 链名 [选项]
iptables -[NX] chain
用 -NX ......
2009 年 4 月 23 日
本文中我们针对 Linux 上多线程编程的主要特性总结出 5 条经验,用以改善 Linux 多线程编程的习惯和避免其中的开发陷阱。在本文中,我们穿插一些 Windows 的编程用例用以对比 Linux 特性,以加深读者印象。
背景
Linux 平台上的多线程程序开发相对应其他平台(比如 Windows)的多线程 API 有一些细微 ......
由于 Linux 良好的用户权限管理体系,病毒往往是 Linux 系统管理员最后才需要考虑的问题。以往,Linux 上的杀毒软件主要是为企业的邮件和文件服务器所设计的。如今,随着 Linux 桌面用户数量的增长,桌面用户在受益于 Linux 系统对病毒较强的天然免疫力的同时,也需要杀毒软件清理从网络或U盘带来的WIndows病毒。尽管那些 ......
3.2.1 Linux 内存绑定在局部存储器的实现总体步骤
总体步骤:
l 采用方案三,在在原来分析的基础上,以及已知Linux系统内存的初始化的情况,对内核代码进行修改,主要包括确定新区的范围,建立新区,重新对分配内存的分配机制进行设置。
l &n ......
1. 相关函数 & ......