CN101719080B - 多核定时器实现方法及系统 - Google Patents
多核定时器实现方法及系统 Download PDFInfo
- Publication number
- CN101719080B CN101719080B CN200910243523.8A CN200910243523A CN101719080B CN 101719080 B CN101719080 B CN 101719080B CN 200910243523 A CN200910243523 A CN 200910243523A CN 101719080 B CN101719080 B CN 101719080B
- Authority
- CN
- China
- Prior art keywords
- timer
- core
- vector
- time
- expires
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种多核定时器实现方法及系统,其中的方法包括以下步骤:从多核系统中任意选择一个核作为定时器处理核,所述定时器处理核通过多核系统的时间机制检查时间;所述定时器处理核每隔预定时间段执行对多核定时器向量的调度和调整。本发明提供的多核定时器实现方法及系统可脱离操作系统、支持庞大数据、不影响系统性能并且精确度较高。
Description
技术领域
本发明涉及计算机多核技术领域,尤其涉及一种多核定时器实现方法及系统。
背景技术
从1971年第一台微处理器产生至今,计算机专家们一直在为提供单片CPU的工作效率而不断的探索,直到21世纪初,单片CPU的工作效率已经提高到了材质的物理理论极限,单片CPU效率的提高已经到达了一个极限。然而,随着计算机技术的普及,人们日益增长的计算需求同有限的单片CPU的工作效率的矛盾也日益突出。在此情况下,各种计算机技术都因为CPU效率这个瓶颈而放缓了发展的脚步。如何突破单片CPU的物理理论效率极限,成为一个需要迫切解决的难题。多核处理器的出现,打破了人们的惯性思维,突破了单片CPU效率物理理论极限带来的问题,同时也颠覆了单核软件设计思维,为各项软件技术带来了新的发展道路和机遇。
专用CPU可以有效地进行一些专业的数据处理,性能高但功能单一;操作系统增加和扩充了CPU功能,但同时又带来了额外的资源消耗。多核处理器的出现,结合专业分工的思想,出现了集操作系统通用性扩展性好的优点与专用CPU单一高效的优点于一体的多核处理器应用系统(多核系统),简言之,多核系统是多个CPU无缝连接的处理系统,该系统集合了基于操作系统的专门负责配置管理的控制平面模块和基于专门数据处理的数据平面模块,将两者统一在同一个多核系统中,协同工作,达到扩展和高效的双重目的,以充分发挥多核系统的高性能特性。在这样的双平面(控制平面和数据平面)系统中,鉴于数据平面脱离的操作系统,且控制平面操作系统中定时器无法克服的缺点,就需要设计出一套脱离操作系统、支持庞大数据、不影响系统性能、精确度较高的多核系统定时器了。
目前公开可知的linux内核定时器,以操作系统为基础,通过时钟中断和中断处理的下半底(下半底是因硬中断而产生的中断处理程序)来实现,执行过程如下:
第一步、内核态进程初始化一个定时器,设定好定时时间以及定时器处理函数。
第二步、内核态进程将该定时器加入到内核定时器向量中。
第三步、时钟中断产生,CPU进行时钟中断处理,更新时间,进入进程调度函数。
第四步、在硬中断很处理完成或者系统该进行进程调度时间,进入进程调度函数,在该函数中进入各中断的下半底处理。
第五步、在定时器的下半底处理过程中,通过内核定时器的定时器向量算法,对定时器向量进行调度调整,对到期的定时器进行定时器函数处理。
第六步、定时器函数处理结束时,如果还需循环定时,则进行第二步处理。否则直接退出。
该实现的关键在于第三、四、五步,它依赖系统的中断系统和进程调度机制,必须在系统的下半底处理中才能进行。
现有技术是基于中断下半底的定时器设计方法,其不足如下:
1)这种定时器实现方式不支持数量庞大的定时器,如session超时定时器,在网络处理设备中session数可高达300多万,如此庞大数目的定时器在调度过程中极大地损耗率了操作系统的性能,会使得操作系统无法正常运行。
2)这种定时器实现方法是基于操作系统的,依赖于操作系统的中断机制和进程调度机制。对于脱离操作系统的、基于轮询的、没有进程概念支撑的、专门用处理器来说,该方法无法实现。
3)当系统中硬中断比较多时,因为硬中断的优先级高于下半底,从而使得下半底得不到及时调度,从而使得定时器处理不及时,定时器出现偏差。特别是网络处理设备,它们一般都是通过中断方式接收报文的。
4)现行定时器的实现是基于32位jiffies的,对于系统时钟中断的频率为1000Hz的系统来说,32位的jiffies计数器现在只需49.7天就发生溢出了。因此这种定时器机制不支持超过49.7天的定时器超时。
发明内容
本发明提供一种脱离操作系统、支持庞大数据、不影响系统性能、精确度较高的多核定时器实现方法及系统。
为此,本发明实施例采用如下技术方案:
一种多核定时器实现方法,从多核系统中任意选择一个核作为定时器处理核,该方法包括:所述定时器处理核通过多核系统的时间机制检查时间;所述定时器处理核每隔预定时间段执行对多核定时器向量的调度和调整。
所述方法还包括:将超时定时器添加到设置在所述定时器处理核中的超时定时器队列中;对于超时定时器队列中的各定时器,按照预置的该定时器处理函数进行处理。
所述方法还包括:在任意一个核上执行对定时器的接口操作,所述对定时器的接口操作包括定时器的初始化、添加、修改或/和删除。
所述在任意一个核上执行对定时器的接口操作具体包括:在任意一个核上设置定时器的到期时间以及到期处理函数、在任意一个核上根据定时器的到期时间,通过定时器处理核提供的多核定时器添加接口,将定时器添加到多核定时器向量中、在任意一个核上根据定时器的到期时间,通过定时器处理核提供的多核定时器修改接口,调整定时器在多核定时器向量中的位置、或/和,在任意一个核上通过定时器处理核提供的多核定时器删除接口,将定时器从定时器向量中摘下以终止该定时器。
所述方法还包括:设置定时器的到期时间为二维或多维时间。
所述设置定时器的到期时间为二维时间包括:将多核定时器的到期时间设置为到期秒和到期毫秒的和;在多核定时器初始化时,设置到期秒和到期毫秒或者仅设置到期毫秒;在多核定时器添加和修改时,如果多核定时器的到期秒不为0,则根据到期毫秒的最大值将到期秒的全部或者一部分转换成到期毫秒,并根据多核定时器的到期毫秒将多核定时器添加到多核定时器向量的合适位置;或/和,在处理超时定时器时,如果发现某多核定时器的到期秒不为0,则再根据到期毫秒的最大值将到期秒的全部或者一部分转换成到期毫秒,然后根据多核定时器的到期毫秒将多核定时器添加到多核定时器向量的合适位置;如果到期秒为0,则调用超时函数进行定时器的超时处理。
其中,采用Linux内核定时器向量算法设置多核定时器向量以及执行所述对多核定时器向量的调整和调度。
其中,所述对多核定时器向量的调度和调整包括:随着定时器到期时间的逐渐缩小,将定时器调整到到期时间相应的定时器向量中。
一种多核定时器实现系统,从多核系统中任意选择一个核作为定时器处理核,其中:所述定时器处理核通过多核系统的时间机制检查时间,并每隔预定时间段执行对多核定时器向量的调度和调整。
所述定时器处理核,将超期定时器加入到超时定时器队列,对于超时定时器队列中的各定时器,按照预置的该定时器处理函数进行处理。
所述系统中任意一个核执行对定时器的接口操作,所述对定时器的接口操作包括定时器的初始化、添加、修改或/和删除。
其中,所述定时器到期时间为二维或多维时间。
本发明提供的方案至少存在以下优点:
(1)通过定时器处理核轮询检查时间,每隔一定的时间就进行定时器向量的调整和调度,不依赖于操作系统中断和下半底。本发明提供的定时器设计方法,不依赖于操作系统的调度机制,无需硬中断和下半底,采用单核轮询的方式,不受外界干扰地对定时器进行轮询处理,且继承了linux操作系统定时器的核心定时器向量算法,轮询效率大大提高,提高了定时器的精度,且使得定时器的部署的条件变得更加容易,同时可使得定时器的数量大大增加、对系统的影响也大大减少、使得多核定时器编程变得简单。
(2)将多核定时器向量调度和调整同超时定时器处理分离,设立超时定时器队列,分时且集中处理超时定时器,避免了在一个数据平面大循环内处理过多的定时器,和一个数据平面大循环因执行的时间过长产生的假死现象,以及避免因时间轮询长时间得不到调度使得定时器不准等问题。此超时定时器可以改成hash表、双向链表等具有存储和遍历功能的数据结构。
(3)通过将到期时间设置为二维或多维的方式,使得这种定时器至少支持1^32-1=4294967295秒,大约是136年的到期定时,到期时间远远满足要求。增大定时器超时时间的本质方法就是使用二维或者多维到期时间,例如秒和毫秒的组合,还有毫秒和毫秒的组合、分和jifiees是对组合等等。
(4)本方法脱离操作系统的调度,从而可支持数量庞大的定时器而不影响系统的性能,本方法脱离操作系统的调度,不需要操作系统支持,可在无操作系统的多核系统上实现。将定时器处理核视为操作系统的线程或进程,本发明即可与任何操作系统结合应用。
(5)本发明定时器可以不受所属核的限制,可随意在各核之间进行接口操作。一些多核定时器实现方案中的定时器必须在单独的某一个核上进行所有的定时器操作,如在第3号核上注册了该定时器,则只能在核3上对该定时器进行修改、删除等操作,给编程带来极大的不便,本发明提供的定时器设计方法,可以是定时不受核的限制在各个核上进行修改、删除等操作,编起程来非常方便。
附图说明
图1为本发明多核定时器实现方法流程图;
图2为本发明多核定时器实现方法实施例流程图;
图3为本发明多核定时器实现系统示意图;
图4为本发明定时器处理核内部结构示意图。
具体实施方式
本发明针对多核系统提供一种多核定时器实现方案,与现有Linux定时器机制依赖于操作系统中断和下半底不同,本发明从多个核中选择一个核作为定时器处理核,由该核利用多核系统计时功能执行多核定时器向量的调度和调整,摆脱了对操作系统中断和下半底的依赖,减少了内核开销。
参见图1,为本发明多核定时器实现方法流程图,包括:
S101:从多核系统中任意选择一个核作为定时器处理核;
S102:定时器处理核通过多核系统的时间机制检查时间;
S103:定时器处理核每隔预定时间段执行对多核定时器向量的调度和调整。
其中,采用现有的Linux内核定时器向量算法设置多核定时器向量以及执行对多核定时器向量的调整和调度,Linux内核定时器向量算法已属成熟技术,本文对此不作详细讨论。对多核定时器向量的调度和调整主要是指,随着定时器到期时间的逐渐缩小,将定时器调整到到期时间相应的定时器向量中。
下面以一个定时器的初始化、添加到多核定时器向量、超时处理的时间顺序介绍本发明方法实施例。
参见图2,为该实施例流程图,包括:
S201:在多核系统中任何一个核上初始化一个定时器,设定好定时时间以及定时器处理函数;
S202:在多核系统中任何一个核上将该定时器加入到多核定时器向量中;
S203:在定时器处理核上,轮询时间,每次轮询通过多核系统提供的时间机制检查时间,每隔一定的时间(如200毫秒),进行一次多核定时器向量调度和调整;
S204:对于超期定时器,将其添加到超时定时器队列中;
S205:对于超时定时器队列中的定时器,按照为该定时器设置的定时器处理函数,对该定时器进行处理。
下面结合多核系统介绍本发明的具体实现。
参见图3,为本发明多核定时器实现系统示意图,在定时器处理核0上,执行时间轮询、多核定时器向量的调度和调整以及超时定时器队列的处理,在任何一个核1...n上,可执行定时器接口操作,包括定时器的初始化、添加、修改和删除等。
参见图4,为定时器处理核内部结构示意图,该定时器处理核包括时间轮询检查模块401、多核定时器向量调度和调整模块402以及超时定时器队列处理模块403,其中,多核定时器向量调度和调整模块402可调用定时器处理模块及接口,包括多核定时器初始化模块、多核定时器添加接口、多核定时器修改接口和多核定时器删除接口,从而通过这些模块或接口,可在任意一个核上执行定时器初始化、添加、修改和删除的操作。
在数据平面定时器处理核上,启动时间轮询检查模块401,如果间隔了一定的时间,则进入到多核定时器向量调度和调整模块402,如果有超时定时器,则将其添加到超时定时器队列处理模块403,由该超时定时器队列处理模块403对超时定时器进行处理。
多核定时器向量调度和调整模块402可采用linux内核的定时器向量算法,其中有多个多核定时器向量(例如5个)。在调度和调整处理过程中,会根据当前时间调整多个定时器向量中的定时器的个数,并将发现的到期的定时器摘到一个超时定时器队列中。因为超时的定时器已经被摘离了多核定时器向量,所以如果还需要该定时器起作用的话,需要在该定时器超时处理函数里调用多核定时器添加函数接口将该定时器添加到定时器向量里,处理完成后进入超时定时器队列处理模块里处理一定数量的超时定时器。
超时定时器队列处理模块403的主要任务就是处理一定数量的在超时定时器队列中的定时器,设置这个超时定时器队列的目的在于,分时且集中处理超时定时器:“分时”表现在将本来需要在一个大循环中处理的定时器通过处理数量限制分散到多核大循环中进行处理,“集中”表现在将超时的定时器都摘到同一个超时定时器队列中,便于定时器超时的分时处理,从而避免了在一个数据平面大循环内处理过多的定时器使执行的时间过长而产生的假死现象,以及因此使得时间轮询检查模块长时间得不到调度使得定时器不准等问题,处理完一定数量的超时定时器或者超时定时器为空时,结束本模块的处理,进入到下一轮数据平面大循环。
另外,定时器处理核提供了多核定时器的初始化模块、添加、修改、删除等操作接口,其中接口可供数据平面其他核使用。多核定时器初始化模块设置定时器到期的时间以及到期处理函数;多核定时器添加接口根据到期时间将定时器添加到多核定时器向量中去;多核定时器修改接口根据修改的定时器到期时间调整定时器在多核定时器向量的中位置;多核定时器删除接口将定时器从定时器向量上摘下来,终止该定时器。在多核系统中的任意一个核上都提供上述定时器的初始化、添加、修改和删除操作。
为了提高多核定时器的精确度,本发明设置定时器的到期时间为二维时间。下面详细介绍:
现有定时器向量在调度和调整时是基于毫秒的,例如,2^32-1=4294967295毫秒大约是49.7天,因此不支持超过49.7天的定时超时时间,为了解决这个问题,本发明将多核定时器的到期时间设置为二维:到期秒和到期毫秒。二维到期时间做如下应用:
1、多核定时器的到期时间为到期秒和到期毫秒的和。
2、多核定时器初始化时,设置到期秒和到期毫秒。如果定时器时间比较短,如1小时之内,则只设置到期毫秒。如果定时器时间超过49天,则设置到期秒和到期毫秒(两者之和为定时器定时时间)。
3、在多核定时器添加和修改的时候,如果多核定时器的到期秒不为0,则根据到期毫秒的最大值将到期秒的全部或者一部分转换成到期毫秒。然后根据多核定时器的到期毫秒将多核定时器添加到多核定时器向量的合适位置。
4、在超时定时器队列处理模块里处理定时器超时时,如果发现某多核定时器的到期秒不为0,则再根据到期毫秒的最大值将到期秒的全部或者一部分转换成到期毫秒,然后根据多核定时器的到期毫秒将多核定时器添加到多核定时器向量的合适位置。如果到期秒为0,则说明该定时器确实到期了,则调用超时函数进行定时器的超时处理。
本发明提供的方案至少存在以下优点:
(1)通过定时器处理核轮询检查时间,每隔一定的时间就进行定时器向量的调整和调度,不依赖于操作系统中断和下半底。本发明提供的定时器设计方法,不依赖于操作系统的调度机制,无需硬中断和下半底,采用单核轮询的方式,不受外界干扰地对定时器进行轮询处理,且继承了linux操作系统定时器的核心定时器向量算法,轮询效率大大提高,提高了定时器的精度,且使得定时器的部署的条件变得更加容易,同时可使得定时器的数量大大增加、对系统的影响也大大减少、使得多核定时器编程变得简单。
(2)将多核定时器向量调度和调整同超时定时器处理分离,设立超时定时器队列,分时且集中处理超时定时器,避免了在一个数据平面大循环内处理过多的定时器,和一个数据平面大循环因执行的时间过长产生的假死现象,以及避免因时间轮询长时间得不到调度使得定时器不准等问题。此超时定时器可以改成hash表、双向链表等具有存储和遍历功能的数据结构。
(3)通过将到期时间设置为二维或多维的方式,使得这种定时器至少支持1^32-1=4294967295秒,大约是136年的到期定时,到期时间远远满足要求。增大定时器超时时间的本质方法就是使用二维或者多维到期时间,例如秒和毫秒的组合,还有毫秒和毫秒的组合、分和jifiees是对组合等等。
(4)本方法脱离操作系统的调度,从而可支持数量庞大的定时器而不影响系统的性能,本方法脱离操作系统的调度,不需要操作系统支持,可在无操作系统的多核系统上实现。将定时器处理核视为操作系统的线程或进程,本发明即可与任何操作系统结合应用。
(5)本发明定时器可以不受所属核的限制,可随意在各核之间进行接口操作。一些多核定时器实现方案中的定时器必须在单独的某一个核上进行所有的定时器操作,如在第3号核上注册了该定时器,则只能在核3上对该定时器进行修改、删除等操作,给编程带来极大的不便,本发明提供的定时器设计方法,可以是定时不受核的限制在各个核上进行修改、删除等操作,编起程来非常方便。
本领域普通技术人员可以理解,实现上述实施例的方法的过程可以通过程序指令相关的硬件来完成,所述的程序可以存储于可读取存储介质中,该程序在执行时执行上述方法中的对应步骤。所述的存储介质可以如:ROM/RAM、磁碟、光盘等。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (8)
1.一种多核定时器实现方法,其特征在于,从多核系统中任意选择一个核作为定时器处理核,该方法包括:
所述定时器处理核通过多核系统的时间机制检查时间;
所述定时器处理核每隔预定时间段执行对多核定时器向量的调度和调整;
其中,所述对多核定时器向量的调度和调整包括:随着定时器到期时间的逐渐缩小,将定时器调整到到期时间相应的定时器向量中;
所述方法还包括:
在任意一个核上执行对定时器的接口操作,所述对定时器的接口操作包括定时器的初始化、添加、修改和删除中的任一个操作,或者全部操作。
2.根据权利要求1所述方法,其特征在于,所述方法还包括:
将超时定时器添加到设置在所述定时器处理核中的超时定时器队列中;
对于超时定时器队列中的各定时器,按照预置的该定时器处理函数进行处理。
3.根据权利要求1所述方法,其特征在于,所述在任意一个核上执行对定时器的接口操作具体包括:
在任意一个核上设置定时器的到期时间以及到期处理函数、
在任意一个核上根据定时器的到期时间,通过定时器处理核提供的多核定时器添加接口,将定时器添加到多核定时器向量中、
在任意一个核上根据定时器的到期时间,通过定时器处理核提供的多核定时器修改接口,调整定时器在多核定时器向量中的位置、和,
在任意一个核上通过定时器处理核提供的多核定时器删除接口,将定时器从定时器向量中摘下以终止该定时器中的任一个操作,或者全部操作。
4.根据权利要求1至3任一项所述方法,其特征在于,所述方法还包括:
设置定时器的到期时间为二维或多维时间。
5.根据权利要求4所述方法,其特征在于,所述设置定时器的到期时间为二维时间包括:
将多核定时器的到期时间设置为到期秒和到期毫秒的和;
在多核定时器初始化时,设置到期秒和到期毫秒或者仅设置到期毫秒;
在多核定时器添加和修改时,如果多核定时器的到期秒不为0,则根据到期毫秒的最大值将到期秒的全部或者一部分转换成到期毫秒,并根据多核定时器的到期毫秒将多核定时器添加到多核定时器向量的合适位置;或/和,
在处理超时定时器时,如果发现某多核定时器的到期秒不为0,则再根据到期毫秒的最大值将到期秒的全部或者一部分转换成到期毫秒,然后根据多核定时器的到期毫秒将多核定时器添加到多核定时器向量的合适位置;如果到期秒为0,则调用超时函数进行定时器的超时处理。
6.根据权利要求1至3任一项所述方法,其特征在于,采用Linux内核定时器向量算法设置所述多核定时器向量以及执行所述对多核定时器向量的调整和调度。
7.一种多核定时器实现系统,其特征在于,从多核系统中任意选择一个核作为定时器处理核,所述定时器处理核包括:时间轮询检查模块、多核定时器向量调度和调整模块、以及超时定时器队列处理模块;
时间轮询检查模块用于,如果间隔了一定的时间,则进入到多核定时器向量调度和调整模块,如果有超时定时器,则将其添加到超时定时器队列处理模块,由该超时定时器队列处理模块对超时定时器进行处理;
多核定时器向量调度和调整模块用于在所述系统中任意一个核上执行对定时器的接口操作,所述对定时器的接口操作包括定时器的初始化、添加、修改和删除中的任一个操作,或者全部操作;
其中:所述定时器处理核通过多核系统的时间机制检查时间,并每隔预定时间段执行对多核定时器向量的调度和调整,以及将超期定时器加入到超时定时器队列,对于超时定时器队列中的各定时器,按照预置的该定时器处理函数进行处理;
所述对多核定时器向量的调度和调整包括:随着定时器到期时间的逐渐缩小,将定时器调整到到期时间相应的定时器向量中。
8.根据权利要求7所述系统,其特征在于,所述定时器到期时间为二维或多维时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910243523.8A CN101719080B (zh) | 2009-12-25 | 2009-12-25 | 多核定时器实现方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910243523.8A CN101719080B (zh) | 2009-12-25 | 2009-12-25 | 多核定时器实现方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101719080A CN101719080A (zh) | 2010-06-02 |
CN101719080B true CN101719080B (zh) | 2014-03-26 |
Family
ID=42433658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910243523.8A Expired - Fee Related CN101719080B (zh) | 2009-12-25 | 2009-12-25 | 多核定时器实现方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101719080B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102012718B (zh) * | 2010-11-15 | 2014-12-10 | 中兴通讯股份有限公司 | 多核系统中定时器的实现方法及多核系统 |
CN103019856A (zh) * | 2012-11-23 | 2013-04-03 | 上海寰创通信科技股份有限公司 | 一种多核处理器的非对称调度方法 |
CN103024548A (zh) * | 2012-12-29 | 2013-04-03 | 四川九洲电器集团有限责任公司 | 一种机顶盒定时自动休眠方法 |
US9436604B2 (en) | 2013-03-13 | 2016-09-06 | Futurewei Technologies, Inc. | System and method for software/hardware coordinated adaptive performance monitoring |
CN104216779B (zh) * | 2014-09-28 | 2018-10-02 | 北京经纬恒润科技有限公司 | 一种中断执行方法及装置 |
CN105550023B (zh) * | 2015-12-03 | 2019-05-07 | 青岛海信移动通信技术股份有限公司 | 一种定时器事件的处理方法及装置 |
CN106020333B (zh) * | 2016-05-20 | 2019-03-05 | 京信通信系统(中国)有限公司 | 多核定时器实现方法和多核系统 |
CN107977269B (zh) * | 2017-11-06 | 2020-12-01 | 东软集团股份有限公司 | 一种报文转发系统中的超时事件处理方法、装置及设备 |
CN108255515B (zh) * | 2018-01-17 | 2021-02-02 | 广州汇智通信技术有限公司 | 一种实现定时器服务的方法和装置 |
CN111949391A (zh) * | 2020-08-25 | 2020-11-17 | 北京天融信网络安全技术有限公司 | 基于多核架构的定时器实现方法、装置、设备及存储介质 |
CN114816706B (zh) * | 2022-05-06 | 2024-10-29 | 上海商米科技集团股份有限公司 | 一种timer定时器修正方法、系统及psam卡 |
CN118034894B (zh) * | 2024-04-11 | 2024-08-13 | 浪潮云信息技术股份公司 | 操作系统内核态定时器管理方法、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1949129A (zh) * | 2006-11-27 | 2007-04-18 | 杭州华为三康技术有限公司 | 时间同步方法及装置 |
CN101470627A (zh) * | 2007-12-29 | 2009-07-01 | 北京天融信网络安全技术有限公司 | 一种mips平台下并行多核配置锁的实现方法 |
-
2009
- 2009-12-25 CN CN200910243523.8A patent/CN101719080B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1949129A (zh) * | 2006-11-27 | 2007-04-18 | 杭州华为三康技术有限公司 | 时间同步方法及装置 |
CN101470627A (zh) * | 2007-12-29 | 2009-07-01 | 北京天融信网络安全技术有限公司 | 一种mips平台下并行多核配置锁的实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101719080A (zh) | 2010-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101719080B (zh) | 多核定时器实现方法及系统 | |
US9104500B1 (en) | Lock-free job scheduler for multi-processor systems | |
US8112559B2 (en) | Increasing available FIFO space to prevent messaging queue deadlocks in a DMA environment | |
TWI416413B (zh) | Work processing device | |
CN109670199B (zh) | 一种高效的电网拓扑分析方法及装置 | |
CN101887383B (zh) | 一种进程实时调度方法 | |
CN102455940B (zh) | 一种定时器和异步事件的处理方法及系统 | |
CN101923491A (zh) | 多核环境下线程组地址空间调度和切换线程的方法 | |
WO2014110702A1 (zh) | 协同并发式消息总线、主动构件组装模型及构件拆分方法 | |
WO2012082312A2 (en) | A fast and linearizable concurrent priority queue via dynamic aggregation of operations | |
CN103412755A (zh) | 一种硬件实时操作系统 | |
CN102662889A (zh) | 中断处理方法、中断控制器及处理器 | |
CN101477386B (zh) | 一种定时器实现方法和装置 | |
CN102567090A (zh) | 在计算机处理器中创建执行线程的方法和系统 | |
CN110516789A (zh) | 卷积网络加速器中指令集的处理方法、装置及相关设备 | |
CN103744728B (zh) | 一种基于动态ple技术的虚拟机协同调度方法 | |
US20110173287A1 (en) | Preventing messaging queue deadlocks in a dma environment | |
JP5820525B2 (ja) | 仮想計算機のスケジュールシステム及びその方法 | |
WO2016177081A1 (zh) | 通知消息处理方法及装置 | |
CN117032999B (zh) | 一种基于异步运行时的cpu-gpu协同调度方法及装置 | |
JP2904483B2 (ja) | 周期的プロセスのスケジューリング方法 | |
CN102609306B (zh) | 多核处理芯片对视频处理任务的处理方法及其系统 | |
CN104597820A (zh) | 一种扩展单片机硬件定时器的方法 | |
WO2008157455A2 (en) | Notifying user mode scheduler of blocking events | |
CN103377034A (zh) | 指令预送方法及装置、指令管理系统、运算核心 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140326 Termination date: 20181225 |
|
CF01 | Termination of patent right due to non-payment of annual fee |