当前位置:  技术问答>linux和unix

请教:在redhat 9上定时执行程序的思路,谢谢!

    来源: 互联网  发布时间:2015-08-21

    本文导语:  请教一些问题: 1、怎么样在redhat 9上定时执行程序(具体而言,定时读取一个文本文件, 将其中数据插入到Mysql数据库中); 2、对于以上任务,可以选择用哪些技术?如果用C,在WINDOWS时下开发时, 怎么看到C的执...

请教一些问题:
1、怎么样在redhat 9上定时执行程序(具体而言,定时读取一个文本文件,
将其中数据插入到Mysql数据库中);
2、对于以上任务,可以选择用哪些技术?如果用C,在WINDOWS时下开发时,
怎么看到C的执行结果?

谢谢!

|
你可以在网上搜一下,linux下面定时器如果定时精度要求不高的话(s级),可以使用alarm(),如果要求到us级根据你的程序的要求可以选用三种进程间隔定时器中的一种,我在下面贴了这三种定时器的资料,你先看看,如果要更详细的资料给我留你的email吧,我这里有一份讲的很好的定时器的资料.

    所谓“间隔定时器(Interval Timer,简称itimer)就是指定时器采用“间隔”值(interval)来作为计时方式,当定时器启动后,间隔值interval将不断减小。当interval值减到0时,我们就说该间隔定时器到期。与上一节所说的内核动态定时器相比,二者最大的区别在于定时器的计时方式不同。内核定时器是通过它的到期时刻expires值来计时的,当全局变量jiffies值大于或等于内核动态定时器的expires值时,我们说内核内核定时器到期。而间隔定时器则实际上是通过一个不断减小的计数器来计时的。虽然这两种定时器并不相同,但却也是相互联系的。假如我们每个时钟节拍都使间隔定时器的间隔计数器减1,那么在这种情形下间隔定时器实际上就是内核动态定时器(下面我们会看到进程的真实间隔定时器就是这样通过内核定时器来实现的)。 间隔定时器主要被应用在用户进程上。每个Linux进程都有三个相互关联的间隔定时器。其各自的间隔计数器都定义在进程的task_struct结构中,如下所示(include/linux/sched.h): struct task_struct{ ⋯⋯ unsigned long it_real_value, it_prof_value, it_virt_value; unsigned long it_real_incr, it_prof_incr, it_virt_incr; struct timer_list real_timer; ⋯⋯ } (1)真实间隔定时器(ITIMER_REAL):这种间隔定时器在启动后,不管进程是否运行,每个时钟滴答都将其间隔计数器减1。当减到0值时,内核向进程发送SIGALRM信号。结构类型task_struct中的成员it_real_incr则表示真实间隔定时器的间隔计数器的初始值,而成员it_real_value则表示真实间隔定时器的间隔计数器的当前值。由于这种间隔定时器本质上与上一节的内核定时器时一样的,因此Linux实际上是通过real_timer这个内嵌在task_struct结构中的内核动态定时器来实现真实间隔定时器ITIMER_REAL的。 (2)虚拟间隔定时器ITIMER_VIRT:也称为进程的用户态间隔定时器。结构类型task_struct中成员it_virt_incr和it_virt_value分别表示虚拟间隔定时器的间隔计数器的初始值和当前值,二者均以时钟滴答次数位计数单位。当虚拟间隔定时器启动后,只有当进程在用户态下运行时,一次时钟滴答才能使间隔计数器当前值it_virt_value减1。当减到0值时,内核向进程发送SIGVTALRM信号(虚拟闹钟信号),并将it_virt_value重置为初值it_virt_incr。具体请见7.4.3节中的do_it_virt()函数的实现。 (3)PROF间隔定时器ITIMER_PROF:进程的task_struct结构中的it_prof_value和it_prof_incr成员分别表示PROF间隔定时器的间隔计数器的当前值和初始值(均以时钟滴答为单位)。当一个进程的PROF间隔定时器启动后,则只要该进程处于运行中,而不管是在用户态或核心态下执行,每个时钟滴答都使间隔计数器it_prof_value值减1。当减到0值时,内核向进程发送SIGPROF信号,并将it_prof_value重置为初值it_prof_incr。具体请见7.4.3节的do_it_prof()函数。 Linux在include/linux/time.h头文件中为上述三种进程间隔定时器定义了索引标识,如下所示: #define ITIMER_REAL 0 #define ITIMER_VIRTUAL 1 #define ITIMER_PROF 2

    
 
 

