CN101145111A - 能使用专用按钮改变性能模式的计算机系统及其控制方法 - Google Patents
能使用专用按钮改变性能模式的计算机系统及其控制方法 Download PDFInfo
- Publication number
- CN101145111A CN101145111A CNA2007101454181A CN200710145418A CN101145111A CN 101145111 A CN101145111 A CN 101145111A CN A2007101454181 A CNA2007101454181 A CN A2007101454181A CN 200710145418 A CN200710145418 A CN 200710145418A CN 101145111 A CN101145111 A CN 101145111A
- Authority
- CN
- China
- Prior art keywords
- performance mode
- order
- performance
- thread
- equipment
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4818—Priority circuits therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4831—Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4893—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
- Power Sources (AREA)
Abstract
一种计算机系统,具有:进程运行单元,其运行多个程序的进程;用户输入单元,通过其输入选择多个性能模式之一的用户命令;以及控制器,如果输入了用户命令,则控制器控制进程运行单元根据与用户命令所选择的性能模式相对应的优先级顺序,运行当前正在执行的多个程序中的程序的进程。
Description
技术领域
本发明的方面涉及一种计算机系统及其控制方法,其按照优先级顺序运行多个正在执行的程序的进程。
背景技术
计算机的性能取决于多种因素,比如进程的运行速度、电池的寿命、噪音等。但是这些因素是互相排斥的。例如,如果进程的速度提高,电池的寿命就会缩短,而计算机系统的噪音也会增加。所以,很难同时改善进程的运行速度、电池的寿命、噪音等。因此优选的是依据环境适当地控制因素,以使计算机可以运转在最佳的性能。
为改善计算机系统的性能,一种传统的技术(比如在日本专利第一次公开文件No.07-0319569中所描述的那样)揭示了一种方法,其通过由系统管理中断(system management interrupt,SMI)输入热键来转换系统操作环境,比如省电模式,高性能模式等。在该传统技术中,尽管可以改变硬件的模式,比如CMOS内存,SMI等,但却不能对软件也这么做,比如应用线程的优先级控制,或者改变操作系统(OS)所应用的电源方案。
在典型的操作系统(OS)中,比如Microsoft Windows,如果用户想改变应用线程的优先级顺序,i)用户按下Ctr1+Alt+Del键以运行“任务管理器”;ii)用户在“查看”菜单中选择“选择列(select columns)”,并在对话框中选择“基本优先级”选项;iii)用户选择想选的进程并点击鼠标右键。这个优先分配资源到预定进程的过程非常复杂。因此,尽管普通用户可能想改善一个程序的运行性能,却不知道怎么去做。从而用户不能让系统以最佳水平的性能运行。而且就算用户知道如何改变优先级,这个过程也是很繁琐的。
发明内容
本发明的方面提供了一种计算机系统及其控制方法,其能够根据用户通过简单操作选择的工作环境运转在峰值性能。
本发明的另外方面提供了一种计算机系统及其控制方法,其能够通过将资源分配给用户确定的优先于其他程序的程序来改善性能。本发明的另外方面也提供了一种计算机系统及其控制方法,其通过将按钮激活有限的次数来根据工作环境改变性能模式,从而能够改善性能。
根据本发明的一方面,一种设备包括:处理器,其根据优先级顺序执行多个正在运行的进程中的一个;控制器,其确定通过命令选择了多个性能模式中的哪一个,并控制所述处理器根据所确定的性能模式的优先级顺序执行所述多个进程中的进程。
根据本发明的另一方面,所述处理器通过执行操作系统(OS)来运行所述进程,该操作系统提供允许改变所述优先级顺序的应用程序接口(API),并且,所述控制器执行应用程序,以使用所述API改变程序的优先级顺序。
根据本发明的另一方面,所述性能模式包括普通模式和高性能模式,该普通模式对应于多个程序的第一预定优先级顺序,该高性能模式对应于不同于普通模式的所述多个程序的第二优先级顺序。
根据本发明的另一方面,所述性能模式包括节电模式,其具有低于普通模式的优先级。
根据本发明的另一方面,当前正在被执行的所述多个进程之一是当前活动的进程。
根据本发明的另一方面,所述设备还包括用户输入单元,通过它输入命令以选择所述多个性能模式中的一个,每个性能模式包括相应的一组性能因素,所述性能因素包括优先级顺序;其中,该用户输入单元包括至少一个按钮,以允许用户输入所述命令,并且如果在按钮被激活后经过了预定时间段,则所述控制器确定所述性能模式中的一个被选择。
根据本发明的另一方面,所述设备还包括图形处理器,其根据控制器的控制,在预定的显示设备上显示与选择性能模式相关的图形图像。
根据本发明的另一方面,所述控制器对所述图形处理器进行控制,使其在所述按钮被激活时显示示出所述性能模式中的当前性能模式的图形图像,并且在每当该按钮被再次按下时显示逐个改变所述性能模式。
根据本发明的另一方面,所述控制器还根据所确定的性能模式控制连接到所述设备的至少一个硬件组件的操作。
根据本发明的另一方面,所述命令还包括一组系统控制信息,其能够指示除所述性能模式之外的多个系统性能参数,并且所述控制器根据所述的一组系统控制信息来改变系统元素。
根据本发明的另一方面,所述一组系统控制信息指示用于所述设备的中央处理单元、所述设备的系统环境控制器、以及所述设备所使用的存储介质的驱动速度的设置。
根据本发明的另一方面,所述控制器根据所选择的性能模式控制所述处理器正在执行的进程的优先级顺序的升高或降低。
根据本发明的另一方面,如果所述命令指示普通性能模式,则所述控制器控制所述处理器按照普通优先级顺序执行所述进程,在该普通优先级顺序中,所述进程的线程依照普通顺序执行;并且,如果所述命令指示另一种性能模式,则该控制器控制该处理器按照另一种优先级顺序执行进程,在该另一种优先级顺序中,所述进程的线程依照不同于普通顺序的顺序执行。
本发明的前述和/或其它方面可以通过提供一种方法来实现,该方法包括:根据命令确定从多个性能模式中选择的性能模式,以执行多个正在运行的进程中的进程;并且根据所确定的性能模式运行所述进程。
根据本发明的另一方面,运行所述进程还包括提高或降低被执行的进程的优先级顺序。
根据本发明的另一方面,所述优先级顺序是进程被执行的顺序。
根据本发明的另一方面,如果所述命令指示普通性能模式,则按照普通优先级顺序执行所述进程,在该普通优先级顺序中,所述进程的线程依照普通顺序执行;并且,如果所述命令指示另一种性能模式,则按照另一种优先级顺序执行进程,在该另一种优先级顺序中,所述进程的线程依照不同于普通顺序的顺序执行。
根据本发明的另一方面,所述普通顺序允许在将第二应用的第二线程保持在等待状态的同时执行第一应用的第一线程;并且所述另一种顺序允许在将所述第一应用的第一线程保持在等待状态的同时执行所述第二应用的第二线程。
根据本发明的另一方面,运行所述进程包括:通过执行OS来运行该进程,所述OS提供允许改变所述程序的优先级顺序的API;以及执行应用程序以使用所述API改变所述程序之一的优先级顺序。
根据本发明的另一方面,所述方法还包括:接收选择所述多个性能模式中的一个的命令,每个性能模式包括相应的一组性能因素,该性能因素包括优先级顺序;其中,接收该命令包括通过用户输入单元接收该命令,该用户输入单元具有至少一个按钮,用户利用所述按钮输入所述命令,并且如果在所述按钮被激活后经过了预定时间段,则所述运行所述进程确定所述性能模式之一被选择。
根据本发明的另一方面,所述方法还包括显示与选择性能模式相关的图形图像。
根据本发明的另一方面,显示所述图形图像包括:在按钮被按下时,显示示出所述性能模式中的当前性能模式的图形图像,并且,每当所述按钮被再次按下时,显示示出所述性能模式被逐个改变的图形图像。
根据本发明的另一方面,所述方法还包括根据所选择的性能模式,在CPU超频和CPU降频之间调整至少一个级别。
根据本发明的另一方面,所述命令还包括一组系统控制信息,其能够指示除性能模式之外的多个系统性能参数,并且运行所述进程还包括根据该组系统控制信息来改变系统元素。
根据本发明的另一方面,所述的一组系统控制信息指示用于中央处理单元、系统环境控制器和驱动速度的设置。
本发明的其它方面和/或优点将在下列描述中部分地阐述,并且将从所述描述中部分地变得明显,或者可以通过对本发明的实践来学习。
附图说明
通过以下结合附图对示例实施方式的描述,本发明的上述和/或其它方面和优点将变得清楚且更加容易理解:
图1的方框图示出了根据本发明的实施方式的计算机系统的配置;
图2示出了操作系统的线程状态;
图3示出了进程、线程和时间片的配置;
图4解释了主动切换(voluntary switching);
图5解释了抢先(preemption);
图6示出了根据本发明的实施方式的线程的运行;
图7和图8示出了根据本发明实施方式选择性能模式的相关图形图像;
图9示出了根据本发明实施方式的计算机系统的操作。
具体实施方式
现在将详细讨论本发明的实施方式,附图中示出了实施方式的例子,在附图中,相似的附图标记始终指示相似的元素。下面对实施方式进行描述,以便参照附图解释本发明。
如图1所示,计算机系统100包括进程运行单元110,用户输入单元120和控制器130。控制器130控制风扇160,光盘驱动器170,和用于在显示设备150上显示图像的图形处理器140。
进程运行单元110根据程序的优先级顺序运行当前正在执行的多个程序的进程。用户输入单元120接收一个命令,比如来自用户的命令,以选择多个性能模式中的一个,然后将所收到的命令发送到控制器130。当控制器130通过用户输入单元120收到该命令时,控制器130控制进程运行单元110根据与命令选中的性能模式相对应的优先级顺序运行多个程序中的一个的进程。尽管不要求,但输入部分120可以是通过其接收命令的端口,或者可以是键盘、鼠标等输入设备。
进程运行单元110执行诸如Microsoft Windows的操作系统(OS)来运行进程。OS提供允许应用程序改变程序的优先级顺序的应用程序接口(API)。控制器130可以实施为预定的应用程序,以使用OS中提供的API改变程序的优先级顺序。
一个CPU一次只能运行一个任务。多任务,或者一次执行多个程序,意味着使用CPU(中央处理系统)中的上下文切换,以使得看起来多个程序在同时运行。如图2所示,OS管理各种状态的线程:就绪、等待、运行、终止等。为供参考,程序是至少一个进程的组合,而一个进程至少有一个线程。线程包括类似于时间片或者量程(quantum)的单元。图3示出了进程、线程和时间片的配置。在所示的例子中,如无其他提示,术语“进程”均指线程(和时间片)。
如图2所示,首先,每个时间片在就绪、运行和等待状态之间变化。如果运行状态结束,则时间片改变为终止状态。在此,处于运行状态的时间片使用CPU。当线程开始操作时,线程被初始化。一旦初始化完成且线程准备好运行,线程就进入就绪状态。当选择器(可以包括在CPU中或者其他组件中)确定该线程可以运行时,线程进入待命状态,同时选择器为运行该线程准备CPU、内存等。如果该线程在处于待命状态时被抢先(例如下面将描述的被更高优先级线程抢先),则该线程返回到就绪状态。如果在运行状态下的线程不再要求CPU,例如因为线程在等待I/O或等待其他进程完成,则该线程进入等待状态以使另外的线程能够运行。一旦进程完成,线程可以返回到运行状态或者就绪状态。此外,如果从等待状态进入就绪状态要求调整内核堆栈,则线程就进入改变状态,在该状态下,内核堆栈准备好接收另一个线程。
当处于运行状态下的线程的时间片结束,则该线程从运行状态返回就绪状态。当线程完成执行,线程进入终止状态,线程在此终止。随后,如果该线程需要再次运行,则线程被重新初始化,返回到初始化状态。
OS按照优先级顺序执行多个程序。换句话说,如果多个程序需要在同一时间运行,OS运行优先于其他程序的高优先级的程序。线程的优先级顺序可以被改变。线程可以用几种方式来执行,包括主动切换方法和抢先方法。
如图4所示,主动切换类似于下述情况:在汉堡店中,顾客A完成点餐后正在等待汉堡,另一个顾客B点餐。换句话说,当线程A11a(如图4所示)在执行一项费时很长的工作时,线程A11a由于其优先级变低而进入等待状态。相应的,当线程A11a处于等待状态时,另一个线程B11b可以运行。
如图5所示,抢先类似于下列情况:一个重要的顾客B突然进入汉堡店时顾客A刚开始点汉堡,而该重要的顾客B被允许在顾客A之前点餐。顾客A被“抢先”了:他不能点餐而必须重新回到队列。换句话说,尽管线程A12a处于运行状态,如果具有更高优先级顺序的线程B12b出于等待状态,那么线程A12a被停止而有更高优先级顺序的线程B被允许运行。
控制器130使用API提高程序的优先级顺序。因此,进程运行单元110根据提升后的优先级顺序运行比其他程序优先的相应程序。如图6所示,当程序14、16和18的线程13a、13b和13c处于就绪状态时,如果线程13c所属的程序的优先级顺序提高,则线程13c在程序14和16的线程13a和13c之前执行。因此,用户正在使用的程序的运行速度提高,用户感受到更好的性能。
所述程序可以是当前正在执行的多个程序中的当前活动程序。多个性能模式可以包括普通模式和高性能模式。普通模式可以对应于OS中设置的通用优先级顺序。高性能模式可以对应于比普通模式更高的优先级顺序。但是,其他性能模式也可以被使用,比如达到能量有效的模式,用于游戏的模式,或用于记录/再现音频或视频的模式。
用户输入单元120可以具有至少一个按钮(未示出),以选择性能模式。例如,该按钮可以是键盘中的预定键。但是,性能模式可以用任何方式选择,例如通过预定按键(如“Control-Alt-Delete”),通过图形界面,或者通过菜单。控制器130根据用户的输入选择多个性能模式中的一个。
为了简化操作,如果在按钮被按下后经过了预定的时间段,控制器130可以确定多个性能模式中的一个被选择。例如,如果按钮被按下一次,控制器130确定用户想要改变性能模式。如果按钮在1秒(或其他预定的时间段)内被再次输入,则控制器130确定下一个性能模式被选择。如果按钮在预定时间段(例如1秒)后没有被按下,则控制器130将当前的性能模式改变到最后选择的性能模式。通过这种方式,用户可以容易地选择适合当前情况的性能模式。
此外,所述计算机系统100可以显示性能模式的选择状态。计算机系统100可以还包括图形处理器140,其根据控制器130的控制,在显示设备150上显示与选择多个性能模式有关的图形图像。图形处理器140可以用OS的图形设备接口(Graphic Device Interface,GDI)以及图形卡(未示出)来实施。图形图像可以以屏幕上显示(On Screen Display,OSD)的格式显示。显示设备150可以包括附加到计算机系统100的监控器,或者可以被集成到系统100和/或输入部分200中。
如图7和8所示,如果按钮被按下,则控制器130控制图形处理器140显示图形图像20a,该图形图像20a显示当前性能模式和其他性能模式。在图7中,图形图像20a显示当前性能模式是普通模式。当按钮被再次按下时,控制器130控制图形处理器140显示图形图像20b,其逐个显示改变的模式。如图8所示,图形图像20b示出性能模式从普通模式改变到高性能模式。本发明的其他方面可以不同地显示性能模式和/或可以允许用户用不同的方式改变性能模式。
虽然不是所有方面都要求,但控制器120可以控制除进程的优先级顺序之外的其它计算机系统100的特性,以使计算机系统100的性能能够被改进。这些特性可以包括CPU的超频(over-clocking)和降频(throttling)。控制器130可以根据用户选择的性能模式来改变超频、降频等的级别。例如,如果性能模式从普通模式改变到高性能模式,控制器130可以提升超频、降频等的级别。
虽然不是所有方面都要求,但计算机系统100包括风扇160以冷却CPU,计算机系统100还包括作为内部或外部存储单元实例的光盘驱动器(OpticalDisk Drive,ODD)170。控制器130可以根据用户选择的性能模式控制风扇160和ODD 170的性能。例如,当性能模式从普通模式改变到高性能模式时,控制器130可以加速风扇160的旋转和ODD 170的运转。尽管是按照ODD 170来进行描述,但可以理解,除ODD 170之外,或者代替ODD 170,也可以使用其他介质驱动器,比如磁介质驱动器。此外,尽管是按照风扇160来进行描述,但可以理解,可以使用任何管控计算机系统100的环境的系统环境控制器或者环境管理单元,其示例包括风扇160。
此外,除普通模式和高性能模式之外,多性能模式还可以包括省电(低噪音)模式。省电(低噪音)模式与普通模式或高性能模式相比,消耗更少的功率,制造更少的噪音。如果省电(低躁音)模式被选中作为性能模式,则控制器130可以降低超频、降频等的级别,和/或降低风扇160的转速或ODD 170的运转速度。
表1示出了上述多个性能模式和系统的特性。本发明的其他方面可包括具有不同的优先级和速度控制的其他的性能模式。
表1
模式 | 进程优先级 | 控制CPU超频 | 控制风扇速度 | 控制ODD速度 | CPU降频 |
高性能模式 | 高 | 开 | 高 | 高 | 高 |
普通模式 | 普通 | 关 | 正常 | 正常 | 正常 |
省电(低噪音)模式 | 普通 | 关 | 低 | 低 | 低 |
如表1所示,普通模式对应于系统的一般操作。在普通模式下省电(低噪音)模式和高性能模式的功能被关闭。在普通模式下,进程以普通优先级运行,风扇160和ODD 170可以以它们的普通速率运转。普通模式可以是默认模式,在不需要高性能模式或能量效率/安静运转时采用。
当用户在安静的地方,如图书馆,操作计算机系统100时,在晚上需要安静时,想要延长电池寿命等情况下,可以使用省电(低噪音)模式。在低优先级模式下,风扇160可旋转在较低的速率,ODD 170可以运转在较低的速率,以减少噪声和延长电池寿命。与运行在普通或高性能模式下的进程相比,运行在省电模式下的进程可以以较低的优先级运行。
当用户感觉某个特定的程序运行不顺利时或者在使用需要相当多系统资源的程序,如多媒体、3D游戏等时,可以使用高性能模式。在高性能模式下,风扇160可以旋转在更高的速度以冷却CPU并允许CPU运转在更高的时钟速度。类似地,ODD 170可以运转在更快的速率以允许以更快的速率访问更多的数据。运行在高性能模式下的线程可被赋予更高的优先级,以使得该线程能够抢先具有普通优先级的线程,正如参照图2和图5所描述的那样。
图9是根据本发明的实施方式改变当前执行程序的优先级的例程的流程图。首先,在操作S101,进程运行单元110根据优先级顺序运行当前执行的多个程序的进程。在操作S102,控制器130确定选择性能模式的按钮是否被按下。如果按钮没有被按下,则例程返回到操作S101。尽管被描述为单次按下,但可以理解,可以使用按钮序列和/或可以使用鼠标点击来选择性能模式。
如果在操作S102确定按钮被按下,则在操作S103,控制器130确定性能模式选择开始,并控制图形处理器140显示示出当前性能模式的图形图像。接下来,在操作S104,控制器130确定选择性能模式的按钮是否在预定时间段内被再次按下。如果控制器130确定按钮没有在预定时间段内被按下,则在操作S105,控制器130控制图形处理器140通过删除所显示的图形图像来停止显示性能模式,并且例程返回到操作S101。
如果控制器130确定按钮在预定时间段内被再次按下,则在操作S106,控制器130控制图形处理器140显示示出改变的性能模式的图形图像。接下来,在操作S107,控制器130确定按钮是否在预定时间段内被按下。如果确定按钮在预定时间段内被再次按下,则例程返回到操作S106。
如果确定按钮在预定时间段内没有被按下,则在操作S108,控制器130控制进程处理单元110根据与选择的性能模式相对应的优先级顺序运行当前活动的程序的进程。
如上所述,计算机系统100及其控制方法能够根据当前情况,运转在用户利用简单操作所选择的峰值性能。
根据本发明的方面,可以根据环境改变到省电(低噪音)模式、普通模式和高性能模式,以使得系统的有限资源能够被有效使用。例如,当用户运行游戏或者运动的画面时,高性能模式能解决视频缓慢或者不连贯的问题。并且,当用户使用省电(低噪音)模式时,用户能够在安静的地方没有任何限制地使用计算机系统100,电池的寿命也可以延长。
尤其地,本发明的方面能够通过仅仅敲击一次按钮就容易地将模式改变到适合当前环境的模式,从而对于用户来说非常方便。本发明的其他方面允许通过OS改变进程运行的优先级顺序,以使得利用软件,不需要额外的硬件,就能改善用户感觉到的性能。
根据本发明的方面的性能模式改变技术和控制器可以被记录在计算机可读介质中,该计算机可读介质包括程序指令,以实现通过计算机实施的不同操作。介质还可以包括单独的程序指令、数据文件、数据结构等,或者与它们的组合。计算机可读介质的例子包括磁介质,例如硬盘、软盘和磁带;光介质,例如CD ROM盘和DVD;磁光介质,例如光磁;以及专门配置以用来保存和执行程序指令的硬件设备,例如只读存储器(ROM),随机存取存储器(RAM),闪存等。介质也可以是传输介质,例如光或金属线缆、波导等,包括指定程序指令、数据结构等的载波传输信号。程序指令的例子包括机器代码和文件两者,机器代码例如由编译器所产生,而文件则包含更高级的代码,其可以由计算机使用解释器来执行。所述的硬件设备可以被配置成用作一个或多个软件模块,以执行本发明上述实施方式的操作。尽管已经示出和描述了本发明的少量实施方式,但本领域技术人员应当理解,在不脱离由所附权利要求书及其等价物限定其范围的本发明的原理和精神的情况下,可以对该实施例进行修改。
尽管是在计算机的上下文中进行描述,但可以理解,本发明的方面可以在其他上下文中实现,例如在媒体播放器、电话和其它便携式或非便携式设备中使用的便携式处理器。
尽管已经示出和描述了本发明的少量实施方式,但本领域技术人员应当理解,在不脱离由所附权利要求书及其等价物限定其范围的本发明的原理和精神的情况下,可以对该实施例进行修改。
Claims (26)
1.一种设备,包括:
处理器,其根据优先级顺序执行多个正在运行的进程中的一个;
控制器,其确定通过命令选择了多个性能模式中的哪一个,并控制所述处理器根据所确定的性能模式的优先级顺序执行所述多个进程中的进程。
2.如权利要求1所述的设备,其中:
所述处理器通过执行操作系统(OS)来运行所述进程,该操作系统提供允许改变所述优先级顺序的应用程序接口(API),并且,
所述控制器执行应用程序,以使用所述API改变程序的优先级顺序。
3.如权利要求1所述的设备,其中,所述性能模式包括普通模式和高性能模式,该普通模式对应于多个程序的第一预定优先级顺序,该高性能模式对应于不同于普通模式的所述多个程序的第二优先级顺序。
4.如权利要求1所述的设备,其中,当前正在被执行的所述多个进程之一是当前活动的进程。
5.如权利要求1所述的设备,还包括用户输入单元,通过它输入命令以选择所述多个性能模式中的一个,每个性能模式包括相应的一组性能因素,所述性能因素包括优先级顺序;
其中,该用户输入单元包括至少一个按钮,以允许用户输入所述命令,并且
如果在按钮被激活后经过了预定时间段,则所述控制器确定所述性能模式中的一个被选择。
6.如权利要求1所述的设备,还包括图形处理器,其根据控制器的控制,在预定的显示设备上显示与选择性能模式相关的图形图像。
7.如权利要求6所述的设备,其中,所述控制器对所述图形处理器进行控制,使其在所述按钮被激活时显示示出所述性能模式中的当前性能模式的图形图像,并且每当该按钮被再次按下时显示逐个改变所述性能模式。
8.一种方法,包括:
根据命令确定从多个性能模式中选择的性能模式,以执行多个正在运行的进程中的进程;
根据所确定的性能模式运行所述进程。
9.如权利要求8所述的方法,其中,运行所述进程还包括提高或降低被执行的进程的优先级顺序。
10.如权利要求9所述的方法,其中,所述优先级顺序是进程被执行的顺序。
11.如权利要求8所述的方法,其中,运行所述进程包括通过执行OS来运行该进程,所述OS提供允许改变所述程序的优先级顺序的API,以及执行应用程序以使用所述API改变所述程序之一的优先级顺序。
12.如权利要求8所述的方法,还包括:
接收选择所述多个性能模式中的一个的命令,每个性能模式包括相应的一组性能因素,该性能因素包括优先级顺序;
其中,接收该命令包括通过用户输入单元接收该命令,该用户输入单元具有至少一个按钮,用户利用所述按钮输入所述命令,并且
如果在所述按钮被激活后经过了预定时间段,则所述运行所述进程确定所述性能模式之一被选择。
13.如权利要求8中所述的方法,还包括显示与选择性能模式相关的图形图像。
14.如权利要求13所述的方法,其中,显示所述图形图像包括:在按钮被按下时,显示示出所述性能模式中的当前性能模式的图形图像,并且,每当所述按钮被再次按下时,显示示出所述性能模式被逐个改变的图形图像。
15.如权利要求8所述的方法,还包括根据所选择的性能模式,在CPU超频和CPU降频之间调整至少一个级别。
16.如权利要求3所述的设备,其中,所述性能模式包括省电模式,其具有低于普通模式的优先级。
17.如权利要求9所述的方法,其中:
如果所述命令指示普通性能模式,则按照普通优先级顺序执行所述进程,在该普通优先级顺序中,所述进程的线程依照普通顺序来执行;
如果所述命令指示另一种性能模式,则按照另一种优先级顺序来执行所述进程,在该另一种优先级顺序中,所述进程的线程依照不同于普通顺序的顺序来执行。
18.如权利要求17所述的方法,其中:
所述普通顺序允许在将第二应用的第二线程保持在等待状态的同时执行第一应用的第一线程;并且
所述另一种顺序允许在将所述第一应用的第一线程保持在等待状态的同时执行所述第二应用的第二线程。
19.如权利要求8所述的方法,其中:
所述命令还包括一组系统控制信息,其能够指示除性能模式之外的多个系统性能参数,并且
运行所述进程还包括根据该组系统控制信息来改变系统元素。
20.如权利要求19所述的方法,其中,所述的一组系统控制信息指示用于中央处理单元、系统环境控制和驱动速度的设置。
21.如权利要求1所述的设备,其中,所述控制器还根据所确定的性能模式控制连接到所述设备的至少一个硬件组件的操作。
22.如权利要求1所述的设备,其中:
所述命令还包括一组系统控制信息,其能够指示除性能模式之外的多个系统性能参数,并且
所述控制器根据该组系统控制信息来改变系统元素。
23.如权利要求22所述的设备,其中,所述的一组系统控制信息指示用于所述设备的中央处理单元、该设备的系统环境控制器和该设备所使用的存储介质的驱动速度的设置。
24.如权利要求1所述的设备,其中,所述控制器根据所选择的性能模式,控制处理器正在执行的进程的优先级顺序的升高或降低。
25.如权利要求24所述的设备,其中:
如果所述命令指示普通性能模式,则所述控制器控制所述处理器按照普通优先级顺序执行所述进程,在该普通优先级顺序中,所述进程的线程依照普通顺序执行;
如果所述命令指示另一种性能模式,则该控制器控制该处理器按照另一种优先级顺序执行进程,在该另一种优先级顺序中,所述进程的线程依照不同于普通顺序的顺序执行。
26.如权利要求25所述的设备,其中:
所述普通顺序允许所述处理器在将第二应用的第二线程保持在等待状态的同时执行第一应用的第一线程,并且
所述另一种顺序允许所述处理器在将所述第一应用的第一线程保持在等待状态的同时执行所述第二应用的第二线程。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR87575/06 | 2006-09-11 | ||
KR1020060087575A KR101282139B1 (ko) | 2006-09-11 | 2006-09-11 | 별도 버튼을 이용하여 성능모드 변경이 가능한컴퓨터시스템 및 그 제어방법 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210081319.2A Division CN102736952B (zh) | 2006-09-11 | 2007-09-11 | 能使用专用按钮改变性能模式的计算机系统及其控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101145111A true CN101145111A (zh) | 2008-03-19 |
Family
ID=39171156
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210081319.2A Expired - Fee Related CN102736952B (zh) | 2006-09-11 | 2007-09-11 | 能使用专用按钮改变性能模式的计算机系统及其控制方法 |
CNA2007101454181A Pending CN101145111A (zh) | 2006-09-11 | 2007-09-11 | 能使用专用按钮改变性能模式的计算机系统及其控制方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210081319.2A Expired - Fee Related CN102736952B (zh) | 2006-09-11 | 2007-09-11 | 能使用专用按钮改变性能模式的计算机系统及其控制方法 |
Country Status (3)
Country | Link |
---|---|
US (2) | US8621474B2 (zh) |
KR (1) | KR101282139B1 (zh) |
CN (2) | CN102736952B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102436457A (zh) * | 2011-02-18 | 2012-05-02 | 奇智软件(北京)有限公司 | 一种分配浏览器进程的方法及其设备 |
CN102855137A (zh) * | 2011-06-28 | 2013-01-02 | 西门子公司 | 用于自动化部件的编程的方法和程序设计系统 |
CN113994647A (zh) * | 2019-06-07 | 2022-01-28 | 大金工业株式会社 | 设备控制系统、设备的控制方法 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2492352A (en) * | 2011-06-29 | 2013-01-02 | Leonid Dorrendorf | Optimising application performance on basis of priority |
CN103235178A (zh) * | 2013-04-26 | 2013-08-07 | 河南科技大学 | 一种双按键等高精度频率计及其计算方法 |
US10025329B2 (en) * | 2013-08-21 | 2018-07-17 | Google Technology Holdings LLC | Method and apparatus for adjusting portable electronic device operation based on ambient temperature |
US10564687B2 (en) * | 2016-10-28 | 2020-02-18 | Arris Enterprises Llc | Fan-less mode in a power over ethernet (PoE) network device |
KR102507249B1 (ko) * | 2018-03-08 | 2023-03-07 | 삼성전자주식회사 | 성능 모드 제어 방법 및 이를 지원하는 전자 장치 |
US11112999B2 (en) * | 2019-07-29 | 2021-09-07 | EMC IP Holding Company LLC | Optimizing I/O latency by software stack latency reduction in a cooperative thread processing model |
EP4139772A4 (en) * | 2020-06-19 | 2024-01-10 | Hewlett Packard Development Co | CONTROLLING A COOLING DEVICE IN A DATA PROCESSING DEVICE |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5754798A (en) * | 1994-02-18 | 1998-05-19 | Kabushiki Kaisha Toshiba | Computer system with function for controlling system configuration and power supply status data |
JPH07319569A (ja) | 1994-05-25 | 1995-12-08 | Toshiba Corp | コンピュータシステム |
JP3075957B2 (ja) * | 1995-05-30 | 2000-08-14 | 株式会社東芝 | コンピュータシステム |
EP0763791A1 (en) * | 1995-09-14 | 1997-03-19 | Hewlett-Packard Company | Computer keyboard unit with smartcard interface |
US5826092A (en) * | 1995-09-15 | 1998-10-20 | Gateway 2000, Inc. | Method and apparatus for performance optimization in power-managed computer systems |
JPH09101847A (ja) | 1995-10-09 | 1997-04-15 | Fuji Xerox Co Ltd | コンピュータシステムの節電制御方法 |
US5760636A (en) * | 1996-06-28 | 1998-06-02 | Intel Corporation | Adjusting clock frequency and voltage supplied to a processor in a computer system |
JP3961619B2 (ja) * | 1997-06-03 | 2007-08-22 | 株式会社東芝 | コンピュータシステムおよびその処理速度制御方法 |
KR100345876B1 (ko) | 1998-08-20 | 2002-10-31 | 삼성전자 주식회사 | 전원관리모드를갖는컴퓨터시스템및그제어방법 |
TW460893B (en) | 1998-11-27 | 2001-10-21 | Koninkl Philips Electronics Nv | Color selection means for color display tubes and color display tubes provided with the same |
JP2000222075A (ja) | 1999-01-29 | 2000-08-11 | Matsushita Electric Ind Co Ltd | 電源制御装置 |
US6678830B1 (en) | 1999-07-02 | 2004-01-13 | Hewlett-Packard Development Company, L.P. | Method and apparatus for an ACPI compliant keyboard sleep key |
US6507306B1 (en) * | 1999-10-18 | 2003-01-14 | Contec Corporation | Universal remote control unit |
US6829713B2 (en) * | 2000-12-30 | 2004-12-07 | Intel Corporation | CPU power management based on utilization with lowest performance mode at the mid-utilization range |
JP3772713B2 (ja) | 2001-09-12 | 2006-05-10 | 日本電気株式会社 | プライオリティ動的制御方式、プライオリティ動的制御方法およびプライオリティ動的制御用プログラム |
CN1327347C (zh) | 2002-01-24 | 2007-07-18 | 皇家飞利浦电子股份有限公司 | 在多处理环境中执行进程 |
CA2474477C (en) * | 2002-01-30 | 2011-04-12 | Real Enterprise Solutions Development B.V. | Method of setting priority levels in a multiprogramming computer system with priority scheduling, multiprogramming computer system and program therefor |
KR100499611B1 (ko) | 2002-08-22 | 2005-07-05 | 엘지전자 주식회사 | 컴퓨터 시스템의 전원 관리방법 및 장치 |
US7376851B2 (en) | 2002-10-31 | 2008-05-20 | Lg Electronics Inc. | Apparatus and method for managing power in computer system |
JP3776874B2 (ja) * | 2002-11-29 | 2006-05-17 | 株式会社東芝 | 電子機器および同機器の動作モード設定方法 |
US7380247B2 (en) | 2003-07-24 | 2008-05-27 | International Business Machines Corporation | System for delaying priority boost in a priority offset amount only after detecting of preemption event during access to critical section |
US7690003B2 (en) | 2003-08-29 | 2010-03-30 | Fuller Jeffrey C | System and method for increasing data throughput using thread scheduling |
JP4549652B2 (ja) * | 2003-10-27 | 2010-09-22 | パナソニック株式会社 | プロセッサシステム |
US7584475B1 (en) * | 2003-11-20 | 2009-09-01 | Nvidia Corporation | Managing a video encoder to facilitate loading and executing another program |
KR100763174B1 (ko) * | 2004-11-13 | 2007-10-04 | 삼성전자주식회사 | 절전 레벨을 디스플레이하는 장치 및 방법 |
US20070136731A1 (en) * | 2005-12-09 | 2007-06-14 | Caterpillar Inc. | Systems and methods for prioritizing tasks |
EP1878542A1 (en) * | 2006-07-07 | 2008-01-16 | Abb Research Ltd. | A control system and a method for controlling one or several industrial robots |
DE102006048173A1 (de) * | 2006-10-10 | 2008-04-17 | Robert Bosch Gmbh | Verfahren zum Umschalten eines Systems mit mehreren Ausführungseinheiten |
EP2116026B1 (en) * | 2007-02-01 | 2011-12-21 | Nxp B.V. | Control of awake time in mobile device |
EP2219112A3 (en) * | 2009-01-23 | 2012-08-15 | Imec | Method and system for operating in hard real time |
JP5512383B2 (ja) * | 2010-05-12 | 2014-06-04 | ルネサスエレクトロニクス株式会社 | 計算機システム |
-
2006
- 2006-09-11 KR KR1020060087575A patent/KR101282139B1/ko active IP Right Grant
-
2007
- 2007-07-13 US US11/777,529 patent/US8621474B2/en active Active
- 2007-09-11 CN CN201210081319.2A patent/CN102736952B/zh not_active Expired - Fee Related
- 2007-09-11 CN CNA2007101454181A patent/CN101145111A/zh active Pending
-
2013
- 2013-11-21 US US14/086,512 patent/US10101875B2/en active Active
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102436457A (zh) * | 2011-02-18 | 2012-05-02 | 奇智软件(北京)有限公司 | 一种分配浏览器进程的方法及其设备 |
CN102436457B (zh) * | 2011-02-18 | 2014-04-16 | 奇智软件(北京)有限公司 | 一种分配浏览器进程的方法及其设备 |
US10048986B2 (en) | 2011-02-18 | 2018-08-14 | Beijing Qihoo Technology Company Limited | Method and device for allocating browser processes according to a selected browser process mode |
CN102855137A (zh) * | 2011-06-28 | 2013-01-02 | 西门子公司 | 用于自动化部件的编程的方法和程序设计系统 |
CN102855137B (zh) * | 2011-06-28 | 2016-09-28 | 西门子公司 | 用于自动化部件的编程的方法和程序设计系统 |
US9910418B2 (en) | 2011-06-28 | 2018-03-06 | Siemens Aktiengesellschaft | Method and programming system for programming an automation component |
CN113994647A (zh) * | 2019-06-07 | 2022-01-28 | 大金工业株式会社 | 设备控制系统、设备的控制方法 |
CN113994647B (zh) * | 2019-06-07 | 2023-11-17 | 大金工业株式会社 | 设备控制系统、设备的控制方法 |
Also Published As
Publication number | Publication date |
---|---|
US20140082543A1 (en) | 2014-03-20 |
US8621474B2 (en) | 2013-12-31 |
CN102736952A (zh) | 2012-10-17 |
CN102736952B (zh) | 2016-08-03 |
US10101875B2 (en) | 2018-10-16 |
KR101282139B1 (ko) | 2013-07-04 |
US20080065869A1 (en) | 2008-03-13 |
KR20080023548A (ko) | 2008-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101145111A (zh) | 能使用专用按钮改变性能模式的计算机系统及其控制方法 | |
US6687838B2 (en) | Low-power processor hint, such as from a PAUSE instruction | |
US9875111B2 (en) | Information handling system performance optimization system | |
US10503238B2 (en) | Thread importance based processor core parking and frequency selection | |
EP3535641B1 (en) | Thread importance based processor core partitioning | |
EP2840497B1 (en) | Method, system and an executable piece of code for the virtualisation of a hardware resource associated with a computer system | |
US8694813B2 (en) | Efficient storage power management | |
US20110239019A1 (en) | Method and system for managing power consumption of a computing device | |
CN109491562A (zh) | 一种语音助手应用程序的界面显示方法及终端设备 | |
CN103376879A (zh) | 存储器控制设备和方法、信息处理设备和程序 | |
JP6042454B2 (ja) | ユーザ生成によるデータセンターの省電力 | |
WO2011155047A1 (ja) | マルチコアプロセッサシステム、電力制御方法、および電力制御プログラム | |
US20030140264A1 (en) | Control method, program and computer apparatus for reducing power consumption and heat generation by a CPU during wait | |
CN101923484A (zh) | 电子装置、计算机可执行系统、及应用程序显示控制方法 | |
WO2018112772A1 (zh) | 实现对另一操作系统操作的方法、装置及电子设备 | |
CN105843571A (zh) | 一种信息处理方法和电子设备 | |
US20140157022A1 (en) | Electronic device and method for reducing cpu power consumption | |
TW201728123A (zh) | 避免伺服器系統中的廣播流量的傳輸死鎖的電腦可讀媒體、系統及方法 | |
JP2018509682A (ja) | 入出力動作特性に基づくシステムオンチップアイドル電力状態制御のシステムと方法 | |
KR101321430B1 (ko) | 별도 버튼을 이용하여 성능모드 변경이 가능한 컴퓨터시스템 및 그 제어방법 | |
KR102616610B1 (ko) | 동접 관리를 위한 소켓핸들링 및 멀티스레드 제어 장치및 방법 | |
KR101380747B1 (ko) | 별도 버튼을 이용하여 성능모드 변경이 가능한 컴퓨터시스템 및 그 제어방법 | |
CN117950935A (zh) | 一种性能调控方法及电子设备 | |
JP5862727B2 (ja) | マルチコアプロセッサシステム、マルチコアプロセッサシステムの制御方法、およびマルチコアプロセッサシステムの制御プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20080319 |