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信号就可以了
不
相关问答:
由于我才刚刚接触socket编程,自己写了一个简单程序,但就是在运行的时候出现段错误,无法解决,现在我把源代码贴出来,请各位大虾指正一下!谢谢!
#include<stdio.h>
#include<stdlib.h>
#include& ......
linux 下C编程 集成开发环境 用什么比较好
我初步选定 codeblock
呵呵 还有 在linux 写了一个打印中文的代码,而今天在windows 下查看那个代码 , 是乱码 而后想到先用 EditPlus先进行编辑 然后复制 ......
那位大虾在linux下用命令行刻录过DVD的,指点一下。
我现在要在Fedora11下用命令行(不要用界面方式)进行刻录DVD盘,刻录的内容是一般数据。要求刻录的格式为UDF格式。请问谁能给一个清
晰的指导建议不?先 ......
rt
使用I/O多路转接,select/poll/epoll。
首先,你所说的事件是什么?是signal还是condition
如果是signal,因为线程有别于进程,所以可以这样做。在线程内设置信号屏蔽位,将期望处理的信号位放
开,其余的bl ......
大家好!
我使用的系统是open suse 11.2, 在做程序的编译和链接时,发现当开始链接时,系统反应变得很慢,其它进程就像被卡住了似的。使用top查看,发现2G内存几乎被用光了,只剩下45M,虚拟内存也被用的2G,我已经 ......