KR100864964B1 - 연산처리시스템 및 연산처리 제어방법, 업무관리시스템 및업무관리방법과 기억매체 - Google Patents

연산처리시스템 및 연산처리 제어방법, 업무관리시스템 및업무관리방법과 기억매체 Download PDF

Info

Publication number
KR100864964B1
KR100864964B1 KR1020027006501A KR20027006501A KR100864964B1 KR 100864964 B1 KR100864964 B1 KR 100864964B1 KR 1020027006501 A KR1020027006501 A KR 1020027006501A KR 20027006501 A KR20027006501 A KR 20027006501A KR 100864964 B1 KR100864964 B1 KR 100864964B1
Authority
KR
South Korea
Prior art keywords
processor
task
time
real
operating frequency
Prior art date
Application number
KR1020027006501A
Other languages
English (en)
Other versions
KR20020087388A (ko
Inventor
도가와아츠시
Original Assignee
소니 가부시끼 가이샤
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 소니 가부시끼 가이샤 filed Critical 소니 가부시끼 가이샤
Publication of KR20020087388A publication Critical patent/KR20020087388A/ko
Application granted granted Critical
Publication of KR100864964B1 publication Critical patent/KR100864964B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Power Sources (AREA)

Abstract

프로세서의 동작주파수와 전원전압을 오퍼레이팅·시스템의 제어에 의해 변화시키는 것이 가능한 시스템에 있어서, 기동된 주기리얼타임·업무 및 비리얼타임·업무를 지체없이 처리하기 위해 필요한 프로세서의 동작주파수를 적응적으로 변화시키는 동시에, 시시각각으로 교체하는 동작주파수에 따라서 최적한 프로세서용 전원전압을 결정하여 가는 것으로, 어플리케이션의 리얼타임 요구에 응하면서 프로세서에 의한 전력소비를 삭감한다.

Description

연산처리시스템 및 연산처리 제어방법, 업무관리시스템 및 업무관리방법과 기억매체{Arithmetic Processing System and Arithmetic Processing Control Method, Task Management System and Task Management Method, and Storage Medium}
본 발명은, 1이상의 업무를 동시에 실행하는 타입의 프로세서에 관한 전력삭감기술에 관하여, 특히, 다른 주기로 동작하는 1이상의 업무를 실행하는 프로세서에 관한 전력삭감기술에 관한 것이다.
더욱 상세히는, 본 발명은 다음 주기의 개시까지 실행을 완료시킬 필요가 있는 주기리얼타임·업무와 관계되는 제약이 없는 비리얼타임·업무를 병행하여 실행하는 타입의 프로세서에 관한 전력삭감기술에 관하여, 특히, 어플리케이션의 리얼타임 요구에 응하면서 프로세서에 의한 전력소비를 삭감하는 전력삭감기술에 관한 것이다.
작금의 LSI(Large Scale Integration)기술에 있어서의 혁신적인 진보도 더불어서, 각종의 정보처리기기나 정보통신기기가 개발되어, 시판되도록 되어 왔다. 이런 종류의 기기에서는, CPU(Central Processing Unit)나 기타의 프로세서가 소정의 프로그램·코드를 실행함으로써 여러가지의 처리서비스를 제공하도록 되어 있 다.
다른편에 있어서, 정보기기에 관한 소비전력의 삭감이 가장 중요한 과제의 하나로 되어 있다. 이것은, 배터리구동식의 정보기기에 있어서는 배터리 지속시간의 연장에 관한 문제이기 때문이다. 또, 상용전원에서 무진장으로 구동할 수 있는 정보기기에 있어서도, 자원유한이라는 사회생태학적인 관점에서 전력절약화가 추장되고 있다.
정보기기 내에서는, 그 주·제어기인 프로세서의 소비전력은, 기기전체의 그 것에 점하는 비율은 높다. 바꿔말하면, 프로세서의 전력절약화는 정보기기 자체의 전력절약화에도 연결된다. 일반적으로는, 프로세서는 동작주파수의 증대에 따라서 연산속도가 향상하는 한편에서, 그 소비전력이 증대하는 경향에 있다.
예를 들면, 일본 특개평11-194849호 공보에는, 소비전력을 무용으로 증가시키지 않고, 소정의 처리시간에 소정의 처리동작을 완료할 수 있고, 업무의 처리용량이 변화하는 경우라도 설정작업이 간단히 되는 데이터처리방법 및 장치에 대하여 개시하고 있다.
동 공보에 개시된 데이터처리장치에서는, 마이크로컴퓨터가 각종의 처리동작을 실행하는 경우의 처리용량과 처리시간을 용량기억수단과 시간기억수단에 등록하여 두고, 마이크로컴퓨터가 각종의 처리동작을 실행하는 경우에 대응하는 처리용량 및 처리시간을 선출하고, 처리용량을 처리시간으로 제산하여 마이크로컴퓨터의 처리속도를 산출하여 기준클럭의 주파수를 가변으로 하고 있다. 마이크로컴퓨터의 처리속도를 처리용량과 처리시간에 대응하여 가변하므로, 소정의 처리동작을 소정 의 처리시간에 확실히 완료할 수 있는 동시에, 기준클럭의 주파수를 최적치로 설정할 수 있으므로, 데이터처리장치에 있어서의 소비전력의 무용한 증가도 방지할 수 있다.
그렇지만, 동 공보에 개시되는 데이터처리방법 및 장치에서는, 프로세서의 동작클럭 주파수를 변경하는 것만으로 소비전력의 삭감을 도모하는 것이다. 바꿔말하면, 동작클럭 주파수의 삭감에 의해, 단위시간당의 소비전력이 저하하는 것이지만, 각 처리를 완료시키기 위한 소요시간이 길게되고, 이 결과, 총전력량을 삭감하는 효과는 그다지 높지 않다. 즉, 프로세서가 아이들링상태에 있을 때의 소비전력량의 범위를 넘지 않고, 효과로서 불충분하다.
또, 동 공보에 개시되는 데이터처리방법 및 장치는, 각 처리의 처리타이밍이 미리 정해져 있고, 또한, 각 처리를 중단하지 않고 순차 처리함으로써, 모든 처리를 시간내에 완료시키는 것이 가능한 것을 전제로 하는 것이다. 이 때문에, 어느 처리의 실행을 중단하고, 보다 긴급도가 높은 처리(예를 들면, 리얼타임처리)를 행하게 할 필요가 있는 시스템에 대해서는 적용할 수 없다.
또, 일본 특개2000-122747호 공보에는, 디지털신호 연산처리부에 클럭을 공급하는 클럭발생부를 설치하고, 이 클럭발생부에서 디지털신호 연산처리부에 공급하는 클럭주파수를, 디지털신호 연산처리부에서의 연산처리량에 의거하여 제어함으로써 소비전력을 저감하는 제어장치 및 방법에 대해서 개시되어 있다.
그렇지만, 동 공보에 개시되는 제어장치 및 방법에서는, 연산부의 동작클럭 주파수를 변경하는 것만으로 소비전력의 삭감을 도모하는 것이다. 바꿔말하면,동작클럭 주파수의 삭감에 의해, 단위시간당의 소비전력은 저하하는 것이지만, 각 처리를 완료시키기 위한 소요시간이 길게되고, 이 결과, 전력량의 삭감효과는, 연산부가 아이들링상태에 있을 때의 소비전력량의 범위를 넘지 않고, 효과로서 불충분하다.
또, 동 공보에 개시되는 제어장치 및 방법에서는, 아이들링시간이 점하는 비율에서 동작주파수를 산출하도록 되어 있다. 그런데, 다른 주기로 동작하는 업무가 다수 실행되는 멀티업무 환경하에서는, 아이들링시간이 점하는 비율을 계산할 수는 없다.
또, Takanori Okuma, Tohru Ishihara, Hiroto Yasuura공저의 논문“Real-Time Task Scheduling for a Variable Voltage Processor”(IEEE 12th International Symposium on System Synthesis, November 1999)에 있어서 제안되는 SS 및 SD인 스케줄링수법에서는, 시스템의 가동전에 디스크 실행시간이 판단되어있는 것을 전제로 하고 있다. 이것은, 업무의 추가나 삭제가 행해질 때마다 재차 스케줄링을 행할 필요가 있는 것을 의미한다. 또한, 이 스케줄링처리는, 각 주기업무의 주기의 최소공배수를 주기로 하는 스케줄링 계산함으로써 행하지 않으면 아니 된다. 그들의 주기의 최소공배수가 충분히 작지 않은 경우, 업무의 추가나 삭제의 효율이 악화한다.
또, 이 논문에서 제안되고 있는 DD스케줄링수법은, 주기슬렛과 같이, 업무가 특정의 패턴으로 기동되는 것을 고려한 스케줄링을 행하고 있지 않다. 이 때문에, 소비전력의 삭감효과는 불충분하다.
또, Yann-Hang Lee, C.M. Krishna공저의 논문“Voltage-Clock Scaling for Low Energy Consumption in Real-time Embedded Systems”(IEEE Sixth International Conference on Real-time Computing Systems and Applications, December 1999)에 있어서 제고되어 있는 “Task based static scheduling”인 수법은, 업무를 정적우선도법으로 스케줄링하는 것을 전제로 하고 있다. 그런데, 정적우선도 스케줄링법은 가장 빠른 데드라인 우선도 스케줄링에 비해서 스케줄링능력이 열화되어 있는 것으로 알려져 있고, 전력삭감의 효과로서 불충분하다.
일반적으로는, 프로세서는 동작주파수의 증대에 따라서 연산속도가 향상하는 한편에서, 소비전력이 증대하는 경향에 있다(상술). 또, 프로세서의 동작주파수와 함께 그 전원전압(바꿔말하면, 소비전력)을 끌어올리지 않으면 아니 된다(단, 실제에는, LSI 제조프로세스의 미세화에 의해 전원전압의 상한이 제한되어 있으므로, 전압을 올림으로써 주파수를 올리는 것은 행해지지 않는다).
프로세서의 동작주파수와 전원전압을 동적제한에 의해 변화시키는 것이 가능한 시스템이라면, 기동된 각 업무를 지체없이 처리하기 위해 필요한 동작주파수를 적응적으로 변화시키는 동시에, 시시각각으로 전환되는 동작주파수에 따라서 최적한 전원전압을 결정하여 가는 것으로, 프로세서의 소비전력을 저감하는 것이 가능하다고 사료되는바, 이와 같은 것을 실현한 종래 기술은 발견되지 않는다.
본 발명은, 이와 같은 실정을 감안하여 이룩된 것이며, 본 발명의 목적은, 다른 주기로 동작하는 1 이상의 업무를 실행하는 프로세서를 위한, 뛰어난 전력삭감기술을 제공하는데 있다.
또, 본 발명의 목적은, 다음 주기의 개시까지 실행을 완료시킬 필요가 있는 주기리얼타임 업무와 실행시간에 관한 제약이 없는 비리얼타임 업무를 병행하여 실행하는 타입의 프로세서를 위한, 뛰어난 전력삭감기술을 제공하는데 있다.
또한, 본 발명의 목적은, 어플리케이션의 리얼타임요구에 응하면서 프로세서에 의한 전력소비를 삭감할 수 있는 뛰어난 전력삭감기술을 제공하는데 있다.
또한, 본 발명의 목적은, 프로세서의 동작주파수와 전원전압을 동적제어에 의해 변화시키는 것이 가능한 시스템에 있어서, 기동된 각 업무를 지체없이 처리하기 위해 필요한 동작주파수를 적응적으로 변화시키는 동시에, 시시각각으로 교체하는 동작주파수에 따라서 최적한 전원전압을 결정하여 가는 것으로, 프로세서의 소비전력을 저감할 수 있는, 뛰어난 전력삭감기술을 제공하는데 있다.
본 발명에 관계되는 연산처리시스템 또는 연산제어방법은, 다음 주기의 개시까지 실행을 완료시킬 필요가 있는 주기리얼타임·업무와 실행완료시각의 제약이 없는 비리얼타임·업무를 병행하여 실행 가능한 프로세서를 포함한 연산처리시스템 또는 연산제어방법이며, 프로세서의 가동중의 각 시점에 있어서, 각 주기리얼타임·업무에 부과된 요구를 충족하기 위해 충분한 동작주파수를 산출하는 동작주파수 산출수단 또는 스텝과, 동작주파수 산출수단 또는 스텝에 의한 산출결과에 의거한 동작주파수클럭을 프로세서에 공급하는 프로세서·클럭생성수단 또는 스텝을 구비한다.
단, 여기서 말하는 「시스템」이란, 복수의 장치(또는 특정의 기능을 실현하는 기능모듈)가 논리적으로 집합한 물건의 것을 말하고, 각 장치나 기능모듈이 단일의 케이스체 내에 있는지 없는지는 특별히 묻지 않는다.
프로세서가 실행하는 업무의 관리나, 업무실행에 필요한 프로세서의 동작주파수의 산출은, 예를 들면, 오퍼레이팅·시스템의 기능으로서 실장할 수 있다.
본 발명에 관계되는 연산처리시스템 및 연산처리 제어방법에 의하면, 기동된 주기리얼타임·업무 및 비리얼타임·업무를 지체없이 처리하기 위해 필요한 프로세서의 동작주파수를 적응적으로 변화시키는 동시에, 시시각각으로 교체하는 동작주파수에 따라서 최적한 프로세서용 전원전압을 결정하여 가는 것으로, 프로세서의 소비전력을 저감할 수 있다.
본 발명에 관계되는 연산처리시스템 및 연산처리 제어방법은, 프로세서의 가동중의 각 시점에 있어서, 주어진 업무중 어느 것을 실행할 것인지를 선택하여 실행하는 업무선택·실행수단 또는 스텝을 또한 구비할 수 있다. 보다 구체적으로는, 실행 가능한 주기리얼타임·업무의 리스트의 선두에서 업무를 추출하고, 이 리스트가 비어 있는 경우에는, 실행 가능한 비리얼타임·업무의 리스트의 선두에서 업무를 추출하도록 하면, 주기리얼타임·업무에 부과된 요구를 충족시키면서 각 업무를 실행할 수 있다.
또, 프로세서의 가동중의 각 시점에 있어서, 실행하여야 할 업무가 없어진 것에 응답하고, 프로세서를 가동율이 저하한 슬리프상태로 이행시키는 슬리프 천이수단 또는 스텝을 또한 갖추는 것으로, 미처리 업무가 없는 경우에 있어서의 프로세서의 소비전력을 최대한으로 절약할 수 있다.
또, 본 발명에 관계되는 연산처리시스템 및 연산처리 제어방법은, 동작주파수 산정수단 또는 스텝에 의해 산출된 동작주파수로 프로세서를 구동시키기 위해, 충분한 전원전압을 산출하는 전원전압 산출수단 또는 스텝과, 전원전압 산출수단 또는 스텝에 의한 산출결과에 의거한 전원전압을 프로세서에 공급하는 프로세서 전원공급수단 또는 스텝을 또한 구비하도록 하여도 좋다.
일반적으로, 프로세서의 동작주파수를 증대시키기 위해서는 공급전원의 전압을 끌어 올일 필요가 있다. 프로세서에 있어서 기동된 각 업무를 지체없이 처리하기 위해 필요한 동작주파수를 적응적으로 변화시키는 동시에, 시시각각으로 교체하는 동작주파수에 따라서 최적한 전원전압을 결정하여 가는 것으로, 프로세서의 소비전력을 효과적으로 저감하는 것이 가능하게 된다.
또, 본 발명에 관계되는 연산처리시스템 및 연산처리 제어방법은, 각 주기리얼타임·업무에 부과된, 다음 주기의 개시시간, 주기, 1주기당의 처리부하 등의 정보를 업무 실행전에 기록하는 업무정보 기록수단 또는 스텝과, 업무정보 기록수단 또는 스텝에 의해 기록된 정보를 참조하여, 전원전압과 동작주파수가 프로세서의 한계를 넘지 않고, 및/또는 기등록의 주기리얼타임·업무에 부과된 요구가 충족되도록, 새로운 주기리얼타임·업무의 등록을 제한하는 업무등록 제어수단 또는 스텝을 또한 갖추도록 하여도 좋다.
또, 비리얼타임·업무가 존재하지 않을 때에 동작주파수 산출수단 또는 스텝에 의해 산출된 동작주파수가 소정의 하한치를 하회한 것에 응답하고, 프로세서의 동작주파수를 이 하한치로 설정하는 하한치 설정수단 또는 스텝을 또한 갖추도록 하여도 좋다. 혹은, 비리얼타임·업무가 존재하지 않을 때에 동작주파수 산출수단 또는 스텝에 의해 산출된 동작주파수가 소정의 하한치를 하회한 것에 응답하고, 프로세서의 동작주파수를 이 하한치로 설정하는 하한치 설정수단 또는 스텝을 또한 갖추도록 하여도 좋다.
이와 같은 경우, 하한치로 설정함으로써 프로세서에 생기는 잉여시간을 이용하여 비리얼타임·업무를 실행함으로써, 주기리얼타임·업무가 다음 주기의 개시이전에 실행을 완료하는 것을 보증하면서, 비리얼타임·업무의 실행에 의해 소비되는 전력량을 삭감할 수 있다.
또, 본 발명에 관계되는 연산처리시스템 또는 연산제어방법은, 1이상의 업무를 실행 가능한 프로세서를 포함한 연산처리시스템 또는 연산제어방법이며, 프로세서가 실행하는 각 업무에 부과된 요구를 충족하기 위해 충분한 동작주파수를 산출하는 동작주파수수단 또는 스텝과, 동작주파수 산출수단 또는 스텝에 의한 산출결과에 의거한 동작주파수클럭을 프로세서에 공급하는 프로세서·클럭생성수단 또는 스텝과, 동작주파수 산정수단 또는 스텝에 의해 산출된 동작주파수로 프로세서를 구동시키기 위해 충분한 전원전압을 산출하는 전원전압 산출수단 또는 스텝과, 전원전압 산출수단 또는 스텝에 의한 산출결과에 의거한 전원전압을 프로세서에 공급하는 프로세서 전원공급수단 또는 스텝을 구비한다.
프로세서가 실행하는 업무의 관리나, 업무실행에 필요한 프로세서의 동작주파수의 산출은, 예를 들면, 오퍼레이팅·시스템의 기능으로서 실장할 수 있다.
본 발명에 관계되는 연산처리시스템 및 연산처리 제어방법에 의하면, 기동된 주기리얼타임·업무 및 비리얼타임·업무를 지체없이 처리하기 위해 필요한 프로세서의 동작주파수를 적응적으로 변화시키는 동시에, 시시각각으로 교체하는 동작주 파수에 따라서 최적한 프로세서용 전원전압을 결정하여 가는 것으로, 프로세서의 소비전력을 저감할 수 있다.
또, 본 발명에 관계되는 업무관리시스템 또는 방법은, 다음 주기의 개시까지에 실행을 완료시킬 필요가 있는 주기리얼타임·업무와 실행완료시간의 제약이 없는 비리얼타임·업무를 병행하여 실행 가능한 프로세서를 위한 업무관리시스템 또는 방법이며, 각 주기리얼타임·업무에 부과된, 다음 주기의 개시시간, 주기, 일주기당의 처리부하 등의 정보를, 업무실행전에 기록하는 업무정보 기록수단 또는 스텝과, 프로세서에 부과된 처리부하에 따라서 프로세서의 전원전압과 동작주파수를 설정하는 동작설정수단 또는 스텝과, 업무정보 기록수단 또는 스텝에 의해 기록된 정보를 참조하여, 전원전압과 동작주파수가 프로세서의 한계를 넘지 않고, 및/또는, 기등록의 주기리얼타임·업무에 부과된 요구가 충족되도록, 새로운 주기리얼타임·업무의 등록을 제한하는 업무등록 제어수단 또는 스텝을 구비한다.
본 발명에 관계되는 업무관리시스템 또는 방법에 의하면, 전원전압과 동작주파수가 프로세서의 한계를 넘지 않고, 또한, 기등록의 주기리얼타임·업무에 부과된 요구가 충족되도록, 새로운 주기리얼타임·업무의 등록을 제한할 수 있다.
또, 비리얼타임·업무가 존재하지 않을 때에 동작설정수단 또는 스텝에 의해 산출된 동작주파수 및/또는 전원전압이 소정의 하한치를 하회한 것에 응답하고, 프로세서의 동작주파수 및/또는 전원전압을 이 하한치로 설정하는 하한치 설정수단 또는 스텝을 또한 갖추도록 하여도 좋다.
이와 같은 경우, 하한치로 설정함으로써 프로세서에 생기는 잉여시간을 이용 하여 비리얼타임·업무를 실행함으로써, 주기리얼타임·업무가 다음 주기의 개시이전에 실행을 완료하는 것을 보증하면서, 비리얼타임·업무의 실행에 의해 소비되는 전력량을 삭감할 수 있다.
또, 본 발명에 관계되는 기억매체는, 다음 주기의 개시까지에 실행을 완료시킬 필요가 있는 주기리얼타임·업무와 실행완료시간의 제약이 없는 비리얼타임·업무를 병행하여 실행 가능한 프로세서에 의한 연산처리의 제어를 컴퓨터·시스템 상에서 실행하도록 기술된 컴퓨터·소프트웨어를 컴퓨터 가능형식으로 물리적으로 격납한 기억매체이며, 컴퓨터·소프트웨어는, 프로세서의 가동중의 각 시점에 있어서, 각 주기리얼타임·업무에 부과된 요구를 충족하기 위해 충분한 동작주파수를 산출하는 동작주파수 산출스텝과, 동작주파수 산출스텝에 의한 산출결과에 의거한 동작주파수클럭을 프로세서에 공급하는 프로세서·클럭생성스텝을 구비한다.
또, 본 발명에 관계되는 기억매체는, 1이상의 업무를 실행 가능한 프로세서에 의한 연산처리의 제어를 컴퓨터·시스템 상에서 실행하도록 기술된 컴퓨터·소프트웨어를 컴퓨터 가독형식으로 물리적으로 격납한 기억매체이며, 컴퓨터·소프트웨어는, 프로세서가 실행하는 각 업무에 부과된 요구를 충족하기 위해 충분한 동작주파수를 산출하는 동작주파수 산출스텝과, 동작주파수 산출스텝에 의한 산출결과에 의거한 동작주파수클럭을 프로세서에 공급하는 프로세서·클럭생성스텝과, 동작주파수 산정스텝에 의해 산출된 동작주파수로 프로세서를 구동시키기 위해 충분한 전원전압을 산출하는 전원전압 산출스텝과, 전원전압 산출스텝에 의한 산출결과에 의거한 전원전압을 프로세서에 공급하는 프로세서 전원공급스텝을 구비한다.
또, 본 발명에 관계되는 기억매체는, 다음 주기의 개시까지에 실행을 완료시킬 필요가 있는 주기리얼타임·업무와 실행완료시간의 제약이 없는 비리얼타임·업무를 병행하여 실행 가능한 프로세서를 위한 업무관리를 컴퓨터·시스템 상에서 실행하도록 기술된 컴퓨터·소프트웨어를 컴퓨터 가독형식으로 물리적으로 격납한 기억매체이며, 컴퓨터·소프트웨어는, 각 주기리얼타임·업무에 부과된, 다음 주기의 개시시간, 주기, 1주기당의 처리부하 등의 정보를, 업무 실행전에 기록하는 업무정보 기록스텝과, 프로세서에 부과된 처리부하에 따라서 프로세서의 전원전압과 동작주파수를 설정하는 동작설정스텝과, 업무정보 기록스텝에 의해 기록된 정보를 참조하여, 전원전압과 동작주파수가 프로세서의 한계를 넘지 않고, 및/또는, 기등록의 주기리얼타임·업무에 부과된 요구가 충족되도록, 새로운 주기리얼타임·업무의 등록을 제한하는 업무등록 제어스텝을 구비한다.
본 발명에 관계되는 기억매체는, 예를 들면, 여러 가지 프로그램·코드를 실행 가능한 범용성의 컴퓨터·시스템에 대하여, 컴퓨터·소프트웨어를 컴퓨터 가독(가(可讀)형식으로 물리적으로 제공하는 매체이다. 이와 같은 매체는, 예를 들면, CD(Compact Disc)나 FD(Floppy Disc), MO(Magneto-Optical Disc) 등의 착탈자재로 가반성의 기억매체이다. 혹은, 네트워크(네트워크는 무선, 유선의 구별을 묻지않는다) 등의 전송매체 등을 경유하여 컴퓨터·소프트웨어를 특정의 컴퓨터·시스템에 컴퓨터 가독형식으로 제공하는 것도 기술적으로 가능하다.
이와 같은 기억매체는, 컴퓨터·시스템 상에서 소정의 컴퓨터·소프트웨어의 기능을 실현하기 위한 컴퓨터·소프트웨어와 기억매체의 구조상 또는 기능상의 협 동적 관계를 정의한 것이다. 환언하면, 본 발명에 관계되는 기억매체를 거쳐서 소정의 컴퓨터·소프트웨어를 컴퓨터·시스템에 인스톨함으로써, 컴퓨터·시스템 상에서는 협동적 작용이 발휘되어, 본 발명에 관계되는 연산처리시스템 및 연산처리 제어방법, 업무관리시스템 및 업무관리방법과 동일한 작용효과를 얻을 수 있다.
본 발명의 또 다른 목적은, 특징이나 이점은 후술하는 본 발명의 실시예나 첨부하는 도면에 의거하여 상세한 설명에 의해 명백하게 될 것이다.
도 1은 본 발명의 실시에 제공되는 연산처리시스템(10)의 하드웨어구성을 나타낸 도면이다.
도 2는 복수의 주기리얼타임·업무가 다른 주기로 동시에 실행되고 있는 모양을 모식적으로 나타낸 도면이다.
도 3은 본 실시예에 관계되는 오퍼레이팅·시스템의 기능구성을 모식적으로 나타낸 블록도이다.
도 4는 주기리얼타임·업무를 등록하는 인터페이스에 있어서 실현되는 처리수순을 나타낸 플로차트이다.
도 5는 주기리얼타임·업무를 등록해제하는 인터페이스에 있어서 실현되는 처리수순을 나타낸 플로차트이다.
도 6은 주기리얼타임·업무를 기동개시하는 인터페이스에 있어서 실현되는 처리수순을 나타낸 플로차트이다.
도 7은 주기리얼타임·업무를 기동하는 타이머의 설정시각에 달하였을 때에 있어서의 처리수순을 나타낸 플로차트이다.
도 8은 비리얼타임·업무를 등록하는 인터페이스에 있어서 실현되는 처리수순을 나타낸 플로차트이다.
도 9는 비리얼타임·업무를 등록해제하는 인터페이스에 있어서 실현되는 처리수순을 나타낸 플로차트이다.
도 10은 주기리얼타임·업무의 등록삭제시, 기동개시시, 비리얼타임·업무의 등록시, 등록삭제시에 행하는 재스케줄링처리의 수순을 나타낸 플로차트이다.
이하, 도면을 참조하면서 본 발명의 실시예를 상술한다.
1. 시스템구성
도 1에는, 본 발명의 실시에 제공되는 연산처리시스템(10)의 하드웨어구성을 모식적으로 나타내고 있다. 동도에 나타내는 바와 같이, 연산처리시스템(10)은, 프로세서(11)와, RAM(Random Access Memory)(12)와, ROM(Read Only Memory)(13)와, 주변디바이스(14)와, 타이머(15)를 포함하고 있다.
프로세서(11)는, 연산처리시스템(10)의 메인·제어기이며, 오퍼레이팅·시스템(OS)의 제어하에서, 각종의 프로그램·코드를 실행하도록 되어 있다.
오퍼레이팅·시스템이 프로그램실행을 관리·제어하는 단위는, 일반적으로「업무」라고 불리운다. 본 실시예에 관계되는 프로세서(11)는, 다른 주기로 동작하는 복수의 업무를 동시에 실행하는 멀티업무기구를 갖추고 있는 것으로 한다. 업무에는, 다음 주기의 개시까지 실행을 완료시킬 필요가 있는 「주기리얼타임·업 무」와, 이와 같은 실행완료시간에 제약이 없는 「비리얼타임·업무」로 대별할 수 있다.
프로세서(11)는, 버스(16)에 의해 다른 기기류(후술)와 상호 접속되어 있다. 버스(16)상의 각 기기에는 각각 고유의 메모리·어드레스 또는 I/O어드레스가 부여되어 있고, 프로세서(11)는 이들 어드레스에 의해 기기액세스가 가능하게 되어 있다. 버스(16)는, 어드레스·버스, 데이터·버스, 제어·버스를 포함하는 공통신호전송로이다.
RAM(12)은, 기입가능한 메모리이고, 프로세서(11)에 있어서 실행되는 프로그램·코드를 로드하거나, 실행프로그램의 작업데이터를 일시 격납하기 위해 사용된다. 프로그램·코드에는, 예를 들면, BIOS(Basic Input/Output System:기본 입출력시스템), 주변기기를 하드웨어 조작하기 위한 디바이스·드라이버, 오퍼레이팅·시스템, 어플리케이션 등을 들 수 있다.
ROM(13)은, 소정의 코드나 데이터를 항구적으로 기억하기 위한 불휘발성 메모리이고, 예를 들면, BIOS나 기동시의 자기진단프로그램(Power On Self Test:POST) 등을 격납하고 있다.
주변디바이스(14)에는, 디스플레이나 프린터와 같은 사용자 출력장치, 키보드나 마우스와 같은 사용자 출력장치, 하드·디스크나 기타의 미디어·드라이브로 이루는 외부기억장치, 네트워크·인터페이스·카드와 같은 통신장치가 포함된다.
각 주변디바이스(14)에는, 끼어들기레벨이 할당되어 있고, 소정의 이벤트발생(예를 들면, 키보드입력이나 마우스클릭 등)에 응답하고, 끼어들기 요구신호선(19)을 거쳐서 프로세서(11)에 통지할 수 있다.
타이머(15)는, 타이머신호를 소정 주기로 발생시키는 장치이다. 타이머(15)에도 끼어들기레벨이 할당되어 있고, 끼어들기 요구신호선(19)을 거쳐서 프로세서(11)에 대하여 주기적인 끼어들기를 발생하도록 되어 있다.(단, 주기가 다른 복수의 주기리얼타임·업무가 존재하는 경우, 타이머신호는 주기적인 끼어들기는 되지 않는다).
상술한 바와 같은 시스템(10)의 각 컴포넌트에는, 전원장치(17)로부터의 전력이 전원공급선(18)을 거쳐서 공급된다. 전원장치(17)는, 예를 들면 배터리나 상용 AC전원으로 구성되는바, AC/DC어댑터나 DC/DC컨버터에 의해 일정한 전원전압을 공급할 수 있다.
도시의 예에서는, 프로세서(11)에 대하여는, 전용의 DC/DC변환기(21)가 설치되어 있다. 본 실시예에서는, 프로세서(11)는 오퍼레이팅·시스템의 제어하에서, 프로세서용 DC/DC변환기(21)로부터의 공급전압을 설정하는 기구를 갖추고 있다.
또, 프로세서(11)는, 프로세서·클럭생성기(22)가 발생하는 동작클럭을 입력하고, 그 동작주파수에 동기적으로 구동한다. 일반적으로는, 동작주파수의 증대와 함께, 프로세서(11)의 퍼포먼스 즉 처리속도는 향상하는 동시에, 그 소비전력도 증대한다. 본 실시예에서는, 프로세서(11)는 오퍼레이팅·시스템의 제어하에서, 프로세서·클럭생성기(22)가 생성하는 클럭의 동작주파수를 설정하는 기구를 갖추고 있다.
또한, 프로세서(11)에 대한 전원전압과 동작주파수의 쌍방을 프로세서용 DC/DC변환기(21)와 프로세서·클럭생성기(22)의 각각에 의해 동적으로 제어할 필요는 반드시 없고, 어느 한편의 동작에 의해서도 본 발명의 효과를 실현할 수 있다. 바꿔말하면, 오퍼레이팅·시스템은, 프로세서(11)의 전원전압과 동작주파수의 쌍방을 동적 제어하는 것이 아니고, 어느 한편만을 제어하는 경우라도 본 발명의 효과를 실현할 수 있다. 또, 전원전압과 동작주파수의 어느 한편만을 연산처리에 의해 설정하고, 타편은 그 설정에 자동적으로 추종하도록 구성하여도 좋다(예를 들면, 프로세서(11)의 주파수를 오퍼레이팅·시스템이 설정함으로써, 그 주파수로 동작하기 위해 필요한 최소의 전원전압이 자동적으로 프로세서(11)에 공급되도록 구성하여도 좋다).
2. 어플리케이션에 대한 인터페이스
연산처리시스템(10) 상에 있어서의 연산처리는, 프로세서(11)가 오퍼레이팅·시스템의 제어하에서 어플리케이션·업무를 실행하는 형식으로 실현된다(상술). 오퍼레이팅·시스템이란, 시스템(10)의 하드웨어 및 소프트웨어를 종합적으로 관리하기 위한 기본 소프트웨어를 말하는 것이며, 어플리케이션에 대해서는, 오퍼레이팅·시스템의 기본기능을 호출(콜한다)하기 위한 인터페이스, 즉 API(Application Programming Interface)를 제공하고 있다.
오퍼레이팅·시스템이 어플리케이션의 실행을 관리·제어하는 단위는 「업무」라고 불리고, 업무에는 다음 주기의 개시까지 실행을 완료시킬 필요가 있는 「주기리얼타임·업무」와, 이와 같은 실행완료시간에 제약이 없는 「비리얼타임·업무 」로 대별된다(상술).
주기리얼타임·업무란, 어느 주기로 정기적으로 기동되는 업무이다. 단, 각 주기리얼타임·업무의 주기는 각각이다. 도 2에는, 복수의 주기리얼타임·업무가 다른 주기로 동시에 실행되고 있는 모양을 모식적으로 도해하고 있다.
주기리얼타임·업무는, 각 기동시마다 미리 어플리케이션·프로그램에 의해 설정된 프로세서 사용량을 초과하지 않는 범위에서 실행이 행해진다. 여기서 말하는 「프로세서 사용량」이란, 프로세서의 동작주파수가 최대치로 고정된 조건하에서, 1주기의 실행을 완료시키기 위해 필요한 시간의 것을 의미한다.
본 실시예에 관계되는 오퍼레이팅·시스템은, 주기리얼타임·업무의 실행이 다음의 주기가 개시하기 이전에 완료하도록 동작주파수의 제어와 업무 실행순서의 제어를 행하도록 되어 있다.
또, 비리얼타임·업무란, 그 실행 완료시간에 대한 제약이 없는 업무이다.
본 실시예에 관계되는 오퍼레이팅·시스템은, 어플리케이션·프로그램에 대하여, 「주기리얼타임·업무의 등록」, 「주기리얼타임·업무의 주기적실행」, 「주기리얼타임·업무의 등록해제」, 「비리얼타임·업무의 실행개시」, 「비리얼타임·업무의 실행완료」,「동작주파수의 하한치의 설정」이라는 각 인터페이스를 제공하고 있다.
(1)주기리얼타임·업무의 등록
어플리케이션·프로그램은, 이 인터페이스를 이용할 때에, 이하의 각 정보를 오퍼레이팅·시스템에 부여한다.
업무의 기동주기:
업무가 기동되는 주기이다.
업무의 1주기당의 처리부하:
처리부하의 표현방법으로서 여러가지의 것을 들 수 있다. 예를 들면, 프로세서(11)가 최대 동작주파수로 이 업무의 실행을 계속할 때에는, 1주기의 처리에 요하는 계산시간으로 표현하는 것도 가능하다.
업무의 실행에 필요한 기타의 정보:
예를 들면, 업무의 실행개시 어드레스나 스택영역의 위치 등을 부여하는 것을 들 수 있다. 단, 이 정보는, 동작주파수나 전원전압의 제어나 업무 실행순서의 제어에는 본질적인 것은 아니다.
오퍼레이팅·시스템은, 이들의 정보를 기초로, 이미 등록된 주기리얼타임·업무의 요구를 충족하면서, 새로운 주기리얼타임·업무의 실행이 또한 가능한지 아닌지를 판단한다. 실행 불가능으로 판단하였을 때에는, 어플리케이션·프로그램에 대하여 그 뜻을 통지하는 동시에, 업무의 등록을 행하지 않는다. 타편, 실행 가능으로 판단하였을 때에는, 업무의 등록을 행한다.
(2)주기리얼타임·업무의 주기적실행
상술의 인터페이스「주기리얼타임·업무의 등록」에 의해 등록에 성공한 주기리얼타임·업무는, 이 인터페이스의 호출에 의해 주기적인 기동을 개시할 수 있다. 어플리케이션·프로그램은, 이 인터페이스를 이용할 때에, 업무를 특정할 수 있는 값을 오퍼레이팅·시스템에 부여한다.
또한, 이 인터페이스를 생략하여, 업무의 등록성공과 동시에 기동을 개시하도록 실장하는 것도 가능하다. 또, 지정된 시간에서 주기적인 기동을 시작하는 것을 요구하기 위한 인터페이스를 준비함으로서도 실장 가능하다.
(3)주기리얼타임·업무의 등록해제
어플리케이션·프로그램은, 이 인터페이스를 이용할 때에, 업무를 특정할 수 있는 값을 오퍼레이팅·시스템에 부여한다.
(4)비리얼타임·업무의 실행개시
이 인터페이스의 호출에 의해, 지정된 비리얼타임·업무는 실행 가능상태가 된다. 어플리케이션·프로그램은, 이 인터페이스를 이용할 때에, 업무의 실행개시 어드레스나 스택영역의 위치, 또한 비리얼타임·업무간의 실행 먼저순위 등의 정보를 오퍼레이팅·시스템에 부여한다.
(5)비리얼타임·업무의 실행완료
이 인터페이스의 호출함으로써, 지정된 업무는 이후 실행되지 않게 된다. 단, 상술의 「비리얼타임·업무의 실행개시」인터페이스의 호출에 의해, 재차 실행을 개시할 수 있도록 실장하는 것도 가능하다.
(6)동작주파수의 하한치의 설정
오퍼레이팅·시스템에 의해 설정되는 동작주파수가, 어느 임계치 이하로 저하하지 않도록 설정하기 위한 인터페이스이다. 오퍼레이팅·시스템은, 통상, 주기리얼타임·업무를 적절히 실행하는데 충분한 필요 최저한의 동작주파수로 프로세서를 동작시키도록 한다. 이 때문에, 비리얼타임·업무의 실행에 소비되는 프로 세서시간이 불충분하게 되기도 한다. 이와 같은 경우에는, 이 임계치를 크게 설정함으로써, 비리얼타임·업무를 실행하는 만큼의 여지를 부여할 수 있다.
3. 오퍼레이팅·시스템의 실장
본 실시예에 관계되는 오퍼레이팅·시스템은, 각 업무마다 이하의 변수를 유지하고 있다. 단, 각 변수의 첨자i는 업무를 식별하기 위한 업무번호인 것으로 한다.
e1 : 다음 주기의 개시시간
P1 : 주기
c1 : 1주기당의 처리부하
또한, 본 실시예에 관계되는 오퍼레이팅·시스템은, 이하의 변수를 유지하고 있다.
1r : 현재, 오퍼레이팅·시스템에 등록되어 있는 주기리얼타임·업무의 처리부하를 주기로 나눈 값의 합계치이다. 즉, 프로세서(11)의 사용율에 상당하고, 0에서 1.0의 값을 취한다. 1r 1.0미만의 값이면, 프로세서(11)는 새로이 주기리얼타임·업무를 실행 가능한 상태이다. 1r은, 주기리얼타임·업무 등록시에 갱신되는 값이다.
1a : 현재, 오퍼레이팅·시스템에 등록되어 있고, 또한 기동요구가 발행된 주기리얼타임·업무의 처리부하를 주기로 나눈 값의 합계치이다. 즉, 프로세서(11)의 사 용율에 상당하고, 0에서 1.0의 값을 취한다. 1a는, 주기리얼타임·업무 기동시에 갱신되는 값이다.
fmin : 어플리케이션·프로그램에 의해 설정된 동작주파수의 하한값이다.
Rr : 실행 가능한 주기리얼타임·업무의 리스트이다. 이 리스트는 어느 주기에 있어서 기동된 후에, 아직 그 주기의 실행을 완료하고 있지 않고, 또한 여러 가지 이벤트의 발생을 기다리고 있지 않은 상태에 있는 모든 주기리얼타임·업무로 구성된다. 이 리스트 중의 각 업무는, 그 e1(다음 주기의 개시시간)의 값이 작은 것부터 순서로 병렬되어 있다.
Rb : 실행 가능한 주기리얼타임·업무의 리스트이다. 이 리스트는, 업무가 기동된 후에, 아직 실행을 완료하고 있지 않고, 또한 여러 가지 이벤트의 발생을 기다리고 있지 않은 상태에 있는 모든 비리얼타임·업무로 구성된다. 이 리스트 중의 업무의 순서는 임의로 좋은가(예를 들면, 선입 선출(FIFO)방식이라도 좋다), 비리얼타임·업무에 실행 먼저순위를 설정하는 경우에는, 그 먼저순위에 따라서 순서를 병렬하도록 하여도 좋다.
도 3에는, 본 실시예에 관계되는 오퍼레이팅·시스템의 기능구성을, 특히 업무 관리기능에 착안하여 도해하고 있다.
도시와 같이, 오퍼레이팅·시스템은, 스케줄러와, 타이머·매니저를 포함하고 있다.
타이머·매니저는, 타이머(15)에서 공급되는 타이머신호에 따라서 프로세서(11)를 타이머관리하는 기능모듈이다. 타이머·매니저는, 요구된 각 업무를 소정의 순서(예를 들면, 실행개시시각에 따른 순서)로 유지하는 대기행렬(queue)이다. 대기행렬 중의 각 업무는, 업무식별자와 실행개시시각(release time)을 포함하고 있다.
도시의 예에서는, 타이머·매니저 중의 행렬에는, 업무(10)를 릴리스시각(80)에서 요구하는 요구(1)와, 업무(11)를 릴리스시각(95)에서 요구하는 요구(2)가 격납되어있다.
스케줄러는, 기동된 각 업무의 스케줄관리를 행하는 기능모듈이고, 실행 가능한 리얼타임·업무의 리스트(Rr)와, 실행 가능한 비리얼타임·업무의 리스트(Rb)를 포함하고 있다. 또, 스케줄러는 주기리얼타임·업무의 처리부하를 주기로 나눈 값의 합계치(1r 및 1a)를 관리하고 있다.(1r은 주기리얼타임·업무 등록시의 값이고, 1a는 주기리얼타임·업무 기동요구시의 값이다).
도시의 예에서는, 리스트(Rr)에는, 업무1, 업무3, 업무4, 업무2의 순서로 주기리얼타임·업무가 등록되어 있다. 또, 리스트(Rb)에는, 업무6, 업무8, 업무7, 업무5의 순서로 비리얼타임·업무가 등록되어 있다. 또, 처리부하를 주기로 나눈 값의 합계치(1r 및 1a)는 함께 80%를 나타내고, 새로이 주기리얼타임·업무가 실행 가능한 상태인 것을 나타내고 있다.
타이머·매니저는, 스케줄러에 대하여, 업무의 기동, 즉 릴리스를 통지한다. 또, 스케줄러는 타이머·매니저에 대하여, 업무번호와 업무 기동시각을 통지한다.
어플리케이션·프로그램은, 오퍼레이팅·시스템 내의 스케줄러에 대하여, 주 기리얼타임·업무의 등록(p1, ci의 통지를 수반한다), 주기리얼타임·업무의 기동·등록삭제, 비리얼타임·업무의 등록 및 등록삭제 등의 요구를, 상술한 각 인터페이스에 의해 접수하도록 되어 있다.
4. 오퍼레이팅·시스템에 의한 업무제어
계속하여, 상술한 오퍼레이팅·시스템의 각 인터페이스를 실장한 프로그램에 의한 처리동작에 대해서 설명한다.
도 4에는, 주기리얼타임·업무를 등록하는 인터페이스에 있어서 실현되는 처리수순을 플로차트의 형식으로 나타내고 있다. 이하, 이 플로차트에 따라서, 주기리얼타임·업무의 등록처리에 대하여 설명한다.
먼저, 신규등록하는 주기리얼타임·업무에 업무번호i를 부여하고(스텝S1), 현재 오퍼레이팅·시스템에 등록되어 있는 주기리얼타임·업무의 처리부하를 주기로 나눈 값의 합계치(1r)를 시산하여 본다.
그리고, 1r이 1보다 큰지 아닌지를 비교하고(스텝S2), 1r이 1을 넘는 경우에는 벌서 새로운 주기리얼타임·업무를 실행할 수 없게 되므로, 등록실패로 한다. 타편, 1r이 1미만이면 새로운 주기리얼타임·업무를 아직 실행 가능한 상태임으로, 1r의 값을 갱신하는 동시에(스텝S3), 등록성공으로 한다.
도 5에는, 주기리얼타임·업무를 등록해제하는 인터페이스에 있어서 실현되는 처리수순을 플로차트의 형식으로 나타내고 있다. 이하, 이 플로차트에 따라서, 주기리얼타임·업무의 등록해제처리에 대하여 설명한다.
먼저, 등록삭제를 하여야 할 주기리얼타임·업무에 업무번호 i를 부여하고(스텝S11), 타이머·매니저에 있어서의 업무 i를 기동하기 위한 타이머등록을 취소한다(스텝S12).
이어서, 현재 오퍼레이팅·시스템에 등록되어 있는 주기리얼타임·업무의 처리부하를 주기로 나눈 값의 합계치(1r) 및 현재 오퍼레이팅·시스템에 등록되고 또한 기동요구가 발행된 주기리얼타임·업무의 처리부하를 주기로 나눈 값의 합계치(1a)의 값에서, 등록삭제를 행하는 주기리얼타임·업무 i의 분(ci/pi)을 제거한다(스텝S13, S14).
또, 등록삭제를 행하는 주기리얼타임·업무 i가 이미 스케줄러 내의 실행가능 리얼타임·업무의 리스트(Rr) 중에 등록되어 있는 경우에는, 업무 i를 리스트(Rr)에서 삭제한다(스텝S15).
그리고, 별도 정의된 재스케줄링처리를 행하는 것으로(스텝S16), 본 처리루틴 전체를 종료한다. 재스케줄링처리에 대해서는 후에 상세히 해석한다.
도 6에는, 주기리얼타임·업무를 기동개시하는 인터페이스에 있어서 실현되는 처리수순을 플로차트의 형식으로 나타내고 있다. 이하, 이 플로차트에 따라서, 주기리얼타임·업무를 기동개시처리에 대해서 설명한다.
먼저, 기동개시하여야 할 주기리얼타임·업무에 업무번호 i를 부여하고(스텝S21), 현재 오퍼레이팅·시스템에 등록되고 또한 기동요구가 발행된 주기리얼타임·업무의 처리부하를 주기로 나눈 값에 합계치(1a)에 업무 i의 분(ci/pi)을 가산한다(스텝S22).
이어서, 현재 오퍼레이팅·시스템에 등록되고 또한 기동요구가 발행된 주기리얼타임·업무의 처리부하를 주기로 나눈 값에 합계치(1a)와, 어플리케이션·프로그램에 의해 설정된 동작주파수의 하한치(fmin) 중, 큰값을 변수(f)로 설정한다(스텝S22).
그리고, 프로세서(11)의 동작주파수를 f로 설정하는 동시에, 프로세서(11)에 공급하는 전원전압을 주파수 f로 동작 가능한 최소의 전압으로 설정한다(스텝S24). 프로세서(11)의 동작주파수나 전원전압의 변경은, 프로세서·클럭생성기(22) 및 프로세서용 DC/DC변환기(21)의 각각에 지시치를 송신함으로써 행해진다.(상술). 프로세서(11)에 부과된 처리부하에서 구하는 동작주파수가 어플리케이션·프로그램에 의해 설정된 동작주파수의 하한치(fmin)를 하회하는 경우에는, 하한치(fmin)를 동작주파수로서 설정함으로써, 프로세서(11)에 생기는 잉여시간에 비리얼타임·업무를 실행할 수 있다. 이 결과, 주기리얼타임·업무가 다음 주기의 개시이전에 실행을 완료하는 것을 보증하면서, 비리얼타임·업무의 실행에 의해 소비되는 전력량을 삭제할 수 있다.
이어서, 현재시각에 업무 i가 갖는 주기(pi)를 가산한 값을 다음 주기의 개시시각(ei)에 대입하여(스텝S25), 시각(ei)에 업무 i가 기동하도록 타이머(15)를 설정한다(스텝S26).
이어서, 스케줄러 내의 실행가능 리얼타임·업무의 리스트(Rr) 중에 업무 i를 추가등록한다(스텝S27).
그리고, 별도 정의된 재스케줄링처리를 행하는 것으로(스텝S28), 본 처리루틴 전체를 종료한다. 재스케줄링처리에 대해서는 후에 상세히 해석한다.
도 7에는, 주기리얼타임·업무를 기동하는 타이머의 설정시각에 달하였을 때에 있어서의 처리수순을 플로차트의 형식으로 나타내고 있다. 이하, 이 플로차트에 따라서, 주기리얼타임·업무에 지정된 시각에 달하였을 때의 처리에 대하여 설명한다.
먼저, 기동하여야 할 주기리얼타임·업무에 업무번호 i를 부여한다(스텝S31).
이어서, 현재시각에 업무 i가 갖는 주기(pi)를 가산한 값을 다음 주기의 개시시각(ei)에 대입하여(스텝S32), 시각(ei)에 업무 i가 기동하도록 타이머(15)를 설정한다(스텝S33).
이어서, 스케줄러 내의 실행가능 리얼타임·업무의 리스트(Rr) 중에 업무 i를 추가등록한다(스텝S34).
그리고, 별도 정의된 재스케줄링처리를 행하는 것으로(스텝S35), 본 처리루틴 전체를 종료한다. 재스케줄링처리에 대해서는 후에 상세히 해석한다.
도 8에는, 비리얼타임·업무를 등록하는 인터페이스에 있어서의 실현되는 처리수순을 플로차트의 형식으로 나타내고 있다. 이하, 이 플로차트에 따라서, 비리얼타임·업무의 등록처리에 대하여 설명한다.
먼저, 신규등록하는 비리얼타임·업무에 업무번호 i를 부여한다(스텝S41). 그리고, 이 업무 i를, 스케줄러 내의 실행가능 비리얼타임·업무의 리스트(Rb) 에 추가등록한다(스텝S42).
그리고, 별도 정의된 재스케줄링처리를 행하는 것으로(스텝S43), 본 처리루팅 전체를 종료한다. 재스케줄링처리에 대하여는 후에 상해한다.
도 9에는, 비리얼타임·업무를 등록삭제하는 인터페이스에 있어서의 실현되는 처리수순을 플로차트의 형식으로 나타내고 있다. 이하, 이 플로차트에 따라서, 비리얼타임·업무의 등록삭제처리에 대하여 설명한다.
먼저, 등록삭제하는 비리얼타임·업무에 업무번호 i를 부여한다(스텝S51).
이 업무 i가 스케줄러 내의 실행가능 비리얼타임·업무의 리스트(Rb) 에 이미 등록되어 있는 경우에는, 업무 i를 상기 리스트(Rb) 중에서 삭제한다(스텝S52).
그리고, 별도 정의된 재스케줄링처리를 행하는 것으로(스텝S53), 본 처리루틴 전체를 종료한다. 재스케줄링처리에 대하여는 후에 상세히 해석한다.
도 10에는, 주기리얼타임·업무의 등록삭제시, 기동개시시, 비리얼타임·업무의 등록시, 등록삭제시의 각각의 처리루틴에 있어서 행해지는 재스케줄링처리의 수순을 플로차트의 형식으로 나타내고 있다. 이하, 이 플로차트를 참조하면서, 업무의 재스케줄링처리에 대하여 설명한다.
먼저, 스케줄러내의 실행가능 주기리얼타임·업무의 리스트(Rr)가 비어 있는 지 아닌지를 체크한다(스텝S61).
리스트(Rr)가 비어있지 않으면, 이 리스트(Rr) 중의 선두의 주기리얼타임·업무에 업무번호 i를 부여하고(스텝S64), 업무 i에 제어를 이동하고(스텝S66), 본 처리루틴을 전체를 종료한다.
리스트(Rr)가 비어있는 경우, 또한 스케줄러내의 실행가능 비리얼타임·업무의 리스트(Rr)가 비어 있는지 아닌지를 첵크한다.(스텝S62).
리스트(Rb)가 비어있지 않으면, 이 리스트(Rb) 중의 선두의 비리얼타임·업무에 업무번호 i를 부여하고(스텝S65), 업무 i에 제어를 이동하고(스텝S66), 본 처리루틴 전체를 종료한다.
스케줄러내의 리스트(Rr) 및 리스트(Rb)의 어느 것도 비어있는 경우에는, 현재 프로세서(11)가 실행하여야 할 업무가 없는 것으로 되므로, 프로세서(11)를 슬리프상태로 이행시키고(스텝S63), 다음의 업무가 발생하기까지 프로세서(11)를 대기시킨다.
또한, 여기서 말하는 슬리프상태란, 프로세서(11)의 활동을 저하시켜서 절전화를 도모하는 동작모드의 것을 가리킨다. 단, 슬리프상태의 정의에 대하여는 본 발명의 요지와는 직접 관련되지 않으므로, 여기서는 굳이 설명하지 않는다.
[추보]
이상, 특정의 실시예를 참조하면서, 본 발명에 대하여 상세히 해석하여 왔다. 그렇지만, 본 발명의 요지를 일탈하지 않는 범위에서 당업자가 이 실시예의 수정이나 대용을 이룰 수 있는 것은 자명하다.
본 명세서에서 소개한 실시형태에서는, 주기리얼타임·업무는 타이머로 기동되는 것으로 하였으나, 본 발명의 요지는 반드시 이것에 한정되지는 않는다. 최소 기동간격이 지정의 주기를 하회하지 않는 범위에서, 자유로운 시각에 주기리얼타임·업무를 기동하도록 하여도 좋다. 예를 들면, 디스크 플레이장치를 갖춘 연산처리시스템에 있어서의, 수직귀선기간 끼어들기신호가 발생했을 때는, 업무를 기동시키는 것을 고려할 수 있다. 또, 네크워크로부터의 패킷도착시에 주기리얼타임·업무를 기동하는 것도 가능하다.
요컨데, 예시라는 형태에서 본 발명을 개시해 온 것이고, 한정적으로 해석되어야 하는 것은 아니다. 본 발명의 요지를 판단하기 위해서는, 특허청구의 범위의 란을 참작하여야 한다.
이상, 상기 한 것처럼, 본 발명에 의하면, 다른 주기로 동작하는 1이상의 업무를 실행하는 프로세서에 대하여 적용할 수 있는, 뛰어난 전력삭감기술을 제공할 수 있다.
또, 본 발명에 의하면, 다음 주기의 개시까지는 실행을 완료시킬 필요가 있는 주기리얼타임·업무와 걸리는 제약이 없는 비리얼타임·업무를 병행하고 실행하는 타입의 프로세서에 대하여 적용할 수 있는, 뛰어난 전력삭감기술을 제공할 수 잇다.
또, 본 발명에 의하면, 어플리케이션의 리얼타임요구에 응하면서 프로세서에 의한 전력소비를 삭감할 수 있는, 뛰어난 전력삭감기술을 제공할 수 있다.
또, 본 발명에 의하면, 프로세서의 동작주파수와 전원전압을 동적제어에 의해 변화시키는 것이 가능한 시스템에 있어서의, 기동된 각 업무를 지체없이 처리하기 위해 필요한 동작주파수를 적응적으로 변화시키는 동시에, 시시각각으로 전환되는 동작주파수에 따라서 최적한 프로세서 전원전압을 결정하여 가는 것으로, 프로세서의 소비전력을 저감할 수 있는 뛰어난 전력삭감기술을 제공할 수 있다.
또, 본 발명에 의하면, 프로세서의 동작주파수나 전원전압의 변경빈도를 낮게 억제하면서, 프로세서에 의한 전력소비를 삭감할 수 있다.
주기리얼타임·업무는 다음 주기의 개시이전에 처리를 완료하는 업무이다. 처리를 완료하여야 할 시간, 즉 데드라인을 자유로 설정 가능하도록 시스템을 확장하는 것도 고려되는바, 본 발명에서는 굳이 이와 같이 처리완료시간에 제한을 부과함으로써, 업무의 등록이나 등록삭제시에 동작주파수를 변화시키는 것만으로 충분히 높은 전력삭감효과를 얻을 수 있다.
따라서, 프로세서의 전원전압이나 동작주파수를 변화시키기 위해 비교적 긴 시간을 요하는 하드웨어에 대해서도, 본 발명을 적용할 수 있다.
예를 들면, 어느 업무 i에 대하여, 데드라인을 다음 주기의 개시시간보다도 앞에 설정하는 것이 시스템구축상 어떻든 필요하게 된 경우에, 업무 기동타이머의 시각설정을 제외한, 변수(Pi)에 대하여 모든 참조를 데드라인에 대한 참조에로 치환하는 것만으로 좋다.

Claims (23)

  1. 다음 주기의 개시까지는 실행을 완료시킬 필요가 있는 주기리얼타임·업무와 실행완료시각의 제약이 없는 비리얼타임·업무를 병행하여 실행 가능한 프로세서를 포함한 연산처리 시스템이고,
    상기 프로세서의 가동 중의 각 시점에 있어서, 각 주기리얼타임· 업무에 부과된 요구를 충족하기 위해 충분한 동작주파수를 산출하는 동작주파수 산출수단과,
    상기 동작주파수 산출수단에 의한 산출결과에 의거한 동작주파수 클럭을 상기 프로세서에 공급하는 프로세서·클럭생산수단과,
    상기 프로세서의 가동 중의 각 시점에 있어서, 부여된 업무 중의 어느 것을 실행해야 할 것인지를 선택하여 실행하는 업무선택·실행수단을 포함하여 구성된 것을 특징으로 하는 연산처리시스템.
  2. 삭제
  3. 제 1항에 있어서,
    상기 프로세서의 가동 중의 각 시점에 있어서, 실행해야 할 업무가 없어진 것에 응답하여 상기 프로세서를 가동율이 저하한 슬리프상태로 이동시키는 슬리프 천이수단을 또한 갖추는 것을 특징으로 하는 연산처리시스템.
  4. 제 1항에 있어서,
    상기 동작주파수 산출수단에 의해 산출된 동작주파수로 상기 프로세서를 구동시키기 위한 충분한 전원전압을 산출하는 전원전압 산출수단과,
    상기 전원전압 산출수단에 의한 산출결과에 의거한 전원전압을 상기 프로세서에 공급하는 프로세서 전원공급수단을 또한 갖추는 것을 특징으로 하는 연산처리시스템.
  5. 제 1항에 있어서,
    각 주기리얼타임·업무에 부과된, 다음 주기의 개시시간, 주기, 1주기당의 처리부하 등의 정보를, 업무 실행전에 기록하는 업무정보 기록수단과,
    상기 업무정보 기록수단에 의해 기록된 정보를 참조하여, 전원전압과 동작주파수가 상기 프로세서의 한계를 넘지 않고, 및/또는, 기등록의 주기리얼타임·업무에 부과된 요구가 충족되도록, 새로운 주기리얼타임·업무의 등록을 제한하는 업무 등록제어수단을 또한 갖추는 것을 특징으로 하는 연산처리시스템.
  6. 제 1항에 있어서,
    비리얼타임·업무가 존재하지 않을 때에, 상기 동작주파수 산출수단에 의해 산출된 동작주파수가 소정의 하한치를 하회한 것에 응답하여 상기 프로세서의 동작 주파수를 상기 하한치에 설정하는 하한치 설정수단을 또한 갖추는 것을 특징으로 하는 연산처리시스템.
  7. 제 4항에 있어서,
    비리얼타임·업무가 존재하지 않을 때에, 상기 전원전압 산출수단에 의해 산출된 상기 프로세서의 전원전압이 소정의 하한치를 하회한 것에 응답하여 상기 프로세서의 전원전압을 이 하한치에 설정하는 하한치 설정수단을 또한 갖추는 것을 특징으로 하는 연산처리시스템.
  8. 삭제
  9. 다음 주기의 개시까지는 실행을 완료시킬 필요가 있는 주기리얼타임·업무와 실행완료시각의 제약이 없는 비리얼타임·업무를 병행하여 실행 가능한 프로세서에 의한 연산처리를 제어하는 연산처리 제어방법이고,
    상기 프로세서의 가동 중의 각 시점에 있어서, 각 주기리얼타임·업무에 부가된 요구를 충족하기 위해 충분한 동작주파수를 산출하는 동작주파수 산출스텝과,
    상기 동작주파수 산출스텝에 의한 산출결과에 의거한 동작주파수 클럭을 상기 프로세서에 공급하는 프로세서·클럭생성스텝과,
    상기 프로세서의 가동 중의 각 시점에 있어서, 부여된 업무 중의 어느 것을 실행시켜야 할 것인지를 선택하여 실행하는 업무선택·실행스텝을 구비하는 것을 특징으로 하는 연산처리 제어방법.
  10. 삭제
  11. 제 9항에 있어서,
    상기 프로세서의 가동 중의 각 시점에 있어서, 실행해야 할 업무가 없어진 것에 응답하여 상기 프로세서를 가동율이 저하한 슬리프상태로 이행시키는 슬리프 천이스텝을 또한 갖추는 것을 특징으로 하는 연산처리 제어방법.
  12. 제 9항에 있어서,
    상기 동작주파수 산출스텝에 의해 산출된 동작주파수로 상기 프로세서를 구동시키기 위해 충분한 전원전압을 산출하는 전원전압 산출스텝과,
    상기 전원전압 산출스텝에 의한 산출결과에 의거한 전원전압을 상기 프로세서에 공급하는 프로세서 전원공급스텝을 또한 갖추는 것을 특징으로 하는 연산처리 제어방법.
  13. 제 9항에 있어서,
    각 주기리얼타임·업무에 부과된, 다음 주기의 개시시간, 주기, 1주기당의 처리부하 등의 정보를, 업무 실행전에 기록하는 업무정보 기록스텝과,
    상기 업무정보 기록스텝에 의해 기록된 정보를 참조하여, 전원전압과 동작주파수가 상기 프로세서의 한계를 넘지 않고, 및/또는, 기등록의 주기리얼타임·업무에 부과된 요구가 충족되도록, 새로운 주기리얼타임·업무의 등록을 제한하는 업무등록 제어스텝을 또한 갖추는 것을 특징으로 하는 연산처리 제어방법.
  14. 제 9항에 있어서,
    비리얼타임·업무가 존재하지 않을 때에, 상기 동작주파수 산출스텝에 의해 산출된 동작주파수가 소정의 하한치를 하회한 것에 응답하여 상기 프로세서의 동작주파수를 상기 하한치로 설정하는 하한치 설정스텝을 또한 갖추는 것을 특징으로 하는 연산처리 제어방법.
  15. 제 12항에 있어서,
    비리얼타임·업무가 존재하지 않을 때에, 상기 동작주파수 산출스텝에 의해 산출된 상기 프로세서의 전원전압이 소정의 하한치를 하회한 것에 응답하여 상기 프로세서의 전원전압을 이 하한치로 설정하는 하한치 설정스텝을 또한 갖추는 것을 특징으로 하는 연산처리 제어방법.
  16. 삭제
  17. 다음 주기의 개시까지 실행을 완료시킬 필요가 있는 주기리얼타임·업무와 실행완료시간의 제약이 없는 비리얼타임·업무를 병행하여 실행 가능한 프로세서를 위한 업무 관리시스템이고,
    각 주기리얼타임·업무에 부가된, 다음 주기의 개시시각, 주기, 1주기당의 처리부하 등의 정보를, 업무 실행전에 기록하는 업무정보 기록수단과,
    상기 프로세서에 부과된 처리부하에 따라서, 상기 프로세서의 전원전압과 동작주파수를 설정하는 동작설정수단과,
    상기 업무정보 기록수단에 의해 기록된 정보를 참조하여, 전원전압과 동작주파수가 상기 프로세서의 한계를 넘지 않고, 및/또는, 기등록의 주기리얼타임·업무에 부과된 요구가 충족되도록, 새로운 주기리얼타임·업무의 등록을 제한하는 업무등록 제어수단을 구비하는 것을 특징으로 하는 업무 관리시스템.
  18. 제 17항에 있어서,
    비리얼타임·업무가 존재하지 않을 때에, 상기 동작설정수단에 의해 산출된 동작주파수 및/또는 전원전압이 소정의 하한치를 하회한 것에 응답하여 상기 프로세서의 동작주파수 및/또는 전원전압을 상기 하한치로 설정하는 하한치 설정수단을 또한 갖추는 것을 특징으로 하는 업무 관리시스템.
  19. 다음 주기의 개시까지 실행을 완료시킬 필요가 있는 주기리얼타임·업무와 실행완료시간의 제약이 없는 비리얼타임·업무를 병행하여 실행 가능한 프로세서를 위한 업무 관리방법이고,
    각 주기리얼타임·업무에 부과된, 다음 주기의 개시시간, 주기, 1주기당의 처리부하 등의 정보를, 업무 실행전에 기록하는 업무정보 기록스텝과,
    상기 프로세서에 부과된 처리부하에 따라서 상기 프로세서의 전원전압과 동작주파수를 설정하는 동작설정스텝과,
    상기 업무정보 기록스텝에 의해 기록된 정보를 참조하여, 전원전압과 동작주파수가 상기 프로세서의 한계를 넘지 않고, 및/또는, 기등록의 주기리얼타임·업무에 부과된 요구가 충족되도록, 새로운 주기리얼타임·업무의 등록을 제한하는 업무등록 제어스텝을 구비하는 것을 특징으로 하는 업무 관리방법.
  20. 제 19항에 있어서,
    비리얼타임·업무가 존재하지 않을 때에, 상기 동작설정스텝에 의해 산출된 동작주파수 및/또는 전원전압이 소정의 하한치를 하회한 것에 응답하여 상기 프로세서의 동작주파수 및/또는 전원전압을 이 하한치에 설정하는 하한치 설정스텝을 또한 갖추는 것을 특징으로 하는 업무 관리방법.
  21. 삭제
  22. 삭제
  23. 다음 주기의 개시까지 실행을 완료시킬 필요가 있는 주기리얼타임·업무와 실행완료시간의 제약이 없는 비리얼타임·업무를 병행하여 실행 가능한 프로세서를 위한 업무관리를 컴퓨터·시스템상에서 실행하도록 기술된 컴퓨터·소프터웨어를 컴퓨터 가독형식으로 물리적으로 격납한 기억매체이고, 상기 컴퓨터·소프터웨어는,
    각 주기리얼타임·업무에 부과된, 다음 주기의 개시시간, 주기, 1주기당의 처리부하 등의 정보를, 업무 실행전에 기록하는 업무정보 기록스텝과,
    상기 프로세서에 부과된 처리부하에 따라서 상기 프로세서의 전원전압과 동작주파수를 설정하는 동작설정스텝과,
    상기 업무정보 기록스텝에 의해 기록된 정보를 참조하여, 전원전압과 동작주파수가 상기 프로세서의 한계를 넘지 않고, 및/또는, 기등록의 주기리얼타임·업무에 부과된 요구가 충족되도록, 새로운 주기리얼타임·업무의 등록을 제한하는 업무등록 제어스텝을 구비하는 것을 특징으로 하는 기억매체.
KR1020027006501A 2000-09-22 2001-09-21 연산처리시스템 및 연산처리 제어방법, 업무관리시스템 및업무관리방법과 기억매체 KR100864964B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2000287882A JP2002099432A (ja) 2000-09-22 2000-09-22 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体
JPJP-P-2000-00287882 2000-09-22

Publications (2)

Publication Number Publication Date
KR20020087388A KR20020087388A (ko) 2002-11-22
KR100864964B1 true KR100864964B1 (ko) 2008-10-22

Family

ID=18771557

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027006501A KR100864964B1 (ko) 2000-09-22 2001-09-21 연산처리시스템 및 연산처리 제어방법, 업무관리시스템 및업무관리방법과 기억매체

Country Status (6)

Country Link
US (1) US6986068B2 (ko)
EP (1) EP1321855A4 (ko)
JP (1) JP2002099432A (ko)
KR (1) KR100864964B1 (ko)
CN (1) CN1288556C (ko)
WO (1) WO2002025439A1 (ko)

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7180322B1 (en) 2002-04-16 2007-02-20 Transmeta Corporation Closed loop feedback control of integrated circuits
US7941675B2 (en) 2002-12-31 2011-05-10 Burr James B Adaptive power control
US8032891B2 (en) * 2002-05-20 2011-10-04 Texas Instruments Incorporated Energy-aware scheduling of application execution
US7076781B2 (en) * 2002-05-31 2006-07-11 International Business Machines Corporation Resource reservation for large-scale job scheduling
TWI336848B (en) * 2002-08-26 2011-02-01 Interdigital Tech Corp Wireless transmit/receive unit and method for providing a communication path between a plurality of operating systems in a wireless device
US7228242B2 (en) 2002-12-31 2007-06-05 Transmeta Corporation Adaptive power control based on pre package characterization of integrated circuits
US7953990B2 (en) 2002-12-31 2011-05-31 Stewart Thomas E Adaptive power control based on post package characterization of integrated circuits
EP2431839B1 (en) * 2003-03-18 2015-09-23 Panasonic Intellectual Property Management Co., Ltd. Processor, driving method thereof, and information processing device
JP4033066B2 (ja) * 2003-05-07 2008-01-16 ソニー株式会社 周波数制御装置、情報処理装置、周波数制御方法及びプログラム
GB2403823B (en) * 2003-07-08 2005-09-21 Toshiba Res Europ Ltd Controller for processing apparatus
JP4025260B2 (ja) * 2003-08-14 2007-12-19 株式会社東芝 スケジューリング方法および情報処理システム
CN1294472C (zh) * 2003-12-16 2007-01-10 宏碁股份有限公司 以窗口为根据的电源管理方法及使用该方法的移动装置
US7012461B1 (en) 2003-12-23 2006-03-14 Transmeta Corporation Stabilization component for a substrate potential regulation circuit
US7129771B1 (en) 2003-12-23 2006-10-31 Transmeta Corporation Servo loop for well bias voltage source
US7692477B1 (en) 2003-12-23 2010-04-06 Tien-Min Chen Precise control component for a substrate potential regulation circuit
US7649402B1 (en) 2003-12-23 2010-01-19 Tien-Min Chen Feedback-controlled body-bias voltage source
GB2410344B (en) 2004-01-26 2006-03-15 Toshiba Res Europ Ltd Dynamic voltage controller
US9323571B2 (en) 2004-02-06 2016-04-26 Intel Corporation Methods for reducing energy consumption of buffered applications using simultaneous multi-threading processor
CN100361040C (zh) * 2004-02-24 2008-01-09 中国科学院计算技术研究所 一种soc架构下的处理器核动态变频装置和方法
JP2005301812A (ja) * 2004-04-14 2005-10-27 Hitachi Ltd デジタル制御装置およびこれを用いたエンジン制御装置
JPWO2005106623A1 (ja) * 2004-04-28 2008-03-21 松下電器産業株式会社 Cpuクロック制御装置、cpuクロック制御方法、cpuクロック制御プログラム、記録媒体、及び伝送媒体
JP3862715B2 (ja) * 2004-06-01 2006-12-27 株式会社ソニー・コンピュータエンタテインメント タスク管理方法、タスク管理装置、半導体集積回路、電子装置、およびタスク管理システム
US7774625B1 (en) * 2004-06-22 2010-08-10 Eric Chien-Li Sheng Adaptive voltage control by accessing information stored within and specific to a microprocessor
US7562233B1 (en) 2004-06-22 2009-07-14 Transmeta Corporation Adaptive control of operating and body bias voltages
KR100598011B1 (ko) * 2004-06-29 2006-07-06 삼성전자주식회사 클럭 사용 회로 및 클럭 신호 발생 방법
JP4208783B2 (ja) * 2004-07-28 2009-01-14 キヤノン株式会社 画像処理装置および設定時刻調整方法およびプログラム
WO2006050747A1 (en) * 2004-11-10 2006-05-18 Freescale Semiconductor, Inc. Apparatus and method for controlling voltage and frequency using multiple reference circuits
US7694080B2 (en) * 2004-12-29 2010-04-06 Intel Corporation Method and apparatus for providing a low power mode for a processor while maintaining snoop throughput
CN100371859C (zh) * 2005-06-23 2008-02-27 英特维数位科技股份有限公司 于播放视讯资料时调整处理器工作频率的方法
US7412353B2 (en) * 2005-09-28 2008-08-12 Intel Corporation Reliable computing with a many-core processor
CN100365543C (zh) * 2006-03-10 2008-01-30 浙江大学 内核动态调节处理器频率的节能方法
US8032889B2 (en) 2006-04-05 2011-10-04 Maxwell Technologies, Inc. Methods and apparatus for managing and controlling power consumption and heat generation in computer systems
US20080056373A1 (en) * 2006-08-29 2008-03-06 Newlin John B Method and system for dynamic frequency adjustment during video decoding
US8694999B2 (en) * 2006-12-07 2014-04-08 Wind River Systems, Inc. Cooperative scheduling of multiple partitions in a single time window
TWI326818B (en) * 2006-12-15 2010-07-01 Inst Information Industry Dynamic voltage scheduling method, system thereof and record medium
WO2008075137A1 (en) * 2006-12-21 2008-06-26 Nokia Corporation Data processing apparatus
KR100951671B1 (ko) * 2008-02-14 2010-04-07 사단법인 한국전자정보통신산업진흥회 멀티미디어 ic칩의 전력제어 장치 및 방법
KR100950874B1 (ko) * 2008-03-06 2010-04-06 주식회사 텔레칩스 동적 전압 제어 시스템 및 그 제어 방법
JP2010097277A (ja) 2008-10-14 2010-04-30 Toshiba Corp 情報処理装置
CN101893927B (zh) * 2009-05-22 2012-12-19 中兴通讯股份有限公司 手持设备功耗管理方法
EP2435914B1 (en) * 2009-05-26 2019-12-11 Telefonaktiebolaget LM Ericsson (publ) Method and scheduler in an operating system
WO2012017545A1 (ja) 2010-08-05 2012-02-09 富士通株式会社 制御プログラム、制御装置、および制御方法
US8656408B2 (en) * 2010-09-30 2014-02-18 International Business Machines Corporations Scheduling threads in a processor based on instruction type power consumption
US8677361B2 (en) 2010-09-30 2014-03-18 International Business Machines Corporation Scheduling threads based on an actual power consumption and a predicted new power consumption
US8930753B2 (en) 2010-10-28 2015-01-06 Maxwell Technologies, Inc. System, method and apparatus for error correction in multi-processor systems
JP5942416B2 (ja) * 2011-12-21 2016-06-29 富士通株式会社 情報処理装置の制御プログラム、制御方法及び情報処理装置
CN102541642B (zh) * 2011-12-30 2013-12-18 中国科学院软件研究所 一种增强实时性能的任务管理方法
DE102012112363A1 (de) * 2012-01-30 2013-08-01 Samsung Electronics Co., Ltd. Verfahren zum Verbreiten einer Mehrzahl von Interrupts, Interrupt-Anforderungssignal-Verbreitungsschaltungen und Ein-Chip-Systeme, welche dieselben aufweisen
US8869148B2 (en) * 2012-09-21 2014-10-21 International Business Machines Corporation Concurrency identification for processing of multistage workflows
CN104854535A (zh) * 2012-10-16 2015-08-19 雷蛇(亚太)私人有限公司 计算系统及用于控制计算系统的方法
US20150277988A1 (en) * 2012-10-18 2015-10-01 Toyota Jidosha Kabushiki Kaisha Parallel computing device
US9152451B2 (en) * 2013-01-03 2015-10-06 GM Global Technology Operations LLC Method of distributing processor loading between real-time processor threads
WO2014129354A1 (ja) * 2013-02-21 2014-08-28 トヨタ自動車株式会社 制御装置の設計方法及び制御装置
SG11201508607VA (en) * 2013-04-19 2015-11-27 Cubic Corp Reservation scheduler for real-time operating systems in wireless sensor networks
CN103345426B (zh) * 2013-06-26 2016-05-11 中国航天科技集团公司第九研究院第七七一研究所 一种非实时操作系统的并发过程处理方法
JP6209042B2 (ja) * 2013-09-30 2017-10-04 ルネサスエレクトロニクス株式会社 データ処理装置
JP6633830B2 (ja) * 2014-02-24 2020-01-22 ジーエヌ ヒアリング エー/エスGN Hearing A/S リソース・マネージャ
US10928882B2 (en) * 2014-10-16 2021-02-23 Futurewei Technologies, Inc. Low cost, low power high performance SMP/ASMP multiple-processor system
US10248180B2 (en) 2014-10-16 2019-04-02 Futurewei Technologies, Inc. Fast SMP/ASMP mode-switching hardware apparatus for a low-cost low-power high performance multiple processor system
CN104834564B (zh) * 2015-05-20 2018-12-14 百度在线网络技术(北京)有限公司 任务调度的方法和装置
EP3144927B1 (en) * 2015-09-15 2020-11-18 Harman Becker Automotive Systems GmbH Wireless noise and vibration sensing
TWI584667B (zh) * 2015-11-27 2017-05-21 財團法人工業技術研究院 多請求的排程方法及排程裝置
US10019292B2 (en) * 2015-12-02 2018-07-10 Fts Computertechnik Gmbh Method for executing a comprehensive real-time computer application by exchanging time-triggered messages among real-time software components
FR3072197B1 (fr) * 2017-10-10 2019-10-11 Krono-Safe Procede d'execution de plans de sequencement assurant une communication a faible latence entre taches temps-reel
CN109933487B (zh) * 2017-12-19 2024-05-07 潘明旭 智能机器人的监测方法和装置
JP2019192110A (ja) * 2018-04-27 2019-10-31 ルネサスエレクトロニクス株式会社 半導体装置およびプロセッサ制御方法
CN108845873A (zh) * 2018-06-22 2018-11-20 复旦大学 一种低功耗的自适应流水线并行方法
US11900146B2 (en) * 2021-08-31 2024-02-13 Apple Inc. Memory controller with separate transaction table for real time transactions
CN114138095B (zh) * 2022-01-29 2022-05-10 阿里巴巴(中国)有限公司 互联网数据中心idc的功耗处理方法、设备和可读介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0553588A2 (en) * 1992-01-31 1993-08-04 International Business Machines Corporation Multi-media computer operating system and method

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62150416A (ja) * 1985-12-24 1987-07-04 Nec Corp 低消費電力状態への移行方式
US5812860A (en) * 1996-02-12 1998-09-22 Intel Corporation Method and apparatus providing multiple voltages and frequencies selectable based on real time criteria to control power consumption
CN1159021A (zh) * 1996-03-06 1997-09-10 三菱电机株式会社 系统时钟确定装置
JPH09270690A (ja) * 1996-03-29 1997-10-14 Toshiba Microelectron Corp 駆動電圧制御回路
JPH10171667A (ja) * 1996-12-13 1998-06-26 Chokosoku Network Computer Gijutsu Kenkyusho:Kk タスク管理方法
JPH11194849A (ja) * 1997-12-26 1999-07-21 Nec Corp データ処理方法および装置、情報記憶媒体
US6141762A (en) * 1998-08-03 2000-10-31 Nicol; Christopher J. Power reduction in a multiprocessor digital signal processor based on processor load
JP2000122747A (ja) * 1998-10-12 2000-04-28 Nec Corp ディジタル信号演算処理部の制御装置および方法
US6425086B1 (en) * 1999-04-30 2002-07-23 Intel Corporation Method and apparatus for dynamic power control of a low power processor

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0553588A2 (en) * 1992-01-31 1993-08-04 International Business Machines Corporation Multi-media computer operating system and method

Also Published As

Publication number Publication date
EP1321855A1 (en) 2003-06-25
US20030115239A1 (en) 2003-06-19
EP1321855A4 (en) 2008-04-09
CN1394308A (zh) 2003-01-29
US6986068B2 (en) 2006-01-10
CN1288556C (zh) 2006-12-06
WO2002025439A1 (fr) 2002-03-28
KR20020087388A (ko) 2002-11-22
JP2002099432A (ja) 2002-04-05

Similar Documents

Publication Publication Date Title
KR100864964B1 (ko) 연산처리시스템 및 연산처리 제어방법, 업무관리시스템 및업무관리방법과 기억매체
JP5469940B2 (ja) 計算機システム、仮想計算機モニタ及び仮想計算機モニタのスケジューリング方法
JP2002099433A (ja) 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体
JP5324934B2 (ja) 情報処理装置および情報処理方法
US5692204A (en) Method and apparatus for computer system power management
JP5433837B2 (ja) 仮想計算機システム、仮想計算機の制御方法及びプログラム
JP4370336B2 (ja) 低消費電力ジョブ管理方法及び計算機システム
US8959515B2 (en) Task scheduling policy for limited memory systems
JP4072271B2 (ja) 複数のオペレーティングシステムを実行する計算機
JP4490298B2 (ja) プロセッサ電力制御装置及びプロセッサ電力制御方法
US5828568A (en) Information processing apparatus, processing method thereof, and power supply control method therefor
US7441240B2 (en) Process scheduling apparatus, process scheduling method, program for process scheduling, and storage medium recording a program for process scheduling
JP2013232207A (ja) コンピュータマイクロジョブを中断せずに実行するようスケジュールするための方法、システムおよび装置
US7360103B2 (en) P-state feedback to operating system with hardware coordination
JP2008165798A (ja) データ処理装置におけるプロセッサの性能管理
WO2009150815A1 (ja) マルチプロセッサシステム
JP2004078322A (ja) タスク管理システム、プログラム、記録媒体、及び制御方法
Zhang Energy aware algorithm based on actual utilization for periodic tasks in mixed-criticality real-time systems
JPS62284437A (ja) タスク管理方式
JP2002304232A (ja) 演算処理システム及び演算処理制御方法、並びに記憶媒体
KR102613979B1 (ko) 멀티 코어 프로세서 전력 관리 장치 및 방법
US20230185357A1 (en) Method for optimizing the energy consumption of a computing infrastructure by suspension of jobs
KR100676671B1 (ko) 유저 쓰레드 관리 장치 및 그 방법
JP2000105708A (ja) タスク管理方法およびマルチタスクos
Niu et al. System wide dynamic power management for weakly hard real-time systems

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121008

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20131004

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20141006

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee