KR0163233B1 - 전력 관리 구조 및 방법 - Google Patents

전력 관리 구조 및 방법 Download PDF

Info

Publication number
KR0163233B1
KR0163233B1 KR1019950007818A KR19950007818A KR0163233B1 KR 0163233 B1 KR0163233 B1 KR 0163233B1 KR 1019950007818 A KR1019950007818 A KR 1019950007818A KR 19950007818 A KR19950007818 A KR 19950007818A KR 0163233 B1 KR0163233 B1 KR 0163233B1
Authority
KR
South Korea
Prior art keywords
power
state
physical
event
objects
Prior art date
Application number
KR1019950007818A
Other languages
English (en)
Other versions
KR950029909A (ko
Inventor
엘 로손 3세 프리맨
지 소토메이어 주니어 가이
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 KR950029909A publication Critical patent/KR950029909A/ko
Application granted granted Critical
Publication of KR0163233B1 publication Critical patent/KR0163233B1/ko

Links

Classifications

    • 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/325Power saving in peripheral device
    • 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
    • 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
    • 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
    • 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/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • 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)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 데이터 처리 시스템의 전력 관리 구조에 관한 것이다. 이 구조는 적어도 하나의 상태를 갖는 물리적 장치를 구비하며, 각각의 상태는 대응하는 전력 값을 가지며, 시스템 상태는 모든 물리적 장치의 현재 상태의 세트로서 정의된다. 각각 물리적 장치에 대응하는 전력 객체 및 열 객체는 물리적 장치의 각각의 가능한 상태의 전력 요건 및 열 특성에 대한 정보를 포함한다. 전력 및 열 객체는 또한 각각의 가능한 상태에서 다른 상태로의 허용된 전이 및 모든 가능한 상태 전이의 전력 요건 및 열 특성을 서술한다. 또한 각각의 물리적 장치의 현재 상태가 통신된다. 이벤트 수단은 시스템에서 이벤트의 발생을 나타내는 신호를 발생한다. 정책 모듈은 전력 관리를 구현하고, 동작을 지시하며 이벤트 및 전력 객체 정보의 함수가 되는 규칙을 포함한다. 제어기는 물리적 장치와 열 객체 및 전력 객체와, 이벤트 수단과 정책 모듈과 통신하며, 이벤트에 응답하여 임의의 물리적 장치의 상태를 변화시킨다. 제어기는 정책 모듈 규칙에 기초하여 물리적 장치 상태의 변경 여부를 결정한다.

Description

