CN103389911B - 节省系统资源的方法及运用其方法的操作系统 - Google Patents
节省系统资源的方法及运用其方法的操作系统 Download PDFInfo
- Publication number
- CN103389911B CN103389911B CN201210139462.2A CN201210139462A CN103389911B CN 103389911 B CN103389911 B CN 103389911B CN 201210139462 A CN201210139462 A CN 201210139462A CN 103389911 B CN103389911 B CN 103389911B
- Authority
- CN
- China
- Prior art keywords
- application program
- information
- system resource
- program
- task
- 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.)
- Active
Links
Landscapes
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
一种节省系统资源的方法,对一电子装置所运行的至少一应用程序进行控管,其中电子装置具有一系统资源组合,其方法包括:执行一中心管理程序,用以控管该些应用程序对系统资源组合的使用;以中心管理程序自应用程序其中之一接收一任务完成信息;以及根据任务完成信息以中心管理程序选择性传输一终止或中断信息至该应用程序,以终止或中断该应用程序的执行并停止该应用程序使用该系统资源。
Description
技术领域
本发明是关于一种节省电子装置中系统资源的方法及运用其方法的操作系统;具体而言,本发明是关于一种控管应用程序以达到节省电子装置中系统资源的方法及运用其方法的操作系统。
背景技术
目前大部分具有处理器的电子产品通常是通过一操作系统来操作。通常一般的操作系统(operatingsystem),如实时操作系统Linux为例,包含一核心空间(kernelspace)及一使用者空间(Userspace)。使用者空间主要是用来执行应用程序的程序(process),而核心空间则是掌控及安排被执行的程序的时间与系统资源,如处理器及存储器的资源的运用。在程序被初始执行于使用者空间时,程序通常是通过核心空间使用到操作系统的资源。
一般来讲,程序达成其目的后通常是不会被终止/中断(Terminate/Suspend)的。在此情况下,虽然目的已达成了,程序还是会保持就绪(ready)的状态下,直到核心空间的调度单元(Scheduler)所订的执行时间来临时才再次执行任务。然而,在这段就绪时间中,只要程序还继续执行着,系统的资源还是会持续地被占领,故耗电子装置的电力且所占领的虚拟存储器无法被解放(release)而再次被分配给别的程序使用。
此外,若程序已完成最后一次任务,程序将会一直占领系统资源并且使电子装置产生电力浪费的现象。为解决此问题,有多数的人提议可以于使用者空间内执行一具可定时监控扫描使用者空间内所在执行的程序,以方便解放更多的资源。然而,当使用者空间中的程序的数量过多时,这种方法会很耗时间跟资源,且由于还是定时的时间才会执行,此方法还是未能完全解决于就绪中的程序占领系统资源而导致电子装置浪费电力的问题。
然而,随着科技的进步以及人类对各种电子产品的需求以及市场上厂商之间的竞争日益增加,各电子产品的厂商也渐渐的开始推出具有更多功能及更大容量的产品。但相对地,更多未被终止/中断的程序会造成更多系统资源及电力的浪费。
发明内容
本发明的一个目的在于提供一种节省系统资源的方法,可减少系统资源及电力的浪费。
本发明的另一个目的在于提供一节省系统资源的方法,可于使用者空间内管理使用者空间内执行的程序。
本发明的另一目的在于提供一节省系统资源的方法,可实时控管程序的启动及终止/中断以节省较多系统资源及电力。
本发明提供一节省系统资源的方法,对一电子装置所运行的至少一应用程序进行控管,其中该电子装置具有一系统资源组合,该节省系统资源的方法包括:执行一中心管理程序,用以控管该些应用程序对该系统资源组合的使用;以该中心管理程序自该应用程序其中之一接收一任务完成信息;以及根据该任务完成信息以该中心管理程序选择性传输一终止或中断信息至该应用程序,以终止或中断该应用程序的执行并停止该应用程序使用该系统资源。
本发明提供一种操作系统,供用于一电子装置,其中该电子装置包含一系统资源组合;该操作系统包含:一使用者空间,其中执行有至少一应用程序及一中心管理程序;其中该中心管理程序自该应用程序其中之一接收一任务完成信息,并根据该任务完成信息选择性传输一终止或中断信息至该应用程序以终止或中断该应用程序的执行;以及一核心空间,分派部分的该系统资源组合供该应用程序使用;其中该应用程序根据该终止或中断信息通知该核心空间该应用程序的终止或中断以释放该应用程序使用的部分该系统资源组合。
附图说明
图1为本发明操作系统的架构示意图;
图2为节省系统资源的方法的一流程示意图;
图3为节省系统资源的方法的另一流程示意图;
图4A为节省系统资源的方法的另一流程示意图;以及
图4B为节省系统资源的方法的另一流程示意图。
[主要元件标号说明]
100:电子装置101:操作系统
102:核心空间103:使用者空间
104:调度单元105:中心管理程序
106:应用程序107:系统资源
108:数据处理器109:储存单元
具体实施方式
本发明提供一节省系统资源的方法,较佳是用于一具有操作系统的电子装置中,如手持式智能电子产品、路由器或其它计算机系统相关的电子装置。操作系统较佳为一实时操作系统(RealTimeOperatingSystem、RTOS),如Linux或微软公司的视窗操作系统等;然而在不同实施例中,操作系统可为其它不同的操作系统。
请参阅图1所示本发明的架构示意图。在本实施例中,本发明的电子装置100包括操作系统101及系统资源组合107。系统资源组合107包括数据处理器108及储存单元109。储存单元109可为硬盘、闪存或其它储存用的单元。在此须说明的是,系统资源不仅限于数据处理器108及储存单元109,本领域技术人员可轻易了解此处的系统资源可包含任何操作系统所能使用到的资源,如网络接口控制器等系统资源。如图1所示,操作系统101可分为核心空间102及使用者空间103。一般来讲,程序(program)是储存于储存单元109中。当使用者欲启动执行某个程序时,操作系统101将会于使用者空间103中执行该程序的应用程序106。当应用程序106在使用者空间103被初始执行时,应用程序106将会先通过系统呼叫(Systemcall)请求核心空间掌控与安排应用程序106的执行时间与系统资源。换言之,应用程序106是通过系统呼叫来间接要求核心空间分配执行应用程序106的时间以及应用程序106能使用的系统资源。举例而言,通常核心空间102收到应用程序106的该系统呼叫时,核心空间102将会分配给应用程序106一虚拟存储器中至少一部分。
为解决上述先前技术的问题,如图1所示,本发明提供一种中心管理程序105,其主要目的是管理使用者空间103中所有应用程序106的终止/中断及重启。中心管理程序105是与其它应用程序106分别独立执行的。具体而言,在使用者空间103中执行的程序一般是独立执行的。在初始执行并且达成目的后,应用程序106将会先发送一任务完成信息至中心管理程序105。在本实施例中,任务完成信息包含该应用程序106的重启时间及当前应用程序106的状态数据。由于每个在使用者空间103中执行的应用程序106各有不同目的或任务,并非每个应用程序106在完成任务后应被终止/中断,否则有可能于操作系统中造成无法预知的情况。因此,当中心管理程序105自该应用程序106接收任务完成信息时,中心管理程序105会先发送一终止或中断信息至该应用程序106以便与该应用程序106确认执行终止或中断的动作。详言之,若任务完成信息中没有设重启时间的消息,中心管理程序105会发出终止信息以通知应用程序106需要终止执行。然而,若任务完成信息中包含了重启时间的消息,中心管理程序105则会发出中断信息给应用程序106。此处的差别在于,应用程序106若被终止(Terminate),若需要再重启时,该被终止的应用程序106必须重新进行初始执行并请求核心空间分配新的系统资源。然而,若应用程序106被中断(Suspend),该应用程序106仅是在一时间内被中断。在中断期间内,被中断的应用程序106所占领的系统资源可被解放并重新分配给别的应用程序106(比如说,核心空间可利用swapping的方式将该被中断的应用程序106于虚拟存储器中的数据暂时存于硬盘中,并在重启中断的应用程序106时再次将硬盘中的该数据回复到虚拟存储器中)。
接着,应用程序106需接受中断信息才会准备进行中断动作。当应用程序106确认接受中断信息后,中心管理程序105将会把收到的任务完成信息储存于一数据库中。在本实施例中,数据库较佳是储存于储存单元109中;然而在其它不同实施例中,数据库亦可存于一数据结构(datastructure)或存于电子装置100外的另一计算机系统(例如,通过网络将任务完成信息储存于设置于另一系统中的数据库)。通过此设计,被终止/中断的应用程序106所占领的系统资源可被核心空间解放,使系统资源的使用量被降低,以达成节省电力浪费的功效。然而,若上述应用程序106拒绝中心管理程序105所发出的终止/中断信息,中心管理程序105则是不会储存任务完成信息。
图2为节省系统资源的方法的流程示意图。在本一较佳实施例中,如图2所示,步骤1000包含执行一中心管理程序,用以控管电子装置100所运行的至少一应用程序106对电子装置100的系统资源组合107的使用。具体而言,当电子装置100处于使用状态时,电子装置100中的操作系统101较佳会先于使用者空间103中执行中心管理程序105。藉此,中心管理程序105可于使用者空间103中对其它的应用程序106提供控管服务。
步骤1001包含以中心管理程序105自应用程序106其中之一接收一任务完成信息。详言之,当应用程序106于使用者空间103中被初始执行时,应用程序106会对核心空间102发出一系统呼叫以请求使用系统资源组合的权力。应用程序106被分配到系统资源组合一部分的系统资源后将会进行任务。举例而言,如果电子装置100为一网络路由器(NetworkRouter),而网络路由器执行了ntp-client的程序,ntp-client程序则可能会请求有权限使用电子装置100的网络系统资源。当ntp-client达成使用电子装置100的网络功能对外传收数据的目的/任务后,ntp-client程序则会向中心管理程序105发送任务完成信息,以告知中心管理程序105ntp-client程序(应用程序106)以完成任务了。
步骤1002包含根据任务完成信息以中心管理程序105选择性传输一终止或中断信息至该应用程序106,以终止或中断该应用程序106的执行并停止该应用程序106使用系统资源。接续上述ntp-client的举例,当中心管理程序105接收到ntp-client程序的任务完成信息后,中心管理程序105会根据该任务完成信息来决定要对ntp-client程序传输终止信息或传输中断信息。
步骤1003包含确认任务完成信息是否包含重启时间数据。任务完成信息可以包含应用程序106的重启时间数据或其它与应用程序106相关的数据。重启时间数据是指在操作系统101中该应用程序106下次被安排执行的时间。当步骤1003发现任务完成信息不包含重启时间数据时,则表示应用程序106已完成最后任务而有需被终止执行于使用者空间103内,以达成能解放系统资源。
图3的流程图为终止应用程序106的步骤。如图3所示,步骤1011包含中心管理程序105即据以传输该终止信息至该应用程序106。此步骤是在说明应用程序106可以自己向核心空间102提出终止执行的请求(如Terminate的指令)。当应用程序105接收到该终止信息时,应用程序105则是需要决定要不要接受该终止信息。详言之,一个程序可能会在使用者空间103中执行多个应用程序106。若随便接受终止的指令,而不考虑终止后将会对该程序的运作的影响,可能会造成不可预测的结果。举例而言,接续上述得ntp-client的举例,若ntp-client无谓地接受被终止的指令,而终止后若有程序还需要ntp-client的服务,由于ntp-client已被终止了,因此该程序无法顺利完成其目标。在本实施例中,每一个应用程序106有权利接受或拒绝中心管理程序105发出的终止信息,以确保能避免上述问题点。步骤1012包含以中心管理程序105确认该应用程序106接受该终止信息。在本实施例中,应用程序106可以回传一确认信息给中心管理程序105;然而,在其它实施例中,中心管理程序105可以根据一预设等待时间来决定应用程序106是否有接受终止信息(亦即,应用程序106不会回传确认信息)。接着,步骤1013包含根据该确认结果结束该应用程序。
然而,当步骤1003确认任务完成信息有包含重启时间数据时,则表示应用程序106之后还会被要求进行任务。因此,应用程序106不应该被终止,而是需要被暂时的中断。
图4A为进行中断及重启应用程序106的流程图的一较佳实施例。如图4A所示,发现任务完成信息包含重启时间数据后会进行步骤1004。步骤1004包含中心管理程序即据以传输中断信息至该应用程序106。接着进行步骤1006,其步骤包含以中心管理程序105确认应用程序106接受该中断信息。此处的确认方法与上述确认接受终止数据方法相同。步骤1007包含根据该确认结果储存该任务完成信息于一储存装置中,其中该任务完成信息包含一程序重启数据以中心管理程序105确认该应用程序106接受该中断信息。步骤1008包含根据该确认结果储存该任务完成信息于一储存装置中。
图4B为图4A的另一较佳实施例。在本实施例中,步骤1005取代了步骤1006及步骤1007。步骤1005包含以中心管理程序105根据重启时间信息至核心空间102进行调度于一重启时间执行重启。图4B与图4A最大的差别在于,图4B的流程是通过中心管理程序105来完全当应用程序106与核心空间102之间的界面。通过中心管理程序105所能使用的系统资源,中心管理程序105可更容易得控管应用程序106得中断、终止及重启时间与系统资源使用。
本发明已由上述相关实施例加以描述,然而上述实施例仅为实施本发明的范围。必须指出的是,已揭露的实施例并未限制本发明的范围。相反地,包含于权利要求范围的精神及范围的修改及均等设置均包含于本发明的范围内。
Claims (10)
1.一种节省系统资源的方法,对一电子装置所运行的至少一应用程序进行控管,其中该电子装置具有一系统资源组合,该节省系统资源的方法包括以下步骤:
(A)执行一中心管理程序,用以控管该些应用程序对该系统资源组合的使用;
(B)以该中心管理程序自该应用程序其中之一接收一任务完成信息;以及
(C)根据该任务完成信息以该中心管理程序选择性传输一终止或中断信息至该应用程序,以终止或中断该应用程序的执行并停止该应用程序使用该系统资源,
其中该任务完成信息包括一重启时间数据;在步骤(C)中,当该任务完成信息中包含该重启时间数据时,该中心管理程序即据以传输该中断信息至该应用程序。
2.根据权利要求1所述的节省系统资源的方法,进一步包含:以该中心管理程序根据该重启时间信息至一核心空间进行调度于一重启时间执行重启。
3.根据权利要求1所述的节省系统资源的方法,进一步包含:
以该中心管理程序确认该应用程序接受该中断信息;以及
根据该确认结果储存该任务完成信息于一储存装置中;其中该任务完成信息包含一程序重启数据。
4.根据权利要求2或3所述的节省系统资源的方法,进一步包含:
以该核心空间于该重启时间通知该中心管理程序进行之前被中断的该应用程序的重启;
以该中心管理程序自该储存装置中存取该任务完成信息;以及
根据该任务完成信息重启该应用程序。
5.根据权利要求1所述的节省系统资源的方法,其中在步骤(C)中,当该任务完成信息中不包含该重启时间数据时,该中心管理程序即据以传输该终止信息至该应用程序。
6.根据权利要求5所述的节省系统资源的方法,进一步包含:
以该中心管理程序确认该应用程序接受该终止信息;以及
根据该确认结果结束该应用程序。
7.一种操作系统,用于一电子装置,其中该电子装置包含一系统资源组合;该操作系统包含:
一使用者空间,其中执行有至少一应用程序及一中心管理程序;其中该中心管理程序自该应用程序其中之一接收一任务完成信息,并根据该任务完成信息选择性传输一终止或中断信息至该应用程序以终止或中断该应用程序的执行,其中该任务完成信息包括一重启时间数据,当该任务完成信息中包含该重启时间数据时,该中心管理程序即据以传输该中断信息至该应用程序;以及
一核心空间,分派部分的该系统资源组合供该应用程序使用;其中该应用程序根据该终止或中断信息通知该核心空间该应用程序的终止或中断以释放该应用程序使用的部分该系统资源组合。
8.根据权利要求7所述的操作系统,其中该电子装置为计算机、路由器、移动电话或嵌入式系统。
9.根据权利要求7所述的操作系统,其中该系统资源组合包含闪存、硬盘、网络接口控制器、虚拟存储器。
10.根据权利要求7所述的操作系统,其中该数据库为存储器或数据结构。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210139462.2A CN103389911B (zh) | 2012-05-07 | 2012-05-07 | 节省系统资源的方法及运用其方法的操作系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210139462.2A CN103389911B (zh) | 2012-05-07 | 2012-05-07 | 节省系统资源的方法及运用其方法的操作系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103389911A CN103389911A (zh) | 2013-11-13 |
CN103389911B true CN103389911B (zh) | 2016-08-03 |
Family
ID=49534190
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210139462.2A Active CN103389911B (zh) | 2012-05-07 | 2012-05-07 | 节省系统资源的方法及运用其方法的操作系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103389911B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105808344A (zh) * | 2014-12-31 | 2016-07-27 | 环旭电子股份有限公司 | 具有快捷节流触发机制的网络设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5812844A (en) * | 1995-12-07 | 1998-09-22 | Microsoft Corporation | Method and system for scheduling the execution of threads using optional time-specific scheduling constraints |
CN1310394A (zh) * | 2000-02-24 | 2001-08-29 | 英业达股份有限公司 | 被动式程序监控方法 |
CN1608246A (zh) * | 2001-12-31 | 2005-04-20 | 英特尔公司 | 多线程处理器中对线程执行的挂起 |
CN101957746A (zh) * | 2009-07-13 | 2011-01-26 | 中兴通讯股份有限公司 | 一种任务管理系统及方法 |
-
2012
- 2012-05-07 CN CN201210139462.2A patent/CN103389911B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5812844A (en) * | 1995-12-07 | 1998-09-22 | Microsoft Corporation | Method and system for scheduling the execution of threads using optional time-specific scheduling constraints |
CN1310394A (zh) * | 2000-02-24 | 2001-08-29 | 英业达股份有限公司 | 被动式程序监控方法 |
CN1608246A (zh) * | 2001-12-31 | 2005-04-20 | 英特尔公司 | 多线程处理器中对线程执行的挂起 |
CN101957746A (zh) * | 2009-07-13 | 2011-01-26 | 中兴通讯股份有限公司 | 一种任务管理系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103389911A (zh) | 2013-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4370336B2 (ja) | 低消費電力ジョブ管理方法及び計算機システム | |
US9405563B2 (en) | Resource management method and apparatus for virtual machine system, and virtual machine system | |
JP5842976B2 (ja) | 電源装置、プログラムおよび制御方法 | |
US6986068B2 (en) | Arithmetic processing system and arithmetic processing control method, task management system and task management method | |
TWI559153B (zh) | 分散式計算架構 | |
CN101604264B (zh) | 超级计算机的任务调度方法及系统 | |
JP2008257578A (ja) | 情報処理装置、スケジューラおよび情報処理置のスケジュール制御方法 | |
JP2012058815A (ja) | 計算機システム、及び、計算機システムの制御方法 | |
WO2012103728A1 (zh) | 热点域虚拟机cpu调度方法及虚拟机系统 | |
CN102999387B (zh) | 进程运行装置及方法 | |
CN111625080B (zh) | 一种服务器节能方法、装置及电子设备和存储介质 | |
TW201205441A (en) | Multi-CPU domain mobile electronic device and operation method thereof | |
JP4316838B2 (ja) | デバイスドライバおよびデバイス | |
CN102025776A (zh) | 一种容灾控制方法、装置及系统 | |
CN117075983A (zh) | 基于多核异构的实时多任务处理方法、芯片系统和设备 | |
JP5576827B2 (ja) | サーバ管理システム、サーバ管理装置、サーバ管理方法、及びサーバ管理プログラム | |
CN103389911B (zh) | 节省系统资源的方法及运用其方法的操作系统 | |
CN106911741B (zh) | 一种虚拟化网管文件下载负载均衡的方法及网管服务器 | |
WO2012001776A1 (ja) | マルチコアシステム、スケジューリング方法およびスケジューリングプログラム | |
TWI472910B (zh) | 節省系統資源之方法及運用其方法之作業系統 | |
JP2007334782A (ja) | コンピュータ装置およびコンピュータ制御方法 | |
CN102385529B (zh) | 多cpu领域移动电子装置与其操作方法 | |
CN108234215B (zh) | 一种网关的创建方法、装置、计算机设备及存储介质 | |
WO2012068761A1 (zh) | 一种软件版本的加载方法及基站控制器 | |
US9201707B2 (en) | Distributed system, device, method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |