linux里时间管理的编程
我最近需要将ecos下的程序进行uclinu的移植,碰到时间管理的问题。
有如下一段代码:
cyg_clock_to_counter(cyg_real_time_clock(), &gs_rekey_counterH);
cyg_alarm_create(gs_rekey_counterH,ciplus_rekeying,0,&gs_rekey_alarmH,&gs_rekey_alarm);
cyg_alarm_initialize(gs_rekey_alarmH,cyg_current_time(),cc_rekey_intervaltmp);
cyg_alarm_enable(gs_rekey_alarmH);
是设置计数器和警告器,那位知情人能说一下里面的原理,计数器和警告器是怎么配合使用的。最重要的是:我怎么将这段代码进行uclinux的无缝移植,谢谢!再谢谢!
我对ecos不熟
cyg_clock_to_counter(cyg_real_time_clock(), &gs_rekey_counterH);
------------
将当前rtc时间转换成计数器gs_rekey_counterH
cyg_alarm_create(gs_rekey_counterH,ciplus_rekeying,0,&gs_rekey_alarmH,&gs_rekey_alarm);
----------
创建内核告警器,使用计数器gs_rekey_counterH,到时触发ciplus_rekeying函数
cyg_alarm_initialize(gs_rekey_alarmH,cyg_current_time(),cc_rekey_intervaltmp);
--------------------
初始化告警器,每隔cc_rekey_intervaltmp个tick,就触发一次告警器
cyg_alarm_enable(gs_rekey_alarmH);
--------------
使能告警器
-----------------------
总的含义很简单,目的就是每隔cc_rekey_intervaltmp个tick,就去执行一次ciplus_rekeying函数
如果在linux用户程序里实现,你需要先把cc_rekey_intervaltmp转换成正确的时间间隔,注册一个alarm定时器,到时候调用ciplus_rekeying处理alarm信号就可以了
不
相关问答:
如题,谢谢
Linux是开源的,你搜索Linux源程序目录就可以找到shell命令time的实现代码。
kernel/time.c
你的头像很不错呀
使用函数time为进程提供当前的时间
#include<time.h>
time_t time(time ......
引用内容vsking 2009-12-25 22:56:52
现在是win2008和iis8的时代了,不要还停留在iis5时代,win2008被评为十佳操作系统之首不是偶然的,你要是..
我的问题是:
最近想买个服务器,看了dell上的系统定制选择,一些 ......
对Linux不了解,最近遇到一个问题
现在项目的控制板里运行的是Linux系统,有一个C程序在运行
我在上位机里对这个控制板的一些参数进行设置,并生成一个设置文件传给控制板
上位机是Windows系统,我该生成什么格式 ......
这个configure文件是自己编写的?还是由IDE工具自动生成的?
绝大多数的configure文件都时自己写的,IDE不知道你需要配置什么
configure文件:
configure命令的作用是:生成 Makefile
windows下的mak ......