전력 관리 구조 및 방법
제1도는 본 발명의 전력 관리 구조에 의해 관리되는 컴퓨터 시스템 구성요소를 도시한 도면.
제2도는 본 발명의 전력 관리 구조에 의해 관리되는 컴퓨터 시스템 구성요소 대 컴퓨터 시스템 전력 객체를 도시한 도면.
제3도는 전력 엔벨로프 객체의 내용을 도시한 도면.
제4도는 본 발명에 따른 물리적 장치와 연관된 객체를 도시한 도면.
제5도는 본 발명에 따른 이벤트 소오스 객체의 내용을 도시한 도면.
제6도는 본 발명에 따른 물리적 장치를 도시한 도면.
제7도는 본 발명에 따른 이벤트 소오스 객체의 내용을 도시한 도면.
제8도는 본 발명에 따른 물리적 장치를 도시한 도면.
제9도는 본 발명에 따른 이벤트 소오스 객체의 내용을 도시한 도면.
제10도는 정책 모듈 규칙의 예를 구현할 때 제어기에 의해 실행되는 논리적 단계의 테이블을 도시한 도면.
제11도는 본 발명의 또 다른 바람직한 실시예의 서브시스템 관계 모델을 도시한 도면.
제12a 및 12b도는 객체 및 이들 객체 사이의 관계를 포함하는 전력 관리 프레임워크를 도시한 도면.
제13도는 객체 및 이들 객체 사이의 관계를 포함하는 전력 관리 상태 서브시스템을 도시한 도면.
제14도는 객체 및 이들 객체 사이의 관계를 포함하는 전력 관리 이벤트 서브시스템을 도시한 도면.
* 도면의 주요부분에 대한 부호의 설명
31 : CPU 32 : 메모리
34 : 백라이트 35 : 디스크 드라이브
37 : 팬 38 : 배터리
39 : AC 어댑터 40 : CPU 객체
45 : 메모리 객체 50 : 디스플레이 객체
55 : 백라이트 객체 60 : 디스크 드라이브 객체
65 : 키보드 객체 70 : 팬 객체
80 : 배터리 객체 100 : 전력 엔벨로프
110 : 제어기 120 : 정책 모듈
200 : 전력 관리 프레임워크 300 : 전력 관리 이벤트 서브시스템
400 : 전력 관리 상태 서브시스템
본 발명은 일반적으로 데이터 처리 시스템(data processing system)의 전력 관리에 관한 것으로 특히, 데이터 처리 시스템의 객체 지향 전력 관리(object oriented power management of a data processing system) 방법 및 시스템에 관한 것이다.
휴대용 랩탑 및 태블릿(portable laptops and tablets)과 같은 계산 장치(computing equipment)에서 전력의 사용을 관리(manage)하고 절약하는 것은 엔지니어링 설계(engineering design)에 있어서 우선적인 관심사이다. 전형적으로 배터리(battery)를 주요한 전원으로 사용하여 동작하는 이동형 계산 장치(mobile computing equipment)에서의 중요한 관심사는, 동작 시간을 최대로 하기 위해 배터리 전력을 효율적으로 사용하고 관리함으로써 전력을 절약하는데 있다. 예를 들면, 전력 관리의 한가지 기법은 특정한 시간동안 동작하지 않은 채로 남아있는 컴퓨터 시스템의 구성요소를 파워 다운(powers down)시키는 것이다.
다수의 휴대용 장치에서는, 이 장치가 110V AC 전원과 같은 주 외부 전원(main external power source)에서 분리되면, 배터리와 같은 자체 지원 전원(self supporting power source)이 주 전원(main power source)으로서 동작한다. 몇몇 경우에 있어서는, 배터리가 보조 전원으로서 사용되어, 상기 장치에 전원 공급이 갑작스럽게 끊겼을 때, 소정의 중요한 회로(certain critical circuits)를 계속 동작시킨다. 이 동작은 장치의 메모리를 다운시키지 않고 그 메모리에 저장된 모든 정보가 유지되도록 한다. 전술한 배터리가 동작하지 않는다면 메모리에 저장된 모든 정보는 손상을 입게 될 것이다. 개선된 관리 방안(advanced management schemes)은 구성요소들의 각종 동작을 감시(monitor)하여, 이들 구성요소가 내부 전원으로 동작할 수 있는 시간 주기를 연장할 필요가 없을 때는, 이들 구성요소에 대한 전력 공급을 중단한다. 또한, 타임 아웃 방안(time out scheme)은 임의의 시간이 경과한 후 장치를 대기 상태로 두어 전력을 절약한다. 예를 들면, 요즈음의 랩탑 컴퓨터는 통상, 컴퓨터가 특정한 시간동안 동작하지 않는 상태로 남아 있을 때, 이 컴퓨터의 디스플레이 스크린(display screen)에 대한 전력 공급을 중단한다.
랩탑 컴퓨터는 그 자체의 내부 전원으로 몇 시간은 동작할 수 있도록 설계된다. 배터리의 크기 및 무게를 최소화하면서 이들 랩탑 컴퓨터의 자체 유지 시간 주기(self-sustaining time period)를 늘리기 위해, 정교한 전력 관리 방안(sophiscated power management scheme)이 요구되며, 이 정교한 전력 관리 방안은 전력을 필요로 하는 회로 및 장치에만 전력을 공급하고, 소정 회로가 불필요해지는 경우 전력 공급을 중단하거나 이 회로가 저 전력 소비 모드(low power consumption mode)로 진입토록 해야 한다. 이 관리 방안은 지속적으로 각종 회로 및 장치를 감시하여 필요할 때 이들 회로 및 장치에 즉시 전력을 재공급하여야 한다.
특히, 요즈음의 대형 컴퓨터(large modern mainframe computer)는 대용량의 전력을 필요로 하는 복잡한 구조를 갖는다. 가용 전력을 이들 대형 시스템에 할당(budgeting)하고 관리(management)하는 것은 랩탑 컴퓨터 관리의 경우에서와 유사한 문제점을 제시한다. 예를 들면, 이 대형 컴퓨터 시스템은 이 시스템이 잠재적으로 소비할 수 있는 전력에 훨씬 못 미치는 제한된 전력만이 공급될 수 있다. 따라서, 전체 시스템을 통해 전력을 할당하기 위해 적절한 전력 관리 시스템이 요구된다.
현재의 전력 관리 기법은 많은 문제점을 내포하고 있다.
대형 컴퓨터 및 랩탑 컴퓨터에서 요즈음의 전력 관리 기법이 안고 있는 첫 번째 문제점은 각기 고유의 전력 관리 구조를 사용한다는데 있다. 전력 관리 시스템은 어떠한 컴퓨터 시스템과도 함께 사용할 수 있는 구조를 갖는 것이 바람직하다. 또한, 어떠한 컴퓨터 시스템상에서도 동작하지만, 임의의 요구되는 구성(any desired configuration)에 따라 주문 제작될 수 있는 전력 관리 구조를 제공하는 것이 바람직하다. 이는, 컴퓨터 시스템에 최적화된 전력 기준을 만족하는 규칙을 설계하고 상기 전력 관리 구조가 이에 응답토록 함으로써 성취될 수 있다.
따라서, 상이한 유형의 시스템에 대해 폭넓게 적용될 수 있는 전력 관리 구조를 제공하는 것이 바람직하다. 전력 관리 구조가 설계된 운영 체계 혹은 커널(operating system or kernel)은 결국 각종 컴퓨터 시스템에서 동작할 수 있다. 전력 관리 구조가 범용성을 가져, 손에 휴대할 수 있는 비교적 정해진 기능만을 수행하는 시스템(hand-held relatively fixed function system)에서 수천개의 프로세서를 구비한 고 전력 시스템(high powered system)에 이르기까지의 시스템에서 적용될 것을 요구한다. 각종 유형의 시스템은 전력 관리 구조에 의해 충족되어져야 하는 자신만의 주요 요건을 갖는다. 아래의 시스템 유형 목록은 각 유형의 시스템 및 이 시스템의 주요 요건을 기술한다.
[MPP 시스템]
이 시스템은 수백 혹은 수천의 처리 요소(processing elements)를 구비한 대량 병렬 프로세서(Massively Parallel Processor) 시스템이다. 이 유형의 시스템의 목적은 순(raw) 성능을 제공하는데 있다. 이 성능은 일반적으로 처리 능력쪽으로 지향되지만, 이러한 프로세서 성능을 제공하기 위하여 통상 매우 높은 대역폭의 입/출력 수단(fairly high bandwidth I/O)을 구비한다. 시스템의 성능을 저해하거나 혹은 제한하는 것은 모두 피한다. 전력 관리 구조는 시스템의 성능을 저해하지 않아야 한다.
[서버 시스템]
이 시스템은 소정의 서비스를 다수의 고객 시스템에게 제공하는데 사용된다. 전형적으로, 이 시스템은 다수의 고객에게 (비교적) 다수의 화일을 제공하는 화일 서비스로서 사용된다. 그러나, 이 유형의 시스템은 공유되어야 할 모든 서비스를 제공하기 위해 사용될 수 있다. 이 시스템이 갖추어야 할 주된 요건은 데이터가 신뢰성이 있어야 하며, 서비스가 제공될 수 있는 시간의 백분율이 높아야 한다는 것이다. 전력 관리 구조는 시스템의 임박한 전력 공급 중단(impending power outage)을 통고하고 전력 공급 중단을 극복하기 위해 백업 전원(back up power source)으로 스위칭함으로써, 상술된 서버 시스템(server system) 요건을 수용할 수 있다.
[데스크탑 시스템]
주로 단말 사용자(end user)에 의해 사용되는 이 시스템은 전형적으로 사용자와 상호작용(interact)하는 시스템이다. 이 유형의 시스템은 단말 사용자와 관련된 많은 속성(attributes)을 갖지만, 단말 사용자를 만족시키기 위한 가장 중요한 속성은 응답 시간(response time)이다. 즉, 사용자가 시스템에 대해 어떠한 동작을 시작할 때, 사용자가 어떠한 응답을 보기 위해 소요되는 시간이 주로 사용자의 시스템에 대한 만족도를 결정하고, 사용자가 시스템의 속도 및 성능을 인식하는데 큰 영향을 끼친다. 전력 관리 구조는 이 유형의 시스템 응답 시간이 (인식할 수 있을 정도로) 크게 증가하도록 하여서는 안된다.
[랩탑 시스템]
이 유형의 시스템은 단말 사용자에 의해 사용된다는 점에서 데스크탑 시스템과 유사하다. 그러나, (주로 한 장소에 위치하는) 데스크탑 시스템과는 달리 이 시스템은 이동성이 있다. 즉, 이 시스템은 여기저기로 이동된다. 이러한 시스템의 이동성 일부로서, 이 시스템은 (배터리 형태의) 휴대용 전원을 구비한다. 데스크탑 시스템과 마찬가지로, 랩탑 시스템에서도 응답시간이 중요한 기준으로서 작용한다. 그러나, 이 시스템의 이동성으로 인해, 휴대용 전원이 가능한한 긴 시간동안 전력을 제공해야 하는 요건이 따른다. 이러한 요건은 이따금 빠른 응답시간 요구와 상충되지만, 통상 더 긴 배터리 수명을 위하여 일부 응답 시간이 트레이드 오프(trade off)된다. 과거에는 대부분의 전력 관리가 이 시스템에 초점이 맞추어졌다. 이러한 현상은 시스템 자체의 전력 소비가 획기적으로 감소되어 배터리의 수명을 더욱 연장시키든지, 혹은 배터리 기술이 한층 개선되어 전력 소비가 더 이상 심각한 문제가 되지 않든지, 혹은 구성요소간의 전력 소비가 어느 정도 감소되고 동시에 배터리 기술이 요구되는 긴 배터리 수명을 성취할 수 있을 만큼 충분히 개선될 때까지 계속될 것이다.
[내장 시스템(embeded system)]
이 유형의 시스템은, 플랜트 플로어 제어기(plant floor controller)와 같은 소정의 프로세스 제어에 일반적으로 사용되는 싱글 보드 컴퓨터(single board computer)와 서버 시스템에서의 디스크 제어기(disk controller)와 같이 다른 유형의 시스템에서 서브시스템(sub-system)의 일부로서 사용되는 제어기(controller)의 두 개의 서브 카테고리(sub-catagories)로 구분된다. 이 시스템에서의 중요한 관건은 실시간(real-time)이다. 즉, 이 시스템의 소프트웨어는 소정의 시스템 성능 특성(system performance characteristics)을 기대하며, 이 시스템 성능 특성에 의존하여 정확한 동작을 성취한다(즉, 프로그램의 정확도는 알고리즘의 정확도뿐만 아니라 시간 요소에 의해서도 판단된다). 전력 관리 구조는, 실시간 응용이 그들의 타이밍 기준을 만족하면서 동작하도록 허용하여야 한다.
[PDA 시스템]
이 시스템은 퍼스널 디지탈 어시스턴트(Personal Digital Assistance) 혹은 손에 휴대할 수 있는 시스템이다. 이 시스템은 랩탑 시스템보다 훨씬 작으며, 보통 이 시스템의 좀 더 일반적인 대응 시스템(counter-part)만큼 융통성 있지(flexible)않다. 이 PDA 시스템이 갖추어야 할 두가지 요건이 있다. 첫번째는 이 시스템의 굉장히 긴 배터리 수명이다. 랩탑 시스템의 배터리 수명이 수시간(hours) 혹은 수일(hours or a few days)로 측정되는 반면, 이 PDA 시스템의 배터리 수명은 적어도 수 개월(months)로 측정된다. 이 시스템의 성능을 통상 긴 배터리 수명의 성취와 트레이드 오프된다. 두 번째의 요건은 즉시 온(instant on)이다. 즉 PDA의 부팅(boot)은 1초 미만의 시간에 이루어진다.
랩탑 및 PDA 시스템뿐만 아니라 이들 모든 유형의 시스템에 있어서 전력 관리는 중요한 관건이 되고 있다. 모든 시스템은 전력 공급을 필요로 한다. 정적 시스템(stationary system)에서 상용 전원(wall supply)(미합중국에서는 120V, 60HZ)을 시스템내에서 내부적으로 필요한 각종 DC 전압으로 변환시키는 기능을 수행하는 것은 전원(power supply)이다. 주어진 전압에 대해 더 많은 전류가 요구될수록, 더 큰 전원이 요구된다. 큰 전원은 작은 전원보다 비싸다. 시스템의 비용을 감소시키기 위해, 제조자는 작업(job)을 수행하는데 지장이 없는 최소한의 전원을 사용할 것이다. 그러나, 단말 사용자는 전원이 제공할 수 있는 것보다 더 많은 전력을 소비할 수 있는 시스템을 구성하길 원할 수도 있다. 통상적으로, 사용자는 보통 값이 비싸더라도 더 큰 전원을 구비한 시스템을 구입하는 경향이 있다. 이러한 문제점을 해결하기 위해, 시스템에서 전력을 계획적으로 이용할 수 있는 시스템을 구비하는 것이 바람직하다.
또 다른 문제점이 상용 전원을 사용하는 시스템에서 발생할 수 있다. 필요에 따라 더 큰 시스템 내부 전력을 생성할 수 있는 시스템은 더 큰 입력 전력을 요구한다. 소정 상황에서는, 더 큰 입력 전력을 얻는 것이 불가능할 수도 있다. 예를 들어, 100개의 시스템을 설치하는데 있어서, 각 시스템의 전력 소비량이 500W라고 가정하자. 그러면, 총 전력 소비량은 50KW가 될 것이다. 이들 시스템이 설치된 빌딩이 60KW의 부하를 지원할 수 있다면, 아무런 문제가 없다. 그러나, 이들 시스템이 각각 750W를 소비하는 시스템으로 대체된다면, 총 전력 소비가 75KW가 되므로, 공급가능한 전력에서 15KW 초과하게 될 것이다. 이러한 이유로 인해 저 전력 소비의 그린 시스템(green mashines)이 점차 많이 등장하게 될 것이다. 따라서, 전력 관리는 랩탑 및 PDA뿐만 아니라 모든 시스템에서 중요한 관건이 된다.
전력 관리 구조는 이 구조를 정의(define)하기 위하여 어떠한 구현 상세(any implementation specifics)에도 의존하지 않아야 한다. 예를 들면, 몇몇의 프로세서 구조는 (예를 들면, 전력 관리 코드를 위한 특수 실행 모드와 같은) 전력 관리를 다루기 위한 특정 부가 사항(specific additions)을 구비한다. 전력 관리 구조 정의(power management architectural definition)는 특정한 프로세서의 구조적 특징을 가정(presume)하면 안된다. 이렇듯 특정한 프로세서의 구조적 특징을 가정하면, 이 전력 관리 구조를 다른 프로세서 구조에 적용함에 있어 상당한 제한이 가해지게 될 것이다.
IBM 싱크패드 시리즈 랩탑(IBM Thinkpad series laptops)은 인텔사의 개선된 전력 관리 구조 및 그의 선행 버전(Intel Advanced Power Management Architecture and its precursors)에 기초한다. 이들 기법은 특정한 SL 시리즈의 인텔 구조 프로세서에 한정되어 적용되고, 개방형 시스템 기법(open system technology)에 기초를 둔 소프트웨어 시스템에서는 적용되지 않는다.
개선된 전력 관리(Advanced Power Management)는 시스템 관리 모드(System Management Mode)라 일컬어지는 특수 프로세서 모드를 사용하여, 전력 이벤트(power events)를 처리하는 코드를 실행한다. 불행하게도, 이 모드의 사용은 개방형 시스템의 구조 원칙(architectural principles)을 위반(violate)한다. 개방형 시스템은 이들이 프로세서 동작을 완전히 제어한다고 가정한다. 이들 시스템은, 통상 어드레스 트랜스레이터(address translator)를 활성화한채 머신(machine)의 통상적인 특권 모드(ordinary priviledged mode)에서만 동작한다. 실시간 동작(real time work)에 직면하여 하드웨어가 시스템 관리 모드로 진입하면 프로세서 자원(processor resources)을 관리하는데 사용되는 모든 스케쥴링 및 알고리즘(all the scheduling and all the algorithms)은 무효화된다.
또한, 멀티프로세서 시스템(multiprocessors systems)상에서, 하나의 프로세서가 시스템 관리 모드로 진입하면, 멀티프로세서 복합체(multiprocess complex)내의 다른 프로세서는, 상기 하나의 프로세서가 작동하지 않는다고 결론짓고 상기 하나의 프로세서를 멀티프로세서 시스템으로부터 제거하려 시도한다. 프로세서가 정상 실행(normal execution)을 재개(resume)한다면, 시스템은 실행 불가능한 상태가 된다. 또한, 멀티프로세서 복합체에서의 처리도중 하나의 프로세서가 시스템 관리 모드로 진입한다면, 프로세스의 소정 유형의 임계 섹션 동안(during certain particular types of critical sections of the process) 교착 상태(deadlock)가 발생할 수도 있다. 예를 들면, 운영 체제 커널(operating system kernal)이 트렌스레이션 룩어사이드 버퍼 슛다운(Translation Lookaside Buffer Shootdown)을 실행중이면, 프로세서들은 스핀 및 인식 사이클의 시퀀스(a sequence of spin and acknowledge cycles)를 수행(go through)하게 된다. 스핀중의 하나의 프로세서가 시스템 관리 모드로 진입한다면, 시스템내의 모든 프로세서는 스핀을 끝낼(wind up) 수 있다.
마지막으로, 개선된 전력 관리는 기본 입력/출력 시스템(Basic Input/Output System:BIOS)의 존재 및 사용에 의존한다. 개방형 시스템은, 이식성이 있고(portable), 실시간 지원을 제공할 수 있고, 멀티프로세서 하드웨어상에서 실행될 수 있으며, BIOS층(BIOS layer)의 모든 기능을 직접적으로 제공할 수 있으므로, 전술한 문제점으로부터 알 수 있듯이, 개선된 전력 관리는 개방형 시스템상에서 사용될 수 없다.
실 시간의 개념이 제시된 후, 전통적인 전력 관리 설계는, 이들이 전술한 문제를 실행되지 못하게 하므로써, 혹은 전력 관리 기능을 턴 오프(turning-off) 시키므로써, 전술한 문제를 해결하려는 경향이 있다는 점에서, 실패한 듯하다. 이로 인해, 부분 최적화 해법(sub-optimal solution)이 초래되었다. 멀티미디어가 실시간 응용이며 이들이 시장에서 더욱 유행한다는 점을 고려하면, 실시간은 전력 관리 구조에 의해 처리되어야 하는 중요한 대상임을 알 수 있을 것이다. 전력 관리를 실시간 개념과 더불어 고려할 때 어려운 점은 실시간은 예측가능한 서비스 가용성(즉, 알려진 서브시스템 응답시간)을 요구한다는 것이다. 이에 반해, 종래의 전력 관리는 일관된 서브시스템 응답 시간을 제공해야 할 의무가 없고, 종래의 전력 관리의 목적은 성능 및 서브시스템 응답 시간을 저하시키더라도 전력을 감소시키는 데 있으며, 이들 두 파라메터는 인식된(perceived) 시스템 동작(system activity)에 따라 상당히 변할 수 있었다.
현재의 전력 관리 시스템은 이식성(portability)이 없고 또한 시스템내에서 소비되는 총 전력을 할당(budget)할 수 있는 능력이 없을뿐더러 하나의 전력 상태를 다른 상태로 전이하는데 연관된 전력 비용을 고려하지 않으며, 또한 전력 할당도 불가능하다. 종래 기술은 단지 컴퓨터 시스템 구성요소의 전력 소비만 최소화 할 수 있을 뿐이다. 주어진 상태의 전력 요건에 대하여는 고려하지 않으며, 상태 전이는 전력 경비가 발생하지 않고 순간적이라고 가정한다. 예를 들면, 전력 소비를 최소화하려는 노력의 일환으로, 전력 관리는 디스크 드라이브가 동작중일 때 많은 전력을 소비하고, 스핀이 중단되었을 때 적은 전력을 소비한다고 가정할 것이다. 따라서, 디스크 드라이브가 한 동안 사용되지 않는다면, 전력 관리는 디스크를 셧다운(shut down)시킬 것이다. 이러한 간단한 전력 관리 방법의 문제점은 디스크의 스핀을 중단시키는 동안 소비된 전력 혹은 디스크의 스핀을 재개시키는 동안 소비된 전력은 고려되지 않는다는 데 있다. 따라서, 디스크 드라이브가 스핀 다운(spin down)하고 스핀 업(spin up)함에 있어 상이한 양의 전력 및 시간이 소비된다면, 전력 관리 구조는 전력을 절약하기 위해 디스크 드라이브를 셧다운하는 것이 바람직한 것인가를 결정함에 있어 이들 비용을 고려해야 한다.
연관된 문제점은 열 관리(thermal managements)이다. 전력 관리 시스템은, 전체 컴퓨터 시스템에 걸쳐 전력의 적절한 분산을 결정할 때, 전력 소비 및 공급, 구성요소의 신뢰성 및 전체 시스템의 성능에 미치는 열적 영향(thermal effect)을 고려하는 것이 바람직하다.
따라서, 하드웨어 특정적(hardware specific)이지 않은 데이터 처리 시스템용 전력 관리 구조를 제공하는 것이 바람직하다. 이 구조는 각각의 컴퓨터 응용에 대해 전력 관리 구조를 재설계해야 할 필요성을 제거한다. 전력 관리 구조를 여러 플랫폼(platform)에 걸쳐 이식성있게 함으로써, 그 구조가 간결화되어, 더욱 복잡한 제어 기능이 보다 용이하게 전력 관리 구조로 통합되도록 한다. 또한 이러한 시스템이 전체 시스템에 걸쳐 가용 전력을 할당하도록 하는 것이 바람직하다. 또한, 전력 관리 구조는 이 구조를 정의하기 위해서 어떠한 구현 상세에도 의존하지 않아야 한다. 전력 관리 시스템은 또한 상태 전이의 전력 비용을 고려해야 한다. 마지막으로, 전력 관리 시스템은 전력 소비 및 공급에 있어서 열 효과를 고려해야 한다.
본 발명에 따르면, 물리적 장치(physical devices)를 보유한 데이터 처리 시스템에서, 전력 관리 구조는 적어도 하나의 상태를 가지며, 각각의 상태는 대응하는 전력 값(power value)을 갖고, 시스템 상태는 상기 물리적 장치의 모든 현재 상태의 집합(set)으로서 정의된다. 하나의 물리적 장치에 각각 대응하는 전력 객체 및 열적 객체는 이 물리적 장치의 각각의 가능한 상태에서의 전력 요건 및 열적 특성에 관한 정보를 포함한다. 전력 객체 및 열 객체는 또한 각각의 가능한 상태에서 다른 상태로의 허용된 상태 전이 및 모든 가능한 상태 전이에서의 전력 요건 및 열적 특성을 기술한다. 또한, 각 물리적 장치의 현재 상태가 통신되어진다. 이벤트 수단(event means)은 시스템에서 이벤트의 발생을 나타내는 신호를 발생한다. 정책 모듈(policy module)은 전력 관리를 구현하며, 동작을 지시하는 규칙(rules)을 포함한다. 이 규칙은 이벤트 및 전력 객체 정보의 함수이다. 물리적 장치, 열 객체 및 전력 객체, 이벤트 수단 및 정책 모듈과 통신하는 제어기는 이벤트에 응답하여 하나의 물리적 장치의 상태를 변경시킨다. 제어기는 정책 모듈 규칙에 기초하여 물리적 장치 상태를 변화시킬 것인지의 여부를 결정한다.
본 발명의 전술한 목적 및 다른 목적, 특징 및 장점들은 이하 본 발명의 상세한 설명으로부터 명백히 이해될 것이다.
본 발명의 전력 관리 구조에 대한 본 발명은 랩탑 컴퓨터에서 활용되는 바람직한 실시예에 의해 기술된다. 그러나, 본 발명은 랩탑 컴퓨터에서만 적용되는 것은 아니라는 것을 이해해야 할 것이다. 본 발명은 어떠한 컴퓨터 시스템에서도 동작할 수 있고, 동일하게 적용될 수 있다. 본 발명은 어떠한 시스템에도 통합될 수 있는 전력 관리 구조에 관한 것이다. 이 구조의 메카니즘 및 이 메카니즘을 지시하는 정책 규칙은 독립적이어서, 이 메카니즘 혹은 정책 혹은 양자 모두는 이식성을 갖는다.
제1도를 참조하면, 본 발명의 전력 관리 구조의 바람직한 실시예에 의해 관리되는 컴퓨터 시스템 구성요소가 도시되어 있다. 이 간단한 예에서는 전력 관리에 의해 관리되는 랩탑 컴퓨터내에는 9개의 물리적 장치가 존재한다. 제1도에는 전력 관리 구조에 의해 제어되는 9개의 물리적 장치 즉, CPU(31), 메모리(32), 디스플레이(33), 백라이트(backlight)(34)(이 요소는 디스플레이에 백라이트를 제공한다), 디스크 드라이브(35), 키보드(36), 팬(fan)(37), 배터리(38) 및 AC 어댑터(adapter)가 도시되어 있다. 이들 요소는 랩탑 컴퓨터에서 전력 관리되는 구성요소를 구성한다. 각각의 물리적 장치에 대하여, 제2도에 도시된 바와 같이 장치 객체(device object)가 연관된다.
제2도는 8개의 물리적 장치 객체 즉, CPU 객체(40), 메모리 객체(45), 디스플레이 객체(50), 백라이트 객체(55), 디스크 드라이브 객체(60), 키보드 객체(65), 팬 객체(70), 배터리 객체(80)를 도시한다. 본 명세서에서 사용하는 객체라는 용어는 데이터 세트 및 가능한한 절차까지도 포함하는, 소프트웨어 모듈(software module)을 지칭하며, 이 용어는 컴퓨터 프로그래머 및 소프트웨어 시스템 기술자에 의해 광범위하게 사용된다. 객체는 논리적 상태 및 속성, 다른 객체와의 관계(relation), 시간경과에 따라 이들을 변화시킬 수 있는 동적 능력(dynamic capabilities)을 갖는다. 각각의 객체는 잠재적으로 활성이며, 자치적으로 순차적인 에이전트(potentially active, autonomously sequential agent)이며, 한 번에 최대 하나의 동작을 수행한다. 객체는 이벤트를 발생함으로써 통신할 수 있다. 이벤트 생성의 속성은 변하며, 점 대 점 메시지(point-to-point messages) 및 비 특정 요구(non-specific requests)를 포함할 수 있다. 이벤트는 전이를 트리거링(triggering)하거나 새로운 이벤트를 트리거링할 수 있다. 또한, 비록 바람직한 실시예가 객체 지향 프로그램을 사용하여 본 발명을 가능하게 하지만, 어떠한 프로그래밍 혹은 시스템 설계 방법도 본 발명의 전력 관리 구조를 다른 실시예로 실현하기 위해 사용될 수 있다.
장치 객체는 전력 엔벨로프(power envelope)(100) 내에 포함된다. 전력 엔벨로프(100)는 특정한 부류의 관리 객체(managed objects of a particular class)를 논리적으로 집단화(grouping)하는 수단을 제공한다. 엔벨로프는 시스템의 토폴로지(topology)를 수개의 엔벨로프으로 나누고 이들 엔벨로프 사이의 관계를 정의함으로써 시스템의 토폴로지를 나타내는 간편한 방법이다. 예를 들면, 엔벨로프 내에 포함된 전력 객체는 이 엔벨로프 내의 객체에 전력을 공급하거나 공급자 객체로부터 전력을 소비할 수 있다. 이러한 식으로, 시스템의 전력 분산 토폴로지(power distribution topology)는 전력 엔벨로프 내에 전력 객체를 내포(nesting)함으로써 정의된다. 전력 엔벨로프(100)는 그 자체가 관리 객체(managed object)이다. 관리 객체는 제어기(110)를 통해 전력 관리 구조에 의해 제어되는 객체이다. 제어기(110)는 절차를 수행하는 프로세서 혹은 다른 논리적 엔진(engine)이다.
정책 모듈(120)은 규칙을 포함하는 객체이며, 전력 관리 구조는 이 규칙에 의해 전력 공급 및 소비를 분산하고 제어하며, 컴퓨터 시스템에서의 열 전달(thermal transfer)을 유지하고 제어한다. 정책 모듈(120)은 직접적으로 제어기(110)에 접속된다. 제어기(110)는 엔벨로프(100)의 구성 및 현 상태를 판정함으로써 또한 정책 모듈(120)의 규칙에 의해 지시되는 동작을 계산함으로써 요구되는 전력 관리를 수행한다. 제어기(110)는 이후 컴퓨터내에 포함된 물리적 구성요소의 상태를 변경시켜 전력 관리를 구현한다.
제3 내지 9도는 본 발명의 소프트웨어 객체의 구조를 도식적으로(graphically) 도시한다. 실선 박스는 객체 지향 프로그래밍 기법에 따라 개념화된 논리적 객체를 나타낸다. 점선 박스는 실객체(real object)의 완전히 특정된 예(instance)를 나타낸다. 즉, 점선 박스는 본 발명을 실현하기 위해 구현된 실제 소프트웨어 모듈 혹은 객체이다. 각각의 논리적 객체는 이 객체의 다수의 속성을 나타내는 필드를 포함한다. 논리적 객체는 물리적 장치 객체의 유형에 근거하여 이들 속성을 집단화하는 유용한 도구이지만, 소프트웨어로 구현된 독립된 객체를 나타내는 것은 아니다. 논리적 객체를 참조하는데 사용되는 참조 번호는 객체의 id 필드에 도시된 번호가 될 것이다. id 필드가 없는 객체는 외부 참조 번호를 갖는다.
제3도를 참조하면, 엔벨로프 객체의 내용이 도시되어 있다. 전력 엔벨로프 객체(100)는 전력을 제어하는데 사용되는 객체를 구현한다. 열 엔벨로프 객체는 열 전달을 제어하는데 사용되는 객체를 구현할 것이다. 관리 객체(1)는 전력 관리 구조에게 자신의 I.D.번호 1로써 식별된다. 이 객체의 유형은 엔벨로프 관리 객체로서 식별되어, 전력 관리에 의해 관리되는 한 부류의 객체를 위한 논리적 컨테이너(logical container)를 제공함을 나타낸다. 이 관리 객체는, 포함됨(contained in) = 0 으로 표시되는 바와 같이, 다른 어떠한 엔벨로프에도 포함되지 않는다. 또한 도시된 바와 같이, 전력 엔벨로프 객체는 이벤트 소오스(event source)를 발생하지 않는다. 객체(140)는 엔벨로프 내에 포함된 객체 부류를 식별한다. 이 경우, 엔벨로프는 전력 유형으로 분류되고, 따라서 단지 전력 객체만을 포함하게 된다. 또한 이 부류가 종속되는 정책 모듈이 도시된다. 객체(150)는 전력 엔벨로프 내에 포함된 어느 물리적 장치가 전력의 공급자이며 어느 물리적 장치가 전력의 소비자인지에 대한 정보를 제공한다. 랩탑 컴퓨터의 예에 있어서, 배터리가 전력의 공급자로서 표시되며, CPU, 메모리, 디스플레이, 백라이트, 키보드 및 팬은 소비자로서 표시된다.
엔벨로프 객체가 열적 엔벨로프이라면, 배터리, CPU, 메모리, 디스플레이, 백라이트, 디스크, 키보드 및 팬 모두가 열 소오스로서 표시될 것이다. 그러나, 팬의 경우에는 대류(convection)에 의해 열을 전달할 수 있으므로, 열 싱크(heat sink)로서 표시된 것이다.
제4도를 참조하면, 전력 소비자 물리적 장치 객체와 이 장치 객체의 가능한 상태 및 허용된 전이를 나타내는 논리 객체가 도식적으로 도시되어 있다. 관리 객체(2)는 I.D.번호 2로써 식별된다. 예를 들면, 관리 장치는 CPU이다. 따라서, 관리 객체 유형은 물리적 객체이고, 이 객체는 전력 엔벨로프(100)에 대응하는 관리 객체(1)에 포함된다. 따라서, 관리 객체(2)는 CPU 전력 객체이다.
객체(180)는 CPU 장치 객체를 전력 객체로서 식별한다. 전력 객체(190)는 CPU의 전력 명세(specfication)를 기술한다. CPU의 허용된 상태는 물리적 상태(3, 4 및 5)로 식별된다. 전력 객체(190)는 또한 주어진 시간에서 CPU가 점유하고 있는 상태가 상술한 상태(3, 4 및 5) 중 어느 상태인가를 식별함으로써 CPU의 현지 상태를 식별한다. 서술(description) 정보는 관리 객체(2)에 대응하는 물리적 장치를 식별한다.
객체(190)는 물리적 객체(180)를 전력의 소비자(consumer)로서 식별한다. 소비자는 동작중에는 자신이 발생하는 에너지보다 더 많은 에너지를 사용한다. 전력 객체의 다른 가능한 유형은 공급자이다. 공급자는 동작중에 자신이 소비하는 에너지보다 더 많은 에너지를 발생한다.
제4도에 도시된 바와 같이, 물리적 상태(3)는 CPU의 100%의 성능 레벨에 있다. 이 물리적 상태를 유지하기 위한 전력 레벨은 5W이다. CPU는 물리적 상태(3)로부터 단지 물리적 전리(6)로만 전이할 수 있다. 따라서, CPU는 단지 이 물리적 전이를 통해서, 자신의 100% 성능 상태로부터 이동할 수 있다. 이 물리적 전이에 제공된 정보는 전이가 시작하는 상태 및 전이가 종결되는 상태를 포함한다. 이 경우, 물리적 상태(3)에서 물리적 상태(4)로 전이가 이루어진다. 따라서, 전 전력(full power)에서 동작하는 동안, CPU의 상태에서 유일하게 허용되는 변화는 물리적 상태(4)에서 성능을 절반으로 감소시키는 것이다. 이러한 물리적 전이는 5W의 전력을 소비하고, 이 전이의 실행을 위해서는 1msec의 시간이 필요한 것으로 식별된다.
물리적 상태(4)는 CPU가 절반의 성능에서 동작하는 상태를 나타낸다. 이 상태에서 동작하는 동안, CPU는 3W의 전력을 소비한다. 물리적 상태(4)로부터 유일하게 허용된 전이는 물리적 전이(7) 및 물리적 전이(8)로 표시된다. 물리적 전이(7)는 시작 상태(4) 및 종결 상태(3)에 의해 도시된 바와 같이, CPU의 성능을 50%에서 100%로 끌어올린다. 이 물리적 전이는 5W의 전력을 소비하고, 1.5msec의 시간을 필요로 한다.
물리적 전이(8)는 CPU가 50%의 성능으로부터 셧다운으로 전이하도록 허용한다. 이는 시작 상태(4) 및 종결 상태(5)에 의해 표시된다. 이 전이는 3W의 전력을 소비하고, 2msec의 시간을 필요로 한다.
CPU가 현재 셧다운된다면, 이 CPU의 현재 상태는 물리적 상태(5)가 될 것이다. 이 상태에서, CPU는 전력을 소비하지 않는다. 이 상태에서 허용된 물리적 전이는 물리적 전이(9, 10)이다. 물리적 전이(9)는 CPU를 슛다운에서 50% 성능으로 끌어올린다. 물리적 전이(10)는 CPU를 물리적 상태(5)로부터 물리적 상태(3) 즉, 전 전력으로 끌어올린다.
이벤트 소오스 객체(event source object)는 물리적 이벤트의 발생을 전력 관리 제어기에 전달하는 객체이다. 이벤트 소오스 객체의 예로는 랩탑이 AC 콘센트(AC outlet)에 접속되거나 혹은 AC 콘센트상에서 전력이 끊어질 때, 메시지를 전력 관리 제어기(110)에 제공하는 객체를 들 수 있다. 다른 예로서는, 키보드와 연관된 이벤트 소오스 객체는 키가 눌려진 때를 나타낸다.
제5도를 참조하면, 관리 객체(11)는 이벤트 소오스 객체이다. 이 객체에 수록된 속성은 이 객체의 식별 번호가 11이며, 이 객체가 이벤트 소오스이며, 이 객체는 관리 객체(1)에 포함되어, 이 객체에 의해 발생가능 이벤트(possible Generatable Events)는 이벤트(12, 13, 41 및 42)임을 표시한다. 가능한 또 다른 속성은 이 이벤트 소오스의 함수인 정책 모듈의 표시이다. 발생가능 이벤트(12)는 CPU가 비지 상태가 될 때를 나타낸다. 발생가능 이벤트(13)는 CPU가 소정 시간동안 유휴상태(idle)로 남아있을 때를 나타낸다. 이 발생가능 이벤트는 임계치가 초과되었을 때 발생한다는 점에서 임계(threshold) 유형의 이벤트이다. 본 실시예에서, 임계값은 250msec의 유휴상태 CPU 시간임을 알 수 있다. 발생가능 이벤트(41)는 CPU가 임계값 1.5sce 이상동안 고부하(high hold) 혹은 고속으로 동작하였음을 나타내는 임계 유형 이벤트이다. 발생가능 이벤트(42)는 CPU가 임계값 0.5sec 이상 동안 저 부하로 동작하였음을 나타내는 임계 유형 이벤트이다.
당업자라면 임의의 수의 물리적 장치 속성이 객체에 의해 전력 관리 제어기로 보고될 수 있다는 것을 이해할 것이다. 관리 객체가 제어기에 제공하는 관리 객체의 정보 유형은 시스템 설계자가 컴퓨터 시스템에 부과한 특정 전력 관리 방안(particular power management scheme)에 따를 것이다. 이 방안을 구현하는 특징의 트레이드 및 인자의 균형(the balance of factors and tradeoffs of features that embody that scheme)은 정책 모듈에 의해 제공되는 규칙으로 통합된다. 이들 규칙은 물리적 장치 사이에 전력을 할당하거나, 전력(절약)과 보다 나은 성능 사이에 트레이드 오프를 취하거나, 혹은 물리적 장치의 신뢰성을 향상시키기 위하여 전력(절약)을 희생하도록 설계될 수 있다. 따라서, 전력 관리 구조를 구현함에 있어, 제어기는, 시스템 내의 모든 물리적 장치의 현재 상태와 발생된 이벤트와, 상기 물리적 장치의 모든 가능한 상태 및 전이 상태의 속성을 제공하는 전력 객체 정보의 함수로서, 정책 규칙에 근거하여, 하나의 물리적 장치의 상태를 변경할 것인지의 여부를 판정한다.
관리되고, 물리적인, 전력 소비자(managed, physical, power consumer)의 제2예인 디스크 드라이브의 객체가 제6도 및 제7도에 도시되어 있다. 제6도를 참조하면, 디스크 드라이브 객체(60)의 속성은, 관리 객체의 식별 번호가 14이며, 이 객체가 물리적 객체이자 전력 관리 엔벨로프에 포함된 전력 소비자임을 표시한다. 관리 객체(14)에 대해 허용된 두 개의 상태는 물리적 상태(15, 16)이다. 이들 물리적 상태는 관리 객체에 의해 제6도에 수록된 속성을 갖는 것으로 전력 관리 제어기에게 보고된다. 이들 속성에는 물리적 상태의 식별 번호, 이 물리적 상태의 유형, 이 물리적 상태로부터의 가능한 전이 및 이 상태에서의 물리적 장치의 성능 레벨들이 포함된다. 디스크 드라이브는 스펀 업(spun up) 물리적 상태(15)를 가지며, 이 상태에서 디스크 드라이브는 전 전력상으로 동작하고 소비 전력은 8W를 소비한다. 이 스펀 업 상태에서는 하나의 물리적 전이 즉, 물리적 전이(17)만이 존재한다. 이 물리적 전이의 수행에는 20sec의 시간이 필요하고, 소비 전력은 10W이다. 이 스핀 다운 물리적 전이는 디스크 드라이브를 스펀 업 상태에서 물리적 상태(16)의 스펀 다운 상태로 전이시킨다. 물리적 상태(16)에서, 디스크 드라이브는 전력을 소비하지 않으며, 단지 하나의 물리적 전이 즉, 물리적 전이(18)를 통해서만, 상태를 변경시킬 수 있다. 이 물리적 전이는 디스크 드라이브를 스펀 다운 상태에서 스펀 업 상태로 전이시킨다. 디스크 드라이브는 스핀 업을 위해 30sec의 시간이 필요하고, 소비 전력은 12W이다.
CPU 예에서와 유사한 방식으로, 이벤트 객체는 제어기에 디스크 드라이브에서 보고할 만한 이벤트가 발생하였음을 나타내는 신호를 제공한다. 제7도에 도시된 바와 같이, 관리 객체(19)는 제어기에 3개의 발생가능 이벤트(신호 혹은 메시지)를 제공한다. 제1이벤트는 디스크가 비지상태로 되었음을 나타내는 발생가능 이벤트(20)이고, 제2이벤트는 디스크가 미결 작업(pending work)을 가지고 있음을 나타내는 발생가능 이벤트(21)이며 제3이벤트는 디스크가 소정 시간동안 유휴상태로 남아있었음을 나타내는 발생가능 이벤트(22)이다. 이들 발생가능 이벤트는 모두 임계 유형 이벤트이며, 소정의 최소시간(some minimum time)을 필요로 하거나 혹은 발생가능 이벤트(21)의 경우, 최소 수의 디스크 액세스 요구(a minimum number of disk accesses)를 필요로 한다. 임계치에 도달했을 때, 이벤트 소오스는 발생가능 이벤트 신호를 전송한다. 비록 관리 객체(19)가 분리된 객체로서 묘사되었지만, 디스크 드라이브 객체는 발생가능 이벤트를 유지함으로써, 이벤트 소오스 객체로서 가능할 수 있다. 예를 들면, 디스크 드라이브 객체(60)는 디스크 드라이브 전력 소비 객체로 동작하고 또한 디스크 드라이브의 발생가능 이벤트의 이벤트 소오스 객체로서 동작하는 이중 기능(dual function)을 가질 수 있다.
제8도를 참조하면, 물리적 전력 소비자의 제3예 즉, 컴퓨터 키보드에 대한 전력 객체(65)가 도식적으로 도시되어 있다. 키보드 관리 객체(23)는 100% 성능 상태인 물리적 상태(24) 및 0 성능 상태인 물리적 상태(25)를 구비한다. 유일하게 허용된 전이 즉, 물리적 전이(26, 27)는, 키보드를 전 동작(full operation) 상태에서 셧다운 상태로 변경시키기 위해, 명세(specfication)를 기술한다. 제9도에서, 관리 객체(28)는 두 개의 발생가능 이벤트를 갖는 이벤트 소오스 객체이다. 발생가능 이벤트(29)는 키가 눌려질때는 신호하고, 발생가능 이벤트(30)는 키보드 유휴 시간을 나타내는 임계 유형 이벤트 소오스 신호이다.
열 객체가 유사한 방법으로 생성된다. 열 객체는 물리적 장치에 대응한다. 열 객체는 물리적 장치의 각각의 가능한 상태의 열 요건 혹은 명세에 관한 정보를 포함한다. 또한, 열 객체는 물리적 장치의 현재 상태를 전이시키고 상태에 대한 열 값(thermal value)을 제공할 수 있다. 이 열 값은 온도 감지기에서 감지된 실온이거나 있고 혹은 W로 측정된 발생한 물리적 장치의 열 전달(heat transfer)일 수도 있다.
전력 관리 시스템 설계자에 의해 의한 정책 모듈(120)로 프로그램될 수 있는 규칙 유형의 매우 간단한 예는 제10도에 도시되어 있다. 3개의 열(column)을 갖는 테이블이 도시되어 있다. 제1열은 이벤트 소오스 객체에 의해 하나의 이벤트로 감지되고 통신되는 10개의 가능한 이벤트를 묘사하는 이벤트 열이다. 제1행 및 제2행은 동일한 이벤트 즉, CPU가 비지 상태로 됨(CPU became busy)을 포함한다. 정책 모듈(120)의 규칙은 제어기가 조건(condition) 열에 도시된 바와 같은 시스템 상태 조건 특히, 배터리상의 전력 부하(power load)를 살피도록 요구된다. 배터리에 대한 전력 객체를 액세스하므로서, 제어기는 배터리의 현재 상태를 얻어 시스템 모델을 구성할 수 있게 된다. 제어기는 배터리상의 전력 부하가 로우인지 혹은 하이인지를 인식할 수 있을 것이다. 이 결과에 따라, 정책 모듈 규칙은 동작(action) 열에 도시된 바와 같은 특정 동작을 요구한다. 배터리상의 전력 부하가 로우이면, 이 규칙은 CPU가 상태 번호(3)에 위치하도록 요구한다. 배터리상의 전력 부하가 하이이면, 이 규칙은 CPU가 상태 번호(4)에 위치하도록 요구한다. 이러한 특정한 예에서, 제어기는, 시스템 상태(즉, 시스템 조건) 및 이벤트의 함수로서, 정책 모듈 규칙에 근거하여, CPU의 현재 상태를 변경시킬 것인지와 CPU가 어느 상태로 변경되어야 하는가를 판정한다. 이 예에서, 배터리상의 전력 부하가 로우이고 CPU의 현재 상태가 상태 번호(3)이었다면, 제어기는 어떠한 동작도 요구되지 않는다고 판정할 것이다. 그러나, 이 예에서 배터리상의 전력 부하가 하이이면, CPU는 상태 번호(3)에서 상태 번호(4)로 변경시킬 것이다.
제3행 및 제4행은 단지 이벤트만의 함수인 정책 모듈 규칙의 예를 도시한다. CPU가 유휴상태에 있다면, 제3행 내의 규칙은 CPU가 상태 번호(5)에 위치하도록 요구한다. 이 규칙을 처리하고 있을 때는 시스템 조건과는 무관하다. 제6행 및 제7행은 디스크 드라이브에 관련한 유사한 예를 제공한다.
제8행은 더 복잡한 모듈 규칙을 예시한다. 이 규칙은 제어기가, 시스템 상태, 전력 객체 속성 및 이벤트의 함수로서, 정책 모듈 규칙에 기초하여, 물리적 장치 상태 혹은 시스템 상태를 변경시킬 것인지의 여부를 판정할 것을 요구한다. 이 예에서, 이벤트 소오스는 디스크가 유휴 상태로 있다는 것이다. 이 규칙이 구현되려면, 제어기가 디스크 드라이브 전력 객체에 의해 보고된 디스크 드라이브의 현재 상태 및 디스크 드라이브 속성 모두를 고려하여야 한다. 디스크 드라이브 전력 객체는, 디스크 드라이브의 스핀 다운에 소요되는 시간 Tsd, 이 스핀 다운 상태 전이에 소비되는 전력 Psd, 디스크 드라이브가 다시 스핀 업하는데 소요되는 시간 Tsu, 스핀 업 상태 전이를 위해 디스크 드라이브가 소비하는 전력 Psd및 스핀 상태에 머무르는 동안 디스크 드라이브가 소비하는 전력 Ps를 포함하는 정보를 제공한다. 따라서, 제어기는 조건 계산을 수행할 수 있고, 이어서, 예상 유휴 시간에 근거하여, 디스크를 상태 번호(16)에 위치시키는 동작이 요구되는지의 여부를 판정할 수 있다. 이러한 식으로, 전력 관리 구조 설계자는 디스크 드라이브를 자신의 현재 스핀 상태로 남겨두는 것과 디스크를 스핀 다운하고 차후에 사용시 디스크를 다시 스핀 업하는 것 중에서 어느 것이 전력 소비를 최소로 하는지 비교형량함으로써 제어기가 가장 효율적인 동작 코스를 결정하도록 허용하는 규칙을 생성한다.
제10도의 예는 본 발명의 전력 관리 구조에 의해 성취된 융통성(flexibility)을 예시한다. 전력 객체, 이벤트 객체 및 정책 모듈은 모두 전력 관리 구조가 구현된 하드웨어의 특정 유형에는 무관한 제어기와 더불어 동작한다. 본 발명에 따르면, 전력 관리 구조의 프레임워크 및 기능(framework and function)은 어떠한 컴퓨터 시스템에서도 사용할 수 있는 전력 관리 시스템을 제공한다. 따라서, 본 발명은 랩탑 컴퓨터 혹은 대용량의 멀티 프로세서 시스템에서 사용될 수 있다. 그러나, 시스템 내에 구현되기 위해서는, 물리적 객체는 이 물리적 객체가 배정된 대응하는 물리적 장치의 특정 속성에 따라 구성될 필요가 있다. 또한, 특정 시스템을 위해 설계되지 않은 폭넓은 범용성을 갖는 정책 모듈은 특정 응용에 대해서는 충분한 효율성을 발휘하지 못할 수도 있다. 따라서, 정책 모듈은 하드웨어 규정 규칙을 더 구비하도록 설계될 수 있다.
제11도를 참조하면, 본 발명의 또 다른 바람직한 실시예의 서브시스템 관계 모델(subsystem relationship model)이 도시되어 있다. 본 발명의 또 다른 바람직한 모델은 객체 지향 전력 관리 구조이다. 전력 관리 프레임워크(PMF)(200)는 전력 관리의 기본적인 구조를 구비한 객체 및 장치를 포함하는 서브시스템이다. 전력 관리 이벤트 서브시스템(PME)(300)은 발생가능 이벤트를 포함하는 모든 이벤트 객체를 보유하고 제어한다. PMF(200) 및 PME(300) 사이의 관계는 이들을 연결하는 관계(R51, R53 및 R52)에 의해 정의된다(이들 관계는 차후에 정의된다). 전력 관리 상태 서브시스템(PMS)(400)은 전력 관리의 물리적 상태 및 물리적 전이를 정의하는 객체를 포함한다. PMS(400)는 두 세트의 관계를 통해 PMF(200)에 접속된다. 제1관계 세트는 관계(R42, R43 및 R44)이고, 제2관계 세트는 관계(R40, R41 및 R45)이다(이들도 역시 차후에 정의된다).
제12 내지 14도의 설명을 단순화 하기 위해, 모든 객체 및 모든 관계는 표준 형식(standard format)을 사용하여 서술된다. 도면에서, 상자(boxes)는 객체를 나타내며, 다이아몬드는 두 객체사이의 관계를 나타낸다. 객체에 대한 표준 형식은 다음과 같다.
[#]. [객체 명칭]
[객체 속성 등]
서술 : [객체 및 객체의 특성 서술]
각 객체의 서술 아래에는, 이 객체에 의해 제공되는 각각의 속성에 대한 서술이 포함된다. 이들 속성에 대한 형식은 아래와 같다.
[#]. X [관계 명칭]
서술 : [속성의 설명]
객체사이의 관계는 도면에서 다이아몬드 형으로 도시되고, 또한 다음의 표준 형식으로 제공된다.
R[#]. [관계]
서술 : [관계의 간단한 서술]
객체 명칭앞의 식별 번호 및 관계 명칭앞의 식별 번호는 도면에서의 참조 번호에 대응한다는 것은 유의하기 바란다.
관계의 기능을 식별하는 도면에 사용된 표기법(notation)은 공지의 슐래-멜러 표기법(Shlaer-Mellor notation)을 사용한다. 이 표기법은 본 기술 분야에서는 잘 알려져 있다. 이 표기법의 설명은 슐래 및 멜러가 저술한 Object Oriented System Analysis : Modeling The World In Data, 1988 및 Object Life Cycles : Modeling The World In States, 1992 에 개시된다. 본 명세서에 사용된 표기법은 화살측(arrowhead)이 사용되지 않는다는 점에서 슐래-멜러에 의한 표기법과는 다르다. 대신 1이 관계 접속자(relationship connector)의 각 사이드에 표기됨으로써 1 대 1 관계가 표시된다. 각각의 참여 객체(participating object)로부터의 관계 명칭은 접속 라인에 부가되고, 괄호(parenthesis)로 표시된다. 다중성(multiplicity relationship)은 관계에 참여하는 객체들의 실례들의 수(the number of instances of an object that takes part in a relationship)를 지칭하며 M으로 도시된다. 기본적인 다중 관계는 1:1, 1:다수 및 다수:다수의 3가지 유형이 있다. 이들 관계는 1 혹은 M을 사용하여 도면상에 도시된다. 조건부 제한(conditionality)은 객체의 각각의 실례가 관계에 참여하여야 하는지의 여부를 나타낸다. 조건부 제한에서는 객체의 몇몇 실례는 관계에 참여하지 않을 수 있다. 문자 C는 도면상에서 조건부 제한을 나타내는데 사용되며, 이따금 true가 되는 관계 어구(relationship phrase) 옆에 위치한다.
이제 제12 내지 14도를 참조하면, 다음의 리스팅(listing)은 도면내에 포함된 객체를 기술하며, 전력 관리 프레임워크가 가정하는, 이들 객체의 동작 방법을 설명한다. 객체 목록에 이어, 객체 사이의 관계를 설명하는 관계의 리스팅이 제공된다. 제12a도 및 제12b도는 자신의 객체 및 객체 사이의 관계를 포함하는 전력 관리 프레임워크를 도시한다. 제13도는 자신의 객체 및 객체 사이의 관계를 포함하는 전력 관리 상태 서브시스템을 도시한다. 제14도는 자신의 객체 및 객체 사이의 관계를 포함하는 전력 관리 이벤트 서브시스템을 도시한다.
[mk.전력 mgmt.프레임워크 서브시스템에 대한 객체 및 속성 서술]
1. 관리_객체
(관리_객체_id, 관리_객체_유형, 포함_엔벨로프_id, 포함_엔벨로프_유형)
서술 : 관리_객체는 시스템내의 소정 수의 물리적 구성요소를 대표한다. 이로서, 관리 객체는 통상 장치 드라이버와 같은 시스템내의 다른 좀 더 일반적인 구성요소와 연관된다. 장치 드라이버의 경우, 관리_객체가 실제적으로 장치 드라이버 자체의 일부라고 예상될 수도 있다. 그러나, 개념적인 관점 및 인터페이스 구현 관점에서 관리_객체는 장치 드라이브와 분리된 독립적인 것으로 생각될 수 있다. 또한, 관리_객체는 장치 드라이브가 엑스포트(export)하는 유일한 실제(real) 인터페이스인 경우도 있을 수 있다. 시스템에는 통상 다수의 관리_객체가 존재한다. 어느정도, 시스템 내의 관리_객체 수는 시스템의 기저 물리적 구현(underlying physical implementation)에서의 지원 레벨에 의해 결정될 수 있다. 그러나, 시스템의 주요한 기능적 구성요소는 이 구성요소의 기저 지원에 무관하게 관리 객체를 구현할 것이다. 관리_객체는 통상 수동적이다. 관리_객체는 전력 관리_정책에 자신에 관한 정보를 제공하지만, 자발적으로는 어떠한 동작도 하지 않는다. 자발적으로 동작한다면, 관리_객체는 전력_관리_정책의 소임(responsibility)의 일부를 떠 맡을 것이고, 메카니즘과 정책을 분리하고자 하는 목적은 실패로 돌아갈 것이다.
1.1 관리_객체.관리_객체_id
서술 : 관리_객체를 식별하는 속성.
1.2 관리_객체.관리_객체_유형
서술 : 현재의 실례에 의해 표시된 관리_객체의 유형을 서술한다.
1.3 관리_객체.포함_엔벨로프_id
서술 : 관리_객체를 직접적으로 포함하는 엔벨로프에 대한 참조(reference).
1.4 관리_객체.포함_엔벨로프_유형
서술 : 관리_객체를 직접적으로 포함하는 엔벨로프의 유형에 관한 참조
2. 엔벨로프
(관리_객체_id, 관리_객체_유형, 엔벨로프_id, 엔벨로프_유형, 제어_정책_id)
서술 : 엔벨로프는 컨테이너형의 객체이다. 즉, 엔벨로프는 다른 관리_객체를 포함한다. 엔벨로프는 또한 다른 엔벨로프를 포함할 수도 있다. 엔벨로프는 시스템 내에서의 전력 및 열 분산 토폴로지를 서술하기 위해 사용된다. 엔벨로프는 또한 개별의 관리_객체(individual Managed objects)와 전력_관리_정책 사이에 접속을 제공하는 편리한 장소이다. 그 이유는 정책은 통상 개별 관리 객체가 아닌 관리 객체들의 집단과 연관되기 때문이다. 매 관리_객체는, 다른 엔벨로프를 포함하여, 하나의 엔벨로프 내에 포함된다. 이에는 하나의 예외가 존재하며, 이 예외는 유니버살_엔벨로프(Universal_Envelope) 개념이다. 이 엔벨로프는 다른 다른 어떠한 엔벨로프에도 포함되지 않는다는 점에 있어서 특이하다. 이 엔벨로프는 외곽 엔벨로프(outer-most envelope)이며, 항상 존재한다.
2.1 엔벨로프.관리_객체_id
서술 : 이 속성은 관리_객체의 실례를 엔벨로프의 실례에 연결한다.
2.2 엔벨로프.관리_객체_유형
서술 : 이 속성은 관리_객체의 실례를 엔벨로프의 실례에 연결하는데 사용된다.
2.3 엔벨로프. 엔벨로프_id
서술 : 엔벨로프를 식별하는 속성으로 관리_객체의 두 필드로부터 구성되며, 이들 필드 모두가 이 속성을 지정한다.
2.4 엔벨로프.엔벨로프_유형
서술 : 특정한 엔벨로프에 의해 표현된 엔벨로프의 유형을 서술한다.
2.5 엔벨로프. 제어_정책_id
서술 : 이는 엔벨로프 및 그의 내용의 관리에 대한 책임을 지는 전력_관리_정책에 대한 참조이다.
3. 이벤트_소오스
(관리_객체_id, 관리_객체_유형, 이벤트_소오스_id, 이벤트_for, 이벤트_for_유형, 수신_정책_id)
서술 : 이벤트_소오스는 시스템에 대한 각종 유형의 이벤트를 전력_관리_정책으로 전송하는 수단이다. 각종 유형의 이벤트_소오스가 존재하지만, 이들 유형에 관계없이, 이벤트_소오스는 후술되는 범주로 구분된다. 이벤트_소오스의 제1범주는 다른 관리_객체와 연관되는 범주이다. 이러한 이벤트 소오스의 범주에서, 이벤트 소오스는 연관된 관리 객체를 대신하여 이벤트를 전력_관리_정책으로 전송할 책임이 있다. 이러한 유형의 이벤트_소오스의 예는 전원에 의해 발생되는 전력 실패 신호가 될 것이다. 다른 예는 수초 동안 유휴 상태로 존재하였음을 나타내는 디스크 장치 드라이버가 될 것이다. 이벤트_소오스의 제2범주는 다른 관리 객체와 연관되지 않는 범주이다. 이 이벤트_소오스 범주에서, 이벤트_소오스는 보통 전력_관리_정책이 관심을 가질 수도 있지만 하나 다른 관리_객체에 의해서는 표현되지 않는 이벤트 소오스를 나타낸다. 이러한 유형의 이벤트_소오스의 예는 덮개가 열리거나 혹은 닫혀질 때 상태를 변화시키는 랩탑 덮개에 존재하는 스위치가 될 것이다. 전력_관리_정책은 이러한 이벤트를 통보받길 원할 수 있다.
3.1 이벤트_소오스.관리_객체_id
서술 : 이 속성은 관리_객체의 실례를 이벤트_소오스의 실례에 연결한다.
3.2 이벤트_소오스.관리_객체_유형
서술 : 이 속성은 관리_객체의 실례를 이벤트_소오스의 실례에 연결한다.
3.3 이벤트_소오스.이벤트_소오스_id
서술 : 이벤트_소오스를 식별하는 속성으로서, 관리_객체의 두 필드로부터 구성된다. 이들 필드 모두가 함께 이 속성을 정의한다.
3.4 이벤트_소오스.이벤트_for
서술 : 이 이벤트_소오스가 이벤트를 발생하는 관리_객체를 참조한다.
3.5 이벤트 소오스.이벤트_for_유형
서술 : 이 이벤트_소오스가 이벤트를 발생하는 관리_객체를 참조한다.
3.6 이벤트 소오스.수신_정책_id
서술 : 이벤트 소오스가 그의 이벤트를 전송하는 전력_관리_정책을 참조한다.
4. 물리적 객체
(관리_객체_id, 관리_객체_유형, 물리적_객체_id, 물리적_객체_유형, 현재_물리적_상태_id, 현재_물리적_상태_유형, 물리적_객체_서술)
서술 : 물리적 객체는 기저 시스템 구현의 물리적 특성을 표현한다. 물리적 객체는 전력 혹은 열 관리 관점에서 관심을 가질만한 시스템 특성을 모델링(modeling)하며, 따라서 다른 관점에서 관심을 가질만한 특성은 포함하지 않는다. 다른 특성은 (장치 드라이버와 같은) 시스템의 다른 부분에 의해 보다 양호하게 모델링된다. 물리적_객체는 두 기본적인 특성 즉, 전력 및 열을 모델링한다. 전력 관리는 물리적 엔티티의 전력 특성 및 열적 특성 양쪽 모두에 관심을 둔다. 소정 시스템에서, 시스템의 열적 측면의 관리는 시스템의 전력 관리만큼 중요할 수도 있다(더 중요할 수도 있다). 전력 관리 관점에서, 열적 관리는 시스템에 의해 소비되는 전력에 영향을 끼칠 수 있으므로 중요하다. 시스템이 (내부 온도와 같은) 어떠한 열적 기분에 근거하여 턴 온 및 턴 오프되는 팬을 구비한다면, 전력_관리_정책은 이것을 인식해야 한다. 왜냐하면, 시스템의 어느 한 물리적 부분을 특정한 전력 상태로 위치시키는 것은 하나 혹은 그 이상의 팬을 턴 온되도록 요구하며, 이는 전력 소비를 증가시킬 수 있기 때문이다. 전력_관리_정책은 몇몇 시스템에서, 시스템의 일부분을 턴 온하는 것이 전력 용량을 초과하지 않을 수도 있지만, 이 시스템의 일부분을 턴 온하는 것이 전력 용량을 초과하지 않을 수도 있지만, 이 시스템 부분에 의해 발생되는 결과적인 열을 제거하기 위해서는 시스템의 용량을 초과할 수도 있음을 또한 인식해야 한다.
4.1 물리적_객체.관리_객체_id
서술 : 이 속성은 관리_객체의 실례를 물리적_객체의 실례에 연결한다.
4.2 물리적_객체.관리_객체_유형
서술 : 이 속성은 관리_객체의 실례를 물리적_객체의 실례에 연결한다.
4.3 물리적_객체.물리적_객체_id
서술 : 물리적_객체를 식별하는 속성으로 관리_객체의 두 필드로부터 구성되며, 이들 필드 모두가 이 속성을 정의한다.
4.4 물리적_객체.물리적_객체_유형
서술 : 특정한 물리적_객체에 의해 표현된 물리적 객체의 유형을 서술한다.
4.5 물리적_객체.현재_물리적_상태_id
서술 : 이 속성은 물리적_객체의 현재 상태를 나타내는 물리적_상태를 참조한다.
4.6 물리적_객체.현재_물리적_상태_유형
서술 : 이 속성은 물리적_객체의 현재 상태를 나타내는 물리적_상태를 참조한다.
4.7 물리적_객체.물리적_객체_서술
서술 : 이 속성은 물리적_객체를 기술한다. 이 속성은 전력_관리_정책에 의해 사용되어 물리적_객체에 대한 부가적인 시맨틱(additional semantics)을 얻는다. 이 속성에 부착된 주석(note)을 참고하기 바란다.
5. 전력_관리_정책
(정책_id)
서술 : 전력_관리_정책이 무엇을 행하는지에 대해 정확한 서술은 여기에서는 개시되지 않는다. 그 근거는 상이한 전력_관리_정책은 중요시되는 상이한 시스템 파라미터를 가질 것이며, 전력 및/또는 열적 관리에 관하여 시스템이 어떻게 동작하는 가에 대한 상이한 목적을 가질 것이기 때문이다. 전력_관리_정책은 전력 관리 서브시스템 내의 다른 객체와 상호작용하여 그의 목적을 성취할 것이다.
5.1 전력_관리_정책.정책_id
서술 : 전력_관리_정책을 식별하는 속성이다.
6. 열_엔벨로프
(엔벨로프_id, 엔벨로프_유형, 열_엔벨로프_id)
서술 : 열적_엔벨로프는 열_객체를 포함하는 엔벨로프이다. 전력_엔벨로프는 시스템의 열 토폴로지를 서술하기 위해 사용된다. 열_엔벨로프는 적어도 하나의 열_싱크 및 하나의 열_소오스를 포함해야 한다.
6.1 열_엔벨로프.엔벨로프_id
서술 : 이 속성은 엔벨로프의 실례를 열_엔벨로프의 실례와 연결한다.
6.2 열_엔벨로프.열_유형
서술 : 이 속성은 엔벨로프의 실례와 열_엔벨로프의 실례를 연결한다.
6.3 열_엔벨로프,열_엔벨로프_id
서술 : 유일하게(uniquely) 열_엔벨로프를 식별하는 속성으로 두 필드로 구성되며, 이들의 값은 엔벨로프.엔벨로프_id 및 엔벨로프.엔벨로프_유형의 속성으로부터 얻어진다.
7. 전력_엔벨로프
(엔벨로프_id, 엔벨로프_유형, 전력_엔벨로프_id)
서술 : 전력_엔벨로프는 전력_객체를 포함하는 엔벨로프이다. 전력_엔벨로프는 시스템의 전력 토폴로지를 서술하는데 사용된다. 전력_엔벨로프는 적어도 하나의 전력_공급지 및 하나의 전력_소비자를 포함해야 한다.
7.1 전력_엔벨로프.엔벨로프_id
서술 : 이 속성은 전력_엔벨로프가 관련되는 엔벨로프를 식별한다.
7.2 전력_엔벨로프.엔벨로프_유형
서술 : 이 속성은 엔벨로프의 실례와 전력_엔벨로프의 실례를 연결한다.
7.3 전력_엔벨로프.전력_엔벨로프_id
서술 : 유일하게 열_엔벨로프를 식별하는 속성으로 두 필드로 구성되며, 이들 값은 엔벨로프.엔벨로프_id 및 엔벨로프.엔벨로프_유형의 속성으로부터 얻어진다.
8. 전력_객체
(물리적_객체_id, 물리적_객체_유형, 전력_객체_id, 전력_객체_유형, 열_객체_id, 열_객체_유형, 정책_id, 현재_전력_상태, 포함(containing)_전력_엔벨로프)
서술 : 전력_객체는 시스템의 물리적 구성요소의 전력 측면을 나타낸다. 전력 관리 정책은 전력_객체를 조작(manipulate)하여 구현된다(즉, 전력_객체는 전력 관리 메카니즘의 부분이다). 전력_관리_정책이 정의되는 방법에 대해 최대의 허용범위를 허용하기 위하여 (즉, 전력_관리_정책은 많은 가정을 설정할 필요는 없다), 시스템 내의 모든 전력(공급 및 소비 모두)이 표현되어야 한다. 이는 전력_관리_정책이 쉽게 해명할 수 없는 시스템 내에서 전력이 나타나고(appearing) 혹은 사라지는(disappearing) 것을 방지한다. 통상 개별 전력_객체는 소정의 잘 정의된 시스템의 물리적 부 구성요소(well defined physical subcomponents)를 나타낸다. 그러나, 대형의 복잡한 시스템에서는, 전력_객체는 시스템의 어떤 논리적 구성요소(logical components)를 나타낼 수도 있다. 이 논리적 부 구성요소는 자신의 전력_관리_객체를 포함할 수도 있으며, 이 부 구성요소의 정책과의 상호작용을 통해 부 구성요소가 제어될 수 있다. 이는 전력_객체가 전력_관리_정책을 나타내는데 사용될 수 있을 것을 요구한다.
8.1 전력_객체.물리적_객체_id
서술 : 이 속성은 물리적_객체의 실례와 전력_객체의 실례를 연결한다.
8.2 전력_객체.물리적_객체_유형
서술 : 이 속성은 물리적_객체의 실례와 전력_객체의 실례를 연결한다.
8.3 전력_객체.전력_객체_id
서술 : 유일하게 전력_객체를 식별하는 속성으로, 전력_객체로부터의 두 속성 즉, 물리적_객체.물리적_객체_id 및 물리적_객체.물리적_객체_유형으로 구성된다.
8.4 전력_객체.전력_객체_유형
서술 : 이 속성은 특정한 실례에 의해 표현되는 전력_객체의 유형을 정의한다.
8.5 전력_객체.열_객체_id
서술 : 이 속성은 이 전력_객체의 열 측면을 나타낼 열_객체를 참조한다. 이 속성은 개별 전력_객체와 열_객체 사이의 연결을 제공하여 전력 관리 및 열 관리의 통합(unification)을 성취한다.
8.6 전력_객체.열_객체_유형
서술 : 이 속성은 이 전력_객체의 열 측면을 나타낼 열_객체 유형을 참조한다.
8.7 전력_객체.정책_id
서술 : 이 속성이 주어질 때, 전력_관리_정책이 내포되어 다른 전력 관리 정책에 의해 제어되는 것이 허용된다. 이 속성은 전력_객체가 외부(outer) 엔벨로프 내의 전력_관리_정책을 나타내는 것을 허용한다. 전력_관리_정책이 다른 전력_관리_정책에 의해 영향을 받는 것은 이러한 전력_객체를 통해서이다.
8.8 전력_객체.현대_전력_상태
서술 : 이 속성은 전력_객체의 현재 상태를 나타내는 전력_상태를 참조한다.
8.9 전력_객체.포함_전력_엔벨로프
서술 : 이 속성은 직접적으로 전력_객체를 포함하는 전력_엔벨로프를 참조한다.
9. 열_객체
(물리적_객체_id, 물리적_객체_유형, 열_객체_id, 열_객체_유형, 정책_id, 포함_열_엔벨로프,현재_열_상태)
서술 : 열_객체는 시스템의 물리적 구성요소의 열 측면을 나타낸다. 열 관리 정책은 열_객체를 조작하여 구현된다(즉, 열_객체는 열 관리 메카니즘의 부분이다). 전력_관리_정책이 정의되는 방법에 대해 최대의 허용범위를 허용하기 위하여(즉, 전력_관리_정책은 많은 가정을 설정할 필요는 없다), 시스템 내의 모든 열(발생 및 소실 모두)이 표현되어야 한다. 이는 전력_관리_정책이 쉽게 해명할 수 없는 시스템 내에서 열이 나타나거나 혹은 사라지는 것을 방지한다. 통상 개별 열_객체는 잘 정의된 시스템의 물리적 부 구성요소를 나타낸다. 그러나, 대형의 복잡한 시스템에서는, 열_객체는 시스템의 어떤 논리적 구성요소를 나타낼 수고 있다. 이 논리적 부 구성요소는 자신의 전력_관리_정책을 포함할 수도 있으며, 이 부 구성요소의 정책과의 상호작용을 통해 부 구성요소가 제어될 수 있다. 이는, 열_객체는 전력_관리_정책을 나타내는데 사용될 수 있을 것을 요구한다.
9.1 열_객체.열_객체_id
서술 : 이 속성은 물리적_객체의 실례와 열_객체의 실례를 연결한다.
9.2 열_객체.열_객체_유형
서술 : 이 속성은 물리적_객체의 실례와 열_객체의 실례를 연결한다.
9.3 열_객체.열_객체_id
서술 : 유일하게 열_객체를 식별하는 속성으로, 두 개의 필드로 구성된다. 이들 필드의 값은 물리적_객체.물리적_객체_id 및 물리적_객체.물리적_객체_유형으로부터 얻어진다.
9.4 열_객체.열_객체_유형
서술 : 이 속성은 열_객체의 유형을 지정한다.
9.5 열_객체. 열_id
서술 : 이 속성이 제공될 때, 열_객체가 전력_관리_정책을 나타내는 데 사용되는 것이 표시된다. 이것은, 내부 전력_관리_정책을 열_객체로 취급함으로써, 전력_관리_정책이 열_엔벨로프에 내포되며, 외부 전력_관리_정책에 의해 제어되도록 허용된다.
9.6 열_객체.포함_열_엔벨로프
서술 : 이 속성은 열_객체를 포함하는 열_엔벨로프를 참조한다.
9.7 열_객체.현재_열_상태
서술 : 이 속성은 열_객체의 현재 열_상태를 나타내는 열_상태를 참조한다.
10. 전력_소비자
(전력_객체_id, 전력_객체_유형, 전력_소비자_id, 전력_공급자_id)
서술 : 전력_소비자는 시스템에서 전력의 소비를 나타내는 전력_객체이다. 통상, 개별 전력_소비자는 소정의 잘 정의된 시스템의 물리적 부 구성요소를 나타낸다. 그러나, 전력 분산 토폴로지를 나타내기 위해 내포된 엔벨로프를 사용하는 시스템에서, 전력_소비자는 하나의 내부 엔벨로프에서 전력 공급자의 전력 소비를 나타내는데 사용될 수도 있다.
10.1 전력_소비자.전력_객체_id
서술 : 이 속성은 전력_객체의 실례를 전력_소비자의 실례와 열결한다.
10.2 전력_소비자.전력_객체_유형
서술 : 이 속성은 전력_객체의 실례를 전력_소비자의 실례와 열결한다.
10.3 전력_소비자.전력_소비자_id
서술 : 전력 소비자를 식별하는 속성으로 전력_객체로부터의 두 필드로 구성된다. 이들 필드 모두는 함께 이 속성을 정의한다.
10.4 전력_소비자.전력_공급자_id
서술 : 이 속성이 제공되면, 내부 전력_엔벨로프 내의 전력_공급자의 전력 소비가 적절한 외부 전력_엔벨로프에서 표현되도록 허용한다. 이는 전력 분산 토폴로지가 정확하게 표현되도록 허용한다.
11. 전력_공급자
(전력_객체_id, 전력_객체_유형, 전력_공급자_id, 시간_대_전력_소비)
서술 : 전력_공급자는 시스템에서 전력의 공급을 나타내는 전력_객체이다. 전력 토폴로지를 나타내기 위해 내포된 엔벨로프를 사용하는 시스템에서, 전력_공급자는 외부 엔벨로프에서 사용되어 외부 엔벨로프에서의 전력_공급자의 전력 소비를 나타낼 것이다.
11.1 전력_공급자.전력_객체_id
서술 : 이 속성은 전력_객체의 실례를 전력_공급자의 실례와 연결한다.
11.2 전력_공급자.전력_객체_유형
서술 : 이 속성은 전력_객체의 실례를 전력_공급자의 실례와 연결한다.
11.3 전력_공급자.전력_공급자_id
서술 : 유일하게 전력_공급자를 식별하는 속성으로 전력_객체로부터의 두 속성으로 구성된다. 이 두 필드 모두가 이 속성을 정의한다.
11.4 전력_공급자.시간_대_전력_소비
서술 : 이 속성은 전력_공급자가 표시된 전력 레벨에서 전력을 공급할 수 있는 시간의 길이를 나타낸다.
12. 열_소오스
(열_객체_id, 열_객체_유형, 열_소오스_id, 열_싱크_id)
서술 : 열_소오스는 시스템에서 소비 열의 발생을 나타내는 열_객체이다. 통상 개별 열_소오스는 소정의 잘 정의된 시스템의 물리적 부 구성요소를 나타낸다. 그러나, 열 토폴로지를 나타내기 위해 내포된 열_엔벨로프를 사용하는 시스템에서, 열_소오스는 하나의 내부 열_엔벨로프에서 열_싱크로부터의 열의 발산을 나타내는 데 사용될 수 있다.
12.1 열_소오스.열_객체_id
서술 : 이 속성은 열_객체의 실례와 열_소오스의 실례를 연결한다.
12.2 열_소오스.열_객체_유형
서술 : 이 속성은 열_객체의 실례와 열_소오스의 실례를 연결한다.
12.3 열_소오스.열_소오스_id
서술 : 열_소오스를 식별하는 속성으로, 열_소오스.열_객체_id 및 열_소오스.열_객체_유형 속성으로부터 구하여진다.
12.4 열_소오스.열_싱크_id
서술 : 이 속성은 외부의 열_엔벨로프 내의 열_소오스가 내부의 열 엔벨로프 내의 열_싱크를 나타내는 것을 허용한다. 이것은 내부의 열_엔벨로프으로부터 외부의 열_엔벨로프까지의 열의 흐름을 정의한다.
13. 열_싱크
(열_객체_id, 열_객체_유형, 열_싱크_id)
서술 : 열_싱크는 시스템의 일 부분에서 다른 부분으로의 열의 이동을 나타내는 열_객체이다. 열_엔벨로프는 적어도 하나의 열 싱크를 포함해야 한다. 열_엔벨로프의 내용은 시스템 내의 열 부하가 처리되는 방법을 서술한다.
13.1 열_싱크.열_객체_id
서술 : 이 속성은 열_객체의 실례와 열_싱크의 실례를 연결한다.
13.2 열_싱크.열_객체_유형
서술 : 이 속성은 열_객체의 실례와 열_싱크의 실례를 연결한다.
13.3 열_싱크.열_싱크_id
서술 : 이 속성은 유일하게 열_싱크를 식별하며, 두 개의 필드로 구성된다. 이들 필드 값은 열 객체.열_객체_id 및 열_객체. 열_객체_유형 속성으로부터 얻어진다.
14. 물리적_객체_종속성(Physical_object_dependency)
(종속되는 객체_id_(dependent_upon_object_id), 종속되는 객체_유형_종속(dependent_upon_object_type), 종속_객체_id(dependent_object_id), 종속_객체_유형)
서술 : 이 객체는 하나의 물리적_객체가 다른 물리적_객체에 종속되는 두 물리적_객체 사이의 관계를 형식화하는데 사용된다. 하나의 종속 물리적 객체가 하나 이상의 다른 물리적_객체에 종속될 수 있는 관계일 수 있다. 그 역시 다른 물리적 객체에 종속되는 하나의 물리적 객체는 제3의 물리적 객체가 종속할 수 있다. 하나의 물리적 객체는, 이 하나의 물리적 객체의 상태가 특정 상태에 놓이기 위해서는 다른 물리적 객체(들)이 특정한 상태(들)에 놓일 것을 요구하는 경우, 이 다른 물리적 객체(들)에 종속될 수 있다. 예로서 CPU와 메모리의 경우를 들 수가 있다. CPU는 메모리의 상태에 종속될 수 것이다(즉, 메모리가 턴 오프 상태인 채 CPU를 고 전력 상태로 하는 것은 아무런 의미가 없을 것이다).
14.1 물리적_객체_종속성.종속되는_객체_id
서술 : 이 속성은 물리적_객체가 종속되는 물리적_객체를 참조한다.
14.2 물리적_객체_종속성.객체_유형
서술 : 이 속성은 다른 물리적_객체가 종속되는 물리적_객체를 참조한다.
14.3 물리적_객체_종속성.종속_객체_id
서술 : 이 속성은 이 물리적_객체_종속성에 의해 식별된 다른 물리적_객체에 종속되는 물리적_객체를 참조한다.
14.4 물리적_객체_종속성.종속_객체_유형
서술 : 이 속성은 이 물리적_객체_종속성에 의해 식별된 다른 물리적_객체에 종속되는 물리적_객체를 참조한다.
[mk.전력 mgmt.프레임워크 서브시스템에 대한 관계 서술]
101. 발생가능_이벤트
(발생가능_이벤트_id, 발생가능_이벤트_유형, 이벤트_소오스_id, 마스크(masked))
서술 : 이 객체는 이벤트_소오스에 의해 발생될 수 있는 특정한 유형의 이벤트를 서술한다. 하나의 이벤트_소오스는 잠재적으로 다수의 상이한 유형의 이벤트를 발생할 수 있다. 각 유형의 이벤트는 유일한 발생가능_이벤트에 의해 서술된다. 발생가능_이벤트는 또한 그가 서술하는 이벤트의 발생을 제어한다.
101.1 발생가능_이벤트.발생가능_이벤트_id
서술 : 유일하게 발생가능_이벤트 실례를 식별하는 속성으로, 각각의 발생가능_이벤트는 자신의 유일한 ID를 갖는다.
101.2 발생가능_이벤트.발생가능_이벤트_유형
서술 : 이 속성은 발생가능_이벤트의 유형(즉, 어떤 유형의 이벤트가 발생될 수 있는지)을 식별한다. 하나의 발생가능_이벤트는 한 유형의 이벤트만을 발생할 수 있다.
101.3 발생가능_이벤트.이벤트_소오스_id
서술 : 이 속성은 이 발생가능_이벤트에 의해 서술된 이벤트를 발생하는 이벤트_소오스를 참조한다.
101.4 발생가능_이벤트.마스크
서술 : 이 속성은 발생가능_이벤트가 이벤트를 발생할 수 있는지의 여부를 표시한다. 발생가능_이벤트가 마스크되었다면, 이벤트를 발생할 수 없다. 발생가능_이벤트가 마스크되지 않았자면, 이벤트를 발생할 수 있다.
102. 이벤트
(이벤트_id, 이벤트_유형, 발생가능_이벤트_id, 발생가능_이벤트_유형, 이벤트_소오스_id, 정책_id)
서술 : 이 객체는 비동기 이벤트(asynchronous event)를 전력_관리_정책으로 전송해야 하는 책임이 있다. 이벤트는 이벤트의 유형에 관한 정보 및 전력_관리_정책이 이벤트를 해석하는데 필요한 부가적인 정보를 운반한다.
102.1 이벤트.이벤트_id
서술 : 이 속성은 이벤트를 유일하게 식별한다.
102.2 이벤트.이벤트_유형
서술 : 이 속성은 이벤트의 유형을 식별한다. 이 속성값은 이벤트.발생가능_이벤트_유형(즉, 발생가능_이벤트의 유형과 관련되어져야 하는 이벤트의 유형) 속성으로부터 얻어진다.
102.3 이벤트.발생가능_이벤트_id
서술 : 이 속성은 이 이벤트를 서술할 책임을 갖는 발생가능_이벤트를 참조한다.
102.4 이벤트.발생가능_이벤트_유형
서술 : 이 속성은 이 이벤트를 서술하는 발생가능_이벤트의 유형을 참조한다.
102.5 이벤트.이벤트_소오스_id
서술 : 이 속성은 이벤트_소오스에 속하는 발생가능_이벤트의 하나에 기초하여 이벤트를 발생한 이벤트_소오스를 참조한다.
102.6 이벤트.정책_id
서술 : 이 속성은 이벤트를 수신할 전력_관리_정책을 참조한다.
103. 단순_발생가능_이벤트(simple_Generatable_Event)
(발생가능_이벤트_id, 발생가능_이벤트_유형, 단순_발생가능_이벤트_id)
서술 : 단순_발생가능_이벤트는 단순_이벤트가 발생되는 방법을 서술하는 발생가능_이벤트이다. 단순_발생가능_이벤트는 통상 시스템 내의 어떤 물리적 센서(sensor)를 서술한다. 시스템에 센서를 서술하는 것은 단순_발생가능_이벤트이며, 이에 따라 그 값은 전력_관리_정책에 복귀될 수 있다.
103.1 : 단순_발생가능_이벤트.발생가능_이벤트_id
서술 : 이 속성은 발생가능_이벤트의 실례와 단순_발생가능_이벤트의 실례 사이를 연결하는 연결(link)을 제공한다.
103.2 : 단순_발생가능_이벤트.발생가능_이벤트_id
서술 : 이 속성은 발생가능_이벤트의 실례와 단순_발생가능_이벤트의 실례 사이의 연결을 제공한다.
103.3 : 단순_발생가능_이벤트.단순_발생가능_이벤트_id
서술 : 이 속성은 유일하게 단순_발생가능_이벤트를 식별하고, 단순_발생가능_이벤트.발생가능_이벤트_id 및 단순_발생가능_이벤트.발생가능_이벤트_유형 속성으로부터 구하여진다.
104. 통고_발생가능_이벤트(notification_generatable_event)
(발생가능_이벤트_id, 발생가능_이벤트_유형, 통고_발생가능_이벤트_id, 통고_유형)
서술 : 이 통고_발생가능_이벤트는 통고_이벤트를 서술할 책임이 있는 발생가능_이벤트이다. 통고_이벤트는 상당히 복잡한 데이터 세트(a fairly complex set of data)를 전력_관리_정책으로 되전송하도록 요구하는 어떤 이벤트가 발생하였음을 전력_관리_정책에 통고한다.
104.1 통고_발생가능_이벤트.발생가능_이벤트_id
서술 : 이 속성은 발생가능_이벤트의 실례와 통고_발생가능_이벤트의 실례 사이에 연결을 제공한다.
104.2 통고_발생가능_이벤트.발생가능_이벤트_유형
서술 : 이 속성은 발생가능_이벤트의 실례와 통고_발생가능_이벤트의 실례 사이에 연결을 제공한다.
104.3 통고_발생가능_이벤트.통고_발생가능_이벤트_id
서술 : 이 속성은 유일하게 통고_발생가능_이벤트의 실례를 식별하며, 통고_발생가능_이벤트.발생가능_이벤트_id 및 통고_발생가능_이벤트.발생가능_이벤트_유형 속성으로부터 얻어진다.
104.4 통고_발생가능_이벤트.통고_유형
서술 : 이 속성은 통고_발생가능_이벤트의 유형을 서술한다. 이 속성은 또한 통고_이벤트가 전력_관리_객체에 전송될 때 이에 제공되는 데이터를 서술한다.
105. 임계_발생가능_이벤트(Threshold_Generatable_Event)
(발생가능한_이벤트_id, 발생가능한_이벤트_유형, 임계_발생가능_이벤트_id, 임계_값(threshold_value), 임계_방향(threshold_direction))
서술 : 임계_발생가능_이벤트는 임계_이벤트가 발생되는 방법을 서술한 발생가능_이벤트이다. 임계_이벤트는 보통 전력_관리_정책이 관심을 두는 변경된 다른 객체의 몇몇 속성을 서술한다. 통상 전력_관리_정책은 모든 변경에 관심을 기울이지는 않으며, 단지 몇몇 변경에 관심을 가진다. 전력_관리_정책이 관심을 둘만한 변경이 있을 때 이를 통고하기 위해서 임계_발생가능_이벤트의 파라미터를 조정할 것이다.
105.1 임계_발생가능_이벤트.발생가능_이벤트_id
서술 : 이 속성은 발생가능_이벤트의 실례와 임계_발생가능_이벤트의 실례를 연결한다.
105.2 임계_발생가능_이벤트.발생가능_이벤트_유형
서술 : 이 속성은 발생가능_이벤트의 실례와 임계_발생가능_이벤트의 실례사이의 연결을 제공한다.
105.3 임계_발생가능_이벤트.임계_발생가능_이벤트_id
서술: 이 속성은 임계_발생가능_이벤트를 유일하게 식별하며, 임계_발생가능_이벤트.발생가능_이벤트_id 및 임계_발생가능_이벤트.발생가능_이벤트_id 속성으로부터 도출된다.
105.4 임계_발생가능_이벤트.임계_값
서술 : 이 속성은 임계_발생가능_이벤트.임계_방향 속성에 의해 서술된 방식으로 초과되었을 때 이벤트_소오스로 하여금 이벤트를 발생하도록 할 값을 정의한다.
105.5 임계_발생가능_이벤트.임계_방향
서술 : 이 속성은 이벤트의 전송을 트리거(trigger)할 값의 변경 방향을 표시한다.
106. 단순_이벤트(simple_event)
(이벤트_id, 이벤트_유형, 단순_이벤트_id, 발생_by(generated_by), 단순_이벤트_데이터)
서술 : 단순_이벤트는 전력_관리_정책에 비동기적인 이벤트를 전송할 책임이 있다. 단순_이벤트는 표현된 이벤트에 대한 매우 제한된 양의 정보를 운반한다.
106.1 단순_이벤트.이벤트_id
서술 : 이 속성은 이벤트의 실례와 단순_이벤트의 실례 사이에 연결을 제공한다.
106.2 단순_이벤트.이벤트_유형
서술 : 이 속성은 이벤트의 실례와 단순_이벤트의 실례 사이에 연결을 제공한다.
106.3 단순_이벤트.단순_이벤트_id
서술 : 이 속성은 유일하게 단순_이벤트를 식별하며, 단순_이벤트.이벤트_id 및 단순_이벤트.이벤트_유형 속성으로부터 도출된다.
106.4 단순_이벤트.발생_by
서술 : 이 속성은 이 단순_이벤트를 서술할 책임이 있는 단순_발생기능_이벤트를 참조한다.
106.5 단순_이벤트.단순_이벤트_데이터
서술 : 이 속성은 단순_이벤트에 의해 전력_관리_정책으로 전송될 데이터를 서술하며, 이는 통상 시스템에서 어떤 센서의 현재 상태를 나타낸다.
107. 통고_이벤트
(이벤트_id, 이벤트_유형, 통고_이벤트_id, 발생_by, 통고_이벤트_데이터)
서술 : 이 객체는 전력_관리_정책으로 비동기 통고 이벤트를 전송할 책임이 있다. 통고_이벤트는 이벤트에 관한 정보, 특히 이벤트가 전송되어진 이유를 서술하는 데이터를 운반한다. 통고_이벤트는 통상 다른 두 이벤트 유형에 의해서는 충족될 수 있는 전력 관리 정책이 인식되어야 하는 하나의 이벤트가 발생하였음을 전력_관리_정책에 통고하기 위해 설정된다. 통상, 통고_이벤트에 의해 전송되는 정보는 다른 이벤트 유형으로 표현될 수 있는 정보보다 더 복잡하다.
107.1 통고_이벤트.이벤트_id
서술 : 이 속성은 이벤트의 실례와 통고_이벤트의 실례 사이에 연결을 제공한다.
107.2 통고_이벤트.이벤트_유형
서술 : 이 속성은 이벤트의 실례와 통고_이벤트의 실례 사이에 연결을 제공한다.
107.3 통고_이벤트.통고_이벤트_id
서술 : 이 속성은 유일하게 통고_이벤트를 식별하며, 통고_이벤트.이벤트_ID 및 통고_이벤트.이벤트_유형 속성으로부터 도출된다.
107.4 통고_이벤트.발생_by
서술 : 이 속성은 이 통고_이벤트를 서술하는 통고_발생가능_이벤트를 참조한다.
107.5 통고_이벤트.통고_이벤트_데이타
서술 : 이 속성은 통고_이벤트에 의해 전송되는 데이터를 서술한다. 데이터는 통고_발생가능_이벤트.통고_유형 속성에 의해 서술된다.
108. 임계_이벤트
(이벤트_id, 이벤트_유형, 임계_이벤트_id, 발생_by, 교차_방향(crossing_direction), 비교_값)
서술 : 임계_이벤트 객체는 비동기 이벤트를 전력_관리_정책으로 전송할 책임이 있다. 임계_이벤트는 어떤 임계 레벨이 초과되었음을 전력_관리_객체에 통고한다. 임계_이벤트는 전력_관리_정책이 동작 원인을 결정하는데 사용할 수 있는 임계에 관한 정보(즉, 이벤트가 발생되도록 야기한 값)을 포함한다.
108.1 임계_이벤트.이벤트_id
서술 : 이 속성은 이벤트의 실례와 임계_이벤트의 실례를 연결한다.
108.2 임계_이벤트.이벤트_유형
서술 : 이 속성은 이벤트의 실례와 임계_이벤트의 실례를 연결한다.
108.3 임계_이벤트.임계_이벤트_id
서술 : 이 속성은 유일하게 임계_이벤트를 식별하며, 임계_이벤트.이벤트_id 및 임계_이벤트.이벤트_유형으로부터 도출된다.
108.4 임계_이벤트.발생_by
서술 : 이 속성은 임계_이벤트를 서술한 책임이 있는 임계_발생가능_이벤트를 참조한다.
108.5 임계_이벤트.교차_방향
서술 : 이 속성은 이벤트의 전송을 트리거하는 값 변화의 방향을 표시한다.
108.6 임계_이벤트.비교_값
서술 : 이 속성은 임계값의 초과 여부를 결정하기 위해 비교된 값을 포함한다.
[mk.전력 mgmt.이벤트 서브시스템에 대한 관계 서술]
서술 : 물리적_객체는 전력_관리_정책이 관심을 갖는 물리적_객체에 대한 각종 특성을 표시하는 임의의 수의 물리적_상태를 가질 수 있다. 매_물리적_객체는 적어도 하나의 물리적 상태를 갖는다. (적어도 전력 혹은 열 관리 관점에서) 자신의 상태가 변경될 수 없는 단순_물리적_객체는 단지 하나의 물리적_상태를 가짐으로써 규정된다. 각 물리적_상태는 상태를 서술하는 다수의 속성을 갖는다. 상태의 특정한 시맨틱 내용은 그의 속성에 의해서만 정의된다. 예를 들면, 하나의 상태와 다른 상태의 순서 관계(ordinal relationship)에 의해 이 하나의 상태에 대해 어느 것도 추론할 수는 없다. 예를 들면, 8개의 물리적_상태를 갖는 물리적_객체에 대해, 물리적_상태(5)는 물리적_상태(4)보다 다소간 소비적이라고 추론할 수는 없다.
201.1 물리적_상태.물리적_상태_id
서술 : 이 속성은 특정 물리적_상태를 식별한다.
201.2 물리적_상태.물리적_상태_유형
서술 : 이 속성은 현재의 실례에 의해 표현되는 물리적_상태의 유형을 서술한다.
201.3 물리적_상태.물리적_객체_id
서술 : 이 속성은 이 상태가 속하는 물리적_상태를 참조한다. 물리적_상태는 물리적_객체와 호환적인(compatable) 유형이어야 한다(즉, 열_상태는 전력_객체를 참조할 수 없다).
201.4 물리적_상태.물리적_객체_유형
서술 : 이 속성은 이 상태가 속하는 물리적_객체의 유형을 참조한다. 물리적_상태는 물리적_객체와 호환적인 유형이 되어야 한다(즉, 열_상태는 열_객체를 참조할 수 없다).
201.5 물리적_상태.상태(physical_state.status)
서술 : 이 속성은 물리적_상태의 상태를 서술하며, 물리적_상태의 다른 속성의 내용이 처리되는 방법을 표시한다. 물리적_상태.상태가 비활성(inactive)일 때는, 물리적_상태는 물리적_상태가 속하는 물리적_객체의 현재 상태가 아님을 나타낸다. 물리적_상태.상태가 활성일 때는, 물리적_상태는 물리적_상태가 속하는 물리적_객체의 현재 상태임을 나타낸다. 물리적_상태.상태가 전이_from(transitioning_from)이면, 물리적_상태는 물리적_객체의 현재 상태였지만, 현재 다른 상태로 전이되고 있는 것을 나타낸다. 일단 다른 물리적_상태가 활성화될 수 있다면, 이 상태는 비활성화로 될 수 있을 것이다.
201.6 물리적_상태.신뢰성(Physical_state.reliability)
서술 : 이 속성은 물리적_상태에 존재하는 물리적_객체의 신뢰성 특성을 서술하는데 사용된다. 이 속성의 사용으로 전력_관리_정책은 시스템 신뢰성을 위해 물리적_객체를 하나의 물리적_상태로 위치시켜야 하는 지의 여부를 결정할 수 있다. 영역(domain) : 이는 실패 사이의 평균(Mean-Time-Between-Failures : MTBF)의 단순한 측정만큼 간단할 수 있으며, 이 물리적_상태 내에서 물리적_객체의 신뢰성의 보다 복잡한 표현을 허용할 수도 있다.
201.7 물리적_상태.성능
서술 : 이 속성은 물리적_상태의 성능 특성을 서술하는데 사용된다. 이 속성의 사용으로 전력_관리_정책은 특정 물리적_상태 내에 존재하는 것의 비용이 보증(warrant) 되는지의 여부를 결정할 수 있다. 이 속성으로 인해 전력_관리_정책은 의미있고 일반적인 방법으로(in a meaningful and general way) 컴퓨터 성능 대 전력 혹은 열 트레이드-오프를 할 수 있다.
202. 물리적_전이(Physical_Transition)
(시작_상태_id(starting_state_id), 시작_상태_유형(starting_state_type), 종료_상태_id(ending_state_id), 종료_상태_유형(ending_state_type), 물리적_전이_id(physical_transition_id), 물리적_전이_유형(physical_transition_type), 신뢰성, 전이_시간(transition_time), 상태(status))
서술 : 물리적_전이는 물리적_객체가 하느의 물리적_상태에서 다른 상태로 전이하는 방법를 서술하는 일반적인 수단을 허용한다. 종종 전이 비용이 0이 아니고(즉, 시작 및 종료 상태 모두와 다른 특성을 갖는다), 소요되는 시간이 0이 아니기 때문에, 물리적_전이는 전이를 서술하는데 필요한 속성과 연관되어 전력_관리_정책이 특정한 전이와 연관될 수 있는 비용에 대한 가정을 할 필요가 없도록 한다. 물리적_전이는 단지 단방향성(unidirectional)이다. 즉, 물리적_전이는 시작 상태에서 종료 상태의 일방향 호(one-way arc)로 나타난다. 이러한 일방향 호를 사용하는 이유는 한 상태(상태 A)에서 다른 상태(상태 B)로의 전이에 소요되는 비용은 종종 역의 경우(즉 상태(A)에서 상태(B)로의 전이)와 상이할 수가 있기 때문이다. 또한 상태(A)에서 상태(B)로의 전이는 가능하지만, 상태(B)에서 상태(A)로의 전이는 불가능할 경우가 있다(즉, 상태(B)가 상태(A)로 전이되기 위해서는 상태(C)를 경유해야 할 경우가 있다). 물리적_객체는 물리적_객체에서의 각각의 상태에 대한 전이를 서술하는, 생성된 물리적_전이의 완전한 세트를 구비해야 한다.
201.1 물리적_전이.시작_상태_id
서술 : 이 속성은 물리적_전이가 시작되는 물리적_상태를 참조한다. 물리적_전이의 유형은 물리적_객체의 유형과 일치해야 한다. 즉, 시작 물리적_상태가 전력_상태이면, 물리적_전이는 전력_전이가 되어야 한다.
202.2 물리적_전이.시작_상태_유형
서술 : 이 속성은 물리적_전이가 시작되는 물리적_상태의 유형을 참조한다. 물리적_전이의 유형은 물리적_객체의 유형과 일치해야 한다. 즉, 물리적_상태가 전력_상태이면, 물리적_전이는 전력_전이가 되어야 한다.
202.3 물리적_전이.종료_상태_id
서술 : 이 속성은 이 물리적_전이가 종료되는 물리적_상태를 참조한다. 물리적_전이의 유형은 종료 물리적_상태의 유형과 일치해야 한다. 즉, 종료 물리적_상태가 전력_상태이면, 물리적_전이는 전력_전이가 되어야 한다.
202.4 물리적_전이.종료_상태_전이
서술 : 이 속성은 이 물리적_전이가 종료되는 물리적_상태의 유형을 참조한다. 물리적_전이의 유형은 종료_물리적_상태의 유형과 일치해야 한다. 즉, 종료 물리적_상태가 전력_상태이면, 물리적_전이는 전력_전이가 되어야 한다.
202.5 물리적_전이.물리적_전이_id
서술 : 이 속성은 물리적_전이의 특정 실례를 정의한다.
202.6 물리적_전이.물리적_전이_유형
서술 : 이 속성은 물리적_전이의 유형을 지정한다.
202.7 물리적_전이.신뢰성
서술 : 이 속성은 한 상태에서 다른 상태로 전이가 발생할 때 물리적_객체의 신뢰성 특성을 서술하는데 사용된다. 이 속성을 사용함으로써, 전력_관리_정책은 시스템 신뢰성을 위해 한 상태에서 다른 상태로 전이가 발생해야 하는지의 여부를 결정할 수 있다. 다수의 상태중 임의의 상태에 존재할 때 매우 신뢰성 있지만 이들 상태 사이에서 자주 스위칭될 때 시기상조적으로(prematurely) 실패할 수 있는 다수의 물리적 장치가 존재한다. 이는 객체가 하나의 상태에서 다른 상태로 얼마나 자주 스위치하여야 하는지를 결정하는데 사용할 수 있는 정책 추가 정보(policy additional information)를 제공한다.
202.8 물리적_전이.전이_시간
서술 : 이 속성은 물리적_객체가 시작 상태에서 종료 상태로 전이를 수행하는데 소요되는 시간을 서술하는데 사용된다. 이 시간의 의미있는 다수의 물리적 장치가 존재한다. 이는 정책이, 예상 작업 부하(expected work load)가 한 상태에서 다른 상태로의 전이를 보증하는지의 여부를 결정할 수 있도록 허용한다.
202.9 물리적_전이.상태
서술 : 이 속성은 물리적_전이의 상태를 나타낸다. 물리적_전이.상태의 값이 비활성일 때, 물리적_전이는 이 시점에서 물리적_상태 사이의 전이에 사용되지 않는다는 것을 나타낸다. 물리적_전이.상태의 값이 활성일 때, 물리적_전이는 현재 한 물리적 상태와 다른 상태 사이의 전이에 사용되고 있다는 것을 나타낸다. 일단, 전이가 이루어지면, 물리적_전이의 값은 비활성으로 다시 설정된다.
203. 전력_상태
(물리적_상태_id, 물리적_상태_유형, 전력_상태_id, 열_상태_id, 전력_객체_id, 전력_객체_유형, 전력_값, 상태)
서술 : 전력_상태는 전력_객체의 전력 소비(혹은 공급)가 정량화(quantify)되도록 허용한다. 전력_객체는 전력_객체에서 발생할 수 있는 전력 소비(혹은 공급)의 모든 레벨을 나타내는데 필요한 만큼의 전력_상태를 가질 것이다. 전력_상태는 또한 열_상태를 참조하며, 따라서 전력_관리_정책은, 요구된다면, 신속하게 특정한 전력_상태내의 전력_객체의 열_특성을 참조할 수 있다.
203.1 전력_상태.물리적_상태_id
서술 : 이 속성은 물리적_상태의 실례와 전력_상태의 실례를 연결한다.
203.2 전력_상태.물리적_상태_유형
서술 : 이 속성은 물리적_상태의 실례와 전력_상태의 실례를 연결한다.
203.3 전력_상태.전력_상태_id
서술 : 전력_상태를 식별하는 속성으로 전력_상태로부터의 두 속성으로 구성된다. 이들 필드 모두는 함께 이 속성 값을 정의한다.
203.4 전력_상태.열_상태_id
서술 : 이 속성은 하나의 전력_상태에 존재하는 전력_객체의 열 속성을 나타내는 열_상태에 대한 참조이다. 상이한 전력_상태는 (전력_객체의 관련된 열_객체에 의해 정의되는 바와 같이) 전력_객체를 상이한 열_상태에 존재하도록 야기할 수 있다. 하나의 전력_상태에서 다른 상태로의 변경은, 새로운 열_상태로의 진입을 야기할 수도 있고 그렇지 않을 수도 있다. 이 참조는 전력_상태와 열_상태 사이에서 단순 대응(simple correspondence)이 존재하도록 허용한다.
203.5 전력_상태.전력_객체_id
서술 : 이 속성은 이 전력_상태가 속하는 전력_객체를 참조한다.
203.6 전력_상태.전력_객체_유형
서술 : 이 속성은 이 전력_상태가 속하는 전력_객체의 유형을 참조한다.
203.7 전력_상태.전력_값
서술 : 이 속성은 이 전력_상태에서의 전력_객체의 전력 소비를 서술하는데 사용된다. 이 전력값은 평균 (예상) 전력 소비를 나타내는 단순 사전계산된 값일 수도 있으며, 최소, 최대 및 평균 전력 소비를 나타낼 수도 있다. 이 값은, 전력_객체가 자신이 인식하고 있는 어떤 인자(예를 들면, 그가 행할 현재 혹은 예상 작업 혹은 기저 하드웨어 구형에 대한 사항)에 기초하여 전력 소비를 계산할 계산 값 함수(computed value function)만큼 복잡할 수 있다.
203.8 전력_상태.상태
서술 : 이 속성은 전력_상태의 실례를 서술한다.
204. 열_상태
(물리적_상태_id, 물리적_상태_유형, 열_상태_id, 열_객체_id, 열_객체_유형, 상태, 열_값, 열_레벨_에서의_시간(time_at_thermal_level))
서술 : 열 상태는 열_객체의 열 특성이 정량화되도록 허용한다. 열_객체는 열_객체에서 발생할 수 있는 모든 열 레벨을 나타내는데 필요한 만큼의 열_상태를 가질 것이다. 열_상태는 또한 전력_상태를 참조하여, 전력_관리_정책이, 필요할 경우, 특정 열_상태내의 열_객체의 열 특성을 신속히 참조할 수 있도록 한다.
204.1 열_상태.물리적_상태_id
서술 : 이 속성은 물리적_상태의 실례와 열_상태의 실례 사이에 연결을 제공한다.
204.2 열_상태.물리적_상태_유형
서술 : 이 속성은 물리적_상태의 실례와 열_상태의 실례 사이에 연결을 제공한다.
204.3 열_상태.열_상태_id
서술 : 이 속성은 열_상태를 식별하며, 열_상태_id 및 열_상태.물리적_상태_유형 속성으로부터 도출된다.
204.4 열_상태.열_객체_id
서술 : 이 속성은 이 열_상태가 속하는 열_객체를 참조한다.
204.5 열_상태.열_객체_유형
서술 : 이 속성은 이 열 상태가 일 부분을 구성하는 열_객체의 유형을 참조한다.
204.6 열_상태.상태
서술 : 이속성은 특정한 열_상태의 상태를 서술한다.
204.7 열_상태.열_값
서술 : 이 속성은 이 열 상태에 있는 열 객체에 의해 시스템상에 배치되는 열 부하를 서술한다.
204.8 열_상태.열_레벨_에서의_시간
서술 : 이 속성은 열_객체가 이 열_상태내에 남아있을 수 있는 시간을 서술한다.
205. 전력_전이
(물리적_전이_id, 물리적_전이_유형, 시작_전력_상태, 종료_전력_상태, 전력_전이_id, 전력_값)
서술 : 전력_전이는 하나의 전력_상태에서 다른 전력_상태로의 전이의 속성을 서술한다. 물리적_전이에 의해 서술되는 특성에 부가하여, 전력_전이는 전력 객체가 하나의 전력_상태에서 다른 상태로 전이되는 동안의 전력_객체의 전력 요건의 서술을 포함한다.
205.1 전력_전이.물리적_전이_id
서술 : 이 속성은 물리적_전이의 실례와 전력_전이의 실례를 연결한다.
205.2 전력_전이.물리적_전이_유형
서술 : 이 속성은 물리적_전이의 실례와 전력_전이의 실례를 연결한다.
205.3 전력_전이.시작_전력_상태
서술 : 이 속성은 이 전력_전이가 시작되는 전력_상태를 참조한다.
205.4 전력_전이.종료_전력_상태
서술 : 이 속성은 이 전력_전이가 종결되는 전력_상태를 참조한다.
205.5 전력_전이.전력_전이_id
서술 : 유일하게 전력_전이를 식별하는 속성으로 두 속성으로 구성되며, 이들의 값은 물리적_전이로부터 수신된다.
205.6 전력_전이,전력_값
서술 : 이 속성은 하나의 전력_상태에서 다른 전력_상태로의 전이를 실행하기 위한 전력 요건을 서술한다. 이 속성에 의해 서술된 값은 전체 전이가 이루어 지는 동안(즉, 실제적으로 전이가 이루어지는 동안) 적용된다.
206. 열_전이
(물리적_전이_id, 물리적_전이_유형, 시작_열_상태, 종료_열_상태, 열_전이_id, 열_값)
서술 : 열_전이는 하나의 열_상태에서 다른 열_상태로의 전이의 속성을 서술한다. 물리적_전이에 의해 서술되는 특성에 부가하여, 열 전이는 열 객체가 하나의 열_상태에서 다른 상태로 전이되는 동안의 열_객체의 열 요건의 서술을 포함한다.
206.1 열_전이.물리적_전이_id
서술 : 이 속성은 물리적_전이의 실례와 열_전이의 실례를 연결한다.
206.2 열_전이.물리적_전이_유형
서술 : 이 속성은 물리적_전이의 실례와 열_전이의 실례를 연결한다.
206.3 열_전이.시작_열_상태
서술 : 이 속성은 이 열_전이가 시작되는 열_상태를 참조한다.
206.4 열_전이.종료_열_상태
서술 : 이 속성은 열_전이가 종료되는 열_상태를 참조한다.
206.5 열_전이.열_전이_id
서술 : 이 속성은 열 전이를 식별한다. 이 속성은 열_전이.물리적_전이_id 및 열_전이.물리적_전이_유형으로부터 도출된다.
206.6 열_전이.열_값
서술 : 이 속성은 열_객체가 이 열_전이를 통해 진행될 때, 열_객체가 시스템의 나머지 부분(remainder)상에 배치하는 열 부하를 서술한다.
207. 물리적_상태_종속성
(종속되는_상태_id(dependent_upon_state_id), 종속되는_상태_유형(dependent_upon_state_type), 종속_상태_id, 종속_상태_유형)
서술 : 이 객체는 한 상태가 다른 상태에 종속되는 두 물리적_상태 사이의 관계를 정형화하는데 사용된다. 물리적_상태는 상이한 물리적_객체에 속하여야 한다. 종속 물리적_상태는 (상이한 물리적_객체 내에서) 하나 이상의 다른 물리적_상태에 종속될 수 있다. 그 자신이 다른 물리적_상태에 종속되는 하나의 물리적_상태에 제3의 물리적_상태가 종속될 수 있다.
207.1 물리적_상태_종속성.종속되는_상태_id
서술 : 이 속성은 다른 물리적_상태가 종속되는 물리적_상태를 참조한다.
207.2 물리적_상태_종속성.종속되는_상태_유형
서술 : 이 속성은 다른 물리적_상태가 종속되는 물리적_상태를 참조한다.
207.3 물리적_상태_종속성.종속_상태_id
서술 : 이 속성은 다른 물리적_상태에 종속되는 물리적_상태를 참조하며, 이 다른 물리적_상태는 이 물리적_상태_독립에 의해 식별된다.
207.4 물리적_상태_종속성.종속_상태_유형
서술 : 이 속성은 다른 물리적_상태에 종속되는 물리적_상태를 참조하며, 이 다른 물리적_상태는 이 물리적_상태_독립에 의해 식별된다.
[mk.전력 mgmt.상태 서브시스템에 대한 관계 서술]
본 발명의 바람직한 실시예의 전술한 서술은 객체 지향 구현에 관련하여 기술되었다. 당업자라면 본 발명이 객체 지향이외의 다른 다양한 소프트웨어 프로그래밍 기법을 사용하여 실행될 수 있다는 것을 이해할 것이다. 상술된 객체는 본 발명에서 설명한 방법으로 동작하고 상호 작용하는 다수의 데이터 세트 및 소프트웨어 모듈에 구현될 수 있다. 비록 객체 지향 구현이 바람직하지만, 본 발명은 이러한 실시예에 한정되는 것은 아니다.
본 발명에 따르면, 전력 엔벨로프 내에 포함된 각각의 물리적 객체, 전력 객체 및 열 객체는 각종 물리적 장치의 속성을 통신하여 전력 관리 구조가 관리하는 실제적인 물리적 시스템의 모델을 제공한다. 전력 객체는 물리적 장치의 전력 소비 혹은 사용에 대한 정보를 운반한다. 열 객체는 열 조건 혹은 열 전달에 관한 정보를 운반한다. 전력 객체는, 전력 관리 제어기에 물리적 장치에 대한 각각의 가능 상태의 전력 요건, 임의의 주어진 상태로부터 전송될 수 있는 모든 다음 가능한 상태, 다음 상태로의 전이를 수행하기 위한 전이 전력 비용을 포함하는 정보를 제공할 것이다. 이러한 정보로부터, 제어기는 관리되어지는 시스템의 프레임워크를 생성할 수 있다.
좀 더 정교한 전력 관리 구조는 관리 시스템의 좀 더 복잡한 프레임워크를 구성하기 위해 시스템내의 각각의 물리적 장치에 대한 부가적인 정보 혹은 속성을 고려할 것이다. 전력 객채에 의해 제공될 수 있는 부가적인 속성은 장치 신뢰성 혹은 한 특정 상태에서 다른 상태로의 전이에 소요되는 시간일 수도 있다. 전력 객체는 또한 대응하는 물리적 장치가 현재 점유하고 있는 상태, 즉 현재 상태를 판정할 수 있고 이후 제어기에 전송할 수 있다. 모든 현재 상태의 세트로부터, 제어기는 특정한 시간에 존재하는 시스템 상태의 모델을 생성할 수 있다.
제어기는 또한 이벤트 객체와 통신한다. 물리적 시스템에서의 실제적인 이벤트는 이벤트 소오스 객체에 의해 이벤트 소오스 신호를 발생할 것이다. 물리적 이벤트의 예로는, CPU가 임계 시간 동안 유휴 상태로 남아있는 것, 디스크 드라이브가 디스크 데이터를 액세스하기 위한 임계량의 요구(a threshold amount of requests)를 수신하는 것, 키보드의 키누름이 있다. 이러한 이벤트가 발생하면, 제어기는 이 이벤트에 응답하여 시스템의 상태를 변경시켜야 하는지의 여부를 판정해야 한다. 제어기는 정책 모듈에 근거하여 이 결정을 수행한다. 정책 모듈은 이벤트, 시스템 상태 및 전력 혹은 열 객체에 의해 제공된 정보 혹은 속성의 함수이다. 수신된 이벤트 신호는 소정 규칙을 호출(invoke)한다. 이들 규칙은 시스템 상태의 모델을, 전력 객체에 의해 정의된 프레임워크 내에서 허용될 수 있는 이 시스템 상태에 대한 가능한 변경의 견지에서 분석한다. 전력 관리 설계자에 의해 구성된 이들 규칙으로부터, 제어기는 전력 관리를 구현하는 동작을 수행하게 된다. 이 동작은 시스템 상태에 대한 무변경, 혹은 다수의 물리적 장치 중 임의의 물리적 장치의 상태의 변경을 요구할 수도 있다.
더욱 보편적인 전력 관리 구성을 고려할 때, 열 부하 및 특성이 시스템에 사용되는 전력에 소정의 영향을 끼칠 수도 있다는 사실을 고려해야 함을 유의해야 한다. 예를 들면, 시스템의 내부 온도가 증가함에 따라, 하나 혹은 그 이상의 팬이 턴 온되어야 할 수고 있다. 시스템이서 전력 소비 및 열 발생은 통상, 밀접한 관계가 있으므로, 전력 관리의 개념을 확장시켜 열 관리도 포함시키는 것이 의미있다. 많은 경우에 있어서, 특히 임계 상황에서는, 열 관리에 필요한 메카니즘은 전력 관리에 필요한 메카니즘과 유사하다(즉, 저전력 및 초과 열 제한은 유사한 메카니즘 및 정책을 요구한다).
본 발명의 전력 관리 구조는 전력 관리 구조가 구현되는 모든 시스템 유형에 적용할 수 있을 만큼 충분히 일반적이고 포괄적이도록 설계되었다. 이를 성취하기 위해서, 이 구조는 물리적 객체 및 이벤트 객체를 포함하는 메카니즘과 특정 시스템상에 전력 관리 구조를 구현하기 위해 요구되는 규칙을 갖는 정책 모듈로 분리된다. 이 메카니즘은 이 메카니즘을 사용할 수도 있는 정책 규칙의 개념을 지니지 않는다. 전력 관리 정책 모듈은 기저 메카니즘에 대한 특정한 지식을 구비하지는 않는다. 전력 관리 제어기는 정책 모듈 규칙 및 메카니즘의 객체에 기초하여 메카니즘에 의해 제공된 인터페이스를 사용함으로써 시스템의 전력 사용에서의 변경을 수행한다.
이상 본 발명이 특정한 실시예에 따라 구체적으로 설명되었지만, 본 발명은 상기 실시예에 한정되는 것은 아니며, 그 사상 및 범주를 이탈하지 않는 범위내에서 여러 가지로 변경 가능함은 물론이다.

Claims (41)

  1. 데이터 처리 시스템(a data processing system)의 전력 관리 구조(a power management architecture)에 있어서, 각각 전력 소비자(power consumers) 혹은 전력 공급자(power suppliers)가 되는 다수의 물리적 장치(a plurality of physical devices)로서, 각각의 물리적 장치는 적어도 하나의 상태(state)를 가지며, 각각의 상태는 대응하는 전력 값(a corresponding power value)을 가지고, 또한 시스템 상태는 상기 다수의 물리적 장치의 현재 상태(current states)의 집합인 상기 다수의 물리적 장치와, 각각 하나의 물리적 장치에 대응하는 다수의 객체(a plurality of objects)로서, 하나의 객체는 상기 대응하는 물리적 장치의 각각의 가능한 상태의 전력 요건(the power requirements) 및 상기 대응하는 물리적 장치의 현재 상태(the current state)에 관한 정보를 보유하는 상기 다수의 객체와, 이벤트(an event)를 표시하는 신호를 발생하는 이벤트 수단과, 동작(an action)을 지시(direct)하며, 이벤트(event) 및 객체 정보(object information)의 함수(a function)인 규칙(rules)을 보유하는 정책 모듈(a policy module)과, 이벤트(an event)를 표시하는 신호에 응답하여 상기 다수의 물리적 장치 중 임의의 한 장치의 상태를 변경시키기 위해 상기 다수의 물리적 장치, 상기 객체, 상기 이벤트 수단 및 상기 정책 모듈과 통신하는 제어기(a controller)로서, 상기 정책 모듈 규칙, 이벤트 신호 및 객체 정보에 근거하여 물리적 장치 상태를 변경시킬지의 여부를 또한 판정하는 상기 제어기를 포함하는 전력 관리 구조.
  2. 제1항에 있어서, 상기 객체 정보는, 물리적 장치 상태(a physical device state)를 변경시킬지의 여부를 판정할 때, 상기 제어기에 의해 이용되는 상기 다수의 물리적 장치의 물리적 특정 모델(a model of the physical characterisitics of the physical devices)을 제공하는 전력 관리 구조.
  3. 제1항에 있어서, 다수의 객체를 논리적으로 집단화(grouping)하는 다수의 엔벨로프 객체(envelope objects)를 더 포함하되, 상기 엔벨로프 객체는 자신이 포함하는 객체 및 이들 객체의 유형을 나타내는 정보를 제공하는 전력 관리 구조.
  4. 제3항에 있어서, 엔벨로프 객체(an envelope object) 내에 포함된 객체(objects)에 대응하는 물리적 장치(the physical devices)에 의한 동작을 지시하는 규칙을 보유하는 상기 엔벨로프 객체내에 포함된 객체를 관리하기 위한 엔벨로프 정책 모듈(an envelope policy module)을 더 포함하되, 상기 규칙은 상기 엔벨로프 객체내의 논리적으로 집단화된 다수의 객체로부터의 객체 정보 및 이벤트의 함수인 전력 관리 구조.
  5. 제3항에 있어서, 적어도 하나의 엔벨로프 객체가 전력 객체(power objects)를 논리적으로 집단화하는 전력 관리 구조.
  6. 제1항에 있어서, 객체(an object)는 이벤트(an envelope)를 나타내는 신호를 발생할 수 있는 전력 관리 구조.
  7. 제1항에 있어서, 객체는 각각의 가능한 상태에서 다른 상태로의 허용된 상태 전이 및 모든 가능한 상태 전이의 전력 요건에 대한 정보를 포함하는 전력 관리 구조.
  8. 제7항에 있어서, 객체(an object)는 상기 허용된 상태 전이가 요구된 시간에 대한 정보를 포함하는 전력 관리 구조.
  9. 제1항에 있어서, 객체는 상기 대응하는 물리적 장치의 신뢰성(the reliability)에 대한 정보를 포함하는 전력 관리 구조.
  10. 제1항에 있어서, 상기 이벤트 수단은 물리적 장치(a physical device)에 연결되는 적어도 하나의 이벤트 소오스 객체를 포함하는 전력 관리 구조.
  11. 제1항에 있어서, 상기 이벤트 수단은 상기 객체들을 포함하며, 하나 혹은 그 이상의 객체가 상기 시스템 상태에서의 변화를 나타내는 신호를 발생하는 전력 관리 구조.
  12. 제1항에 있어서, 상기 다수의 물리적 장치는 디스크 드라이브(a disk drive), CPU, 디스플레이(a display), 키보드(a keyboard) 및 배터리 전원(a battery power supply)을 포함하는 전력 관리 구조.
  13. 제1항에 있어서, 객체(an object)는 대응하는 물리적 장치의 성능에 대한 정보를 포함하는 전력 관리 구조.
  14. 데이터 처리 시스템의 전력 관리 방법에 있어서, 다수의 객체로부터 객체 정보를 획득하는 단계로서, 각각 하나의 물리적 장치에 대응하는 객체는 상기 물리적 장치의 각각의 가능한 상태의 전력 요건 및 상기 물리적 장치의 현재 상태에 대한 정보를 보유하며, 또한 시스템 상태는 모든 물리적 장치의 현재 상태의 집합인 상기 객체 정보 획득 단계와, 정책 모듈로부터 전력 관리 규칙을 획득하는 단계와, 이벤트 혹은 상기 시스템 상태의 변화를 나타내는 신호를 수신하는 단계와, 상기 이벤트 혹은 시스템 상태의 변화에 응답하여 적어도 하나의 물리적 장치의 상태를 변경시키는 단계로서, 수행되는 상태 변화 유형은 상기 이벤트, 상기 시스템 상태 및 객체 정보의 함수로서 상기 전력 관리 규칙을 적용함으로써 결정되는 상기 상태 변경 단계를 포함하는 전력 관리 방법.
  15. 제14항에 있어서, 상기 객체 정보는 상기 물리적 장치의 물리적 특성을 나타내는 상기 물리적 장치의 모델을 형성하도록 컴파일(compile)되며, 상기 모델은 상기 규칙을 적용하는데 사용되는 전력 관리 방법.
  16. 데이터 처리 시스템의 전력 관리 구조에 있어서, 각각 열 소비원(a thermal consumer) 혹은 열 싱크(a thermal sink)가 되는 다수의 물리적 장치로서, 각각의 물리적 장치는 적어도 하나의 상태(state)를 가지며, 각각의 상태는 대응하는 열 값(a thermal value)을 가지고, 또한 시스템 상태는 상기 다수의 물리적 장치의 현재 상태의 집합인 상기 다수의 물리적 장치와, 각각 하나의 물리적 장치에 대응하는 다수의 객체로서, 하나의 객체는 상기 대응하는 물리적 장치의 각각의 가능한 상태의 열 요건(the thermal requirements) 및 상기 대응하는 물리적 장치의 현재 상태에 관한 정보를 보유하는 상기 다수의 객체와, 이벤트를 표시하는 신호를 발생하는 이벤트 수단과, 동작을 지시하며, 이벤트 및 객체 정보의 함수인 규칙을 보유하는 정책 모듈과, 이벤트를 표시하는 신호에 응답하여 상기 다수의 물리적 장치 중 임의의 한 장치의 상태를 변경시키기 위해 상기 다수의 물리적 장치, 상기 객체, 상기 이벤트 수단 및 상기 정책 모듈과 통신하는 제어기로서, 상기 정책 모듈 규칙, 이벤트 신호 및 객체 정보에 근거하여 물리적 장치 상태를 변경시킬지의 여부를 판정하는 상기 제어기를 포함하는 전력 관리 구조.
  17. 제16항에 있어서, 상기 객체 정보는, 물리적 장치 상태를 변경시킬지의 여부를 판정할 때, 제어기에 의해 이용되는 상기 다수의 물리적 장치의 물리적 특징 모델을 제공하는 전력 관리 구조.
  18. 제16항에 있어서, 다수의 객체를 논리적으로 집단화하는 다수의 엔벨로프 객체를 더 포함하되, 상기 엔벨로프 객체는 자신이 포함하는 객체 및 이 객체의 유형을 나타내는 정보를 제공하는 전력 관리 구조.
  19. 제18항에 있어서, 엔벨로프 객체내에 포함된 객체에 대응하는 물리적 장치에 의한 동작을 지시하는 규칙을 보유하는 상기 엔벨로프 객체 내에 포함된 객체를 관리하기 위한 엔벨로프 정책 모듈을 더 포함하되, 상기 규칙은 상기 엔벨로프 객체 내의 논리적으로 집단화된 다수의 객체로부터의 객체 정보 및 이벤트의 함수인 전력 관리 구조.
  20. 제18항에 있어서, 적어도 하나의 엔벨로프 객체가 전력 객체를 논리적으로 집단화하는 전력 관리 구조.
  21. 제16항에 있어서, 객체는 이벤트 소오스를 나타내는 신호를 발생할 수 있는 전력 관리 구조.
  22. 제16항에 있어서, 객체는 각각의 가능한 상태에서 다른 상태로의 허용된 상태 전이 및 상태 사이의 모든 가능한 상태 전이의 열 요건을 서술하는 전력 관리 구조.
  23. 제22항에 있어서, 객체는 상기 허용된 상태 전이가 이루어지도록 요구된 시간에 대한 정보를 포함하는 전력 관리 구조.
  24. 제16항에 있어서, 객체는 상기 대응하는 물리적 장치의 신뢰성에 대한 정보를 포함하는 전력 관리 구조.
  25. 제16항에 있어서, 상기 이벤트 수단은 물리적 장치에 연결되는 적어도 하나의 이벤트 소오스 객체를 포함하는 전력 관리 구조.
  26. 제16항에 있어서, 상기 이벤트 수단은 상기 객체들을 포함하며, 하나 혹은 그 이상의 객체가 상기 시스템 상태에서의 변화를 나타내는 신호를 발생하는 전력 관리 구조.
  27. 제16항에 있어서, 상기 다수의 물리적 장치는 디스크 드라이브(a disk drive), CPU, 디스플레이(a display), 키보드(a keyboard) 및 배터리 전원(a battery power supply)을 포함하는 전력 관리 구조.
  28. 제16항에 있어서, 객체는 대응하는 물리적 장치의 성능에 대한 정보를 포함하는 전력 관리 구조.
  29. 데이터 처리 시스템의 전력 관리 구조에 있어서, 다수의 물리적 장치로서, 각각의 물리적 장치는 적어도 하나의 상태를 가지며, 각각의 상태는 대응하는 열 값 및 전력 값을 가지고, 또한 시스템 상태는 상기 다수의 물리적 장치의 현재 상태의 집합인 상기 다수의 물리적 장치와, 각각 하나의 물리적 장치에 대응하는 다수의 열 객체로서, 하나의 열 객체는 상기 대응하는 물리적 장치의 각각의 가능한 상태의 열 요건 및 상기 대응하는 물리적 장치의 현재 상태에 관한 정보를 보유하는 상기 다수의 열 객체와, 각각 하나의 물리적 장치에 대응하는 다수의 전력 객체로서, 하나의 전력 객체는 상기 대응하는 물리적 장치의 각각의 가능한 상태의 전력 요건 및 상기 대응하는 물리적 장치의 현재 상태에 관한 정보를 보유하는 상기 다수의 전력 객체와, 이벤트를 표시하는 신호를 발생하는 이벤트 수단과, 동작을 지시하며, 이벤트 및 열 객체 정보 및 전력 객체 정보의 함수인 규칙을 보유하는 정책 모듈과, 이벤트를 표시하는 신호에 응답하여 상기 다수의 물리적 장치 중 임의의 한 장치의 상태를 변경시키기 위해 상기 다수의 물리적 장치, 상기 열 객체, 상기 전력 객체, 상기 이벤트 수단 및 상기 정책 모듈과 통신하는 제어기로서, 상기 정책 모듈 규칙, 이벤트 신호 및 객체 정보에 근거하여 물리적 장치 상태를 변경시킬지의 여부를 판정하는 상기 제어기를 포함하는 전력 관리 구조.
  30. 제29항에 있어서, 상기 객체 정보는, 물리적 장치 상태를 변경시킬지의 여부를 판정할 때, 제어기에 의해 이용되는 상기 다수의 물리적 장치의 물리적 특징 모델을 제공하는 전력 관리 구조.
  31. 제29항에 있어서, 다수의 물리적 객체를 논리적으로 집단화하는 다수의 엔벨로프 객체를 더 포함하되, 상기 엔벨로프 객체는 자신이 포함하는 물리적 객체 및 이 물리적 객체의 유형을 나타내는 정보를 제공하는 전력 관리 구조.
  32. 제31항에 있어서, 엔벨로프 객체 내에 포함된 객체에 대응하는 물리적 장치에 의한 동작을 지시하는 규칙을 보유하는 상기 엔벨로프 객체 내에 포함된 객체를 관리하기 위한 엔벨로프 정책 모듈을 더 포함하되, 상기 규칙은 상기 엔벨로프 객체 내의 논리적으로 집단화된 다수의 객체로부터의 객체 정보 및 이벤트의 함수인 전력 관리 구조.
  33. 제31항에 있어서, 적어도 하나의 엔벨로프 객체가 물리적 객체를 논리적으로 집단화하며, 물리적 장치는 열 객체 및 전력 객체를 포함하는 전력 관리 구조.
  34. 제29항에 있어서, 적어도 하나의 열 객체 및 적어도 하나의 전력 객체는 이벤트를 나타내는 신호를 발생할 수 있는 전력 관리 구조.
  35. 제29항에 있어서, 각 전력 객체는 각각의 가능한 상태에서 다른 상태로의 허용된 상태 전이 및 상태 사이의 모든 가능한 상태 전이의 전력 요건을 서술하고, 각 열 객체는 각각의 가능한 상태에서 다른 상태로의 허용된 상태 전이 및 전이 사이의 모든 가능한 상태 전이의 열 요건을 서술하는 전력 관리 구조.
  36. 제35항에 있어서, 각 열 객체 및 각 전력 객체는 상기 허용된 상태 전이가 이루어지도록 요구된 시간에 대한 정보를 포함하는 전력 관리 구조.
  37. 제29항에 있어서, 적어도 하나의 전력 객체 및 적어도 하나의 열 객체는 상기 대응하는 물리적 장치의 신뢰성에 대한 정보를 포함하는 전력 관리 구조.
  38. 제29항에 있어서, 상기 이벤트 수단은 상기 열 객체들 및 상기 전력 객체들을 포함하며, 하나 혹은 그 이상의 열 객체 및 전력 객체는 상기 시스템 상태에서의 변화를 나타내는 신호를 발생하는 전력 관리 구조.
  39. 제29항에 있어서, 상기 이벤트 수단은 물리적 장치에 연결되는 적어도 하나의 이벤트 소오스 객체를 포함하는 전력 관리 구조.
  40. 제29항에 있어서, 상기 다수의 물리적 장치는 디스크 드라이브, CPU, 디스플레이, 키보드 및 배터리 전원을 포함하는 전력 관리 구조.
  41. 제29항에 있어서, 객체는 대응하는 물리적 장치의 성능에 대한 정보를 포함하는 전력 관리 구조.
KR1019950007818A 1994-04-05 1995-04-04 전력 관리 구조 및 방법 KR0163233B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/223,498 US5535401A (en) 1994-04-05 1994-04-05 Method and system of power and thermal management for a data processing system using object-oriented program design
US08/223,498 1994-04-05
US8/223,498 1994-04-05

Publications (2)

Publication Number Publication Date
KR950029909A KR950029909A (ko) 1995-11-24
KR0163233B1 true KR0163233B1 (ko) 1999-01-15

Family

ID=22836774

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950007818A KR0163233B1 (ko) 1994-04-05 1995-04-04 전력 관리 구조 및 방법

Country Status (8)

Country Link
US (1) US5535401A (ko)
EP (1) EP0676685B1 (ko)
JP (1) JP3453451B2 (ko)
KR (1) KR0163233B1 (ko)
CN (1) CN1122908C (ko)
CA (1) CA2145162C (ko)
DE (1) DE69529310T2 (ko)
TW (1) TW310390B (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100771444B1 (ko) * 2005-11-08 2007-10-30 성균관대학교산학협력단 웹기반 능동 데이터베이스를 이용한 전력 제어 시스템 및그 제어 방법
KR100865192B1 (ko) * 2003-03-31 2008-10-23 인텔 코오퍼레이션 메시지-기반 전력 관리 시스템 및 방법
KR100951532B1 (ko) * 2008-04-11 2010-04-08 인제대학교 산학협력단 홈 네트워크 시스템의 활성/비활성 선택 장치 및 방법

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7064749B1 (en) * 1992-11-09 2006-06-20 Adc Technology Inc. Portable communicator
US5752011A (en) 1994-06-20 1998-05-12 Thomas; C. Douglas Method and system for controlling a processor's clock frequency in accordance with the processor's temperature
US7167993B1 (en) * 1994-06-20 2007-01-23 Thomas C Douglass Thermal and power management for computer systems
DE69535577T2 (de) * 1994-12-22 2008-03-06 Intel Corp., Santa Clara Leistungsverwaltung mit charakteristischem leistungsverbrauch einer vorrichtung
US5666538A (en) * 1995-06-07 1997-09-09 Ast Research, Inc. Disk power manager for network servers
US5787294A (en) * 1995-10-13 1998-07-28 Vlsi Technology, Inc. System for reducing the power consumption of a computer system and method therefor
US6029119A (en) * 1996-01-16 2000-02-22 Compaq Computer Corporation Thermal management of computers
CN1192298C (zh) * 1996-01-17 2005-03-09 德克萨斯仪器股份有限公司 按cpu活动调节cpu时钟频率而实时管理cpu温度和节电的方法和系统
JP3580630B2 (ja) * 1996-02-26 2004-10-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 消費電力を管理するシステム及び電源を管理する方法
US5822600A (en) * 1996-07-19 1998-10-13 Compaq Computer Corporation Dynamic hibernation time in a computer system
US5944829A (en) * 1996-09-30 1999-08-31 Intel Corporation Adjusting software characteristics by user interface based upon battery level and the amount of time the user wants the battery to last
US6530026B1 (en) * 1997-10-17 2003-03-04 Intel Corporation Circuit and method for power distribution management
US6715071B2 (en) * 1998-06-26 2004-03-30 Canon Kabushiki Kaisha System having devices connected via communication lines
US6594771B1 (en) * 2000-04-13 2003-07-15 Hewlett-Packard Development Company, L.P. Method and apparatus for managing power in an electronic device
US7849463B2 (en) * 2000-06-02 2010-12-07 Microsoft Corporation Dynamically variable idle time thread scheduling
EP1363179A1 (en) 2002-05-17 2003-11-19 STMicroelectronics S.A. Architecture for controlling dissipated power in a system on a chip and related system
US7155623B2 (en) * 2003-12-03 2006-12-26 International Business Machines Corporation Method and system for power management including local bounding of device group power consumption
US20060047880A1 (en) * 2004-08-27 2006-03-02 Imation Corp. Memory device with HUB capability
GB0516447D0 (en) * 2005-08-10 2005-09-14 Symbian Software Ltd Controlling multilevel shared resources in a computing device
DE102006036770A1 (de) * 2006-08-07 2008-02-14 Siemens Ag Verfahren zur Inbetriebnahme von mindestens einem Feldgerät
US8296121B2 (en) * 2007-04-25 2012-10-23 Cadence Design Systems, Inc. Method and apparatus for controlling power in an emulation system
US7877620B2 (en) * 2007-08-17 2011-01-25 International Business Machines Corporation Managing power in a parallel computer
US8948822B2 (en) 2008-04-23 2015-02-03 Qualcomm Incorporated Coordinating power management functions in a multi-media device
US8908763B2 (en) 2008-06-25 2014-12-09 Qualcomm Incorporated Fragmented reference in temporal compression for video coding
CN101651558B (zh) * 2008-08-15 2012-06-06 中兴通讯股份有限公司 节电管理方法和系统
US8948270B2 (en) 2008-08-19 2015-02-03 Qualcomm Incorporated Power and computational load management techniques in video processing
US8964828B2 (en) 2008-08-19 2015-02-24 Qualcomm Incorporated Power and computational load management techniques in video processing
US20100043865A1 (en) * 2008-08-25 2010-02-25 Mordechai Nisenson System and Method of Utilizing Energetic Radiation in an Enclosed Space
CN101615065B (zh) * 2009-07-29 2011-07-20 浪潮电子信息产业股份有限公司 一种基于策略的计算机电源功率动态分配的方法
CN102445980A (zh) * 2011-09-19 2012-05-09 浪潮电子信息产业股份有限公司 一种基于bp神经网络的节能控制系统
US10168752B2 (en) 2016-03-08 2019-01-01 Qualcomm Incorporated Systems and methods for determining a sustained thermal power envelope comprising multiple heat sources

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1536046A (en) * 1976-06-30 1978-12-20 Ibm Data processing system power control
US4748559A (en) * 1979-08-09 1988-05-31 Motorola, Inc. Apparatus for reducing power consumed by a static microprocessor
FR2497373B1 (fr) * 1980-12-30 1986-09-05 Bull Sa Systeme d'alimentation microprogrammable pour systeme de traitement de donnees comportant un panneau de service destine aux operations de maintenance et procedes d'exploitation de ce panneau de service
US4747041A (en) * 1983-06-27 1988-05-24 Unisys Corporation Automatic power control system which automatically activates and deactivates power to selected peripheral devices based upon system requirement
US4611289A (en) * 1983-09-29 1986-09-09 Coppola Anthony F Computer power management system
US4677566A (en) * 1984-10-18 1987-06-30 Burroughs Corporation Power control network for multiple digital modules
US5019996A (en) * 1988-08-29 1991-05-28 Advanced Micro Devices, Inc. Programmable power supply level detection and initialization circuitry
US5142684A (en) * 1989-06-23 1992-08-25 Hand Held Products, Inc. Power conservation in microprocessor controlled devices
AU629019B2 (en) * 1989-09-08 1992-09-24 Apple Computer, Inc. Power management for a laptop computer
US5167024A (en) * 1989-09-08 1992-11-24 Apple Computer, Inc. Power management for a laptop computer with slow and sleep modes
US5291607A (en) * 1990-09-05 1994-03-01 Motorola, Inc. Microprocessor having environmental sensing capability
US5230055A (en) * 1991-01-25 1993-07-20 International Business Machines Corporation Battery operated computer operation suspension in response to environmental sensor inputs
US5404543A (en) * 1992-05-29 1995-04-04 International Business Machines Corporation Method and system for reducing an amount of power utilized by selecting a lowest power mode from a plurality of power modes
JPH06119090A (ja) * 1992-10-07 1994-04-28 Hitachi Ltd 省電力制御方式

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100865192B1 (ko) * 2003-03-31 2008-10-23 인텔 코오퍼레이션 메시지-기반 전력 관리 시스템 및 방법
KR100771444B1 (ko) * 2005-11-08 2007-10-30 성균관대학교산학협력단 웹기반 능동 데이터베이스를 이용한 전력 제어 시스템 및그 제어 방법
KR100951532B1 (ko) * 2008-04-11 2010-04-08 인제대학교 산학협력단 홈 네트워크 시스템의 활성/비활성 선택 장치 및 방법

Also Published As

Publication number Publication date
DE69529310D1 (de) 2003-02-13
EP0676685A2 (en) 1995-10-11
US5535401A (en) 1996-07-09
CA2145162C (en) 2000-05-02
JPH0887359A (ja) 1996-04-02
CA2145162A1 (en) 1995-10-06
EP0676685A3 (en) 1997-03-26
CN1122908C (zh) 2003-10-01
KR950029909A (ko) 1995-11-24
CN1115883A (zh) 1996-01-31
TW310390B (ko) 1997-07-11
JP3453451B2 (ja) 2003-10-06
DE69529310T2 (de) 2003-10-16
EP0676685B1 (en) 2003-01-08

Similar Documents

Publication Publication Date Title
KR0163233B1 (ko) 전력 관리 구조 및 방법
US8639955B2 (en) Method and system for controlling power in a chip through a power performance monitor and control unit
KR100320979B1 (ko) 이동클라이언트컴퓨터및전력관리아키텍처
Brown et al. Toward energy-efficient computing
US7577860B2 (en) Processor specific BIOS interface for power management
US7373269B2 (en) Processor power consumption control
US8793697B2 (en) Method and system for scheduling requests in a portable computing device
US20110145616A1 (en) System and method for controlling central processing unit power in a virtualized system
US6128745A (en) Power management inactivity monitoring using software threads
KR970071210A (ko) 컴퓨터 시스템
JP2003141099A (ja) マイクロエレクトロニック装置及びパワーダウン方法
US7334138B2 (en) Windows-driven power management for peripheral devices in a computer system
CN101770273A (zh) 一种实现服务器多中央处理器系统节能的方法和装置
Scordino et al. A resource reservation algorithm for power-aware scheduling of periodic and aperiodic real-time tasks
EP1510908A2 (en) Thread scheduling mechanisms for processor resource power management
US20130275791A1 (en) Method and System for Tracking and Selecting Optimal Power Conserving Modes of a PCD
Agarwal et al. Power management system for embedded RTOS: An object oriented approach
Motlhabi Advanced android power management and implementation of wakelocks
Lakkas et al. The ACPI advantage for powering future-generation computers
Eibel et al. Energy Claims at Scale: Decreasing the Energy Demand of HPC Workloads at OS Level
KR100300029B1 (ko) 자바엠씨유의파워관리장치
Waltsgott et al. Fakultät Informatik
Bhattacharya et al. Hypnos: Unobtrusive power proportionality for hpc frameworks
Jain Energy-efficient Scheduling for Heterogeneous Servers in the Dark Silicon Era
Khare et al. A Review of Embedded Base Power Management Unit

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20100824

Year of fee payment: 13

LAPS Lapse due to unpaid annual fee