KR102314425B1 - 전력 스케줄링 방법 및 장치 - Google Patents

전력 스케줄링 방법 및 장치 Download PDF

Info

Publication number
KR102314425B1
KR102314425B1 KR1020160038491A KR20160038491A KR102314425B1 KR 102314425 B1 KR102314425 B1 KR 102314425B1 KR 1020160038491 A KR1020160038491 A KR 1020160038491A KR 20160038491 A KR20160038491 A KR 20160038491A KR 102314425 B1 KR102314425 B1 KR 102314425B1
Authority
KR
South Korea
Prior art keywords
power
partition
amount
power consumption
arbitrary
Prior art date
Application number
KR1020160038491A
Other languages
English (en)
Other versions
KR20170061047A (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 한국전자통신연구원
Priority to US15/361,118 priority Critical patent/US10503230B2/en
Publication of KR20170061047A publication Critical patent/KR20170061047A/ko
Application granted granted Critical
Publication of KR102314425B1 publication Critical patent/KR102314425B1/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
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • G06F11/3062Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5055Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Abstract

본 발명은 전력 스케줄링 방법 및 그 장치에 관한 것이다.
이에 따른 본 발명은, 적어도 하나의 응용 프로그램에 대한 파티션을 제어하는 전력 스케줄링 장치의 전력 스케줄링 방법으로, 각각의 파티션에 대한 제한 전력량을 설정하는 단계, 상기 각각의 파티션에 대한 전력 소모량을 실시간으로 모니터링하는 단계 및 상기 모니터링 결과, 임의의 파티션에서 상기 제한 전력량을 초과하는 전력 소모량이 감지되면, 상기 임의의 파티션에 대한 동작을 제어하는 단계를 포함하는 것을 특징으로 하는 방법 및 장치에 관한 것이다.

Description

전력 스케줄링 방법 및 장치{Method and apparatus for power scheduling}
본 발명은 전력 스케줄링 방법 및 그 장치에 관한 것이다.
ARINC 653 표준은 기존에 하나의 컴퓨터가 하나의 기능을 하던 것과 다르게, 컴퓨터 성능의 발전과 더불어 여러 개의 기능을 하나의 컴퓨터에서 통합 수행하도록 하는 통합 모듈형 구조(Integrated Modular Avionics; 이하 IMA)에 대한 표준이다. ARINC 653 표준은 항공 분야의 표준이지만, 안전성 및 신뢰성이 요구되는 시스템에서 효율성이 높은 개념으로, 최근에는 이를 다양한 시스템에 적용하기 위한 연구가 활발히 진행되고 있다.
ARINC 653 표준을 준수하는 시스템은 각 응용 프로그램(응용 소프트웨어, 애플리케이션) 하나의 파티션으로 정의하고, 각 파티션 간 독립적 실행을 보장한다. 그에 따라, 각 파티션은 수행 중에 서로 영향을 주지 않으며, 한 파티션의 오류는 다른 파티션에 영향을 주지 않는다.
그러나 특정한 시스템, 예를 들어, 안전 우선 시스템 등에서는 전력 공급이 원활하게 공급되지 않는 경우, 특정 파티션의 오류가 하드웨어로 전이될 수 있기 때문에, 특정한 시스템에서는 안정적인 전력 공급이 매우 중요하다. 또한, 안전 우선 시스템과 같은 특정 시스템의 경우, 전원 공급 장치(배터리 등)에 의한 정확한 수명 시간의 예측이 가능해야 안전성이 향상될 수 있다.
그럼에도 불구하고, 기존의 시스템은 각 파티션 간 독립성 보장을 통해 오류를 최소화하고 있을 뿐, 각 파티션들이 소모하는 전력에 대한 고려가 없다는 문제점을 갖는다.
본 발명은 상기한 문제점을 해결하기 위한 것으로, ARINC 653 표준이 적용된 시스템에서 신뢰성을 향상시키기 위해, 각 파티션들에 대한 전력 스케줄링을 제어하는 방법 및 그 장치를 제공한다.
상술한 과제를 해결하기 위한 본 발명에 따른 시스템에서 적어도 하나의 응용 프로그램에 대한 파티션을 제어하는 전력 스케줄링 장치의 전력 스케줄링 방법은, 각각의 파티션에 대한 제한 전력량을 설정하는 단계, 상기 각각의 파티션에 대한 전력 소모량을 실시간으로 모니터링하는 단계 및 상기 모니터링 결과, 임의의 파티션에서 상기 제한 전력량을 초과하는 전력 소모량이 감지되면, 상기 임의의 파티션에 대한 동작을 제어하는 단계를 포함하는 것을 특징으로 한다.
또한, 상술한 과제를 해결하기 위한 본 발명에 따른 적어도 하나의 응용 프로그램에 대한 파티션을 제어하는 전력 스케줄링 장치는, 각각의 파티션으로 전력을 공급하는 전력 공급부 및 상기 각각의 파티션에 대한 제한 전력량을 설정하고, 상기 각각의 파티션에 대한 전력 소모량을 실시간으로 모니터링하고, 상기 모니터링 결과, 임의의 파티션에서 상기 제한 전력량을 초과하는 전력 소모량이 감지되면, 상기 임의의 파티션에 대한 동작을 제어하는 제어부를 포함하는 것을 특징으로 한다.
본 발명에 따른 전력 스케줄링 방법 및 장치는, 시스템이 구동되는 동안 각 파티션들에 일정한 전력이 원활히 공급되도록 하여 시스템을 안정적으로 동작시킬 수 있도록 한다.
본 발명에 따른 전력 스케줄링 방법 및 장치는, 전체 시스템 또는 각 파티션의 최대 수명을 사전에 결정함으로써, 특정 작업(임무)(task)을 수행할 때 전력이 부족하거나, 순간 공급 전력이 낮아서 발생할 수 있는 오류를 사전에 방지할 수 있다. 또한, 본 발명에 따른 전력 스케줄링 방법 및 장치는, 배터리 사용량을 미리 알수 있으므로 특정 작업에 대한 수행 시간을 연장할 수 있고, 작업 수행 시간이 제한되어 있는 경우라도 배터리 사용량에 따라 주요 작업뿐만 아니라 부수적인 작업을 함께 진행할 수 있도록 하여 안정성과 생산성을 향상시키도록 한다.
본 발명에 따른 전력 스케줄링 방법 및 장치는, ARINC 표준에서 간과하고 있는 전력 사용량을 파티션 별로 분할하는 것으로, 고신뢰성을 지닌 안전 우선 시스템을 개발할 수 있도록 함으로써 표준 적용시 높은 활용도를 가질 수 있다.
도 1은 본 발명에 따른 전력 스케줄링 장치의 구조를 나타낸 블록도이다.
도 2는 통합 모듈 항공 전자 시스템을 설명하기 위한 도면이다.
도 3은 본 발명에 따라 각 파티션 별로 제한 전력량을 미리 설정한 예를 나타낸 도면이다.
도 4는 본 발명에 따른 전력 스케줄링 방법을 나타낸 순서도이다.
본 명세서의 실시 예를 설명함에 있어 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우, 그 상세한 설명은 생략될 수 있다.
본 명세서에서 사용되는 "포함한다," "포함할 수 있다." 등의 표현은 개시된 해당 기능, 동작, 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작, 구성요소 등을 제한하지 않는다. 또한, 본 명세서에서, "포함하다." 또는 "가지다." 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.  
본 명세서에서 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
이하, 첨부된 도면을 참조하여 본 발명을 설명한다.
도 1은 본 발명에 따른 전력 스케줄링 장치의 구조를 나타낸 블록도이다.
본 발명의 다양한 실시 예에서, 전력 스케줄링 장치(100)는 ARINC 653 표준이 적용된 장치로써, 예를 들어, 안전 우선 시스템(Safety-Critical Systems)일 수 있다.
안전 우선 시스템은 시스템의 장애가 사람에게 치명적인 원인이 될 수 있는 컴퓨터, 전기, 전자 시스템을 의미한다. 안전 우선 시스템은 예를 들어, 자동차, 항공 우주, 공장 자동화, 철도, 금융, 원자력 발전 제어, 의료 설비, 국방 분야 등 사람의 생명과 밀접한 관계가 있는 분야에 적용된다. 그에 따라, 안전 우선 시스템은 인간과 사회의 안전과 깊이 관계되어 시스템의 안정적인 동작을 최우선으로 여기는 특성을 갖는다.
안전 우선 시스템은 작업의 수행이 시간이 제한되어 있는 시스템(실시간 시스템(Real-time System))으로, 정해진 시간(deadline) 내에 응용 프로그램의 동작이 완료되는 것을 보장하거나 정해진 시간에 응용 프로그램의 특정 작업이 수행되는 것이 보장하여야 한다.
또한, 안전 우선 시스템은 오류의 전이 방지를 위해 특정 응용 프로그램의 동작이 멈추더라도, 다른 응용 프로그램에 영향을 미치지 않도록 각 응용 프로그램의 구동 시간을 독립적으로 분할하여 사용하여야 한다. 뿐만 아니라, 안전 우선 시스템은 응용 프로그램이 실행되는 메모리 영역을 상호 침범하지 않도록 응용 프로그램별 메모리 영역을 공간적으로 분리하여 사용하여야 한다.
이러한 안전 우선 시스템의 시간/공간 분리 기술은 ARINC 653 표준을 적용함으로써 실현될 수 있다.
ARINC 653 표준은 안전 우선 시스템의 대표적인 시스템인 항공 전자 시스템에 사용되는 표준 인터페이스 규격으로, 실시간 운영 체제 API 표준이다. ARINC 653 표준은 운영 체제와 그 위에서 동작하는 응용 프로그램 간의 인터페이스인 APEX(Application Executive)를 규정한다.
ARINC 653 표준은 IMA를 위해 제안되었다. IMA는 도 2에 도시된 바와 같이 기존의 연방 시스템(Federated System)에서 여러 개로 분산된 시스템에서 실행되던 응용 프로그램을, 하나의 고성능 프로세서 기반 시스템에 통합한 플랫폼을 제공한다. IMA는 기존의 여러 모듈(전자 장비)들을 하나의 컴퓨팅 장치로 통합함으로써 전반적인 시스템의 크게와 무게, 전력 소모를 줄이는 효과를 가져왔다.
그러나 통합 플랫폼 형태의 IMA는 한 응용 프로그램의 오류가 전체 시스템에 전파될 가능성에 노출되기 쉽다. 그에 따라, 각 응용 프로그램들의 독립성을 보장하여 응용 프로그램 간 오류 전파를 근본적으로 차단할 수 있는 방법에 대한 연구가 활발히 전개되었고, 항공 전자 시스템을 위한 실시간 운영 체제와 응용 프로그램 간 인터페이스에 대한 표준인 ARINC 653이 규정되었다.
ARINC 653 표준은 각 운영 프로그램 간 강력한 독립성을 보장하기 위하여 시간/공간적 파티션 개념을 도입하였다. ARINC 653 표준이 적용되는 하나의 기능을 하는 하나의 모듈을 파티션으로 정의하고, 여러 파티션이 동시에 동작을 수행할 때 시간/공간적으로 분리되어 상호 영향을 미치지 못하도록 한다. 구체적으로, 각 파티션들은 시스템 설정에 의해 스케줄링 된 시간에 개별적으로 작업을 수행함으로써 시간적으로 독립성을 보장하며, 각 파티션 별로 독립된 메모리 영역을 사용하여 작업을 수행함으로써 공간적으로 독립성을 보장한다.
상술한 ARINC 653 표준은 항공 분야의 표준이지만, 안전성 및 신뢰성이 요구되는 시스템에서 효율성이 높은 개념이지만, 최근에는 하드웨어의 발전 및 멀티 코어의 일반화로 인해 다양한 시스템에 적용되기도 한다. ARINC 653 표준이 적용된 시스템은, 각 응용 프로그램(응용 소프트웨어)을 하나의 파티션으로 정의하고, 파티션 간 시간/공간적 독립성을 보장한다. 즉, 각각의 파티션은 수행 중에 서로 영향을 주지 않으며, 한 파티션에서 발생한 오류는 다른 파티션에 영향을 주지 않는다.
본 발명에 따른 전력 스케줄링 장치(100)는 상술한 바에 따른 ARINC 653 표준이 적용된 시스템을 지원하는 장치로써, 각 응용 프로그램을 파티션으로 정의하고 파티션들을 시간/공간적으로 분리하여 운영할 수 있다.
안전 우선 시스템과 같이 ARINC 653 표준이 적용된 시스템은 시간/공간 분할뿐만 아니라 안정적인 동작을 위해 원활한 전력 공급이 요구될 수 있다. 각 파티션에 적절한 전력이 공급되지 않을 경우, 특정 파티션 또는 전체 시스템에 오류가 발생할 수 있기 때문이다.
그에 따라, 본 발명에 따른 전력 스케줄링 장치(100)는 각 파티션에 대한 전력 사용을 제어한다.
도 1을 참조하면, 본 발명에 따른 전력 스케줄링 장치(100)는 전력 공급부(110), 제어부(120) 및 저장부(130)를 포함하여 구성될 수 있다.
전력 공급부(110)는 외부 또는 내부의 전원을 인가받아 전력 스케줄링 장치(100)의 각 구성 요소들로 동작에 필요한 전력을 공급할 수 있다. 구체적으로, 전력 공급부(110)는 제어부(120)의 제어에 따라 적어도 하나의 파티션으로 전력을 공급할 수 있다.
제어부(120)는 시스템 운영을 위한 동작을 수행한다. 일 실시 예에서, 제어부(120)는 시스템 운영을 위하여 ARINC 653 표준을 준수하는 제어 동작을 수행할 수 있다.
구체적으로, 제어부(120)는 각각의 응용 프로그램을 각각의 파티션으로 정의하고, 각각의 파티션 및 파티션 내부에서 수행되는 작업들을 스케줄링할 수 있다. 제어부(120)는 각 파티션 간 시간/공간적 독립성을 보장하기 위하여, 파티션이 언제 어떤 코어를 사용하여 수행될지 여부를 스케줄링할 수 있다. 즉, 제어부(120)는 스케줄링에 따라 파티션 별로 수행될 시간을 미리 설정하고, 코어 별로 현재 수행할 파티션을 할당할 수 있다.
일례로, 제어부(120)는 임의의 시간대에 하나의 파티션만 작업을 수행하되, 멀티 코어 자원을 활용하기 위하여 파티션 내의 작업은 동시에 여러 코어에서 수행될 수 있도록 스케줄링할 수 있다(대칭형). 또는, 제어부(120)는 임의의 시간대에 여러 파티션의 작업이 서로 다른 코어에서 수행되도록 스케줄링할 수 있다(비대칭형).
스케줄링에 있어서 제어부(120)는 작업에 대하여 개별적으로 설정된 우선순위 등을 고려할 수 있다.
본 발명의 다양한 실시 예에서, 제어부(120)는 전력 스케줄링 방법을 수행하기 위하여 전력 스케줄링 장치(100)의 각 구성 요소들을 제어할 수 있다.
구체적으로, 제어부(120)는 각각의 파티션(응용 프로그램)에 대하여 사용 가능한 최대 전력량, 즉 제한 전력량을 설정하고, 실시간으로 각 파티션의 전력 소모량을 측정하여, 각 파티션의 실시간 전력 소모량이 기설정된 제한 전력량을 초과하지 못하도록 제어할 수 있다. 그에 따라, 제어부(120)는 하나의 파티션이 지나치게 많은 전력을 소모함으로써 다른 파티션에서 전력 부족에 따른 오류가 발생하는 것을 방지할 수 있다.
본 발명의 다양한 실시 예에서, 제어부(120)는 상기한 전력 스케줄링을 위하여 초기 설정을 수행할 수 있다. 제어부(120)는 전력 공급부(110)가 전체 시스템에 공급 가능한 총 전력 및 순간 전력을 판단할 수 있다. 또한, 제어부(120)는 각 파티션 별로 작업을 수행함에 있어서 요구되는 전력량을 판단할 수 있다.
제어부(120)는 판단된 공급 가능한 총 전력 및 순간 전력, 각 파티션 별 요구되는 전력량을 기초로, 도 3에 도시된 바와 같이, 각 파티션 별로 제한 전력량을 미리 설정한다. 제어부(120)는 각 파티션의 작업 스케줄링에 따라 제한 전력량을 설정할 수 있다. 구체적으로, 제어부(120)는 각각의 파티션이 시간/공간적 독립성이 보장된 상태에서 특정 시간 및 특정 공간(특정 코어 또는 특정 코어의 특정 영역)에 대해 작업 스케줄링 되었을 때, 도 3에 도시된 바와 같이, 해당 시간에 해당 공간에서 이용할 수 있는 제한 전력량을 설정할 수 있다.
제한 전력량은 판단된 정보들로부터 임의의 알고리즘 또는 수식을 이용해 설정될 수 있으며, 알고리즘 또는 수식에 대하여는 특별한 제한을 두지 않는다.
본 발명의 다양한 실시 예에서, 제어부(120)는 실시간으로 각 파티션의 전력 소모량을 모니터링할 수 있다.
일 실시 예에서, 제어부(120)는 센서를 통하여 각 파티션의 전력 소모량을 모니터링할 수 있다. 이 경우, 전력 스케줄링 장치(100)는 센서부(140)를 더 구비할 수 있다.
센서부(140)는 각각의 파티션에 대한 전력 소모 상태를 감지하고, 감지된 전력 소모 상태에 따른 전력 소모 정보를 제어부(120)로 전달할 수 있다.
이를 위하여, 센서부(140)는 적어도 하나의 전류 측정 센서 또는 전력 측정 센서를 포함하여 구성될 수 있다. 센서부(140)는 센서를 이용하여 전력 스케줄링 장치(100)의 각 구성 요소들 또는 각 파티션에서의 전류 소모량 또는 전력 소모량을 실시간으로 측정할 수 있다. 센서부(140)는 측정된 전류 또는 전력 소모량에 관한 정보를 제어부(120)로 전달하여, 제어부(120)가 각 파티션의 전력 소모량을 판단할 수 있도록 한다.
상기에서는 센서부(140)를 이용하여 전력 소모 상태를 감지하는 것으로 설명하였으나, 이는 하나의 실시 예에 불과하여, 소프트웨어적인 다양한 방법을 이용하여 전류 측정 또는 전력 측정을 통한 전력 소모 상태의 감지가 가능하다.
또는, 일 실시 예에서, 제어부(120)는 이벤트 감지를 통하여 전력 소모량을 모니터링할 수 있다. 전력 소모량 측정에 이용되는 이벤트는 전력 소모량에 변동을 가져올 수 있는 동작에 관련된 것으로, 예를 들어, 입력 또는 출력 동작에 관한 입출력 이벤트, 데이터 송수신에 관한 통신 이벤트 등일 수 있다. 입출력 이벤트는, 예를 들어 전력 스케줄링 장치(100)의 전원의 온/오프를 제어하거나 전력 소비 모드를 제어(예를 들어, 대기 모드, 절전 모드, 활성 모드 간 제어)하기 위한 입력 이벤트를 포함할 수 있다.
이 경우, 전력 스케줄링 장치(100)는 입출력부(150), 통신부(160) 중 적어도 하나를 더 구비할 수 있다.
입출력부(150)는 사용자 입력 또는 외부 장치 등에 따른 입력 신호를 발생시키는 적어도 하나의 입력 모듈을 포함하여 구성될 수 있다. 입력 모듈은, 키 패드(key pad), 돔 스위치(dome switch), 터치 패드(정압/정전), 조그 휠, 조그 스위치 등으로 구성될 수 있다. 또는 입력 모듈은 외부 장치와 통신하기 위한 단자, 회선 등을 포함하여 구성될 수 있다. 또한, 입출력부(150)는 전력 스케줄링 장치(100) 또는 전력 스케줄링 장치(100)를 구성 요소로 하는 장치에 관한 정보를 출력하기 위한 적어도 하나의 출력 모듈을 포함하여 구성될 수 있다. 출력 모듈은, 디스플레이, 음향 출력부, 조명부 등으로 구성될 수 있다. 또는 출력 모듈은 외부 장치와 통신하기 위한 단자, 회선 등을 포함하여 구성될 수 있다.
통신부(160)는 유무선 통신을 수행하여 외부와 데이터를 송수신할 수 있다. 이를 위하여 통신부(160)는 적어도 하나의 유/무선 통신 모듈, 근거리 통신 모듈을 포함하여 구성될 수 있다.
입출력부(150) 또는 통신부(160)는 입출력 이벤트 또는 통신 이벤트가 발생하면, 이벤트에 관한 정보를 제어부(120)로 전달한다. 제어부(120)는 이벤트에 관한 정보를 기초로, 각 파티션의 전력 소모량을 판단할 수 있다.
상술한 이벤트는 일 예에 불과하며, 제어부(120)는 전력 스케줄링 장치(100)를 구성하는 다양한 하드웨어들이 소프트웨어적으로 제어될 때, 미리 저장된 이벤트에 대응하는 전력 소모량에 관한 정보를 기초로 각 파티션의 전력 소모량을 판단할 수 있다.
다양한 실시 예에서, 이벤트에 기초하여 전력 소모량을 판단하는 경우, 제어부(120)는 적어도 하나의 이벤트에 대응하는 파티션의 전력 소모량에 관한 정보를 미리 저장하고, 특정 이벤트가 발생하였을 때, 저장된 정보를 이용하여 파티션의 전력 소모량을 판단할 수 있다.
제어부(120)는 전력 소비량을 모니터링하여, 임의의 파티션에 대한 전력 소모량이 기설정된 제한 전력량을 초과하면, 해당 파티션의 동작을 제어하여 제한 전력량을 초과하는 전력을 사용할 수 없도록 한다.
일 예로, 제어부(120)는 임의의 파티션에 대한 전력 소모량이 기설정된 제한 전력량을 초과하면, 해당 파티션의 동작을 강제로 종료 또는 중단시키거나, 전력 공급부(110)가 해당 파티션으로 전력을 공급하는 것을 차단할 수 있다. 그러나 이는 일 예에 불과하며, 전력 소모량 제어를 위한 제어부(120)의 동작에는 특별한 제한을 두지 않는다.
본 발명의 다양한 실시 예에서, 제어부(120)는 임의의 파티션에서 기설정된 제한 전력량 이하의 전력을 소모하고 있을 때, 잔여 전력량, 즉 기설정된 제한 전력량과 전력 소모량 간의 차이에 해당하는 전력량을 모니터링할 수 있다. 이후, 해당 파티션에서 기설정된 제한 전력량을 초과하는 추가 전력을 필요로 하는 경우, 제어부(120)는 해당 파티션의 동작을 제어하는 대신 잔여 전력량을 해당 파티션에 스케줄링할 수 있다.
이러한 실시 예에서, 제어부(120)는 각 파티션마다 잔여 전력량을 별개로 관리함으로써, 파티션 별 전력 소모량에 영향을 미치지 않도록 할 수 있다.
저장부(130)는 제어부(120)의 제어에 따라 전력 스케줄링을 위한 다양한 정보들을 저장할 수 있다. 구체적으로, 저장부(130)는 파티션 별 작업 스케줄링에 관한 정보, 파티션 별로 기설정된 제한 전력량에 관한 정보 등을 저장할 수 있다. 또는, 저장부(130)는 이벤트에 대응하는 전력 소모량에 관한 정보를 저장할 수 있다.
도 4는 본 발명에 따른 전력 스케줄링 방법을 나타낸 순서도이다.
도 4를 참조하면, 먼저 본 발명에 따른 전력 스케줄링 장치(100)는 각각의 파티션에 대한 제한 전력량을 설정한다(401).
전력 스케줄링 장치(100)는 전체 시스템에 공급 가능한 총 전력 및 순간 전력을 판단할 수 있다. 또한, 전력 스케줄링 장치(100)는 각 파티션 별로 작업을 수행함에 있어서 요구되는 필요 전력량을 판단할 수 있다.
전력 스케줄링 장치(100)는 판단된 공급 가능한 총 전력 및 순간 전력, 각 파티션 별 요구되는 필요 전력량을 기초로, 각 파티션 별로 제한 전력량을 미리 설정한다. 전력 스케줄링 장치(100)는 각 파티션의 작업 스케줄링에 따라 제한 전력량을 설정할 수 있다. 구체적으로, 전력 스케줄링 장치(100)는 각각의 파티션이 시간/공간적 독립성이 보장된 상태에서 특정 시간 및 특정 공간(특정 코어 또는 특정 코어의 특정 영역)에 대해 작업 스케줄링 되었을 때, 해당 시간에 해당 공간에서 이용할 수 있는 제한 전력량을 설정할 수 있다.
제한 전력량은 판단된 정보들로부터 임의의 알고리즘 또는 수식을 이용해 설정될 수 있으며, 알고리즘 또는 수식에 대하여는 특별한 제한을 두지 않는다.
다음으로, 전력 스케줄링 장치(100)는 각각의 파티션에 대한 전력 소모량을 모니터링한다(402).
일 실시 예에서, 전력 스케줄링 장치(100)는 센서를 통하여 각 파티션의 전력 소모량을 모니터링할 수 있다. 전력 스케줄링 장치(100)는 적어도 하나의 센서를 통해 각각의 파티션에 대한 전력 소모 정보를 수신하고 이를 기초로 각 파티션의 전력 소모량을 판단할 수 있다. 일례로, 전력 스케줄링 장치(100)는 적어도 하나의 센서로부터 각 파티션에서의 전류 소모량 또는 전력 소모량에 관한 정보를 수신하여, 각 파티션의 전력 소모량을 판단할 수 있다.
일 실시 예에서, 전력 스케줄링 장치(100)는 이벤트 감지를 통하여 전력 소모량을 모니터링할 수 있다. 전력 소모량 측정에 이용되는 이벤트는 전력 소모량에 변동을 가져올 수 있는 동작에 관련된 것으로, 예를 들어, 입력 또는 출력 동작에 관한 입출력 이벤트, 데이터 송수신에 관한 통신 이벤트 등일 수 있다. 입출력 이벤트는, 예를 들어 전력 스케줄링 장치(100)의 전원의 온/오프를 제어하거나 전력 소비 모드를 제어(예를 들어, 대기 모드, 절전 모드, 활성 모드 간 제어)하기 위한 입력 이벤트를 포함할 수 있다.
상술한 이벤트는 일 예에 불과하며, 전력 스케줄링 장치(100)는 전력 스케줄링 장치(100)를 구성하는 다양한 하드웨어들이 소프트웨어적으로 제어될 때, 미리 저장된 이벤트에 대응하는 전력 소모량에 관한 정보를 기초로 각 파티션의 전력 소모량을 판단할 수 있다.
다양한 실시 예에서, 이벤트에 기초하여 전력 소모량을 판단하는 경우, 전력 스케줄링 장치(100)는 적어도 하나의 이벤트에 대응하는 파티션의 전력 소모량에 관한 정보를 미리 저장하고, 특정 이벤트가 발생하였을 때, 저장된 정보를 이용하여 파티션의 전력 소모량을 판단할 수 있다.
전력 소모량 모니터링에 따라, 전력 스케줄링 장치(100)는 임의의 파티션에 대한 전력 소모량이 기설정된 제한 전력량을 초과하는지 여부를 판단한다(403).
임의의 파티션에서 기설정된 제한 전력량을 초과하는 전력 소모량이 감지된 것으로 판단되면, 전력 스케줄링 장치(100)는 해당 파티션의 동작을 제어한다(404).
일 예로, 전력 스케줄링 장치(100)는 임의의 파티션에 대한 전력 소모량이 기설정된 제한 전력량을 초과하면, 해당 파티션의 동작을 강제로 종료 또는 중단시키거나, 해당 파티션으로 전력이 공급되는 것을 차단할 수 있다. 그러나 이는 일 예에 불과하며, 전력 소모량 제어를 위한 전력 스케줄링 장치(100)의 동작에는 특별한 제한을 두지 않는다.
본 발명의 다양한 실시 예에서, 전력 스케줄링 장치(100)는 임의의 파티션에서 기설정된 제한 전력량 이하의 전력을 소모하고 있을 때, 잔여 전력량, 즉 기설정된 제한 전력량과 전력 소모량 간의 차이에 해당하는 전력량을 모니터링할 수 있다. 이후, 해당 파티션에서 기설정된 제한 전력량을 초과하는 경우, 전력 스케줄링 장치(100)는 해당 파티션의 동작을 제어하는 대신 잔여 전력량을 해당 파티션에 스케줄링할 수 있다.
이러한 실시 예에서, 전력 스케줄링 장치(100)는 각 파티션마다 잔여 전력량을 별개로 관리함으로써, 파티션 별 전력 소모량에 영향을 미치지 않도록 할 수 있다.
전력 스케줄링 장치(100)는 전력 스케줄링 장치(100)의 전원이 유지되는 한, 상기한 동작을 반복적으로 수행하여 전력 스케줄링을 제어할 수 있다.
본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 그리고 본 명세서와 도면에 개시된 실시 예들은 본 발명의 내용을 쉽게 설명하고, 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 범위는 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 전력 스케줄링 장치
110: 전력 공급부
120: 제어부
130: 저장부
140: 센서부
150: 입출력부
160: 통신부

Claims (20)

  1. 적어도 하나의 응용 프로그램에 대한 파티션을 제어하는 전력 스케줄링 장치의 전력 스케줄링 방법으로,
    시간 및 메모리 공간상에서 분할된 각각의 파티션에 대한 제한 전력량을 설정하는 단계;
    상기 각각의 파티션에 대한 전력 소모량을 실시간으로 모니터링하는 단계; 및
    상기 모니터링 결과, 임의의 파티션에서 상기 임의의 파티션에 상응하는 상기 제한 전력량을 초과하는 전력 소모량이 감지되면, 상기 임의의 파티션에 대한 동작을 제어하는 단계를 포함하고,
    상기 임의의 파티션에 대한 동작을 제어하는 단계는,
    상기 임의의 파티션 외의 파티션에서 오류가 발생하는 것을 방지하기 위해 상기 각각의 파티션에 상응하는 시간 구간, 메모리 공간, 및 상기 제한 전력량을 변경하지 않으면서,
    상기 임의의 파티션에 대한 동작을 강제로 종료 또는 중단시키도록 제어하거나, 상기 임의의 파티션으로 공급되는 전력을 차단하도록 제어하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서, 상기 각각의 파티션에 대한 제한 전력량을 설정하는 단계는,
    전체 시스템에 공급 가능한 총 전력 및 순간 전력을 판단하는 단계;
    상기 각각의 파티션에 대해 임의의 작업을 수행함에 있어서 요구되는 필요 전력량을 판단하는 단계; 및
    상기 판단된 총 전력, 순간 전력 및 필요 전력량을 기초로 상기 제한 전력량을 판단하는 단계를 포함하는 것을 특징으로 하는 방법.
  3. 제1항에 있어서, 상기 각각의 파티션에 대한 제한 전력량을 설정하는 단계는,
    상기 각각의 파티션을 시간 및 공간에 대하여 작업 스케줄링하는 단계; 및
    상기 작업 스케줄링 결과에 따라 상기 시간 및 공간에 대하여 상기 제한 전력량을 스케줄링하는 단계를 포함하는 것을 특징으로 하는 방법.
  4. 제1항에 있어서, 상기 모니터링하는 단계는,
    상기 각각의 파티션에 대한 전력 소모 정보를 수신하는 단계; 및
    상기 전력 소모 정보를 기초로 상기 각각의 파티션에 대한 전력 소모량을 판단하는 단계를 포함하는 것을 특징으로 하는 방법.
  5. 제4항에 있어서, 상기 전력 소모 정보는,
    전류 소모량 및 전력 소모량 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  6. 제1항에 있어서, 상기 모니터링하는 단계는,
    상기 각각의 파티션에서 발생하는 적어도 하나의 이벤트를 감지하는 단계; 및
    상기 이벤트에 대응하여 기저장된 전력 소모량에 관한 정보를 기초로, 상기 각각의 파티션에 대한 전력 소모량을 판단하는 단계를 포함하는 것을 특징으로 하는 방법.
  7. 제6항에 있어서, 상기 적어도 하나의 이벤트는,
    입출력 이벤트 및 데이터 송수신에 관한 통신 이벤트 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  8. 삭제
  9. 제1항에 있어서,
    상기 각각의 파티션에 대하여 상기 제한 전력량 이하의 전력 소모량이 감지되면, 상기 제한 전력량과 상기 전력 소모량 간의 차이를 상기 각각의 파티션에 대한 잔여 전력량으로 관리하는 단계를 더 포함하고,
    상기 임의의 파티션에 대한 동작을 제어하는 단계는,
    상기 임의의 파티션에 대하여 관리되고 있는 상기 잔여 전력량을 스케줄링하는 단계를 포함하는 것을 특징으로 하는 방법.
  10. 적어도 하나의 응용 프로그램에 대한 파티션을 제어하는 전력 스케줄링 장치로,
    시간 및 메모리 공간상에서 분할된 각각의 파티션으로 전력을 공급하는 전력 공급부; 및
    상기 각각의 파티션에 대한 제한 전력량을 설정하고, 상기 각각의 파티션에 대한 전력 소모량을 실시간으로 모니터링하고, 상기 모니터링 결과, 임의의 파티션에서 상기 임의의 파티션에 상응하는 상기 제한 전력량을 초과하는 전력 소모량이 감지되면, 상기 임의의 파티션에 대한 동작을 제어하는 제어부를 포함하고,
    상기 제어부는,
    상기 임의의 파티션 외의 파티션에서 오류가 발생하는 것을 방지하기 위해 상기 각각의 파티션에 상응하는 시간 구간, 메모리 공간, 및 상기 제한 전력량을 변경하지 않으면서,
    상기 임의의 파티션에 대한 동작을 강제로 종료 또는 중단시키도록 제어하거나, 상기 임의의 파티션으로 공급되는 전력을 차단하도록 제어하는 것을 특징으로 하는 장치.
  11. 제10항에 있어서, 상기 제어부는,
    전체 시스템에 공급 가능한 총 전력 및 순간 전력을 판단하고, 상기 각각의 파티션에 대해 임의의 작업을 수행함에 있어서 요구되는 필요 전력량을 판단하고, 상기 판단된 총 전력, 순간 전력 및 필요 전력량을 기초로 상기 제한 전력량을 판단하는 것을 특징으로 하는 장치.
  12. 제10항에 있어서, 상기 제어부는,
    상기 각각의 파티션을 시간 및 공간에 대하여 작업 스케줄링하고, 상기 작업 스케줄링 결과에 따라 상기 시간 및 공간에 대하여 상기 제한 전력량을 스케줄링하는 것을 특징으로 하는 장치.
  13. 제10항에 있어서, 상기 제어부는,
    전력 소모 상태 감지에 따라 수신되는 전력 소모 정보를 기초로 상기 각각의 파티션에 대한 전력 소모량을 판단하는 것을 특징으로 하는 장치.
  14. 제13항에 있어서, 상기 전력 소모 정보는,
    전류 소모량 및 전력 소모량 중 적어도 하나를 포함하는 것을 특징으로 하는 장치.
  15. 제10항에 있어서, 상기 제어부는,
    상기 각각의 파티션에서 발생하는 적어도 하나의 이벤트를 감지하고, 상기 이벤트에 대응하여 기저장된 전력 소모량에 관한 정보를 기초로, 상기 각각의 파티션에 대한 전력 소모량을 판단하는 것을 특징으로 하는 장치.
  16. 제15항에 있어서,
    입출력 이벤트를 감지하는 입출력부; 및
    데이터 송수신에 관한 통신 이벤트를 감지하는 통신부 중 적어도 하나를 더 포함하고,
    상기 제어부는,
    상기 입출력부 및 상기 통신부 중 적어도 하나를 통하여 상기 입출력 이벤트 및 상기 통신 이벤트 중 적어도 하나를 감지하는 것을 특징으로 하는 장치.
  17. 삭제
  18. 제10항에 있어서, 상기 제어부는,
    상기 각각의 파티션에 대하여 상기 제한 전력량 이하의 전력 소모량이 감지되면, 상기 제한 전력량과 상기 전력 소모량 간의 차이를 상기 각각의 파티션에 대한 잔여 전력량으로 관리하고, 상기 모니터링 결과, 임의의 파티션에서 상기 제한 전력량을 초과하는 전력 소모량이 감지되면, 상기 임의의 파티션에 대하여 관리되고 있는 상기 잔여 전력량을 스케줄링하는 것을 특징으로 하는 장치.
  19. 제11항에 있어서, 상기 시스템은,
    ARINC 653 표준이 적용되는 시스템인 것을 특징으로 하는 장치.
  20. 제11항에 있어서, 상기 시스템은,
    안전 우선 시스템(Safety-Critical Systems)인 것을 특징으로 하는 장치.
KR1020160038491A 2015-11-25 2016-03-30 전력 스케줄링 방법 및 장치 KR102314425B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/361,118 US10503230B2 (en) 2015-11-25 2016-11-25 Method and apparatus for power scheduling

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020150165390 2015-11-25
KR20150165390 2015-11-25

Publications (2)

Publication Number Publication Date
KR20170061047A KR20170061047A (ko) 2017-06-02
KR102314425B1 true KR102314425B1 (ko) 2021-10-20

Family

ID=59222666

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160038491A KR102314425B1 (ko) 2015-11-25 2016-03-30 전력 스케줄링 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102314425B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110145555A1 (en) * 2009-12-15 2011-06-16 International Business Machines Corporation Controlling Power Management Policies on a Per Partition Basis in a Virtualized Environment
US20140281606A1 (en) * 2013-03-15 2014-09-18 Silicon Graphics International Corp. Data storage power consumption threshold
US20150177814A1 (en) 2013-12-23 2015-06-25 Dell, Inc. Predictive power capping and power allocation to computing nodes in a rack-based information handling system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101648978B1 (ko) * 2009-11-05 2016-08-18 삼성전자주식회사 저전력 멀티코어 시스템에서의 전력 제어 방법 및 장치
KR20140145781A (ko) * 2013-06-14 2014-12-24 한국전자통신연구원 항공용 시스템 설정에 관한 사용자 인터페이스 제공 장치 및 그 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110145555A1 (en) * 2009-12-15 2011-06-16 International Business Machines Corporation Controlling Power Management Policies on a Per Partition Basis in a Virtualized Environment
US20140281606A1 (en) * 2013-03-15 2014-09-18 Silicon Graphics International Corp. Data storage power consumption threshold
US20150177814A1 (en) 2013-12-23 2015-06-25 Dell, Inc. Predictive power capping and power allocation to computing nodes in a rack-based information handling system

Also Published As

Publication number Publication date
KR20170061047A (ko) 2017-06-02

Similar Documents

Publication Publication Date Title
US10019286B2 (en) Time critical tasks scheduling
EP2695063B1 (en) Method and system for dynamically controlling power to multiple cores in a multicore processor of a portable computing device
US9304886B2 (en) Associating energy consumption with a virtual machine
US8706265B2 (en) Safety controller and safety control method
US7631204B2 (en) Power supply device having communication channels with different types of communication connections
EP3201717B1 (en) Monitoring of shared server set power supply units
US20170315603A1 (en) Power profiling for embedded system design
KR101197086B1 (ko) 스마트 모니터링 장치
EP3557345B1 (en) Control apparatus, system program, and control method
KR20160044467A (ko) 전력 신호 인터페이스
US20200401093A1 (en) Hybrid system-on-chip for power and performance prediction and control
US8806246B1 (en) Enforcing and complying with a computing device power policy
US20140229956A1 (en) Method and System for Deterministic Multicore Execution
JP2016110460A (ja) プログラマブルコントローラ、プログラマブルコントローラの制御方法およびプログラム
KR102112233B1 (ko) 무선 데이터 전송 장치 및 게이트웨이를 이용한 개폐식 구조물의 모니터링 방법 및 장치
US10275007B2 (en) Performance management for a multiple-CPU platform
CN106557362B (zh) 应用于智能机器人的任务迁移方法及系统
JP6252333B2 (ja) 装置
US9383223B2 (en) Smart meter system architecture
KR102314425B1 (ko) 전력 스케줄링 방법 및 장치
US10503230B2 (en) Method and apparatus for power scheduling
US11281283B2 (en) Automatic security design and management system
WO2023231837A1 (zh) 一种数据处理方法、装置、设备、存储介质及系统
KR20120111210A (ko) 대기 전력 제어 시스템과 이의 동작 방법
KR101174361B1 (ko) 전력사용량을 표시하는 조명제어시스템

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant