1 |
1
멀티 프로세서(multi processor) 환경에서 스케쥴링 프레임워크가 자바(JAVA) 언어 기반 응용 프로그램을 실시간으로 제어하는 방법에 있어서, a) 적어도 하나 이상의 응용 프로그램이 실행되면 상기 실행된 응용 프로그램을 프레임워크에 등록하는 단계; b) 상기 응용 프로그램이 실행됨에 따라 생성되는 각 스레드(thread)의 실행 순서를 조정하고, 상기 각 스레드를 각각의 프로세서에 할당시키는 스케줄러(scheduler)를 설정하는 단계; c) 상기 각 스레드에 대한 작업 주기와 데드라인에 대응되는 주기 타이머와 데드라인 타이머를 각각 생성하는 단계; d) 상기 주기 타이머, 상기 데드라인 타이머 및 상기 각 스레드에 대한 작업 완료 여부에 대한 정보 중 적어도 어느 하나를 기초로 상기 b) 단계에서 설정된 스케줄러를 호출하여 상기 프레임워크가 소유한 제어권한을 상기 호출된 스케줄러에 할당하고, 상기 각 스레드에 대한 작업을 수행하는 단계; e) 상기 d) 단계에서 수행된 작업이 완료되면, 상기 호출된 스케쥴러에 할당된 제어권한을 상기 호출된 스케쥴러로부터 회수하는 단계; 및 f) 상기 a) 내지 상기 d) 단계를 통해 작업이 완료된 응용 프로그램과 상이한 응용 프로그램이 실행되면, 상기 a) 단계부터 상기 e) 단계까지 순차적으로 반복 실행하는 단계를 포함하는 응용 프로그램 제어 방법
|
2 |
2
제 1 항에 있어서, 상기 b) 단계는 상기 스케줄러의 선입선출(First in First Out) 방식, 상기 각 스레드의 우선순위 및 상기 각 스레드의 프로세스 선호도 중 적어도 하나를 기초로 상기 각 스레드의 실행 순서를 조정하는 응용 프로그램 제어 방법
|
3 |
3
제 1 항에 있어서, 상기 c) 단계에서 상기 주기 타이머 및 상기 데드라인 타이머는 상기 프레임워크를 통해 생성되는 것인, 응용 프로그램 제어 방법
|
4 |
4
제 1 항에 있어서, 상기 c) 단계는 상기 응용 프로그램 사용자에 의해 입력된 정보를 기초로 사용자 타이머를 생성하는 단계를 포함하는 응용 프로그램 제어 방법
|
5 |
5
제 1 항에 있어서, 상기 d) 단계는 상기 호출된 스케줄러의 제어권한을 기초로 상기 스케줄러가 호출된 시점에서 작업을 수행할 소정의 스레드를 결정하는 응용 프로그램 제어 방법
|
6 |
6
제 5 항에 있어서, 상기 d) 단계는 상기 호출된 스케줄러의 제어권한을 기초로 상기 작업을 수행할 소정의 스레드가 할당될 프로세스를 결정하는 응용 프로그램 제어 방법
|
7 |
7
제 1 항에 있어서, 상기 d) 단계는 호출된 스케줄러를 통해 상기 각 스레드 중 상기 각각의 프로세서에서 실행되거나 피선점되는 스레드를 결정하고, 결정된 스레드에 대한 정보를 상기 프레임워크의 라이브러리를 통해 전달하는 것인, 응용 프로그램 제어 방법
|