您可能感兴趣的文章:

  • 请教一个GUI和数据采集结合思路的问题
  • 请教Unix下文本格式的格式化报表设计思路
  • 请教linux下c用下载FTP站点中文件的socket程序思路
  • 请教高手!利用ARM开发板发视频,帮忙里一下思路。。
  • 请教在Linux下设计MPEG2播放器的大概思路...
  • 菜鸟请教:linux 直接执行可执行文件
  • 请教可执行程序的执行问题
  • 100请教:如何编写脚本,执行某个目录下的所有可执行文件,并将其输出内容重定向到某个文件。(在线等)
  • 请教shell脚本中, 如何保证一行执行成功之后,再执行下一行?
  • 请教这种循环的执行过程
  • 请教:SSH登陆执行的情况下,有没有可能知道某一次登陆都执行了什么命令?
  • 请教jbuild5中如何加载任何可执行文件?
  • 请教,在jcreator下面如何使程序单步执行?多谢!
  • Unix下执行 netstat出了问题,请教!!
  • crontab里设置后没有自动执行,请教高手,急!!!!!!!!!
  • 请教:javascript 里有没有时间循环执行的函数,如我按住鼠标触发mousedown 事件函数时,反复执行我写的一个函数?
  • 高分请教关于Shell脚本执行中断问题?
  • 请教关于Thread类执行的问题
  • 请教一个难题:关于执行顺序。
  • 请教一个脚本执行的问题,有关权限的
  • 请教./test.sh 的执行路径问题,多谢
  • 请教为什么要运行一个可执行文件要以./文件名 的形式来运行?
  • 请教Linux光盘自动执行文件的问题。
  • 请教redhat9下什么命令执行arp解析和逆向arp解析
  • linux~shell编程~请教一个关于如何执行脚本的问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请教,请教,这个问题是为什么????
  • 请教本地硬盘安装问题请教本地硬盘安装问题
  • ■请教■请教redhat最基本的问题!
  • 请教一个 shell 问题,我用下面这个 shell 语句总是失败,请教
  • 高分请教,各位大侠,请教一个问题,理论高手请进??谢谢
  • 请教Linux下pgadmin3-1.0.2的编译和安装!!高分请教!
  • 各位大虾,请教装了REDHAT9操作系统后,启动时无法引导到LINUX,请教该如何解决啊
  • 请教,请教,,,一定要看!!一定要看!!
  • 请教高手,小弟打印width=1500,height=600(A3纸)的Applet,在预览中是该区域是黑的,打印出来也是黑的,请教高手解决一下
  • :请教高手,小弟打印width=1500,height=600(A3纸)的Applet,在预览中是该区域是黑的,打印出来也是黑的,请教高手解决一下
  • 请教象我这样的硬盘应如何安装Linux,我昨天试装了,但有问题。(老问题了,也看了前面的帖子,但还是来请教,请多指教)
  • 请教两个redhat9问题
  • 请教如何在指定目录下查找包含指定文字的文件
  • 请教局域网中如何通过ip地址得到主机名
  • 请教kdevelop的问题
  • 请教linux 下的adsl拨号问题.
  • 请教,如何用虚拟订机安装liux
  • 编程语言 iis7站长之家
  • 请教一个opengl的问题
  • 请教unix常用命令命令问题


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3