KR20090120970A - 인터럽트 스케줄링 방법 - Google Patents

인터럽트 스케줄링 방법 Download PDF

Info

Publication number
KR20090120970A
KR20090120970A KR1020080047036A KR20080047036A KR20090120970A KR 20090120970 A KR20090120970 A KR 20090120970A KR 1020080047036 A KR1020080047036 A KR 1020080047036A KR 20080047036 A KR20080047036 A KR 20080047036A KR 20090120970 A KR20090120970 A KR 20090120970A
Authority
KR
South Korea
Prior art keywords
interrupt
target process
rescheduling
priority
target
Prior art date
Application number
KR1020080047036A
Other languages
English (en)
Other versions
KR100959548B1 (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 KR1020080047036A priority Critical patent/KR100959548B1/ko
Priority to US12/469,936 priority patent/US20090292846A1/en
Priority to JP2009123423A priority patent/JP2009282987A/ja
Publication of KR20090120970A publication Critical patent/KR20090120970A/ko
Application granted granted Critical
Publication of KR100959548B1 publication Critical patent/KR100959548B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • 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
    • 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/22Microcontrol or microprogram arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

본 발명은 인터럽트 스케줄링 방법에 관한 것이다.
본 발명에 따른 인터럽트 스케줄링 방법은 컴퓨터 운영체제에서 인터럽트 발생 시 실행을 위해 웨이크업되는 타겟 프로세스 및 실행중인 프로세스 간의 우선순위를 직접 비교하여 재스케줄링을 설정하는 단계 및 재스케줄링 설정 여부에 따라 실행중인 프로세스에서 타겟 프로세스로 직접 컨텍스트 스위칭하는 단계를 포함한다.
본 발명의 인터럽트 스케줄링 방법에 따르면, 웨이크업 된 타겟 프로세스를 레디큐로 진입시키는 과정 및 레디큐에서 우선순위가 가장 높은 프로세스를 선택하는 과정이 생략됨에 따라 컴퓨터 시스템의 운영체제에서 인터럽트로 인해 발생되는 선점 지연시간(Preemption latency)을 최소화시킬 수 있는 효과가 있다.
인터럽트(Interrupt), 스케줄링(Scheduling), 타겟 프로세스(Target process), 선점 지연시간(Preemption latency), 레디큐(Ready queue)

Description

인터럽트 스케줄링 방법{A METHOD OF INTERRUPT SCHEDULING}
본 발명은 인터럽트 스케줄링 방법에 관한 것이다. 더욱 구체적으로는, 컴퓨터 시스템 운영체제에서의 인터럽트 스케줄링 방법에 관한 것이다.
일반적으로, 컴퓨터 시스템의 운영체제에서 인터럽트가 발생했을 때 인터럽트를 처리하기 위해 호출되는 인터럽트 핸들러(Interrupt handler) 함수는 인터럽트 발생 당시, 컴퓨터 시스템에서 실행 중이던 프로세스의 컨텍스트(Context)에서 실행된다. 인터럽트 핸들러 함수는 경우에 따라 해당 인터럽트를 기다리고 있던 타겟 프로세스(Target precess)를 웨이크업(Wake-up)하는 루틴을 포함할 수 있다. 인터럽트 핸들러 함수에 의해 웨이트업 된 타겟 프로세스는 운영체제 스케쥴러(Scheduler)에 의해 선택되어 즉시 실행될 수 있도록 레디큐(Ready queue)로 진입하게 된다. 운영체제 스케쥴러는 인터럽트 핸들러 함수가 종료된 후, 레디큐에 있는 일련의 프로세스들 가운데 우선순위가 가장 높은 프로세스를 선택하여 실행시킨다. 여기서, 인터럽트 발생 이전에 실행 중이던 프로세스의 우선순위가 가장 높을 경우, 커널 선점(Kernel preemption)이 발생하지 않는다. 그러나, 인터럽트 핸들러 함수에 의해 새롭게 웨이트업 된 타겟 프로세스의 우선순위가 가장 높을 경 우, 인터럽트 발생 이전의 프로세스로부터 타겟 프로세스로의 커널 선점이 발생되고 이후, 타켓 프로세스는 실행을 시작하게 된다.
이하에서는, 첨부된 도면을 참조하여 일반적인 인터럽트 스케줄링 방법에 대해 설명한다.
도1은 일반적인 인터럽트 스케줄링 방법을 개략적으로 나타낸 순서도이다.
도1을 참조하면, 기존의 인터럽트 스케줄링 방법은 먼저, 컴퓨터 시스템에서 인터럽트가 발생(101)됨에 따라, 현재 실행중인 프로세스의 실행이 잠시 중단되고, 현재의 컨텍스트에서 인터럽트 핸틀러 함수의 실행이 시작(103)된다. 이후, 인터럽트 핸들러 함수의 실행 중 해당 인터럽트를 기다리며 슬립(Sleep) 상태에 있는 타겟 프로세스가 웨이크업(105) 될 경우, 타겟 프로세스는 레디큐로 진입(107)하게 된다. 이후, 타겟 프로세스 및 실행중인 프로세스 간의 우선순위를 확인한다. 타겟 프로세스의 우선순위가 현재 실행중인 프로세스의 우선순위보다 높을 경우, 재스케줄링이 설정(111)된다. 이후, 인터럽트 핸들러 함수는 실행 종료(113)된다.
반면, 현재 실행중인 프로세스의 우선순위가 타겟 프로세스의 우선순위보다 높을 경우, 인터럽트 핸들러 함수는 바로 실행이 종료된다(113). 인터럽트 핸들러 함수의 실행 종료(113) 이후, 재스케줄링의 설정 여부가 판별(115)된다. 여기서, 재스케줄링의 설정이 되어 있는 경우, 운영체제 스케쥴러 함수를 호출하여 레디큐에서 우선순위가 가장 높은 프로세스를 선택(117)하게 되고, 현재 실행중인 프로세스에서 선택된 프로세스로의 컨텍스트 스위칭을 실행하게 된다(119). 한편, 재스케줄링이 설정되어 있지 않은 경우, 현재 실행중인 프로세스는 인터럽트 발생 이전에 실행하던 연산을 계속 진행하게 된다(121).
따라서, 기존의 인터럽트 스케줄링 방법은 타겟 프로세스가 웨이크업되는 시점에서부터 타겟 프로세스 및 현재 실행중인 프로세스 간의 우선순위를 비교하는 과정까지의 대부분의 경우에서, 타겟 프로세스는 레디큐로 진입된 후, 운영체제 스케쥴러를 통해 다음 실행될 프로세스로 선택되어 현재 실행중인 프로세스를 선점하게 된다. 즉, 타겟 프로세스가 현재 실행중인 프로세스를 선점할 것이 분명해 질 경우, 웨이크업 된 타겟 프로세스를 레디큐로 진입시키고, 타겟 프로세스를 처리하기 위한 운영체제 스케쥴러의 호출과정조차도 불필요해짐을 알 수 있다. 이에 따라, 기존의 인터럽트 스케줄링 방법은 인터럽트의 발생시점으로부터 타겟 프로세스의실행까지의 선점 지연시간(Preemption latency)을 불필요하게 소요하는 문제점을 가질 수 있게 된다.
이러한 문제점을 해결하기 위한 본 발명의 목적은 인터럽트의 발생시점에서부터 타겟 프로세스의 실행을 시작하기까지의 선점 지연시간을 최소화시키는 인터럽트 스케줄링 방법을 제공하는 것이다.
본 발명에 따른 인터럽트 스케줄링 방법은 컴퓨터 운영체제에서 인터럽트 발생 시 실행을 위해 웨이크업되는 타겟 프로세스 및 실행중인 프로세스 간의 우선순 위를 직접 비교하여 재스케줄링을 설정하는 단계 및 재스케줄링 설정 여부에 따라 실행중인 프로세스에서 타겟 프로세스로 직접 컨텍스트 스위칭하는 단계를 포함한다.
컨텍스트 스위칭하는 단계 이후,
실행중인 프로세스의 레디큐 진입 여부에 따라 실행중인 프로세스를 레디큐로 진입시키는 단계를 더 포함한다.
재스케줄링을 설정하는 단계는,
타겟 프로세스의 웨이크업 실행 여부를 판별하는 단계, 타겟 프로세스가 웨이크업되는 경우, 웨이크업 된 타켓 프로세스 및 실행중인 프로세스 간의 우선순위를 직접 비교하는 단계 및 타켓 프로세스의 우선순위가 실행중인 프로세스의 우선순위보다 높은 경우, 재스케줄링을 설정하는 단계를 포함하는 것이 바람직하다.
컨텍스트 스위칭하는 단계는,
재스케줄링 설정 여부를 판별하는 단계 및 재스케줄링이 설정된 경우, 실행중인 프로세스에서 타켓 프로세스로 직접 컨텍스트 스위칭하는 단계를 포함하는 것이 바람직하다.
본 발명의 인터럽트 스케줄링 방법에 따르면, 웨이크업 된 타겟 프로세스를 레디큐로 진입시키는 과정 및 레디큐에서 우선순위가 가장 높은 프로세스를 선택하는 과정이 생략됨에 따라 컴퓨터 시스템의 운영체제에서 인터럽트로 인해 발생되는 선점 지연시간이 최소화될 수 있는 효과가 있다.
이하에서는, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예에 따른 인터럽트 스케줄링 방법에 대해 설명한다.
도 2는 본 발명의 실시 예에 따른 인터럽트 스케줄링 방법을 개략적으로 나타낸 도면이다.
도 2를 참조하면, 본 발명의 실시 예에 따른 인터럽트 스케줄링 방법은 컴퓨터 시스템 운영체제에서 인터럽트 발생 시, 실행을 위해 웨이크업(Wake-up)되는 타겟 프로세스(Target process) 및 현재 실행중인 프로세스 간의 우선순위에 따라 재스케줄링(Rescheduling)이 설정되는 단계(S1) 및 재스케줄링 설정 여부에 따라 실행중인 프로세스에서 상기 타겟 프로세스로 컨텍스트 스위칭(Context switching)되는 단계(S2)를 포함한다.
도 3은 도 2에서 도시된 인터럽트 스케줄링 방법을 더욱 구체적으로 나타낸 순서도이다.
도3에서 도시된 인터럽트 스케줄링 방법은 먼저, 컴퓨터 시스템의 운영체제에서 인터럽트가 발생(300)될 경우, 현재 실행중인 프로세스의 실행이 잠시 중단되고, 실행중인 프로세스의 컨텍스트에서 인터럽트 핸들러가 실행된다(301). 이에 따라, 인터럽트 핸들러의 실행 도중 해당 인터럽트를 기다리며 슬립(Sleep) 상태에 있는 타겟 프로세스가 웨이크업 될 수 있게 된다.
이후, 인터럽트 핸들러에 의해 타겟 프로세스의 웨이크업 되었는지에 대한 여부를 판별하게 된다(303). 타겟 프로세스가 웨이크업 된 경우, 타겟 프로세스의 우선순위와 현재 실행중인 프로세스의 우선순위를 비교하게 된다(305). 여기서, 웨이트업 된 타겟 프로세스는 레디큐로 진입되는 과정 없이 현재 실행중인 프로세스와의 우선순위 비교과정을 즉시 수행하게 된다. 이에 따라, 타겟 프로세스의 우선순위가 실행중인 프로세스의 우선순위보다 높을 경우, 인터럽트 핸들러의 종료 이후 재스케줄링이 필요함으로 재스케줄링이 설정(307)되고, 인터럽트 핸들러의 실행이 종료된다(309). 반면, 타겟 프로세스의 우선순위가 실행중인 프로세스의 우선순위보다 낮을 경우, 인터럽트 핸들러의 실행이 바로 종료된다(309).
따라서, 기존의 인터럽트 스케줄링 방법과 비교해 볼 때, 본 발명에 따른 인터럽트 스케줄링 방법은 인터럽트 발생 단계(300)에서부터 재스케줄링이 설정되는 단계(307)까지의 과정에서 인터럽트 핸들러를 통해 웨이크업 된 타겟 프로세스가 레디큐(Ready queue)로 진입되는 과정을 생략 할 수 있게 된다.
다음으로, 인터럽트 핸들러의 실행 종료(309) 후에는 커널(Kernel)을 통해 재스케줄링 설정 여부가 판별된다(311). 재스케줄링이 설정되었을 경우, 운영체제 스케줄러가 호출되어 실행이 바로 이루어지는 것이 아니라, 현재 실행중인 프로세스에서 타겟 프로세스로의 컨텍스트 스위칭이 바로 실행된다(313). 즉, 재스케줄링 설정 여부를 판별하여 재스케줄링이 설정된 경우, 운영체제 스케줄러에 의해 레디큐에서 우선순위가 가장 높은 프로세스를 선택하는 과정 없이 바로 컨텍스트 스위칭이 실행된다.
반면, 재스케줄링의 설정이 되어 있지 않을 경우, 현재 실행중인 프로세스의 컨텍스트가 그대로 유지되며, 인터럽트 발생 이전에 실행하던 프로세스의 연산은 계속 진행될 수 있게 된다(305).
따라서, 기존의 인터럽트 스케줄링 방법과 비교해 볼 때, 본 발명에 따른 인터럽트 스케줄링 방법은 인터럽트 핸들러 실행이 종료되는 단계(309)에서부터 타겟 프로세스로 컨텍스트 스위칭되는 단계(313)까지의 과정에서 다음 실행될 프로세스를 선택하기 위해 운영체제 스케줄러를 통해 레디큐에서 가장 우선순위가 높은 프로세스를 선택하는 과정을 생략 할 수 있게 된다.
다음으로, 현재 실행중인 프로세스에서 타겟 프로세스로 컨텍스트 스위칭이 실행된 이후, 운영체제 스케줄러의 실행이 시작된다. 이때, 현재 실행중인 프로세스가 레디큐에 진입되지 않은 상태로 선점될 경우, 문제가 발생될 수 있다. 따라서, 도 4에서 도시된 바와 같이, 운영체제 스케줄러의 연산이 실질적으로 실행되기 전에 먼저 현재 실행중인 프로세스의 레디큐 진입 여부를 확인한다(401). 여기서, 현재 실행중인 프로세스가 레디큐로 진입되어 있지 않을 경우, 실행중인 프로세스를 레디큐로 진입시킨 후, 운영체제 스케줄러의 실질적인 연산을 계속해서 실행되도록 한다(405). 반면, 실행중인 프로세스가 레디큐로 진입되어 있는 경우, 운영체제 스케줄러의 연산이 바로 실행될 수 있게 된다(405).
따라서, 본 발명의 실시 예에 따른 인터럽트 스케줄링 방법은 웨이크업 된 타겟 프로세스를 레디큐로 진입시키는 과정과 레디큐에서 가장 우선순위가 높은 프 로세스를 선택하는 과정을 생략 할 수 있다. 이에 따라, 컴퓨터 시스템의 운영체제에서 인터럽트로 인해 발생되는 선점 지연시간(Preemption latency)을 최소화 시킬 수 있게 된다.
본 발명에 따른 인터럽트 스케줄링 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체에 대한 설명은 본 발명의 일 실시 예에 따른 인터럽트 스케줄링 방법에 대한 상세한 설명으로 대체한다.
이상에서 보는 바와 같이, 본 발명이 속하는 기술 분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시 될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시 예는 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 하고, 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
도 1은 일반적인 인터럽트 스케줄링 방법을 나타낸 순서도.
도 2는 본 발명의 실시 예에 따른 인터럽트 스케줄링 방법을 나타낸 도면.
도 3 및 도 4는 본 발명의 실시 예에 따른 인터럽트 스케줄링 방법을 나타낸 순서도.

Claims (5)

  1. 컴퓨터 운영체제에서 인터럽트 발생 시 실행을 위해 웨이크업되는 타겟 프로세스 및 실행중인 프로세스 간의 우선순위를 직접 비교하여 재스케줄링을 설정하는 단계; 및
    상기 재스케줄링 설정 여부에 따라 상기 실행중인 프로세스에서 상기 타겟 프로세스로 직접 컨텍스트 스위칭하는 단계를 포함하는, 인터럽트 스케줄링 방법.
  2. 제1항에 있어서,
    상기 컨텍스트 스위칭하는 단계 이후,
    상기 실행중인 프로세스의 레디큐 진입 여부에 따라 상기 실행중인 프로세스를 상기 레디큐로 진입시키는 단계를 더 포함하는, 인터럽트 스케줄링 방법.
  3. 제1항에 있어서,
    상기 재스케줄링을 설정하는 단계는,
    상기 타겟 프로세스의 웨이크업 실행 여부를 판별하는 단계;
    상기 타겟 프로세스가 웨이크업되는 경우, 상기 웨이크업 된 타켓 프로세스 및 상기 실행중인 프로세스 간의 우선순위를 직접 비교하는 단계; 및
    상기 타켓 프로세스의 우선순위가 상기 실행중인 프로세스의 우선순위보다 높은 경우, 상기 재스케줄링을 설정하는 단계를 포함하는, 인터럽트 스케줄링 방 법.
  4. 제1항에 있어서,
    상기 컨텍스트 스위칭하는 단계는,
    상기 재스케줄링 설정 여부를 판별하는 단계; 및
    상기 재스케줄링이 설정된 경우, 상기 실행중인 프로세스에서 상기 타켓 프로세스로 직접 컨텍스트 스위칭하는 단계를 포함하는, 인터럽트 스케줄링 방법.
  5. 제1항 내지 제4항 중 어느 한 항의 인터럽트 스케줄링 방법을 실행하기 위한 프로그램이 기록된, 컴퓨터로 읽을 수 있는 기록매체.
KR1020080047036A 2008-05-21 2008-05-21 인터럽트 스케줄링 방법 KR100959548B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020080047036A KR100959548B1 (ko) 2008-05-21 2008-05-21 인터럽트 스케줄링 방법
US12/469,936 US20090292846A1 (en) 2008-05-21 2009-05-21 Method of interrupt scheduling
JP2009123423A JP2009282987A (ja) 2008-05-21 2009-05-21 割込みスケジューリング方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080047036A KR100959548B1 (ko) 2008-05-21 2008-05-21 인터럽트 스케줄링 방법

Publications (2)

Publication Number Publication Date
KR20090120970A true KR20090120970A (ko) 2009-11-25
KR100959548B1 KR100959548B1 (ko) 2010-05-27

Family

ID=41342909

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080047036A KR100959548B1 (ko) 2008-05-21 2008-05-21 인터럽트 스케줄링 방법

Country Status (3)

Country Link
US (1) US20090292846A1 (ko)
JP (1) JP2009282987A (ko)
KR (1) KR100959548B1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9418005B2 (en) 2008-07-15 2016-08-16 International Business Machines Corporation Managing garbage collection in a data processing system
US9176783B2 (en) 2010-05-24 2015-11-03 International Business Machines Corporation Idle transitions sampling with execution context
US8843684B2 (en) 2010-06-11 2014-09-23 International Business Machines Corporation Performing call stack sampling by setting affinity of target thread to a current process to prevent target thread migration
US8799872B2 (en) 2010-06-27 2014-08-05 International Business Machines Corporation Sampling with sample pacing
KR20120065097A (ko) * 2010-12-10 2012-06-20 한국전자통신연구원 단말 가상화 환경에서 사용자 입력 처리 성능 향상을 위한 인터럽트 처리 장치 및 그 방법
US8799904B2 (en) 2011-01-21 2014-08-05 International Business Machines Corporation Scalable system call stack sampling
JP6615726B2 (ja) * 2016-09-16 2019-12-04 株式会社東芝 情報処理装置、情報処理方法及びプログラム
CN110673937B (zh) * 2019-09-19 2022-11-15 惠州志顺电子实业有限公司 单片机及其同步异步控制方法
CN111813531B (zh) * 2020-08-31 2020-11-27 北京国科环宇科技股份有限公司 一种操作系统时钟调度方法及系统

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0328933A (ja) * 1989-06-26 1991-02-07 Matsushita Electric Ind Co Ltd タスク制御方法
US5414858A (en) * 1992-12-11 1995-05-09 International Business Machines Corporation System and method for dynamically varying between interrupt and polling to service requests of computer peripherals
US5630049A (en) * 1994-11-30 1997-05-13 Digital Equipment Corporation Method and apparatus for testing software on a computer network
US5675800A (en) * 1994-11-30 1997-10-07 Digital Equipment Corporation Method and apparatus for remotely booting a computer system
JP2001323840A (ja) * 2000-05-12 2001-11-22 Keihin Corp 自動車用制御ユニット
JP2002014841A (ja) * 2000-06-30 2002-01-18 Esol Co Ltd デバッグカーネルシステム
JP4122725B2 (ja) * 2001-04-19 2008-07-23 株式会社ジェイテクト リアルタイム制御システム
US7159216B2 (en) * 2001-11-07 2007-01-02 International Business Machines Corporation Method and apparatus for dispatching tasks in a non-uniform memory access (NUMA) computer system
KR20030042069A (ko) * 2001-11-20 2003-05-28 주식회사 하이닉스반도체 인터럽트 제어기 및 인터럽트 제어 방법
US7448036B2 (en) * 2002-05-02 2008-11-04 International Business Machines Corporation System and method for thread scheduling with weak preemption policy
US7003610B2 (en) * 2002-09-20 2006-02-21 Lsi Logic Corporation System and method for handling shared resource writes arriving via non-maskable interrupts (NMI) in single thread non-mission critical systems with limited memory space
KR20050062298A (ko) * 2003-12-20 2005-06-23 엘지전자 주식회사 고속의 인터럽트 처리기 및 처리 방법
JP2005301666A (ja) * 2004-04-12 2005-10-27 Seiko Epson Corp 情報処理装置
US7765547B2 (en) * 2004-11-24 2010-07-27 Maxim Integrated Products, Inc. Hardware multithreading systems with state registers having thread profiling data
JP4387970B2 (ja) * 2005-03-31 2009-12-24 富士通株式会社 データ入出力プログラム,装置,および方法
JP2006309311A (ja) * 2005-04-26 2006-11-09 Oki Electric Ind Co Ltd 割込制御回路
US8527958B2 (en) * 2005-05-16 2013-09-03 Texas Instruments Incorporated Profiling operating context and tracing program on a target processor
JP2007249357A (ja) * 2006-03-14 2007-09-27 Toyota Motor Corp 情報処理装置、分散処理システム及びタスク管理方法

Also Published As

Publication number Publication date
JP2009282987A (ja) 2009-12-03
US20090292846A1 (en) 2009-11-26
KR100959548B1 (ko) 2010-05-27

Similar Documents

Publication Publication Date Title
KR100959548B1 (ko) 인터럽트 스케줄링 방법
US7529956B2 (en) Granular reduction in power consumption
US8909962B2 (en) System and method for controlling central processing unit power with guaranteed transient deadlines
KR101409055B1 (ko) 추론된 작업부하 병렬성에 기초하여 중앙 처리 장치 전력을 제어하는 시스템 및 방법
JP5605970B2 (ja) リソースセット移行をスケジュールすることによる、ポータブルコンピューティングデバイスにおけるプロセッサアプリケーション状態間のリソース待ち時間の最小化
JP5824162B2 (ja) スケジュールされたリソースセット移行を使用したポータブルコンピューティングデバイスのための作業負荷推定による電力の節約
JPWO2005106623A1 (ja) Cpuクロック制御装置、cpuクロック制御方法、cpuクロック制御プログラム、記録媒体、及び伝送媒体
JP5411587B2 (ja) マルチスレッド実行装置、マルチスレッド実行方法
JP5982588B2 (ja) 保証された過渡期限とともに中央処理装置の電力を制御するためのシステムおよび方法
WO2013116751A1 (en) Dynamic power management in real-time systems
US7043729B2 (en) Reducing interrupt latency while polling
JP2005165470A (ja) 電子機器およびプロセッサ速度制御方法
CN109343960A (zh) 一种Linux系统的任务调度方法、系统及相关装置
KR101578336B1 (ko) 보장된 과도 데드라인들로 중앙 프로세싱 유닛 전력을 제어하기 위한 시스템 및 방법
EP2490100B1 (en) Suspendable interrupts for processor idle management
JP2001236236A (ja) タスク制御装置およびそのタスクスケジューリング方法
WO2018211865A1 (ja) 車両制御装置
CN111813531B (zh) 一种操作系统时钟调度方法及系统
JP2009048358A (ja) 情報処理装置及びスケジューリング方法
Brandenburg et al. Accounting for interrupts in multiprocessor real-time systems
KR100930009B1 (ko) 인터럽트 처리방법
JP2016184315A (ja) 電子制御装置
CN115981829B (zh) 一种物联网中的调度方法及系统
TWI463406B (zh) 具搶占功能的即時中斷處理系統及其方法
CN110262839B (zh) 一种处理器的调度方法、装置及存储介质

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
FPAY Annual fee payment

Payment date: 20130429

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140422

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee