KR101390267B1 - 실시간 운영체제 태스크 모니터링 방법 및 장치 - Google Patents

실시간 운영체제 태스크 모니터링 방법 및 장치 Download PDF

Info

Publication number
KR101390267B1
KR101390267B1 KR1020120126988A KR20120126988A KR101390267B1 KR 101390267 B1 KR101390267 B1 KR 101390267B1 KR 1020120126988 A KR1020120126988 A KR 1020120126988A KR 20120126988 A KR20120126988 A KR 20120126988A KR 101390267 B1 KR101390267 B1 KR 101390267B1
Authority
KR
South Korea
Prior art keywords
task
running
real
tasks
information
Prior art date
Application number
KR1020120126988A
Other languages
English (en)
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 KR1020120126988A priority Critical patent/KR101390267B1/ko
Application granted granted Critical
Publication of KR101390267B1 publication Critical patent/KR101390267B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 실시간 운영체제 태스크 모니터링 방법 및 장치에 관한 것이다. 본 발명에 따르면, 임베디드 시스템에서 실시간 운영체제 태스크 모니터링 장치를 이용한 실시간 운영체제 태스크 모니터링 방법에 있어서, 복수의 태스크에 대한 상태 정보와, 러닝 상태에 있는 러닝 태스크의 실행 시간 정보를 각각 메모리부에 저장하는 단계와, 아이들 태스크가 실행 중인지를 판단하는 단계, 및 상기 아이들 태스크가 실행 중인 경우, 상기 복수의 태스크에 대한 상태 정보 및 상기 러닝 태스크의 실행 시간 정보를 사용자 단말기로 전송하는 단계를 포함하는 실시간 운영체제 태스크 모니터링 방법을 제공한다.
본 발명에 따른 실시간 운영체제 태스크 모니터링 방법 및 장치에 따르면, 실시간 운영체제 기반의 임베디드 시스템에서 아이들 태스크가 실행 중일 때 태스크의 모니터링 정보를 제공하여 태스크의 실시간 모니터링을 용이하게 하는 이점이 있다.

Description

실시간 운영체제 태스크 모니터링 방법 및 장치{Method for monitoring of OS task and apparatus thereof}
본 발명은 실시간 운영체제 태스크 모니터링 방법 및 장치에 관한 것으로서, 보다 상세하게는 실시간 운영체제를 사용하는 임베디드 시스템에서 태스크의 상태를 실시간 모니터할 수 있는 실시간 운영체제 태스크 모니터링 방법 및 장치에 관한 것이다.
일반적으로 실시간 운영체제를 사용하는 임베디드 시스템에서 태스크(Task)의 실시간 모니터링 과정은 쉽지 않다. 종래에는 시리얼 인터페이스 또는 에뮬레이터를 이용한 디버깅 방법을 사용하여 태스크의 상태를 모니터링한다.
시리얼 통신 인터페이스를 이용한 방법은 별도의 소프트웨어를 타겟에 탑재하고 사용자 단말기(컴퓨터)와 타겟 간의 디버깅 프로토콜을 사용하여 디버깅을 수행한다. 이 방법은 소프트웨어를 중단하지 않고 실행 상태에서 태스크의 상태를 모니터링할 수 있으나 디버깅 태스크를 추가하여 사용하므로 전체 시스템의 실시간 실행 결과에 영향을 주게 된다.
전용 에뮬레이터를 이용하는 방법은 추가적인 디버깅 소프트웨어 없이 디버깅을 수행할 수 있다. 디버깅 방법에 관한 배경기술은 국내공개특허 제2003-0015581호에 개시되어 있다.
그런데, 전용 에뮬레이터를 이용한 방식은 MCU의 디버깅 인터페이스(ex, JATG, BDM)를 사용하기 위해 고가의 에뮬레이터가 필요하며 디버깅을 위해 MCU를 정지상태로 만들어야 한다. 따라서, 실시간 운영체제를 사용한 임베디드 시스템에서는 태스크를 실시간 모니터링하는 데에 많은 어려움이 따른다.
본 발명은, 실시간 운영체제 기반의 임베디드 시스템에서 태스크의 실시간 모니터링을 용이하게 실현할 수 있는 실시간 운영체제 태스크 모니터링 방법 및 장치를 제공하는데 목적이 있다.
본 발명은, 임베디드 시스템에서 실시간 운영체제 태스크 모니터링 장치를 이용한 실시간 운영체제 태스크 모니터링 방법에 있어서, 복수의 태스크에 대한 상태 정보와, 러닝 상태에 있는 러닝 태스크의 실행 시간 정보를 각각 메모리부에 저장하는 단계와, 아이들 태스크가 실행 중인지를 판단하는 단계, 및 상기 아이들 태스크가 실행 중인 경우, 상기 복수의 태스크에 대한 상태 정보 및 상기 러닝 태스크의 실행 시간 정보를 사용자 단말기로 전송하는 단계를 포함하는 실시간 운영체제 태스크 모니터링 방법을 제공한다.
여기서, 상기 복수의 태스크에 대한 상태 정보와 상기 러닝 태스크의 실행 시간 정보를 메모리부에 저장하는 단계는, 상기 태스크가 러닝 상태가 되면 프리태스크 훅(PreTaskHook)을 호출하고, 상기 태스크가 러닝 상태를 벗어나면 포스트태스크 훅(PostTaskHook)을 호출할 수 있다.
또한, 상기 복수의 태스크에 대한 상태 정보와 상기 러닝 태스크의 실행 시간 정보를 메모리부에 저장하는 단계는, 상기 훅이 호출된 정보를 이용하여 상기 러닝 태스크의 실행 시간 정보를 저장할 수 있다.
또한, 상기 사용자 단말기는, 상기 복수의 태스크에 대한 상태 변화를 실시간 모니터링할 수 있다.
그리고, 본 발명은, 임베디드 시스템에서 실시간 운영체제 태스크 모니터링 장치에 있어서, 복수의 태스크에 대한 상태 정보와, 러닝 상태에 있는 러닝 태스크의 실행 시간 정보를 각각 저장하는 메모리부와, 아이들 태스크가 실행 중인지를 판단하는 판단부, 및 상기 아이들 태스크가 실행 중인 경우, 상기 복수의 태스크에 대한 상태 정보 및 상기 러닝 태스크의 실행 시간 정보를 사용자 단말기로 전송하는 전송부를 포함하는 실시간 운영체제 태스크 모니터링 장치를 제공한다.
본 발명에 따른 실시간 운영체제 태스크 모니터링 방법 및 장치에 따르면, 실시간 운영체제 기반의 임베디드 시스템에서 아이들 태스크가 실행 중일 때 태스크의 모니터링 정보를 제공하여 태스크의 실시간 모니터링을 용이하게 하는 이점이 있다.
도 1은 본 발명의 실시예에 따른 실시간 운영체제 태스크 모니터링 장치의 구성도이다.
도 2는 도 1을 이용한 실시간 운영체제 태스크 모니터링 방법의 흐름도이다.
도 4는 도 2의 S230 단계에 따라 사용자 단말기에서 모니터링 가능한 정보를 나타낸다.
도 3은 도 2의 S210 단계를 설명하는 개념도이다.
그러면 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.
도 1은 본 발명의 실시예에 따른 실시간 운영체제 태스크 모니터링 장치의 구성도다. 상기 실시간 운영체제 태스크 모니터링 장치(100)는 실시간 운영체제를 기반으로 하는 임베디드 시스템에서 태스크(Task)의 상태를 실시간 모니터링 하기 위한 것으로서, 메모리부(110), 판단부(120) 및 전송부(130)를 포함한다.
상기 메모리부(110)는 복수의 태스크에 대한 상태 정보와, 러닝 상태에 있는 러닝 태스크의 실행 시간 정보를 각각 저장하는 부분이다. 상기 판단부(120)는 아이들 태스크(Idle Task)가 실행 중인지를 판단하는 부분이다.
상기 전송부(130)는 상기 아이들 태스크가 실행 중이면 상기 복수의 태스크에 대한 상태 정보 및 러닝 태스크의 실행 시간 정보를 통신 인터페이스(Communication Interface)를 통해 사용자 단말기(10)로 전송한다.
여기서, 사용자 단말기(10)(User Computer)란 태스크 정보를 수신하여 태스크의 모니터링이 가능한 기 공지된 다양한 단말기에 해당될 수 있다. 또한, 통신 인터페이스는 시리얼 통신, CAN 통신 등의 다양한 인터페이스에 해당된다.
이러한 과정에 따라 상기 사용자 단말기(10)에서는 상기 복수의 태스크에 대한 시간에 따른 상태 변화를 실시간 모니터링할 수 있게 된다.
도 2는 도 1을 이용한 실시간 운영체제 태스크 모니터링 방법의 흐름도이다. 이하에서는 상기 실시간 운영체제 태스크 모니터링 장치(100)를 이용한 실시간 운영체제 태스크 모니터링 방법에 관하여 상세히 알아본다.
먼저, 메모리부(110)에서는 복수의 태스크에 대한 상태 정보와, 러닝 상태에 있는 러닝 태스크의 실행 시간 정보를 각각 저장한다(S210). 이를 위해, 상기 메모리부(110)는 각 태스크의 러닝 상태의 여부에 따라 각 태스크에 대한 프리태스크 훅(PreTaskHook) 또는 포스트태스크 훅(PostTaskHook)을 호출한다.
도 3은 도 2의 S210 단계를 설명하는 개념도이다. 도 3을 참조하면, 메모리부(110)가 복수의 태스크에 대한 상태 정보와 러닝 태스크의 실행 시간 정보를 저장할 때에는, 상기 태스크가 러닝 상태가 되면 프리태스크 훅을 호출하고, 상기 태스크가 러닝 상태를 벗어나면 포스트태스크 훅을 호출한다.
이상과 같은 훅 호출 과정을 통해 개별 태스크에 대한 시간 흐름에 따른 상태 정보뿐만 아니라, 러닝 중인 태스크의 실행 시간 정보를 메모리부(110)에 저장할 수 있다. 이러한 메모리부(110)는 각각의 훅이 호출된 정보를 이용하여 상기 러닝 태스크의 실행 시간 정보를 저장할 수 있음은 물론이다.
여기서, 상기 태스크들의 상태 정보(Task Information)는 MCU(Micro Controller Unit) 관련 정보 값이 된다. 즉, 일반적으로 태스크 제어를 위해 상태 정보를 저장해 놓는 공간으로 TASK Control Block(TCB)라는 저장 공간이 있는데, 상기 태스크들의 상태 정보는 MCU가 태스크를 제어하기 위한 TCB 정보들에 해당된다. 상기 시스템 카운트 값(System count value)은 태스크들의 상태 변화 시점에 따른 카운트에 해당되는 것으로서 시간에 따라 변화하는 태스크의 상태 정보를 통해 획득될 수 있다.
이후, 상기 판단부(120)에서는 아이들 태스크(Idle Task)가 실행 중인지를 판단한다(220). 일반적으로 실시간 운영체제 프로그램의 실행에 있어서 모든 태스크가 100% 실행되도록 설계하지는 않는다. 이는 곧 프로그램 실행 중에 아이들 태스크가 반드시 실행된다는 것을 의미한다.
이러한 점을 이용하여 상기 전송부(130)는 상기 아이들 태스크가 실행 중일 때에 메모리부(110)에 저장된 데이터(복수의 태스크에 대한 상태 정보 및 러닝 태스크의 실행 시간 정보)를 사용자 단말기(10)로 전송한다(S230). 이에 따라 사용자 단말기(10)에서는 각 태스크 별로 시간에 따른 상태 변화를 실시간 모니터링할 수 있게 된다.
도 4는 도 2의 S230 단계에 따라 사용자 단말기에서 모니터링 가능한 정보를 나타낸다. 이러한 도 4는 사용자 단말기(10)에서 실시간 확인 가능한 태스크들의 정보에 해당된다. 여기서, Ready(준비), Running(실행), Suspended(중지), Waiting(대기)는 태스크의 상태를 나타낸다. 즉, 사용자 단말기(10)는 아이들 태스크의 실행 시 데이터를 수신하여 시간에 따른 태스크의 상태 변화를 실시간 확인할 수 있다.
이상과 같은 실시간 운영체제 태스크 모니터링 방법에 따르면, 실시간 운영체제 기반의 임베디드 시스템에서 아이들 태스크가 실행 중일 때 태스크의 모니터링 정보를 제공하여 태스크의 실시간 모니터링을 용이하게 하는 이점이 있다. 즉, 본 발명은 아이들 태스크를 이용하여 실시간 모니터링을 수행함에 따라 실시간 운영체제 태스크 스케줄링에 전혀 영향을 주지 않을 뿐만 아니라 실시간 소프트웨어 설계에 용이한 환경을 제공할 수 있다.
결과적으로, 본 발명은 실시간 운영체제 기반의 임베디드 시스템의 소프트웨어 구현 및 디버깅 기간을 단축시켜서 소프트웨어 개발 비용을 절감할 수 있는 이점이 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.
100: 실시간 운영체제 태스크 모니터링 장치
110: 메모리부 120: 판단부
130: 전송부

Claims (8)

  1. 임베디드 시스템에서 실시간 운영체제 태스크 모니터링 장치를 이용한 실시간 운영체제 태스크 모니터링 방법에 있어서,
    복수의 태스크에 대한 상태 정보와, 러닝 상태에 있는 러닝 태스크의 실행 시간 정보를 각각 메모리부에 저장하는 단계;
    아이들 태스크가 실행 중인지를 판단하는 단계; 및
    상기 아이들 태스크가 실행 중인 경우, 상기 복수의 태스크에 대한 상태 정보 및 상기 러닝 태스크의 실행 시간 정보를 사용자 단말기로 전송하는 단계를 포함하며,
    상기 복수의 태스크에 대한 상태 정보와 상기 러닝 태스크의 실행 시간 정보를 메모리부에 저장하는 단계는,
    상기 태스크가 러닝 상태가 되면 프리태스크 훅(PreTaskHook)을 호출하고, 상기 태스크가 러닝 상태를 벗어나면 포스트태스크 훅(PostTaskHook)을 호출하는 실시간 운영체제 태스크 모니터링 방법.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 복수의 태스크에 대한 상태 정보와 상기 러닝 태스크의 실행 시간 정보를 메모리부에 저장하는 단계는,
    상기 훅이 호출된 정보를 이용하여 상기 러닝 태스크의 실행 시간 정보를 저장하는 실시간 운영체제 태스크 모니터링 방법.
  4. 청구항 1에 있어서,
    상기 사용자 단말기는,
    상기 복수의 태스크에 대한 상태 변화를 실시간 모니터링하는 실시간 운영체제 태스크 모니터링 방법.
  5. 임베디드 시스템에서 실시간 운영체제 태스크 모니터링 장치에 있어서,
    복수의 태스크에 대한 상태 정보와, 러닝 상태에 있는 러닝 태스크의 실행 시간 정보를 각각 저장하는 메모리부;
    아이들 태스크가 실행 중인지를 판단하는 판단부; 및
    상기 아이들 태스크가 실행 중인 경우, 상기 복수의 태스크에 대한 상태 정보 및 상기 러닝 태스크의 실행 시간 정보를 사용자 단말기로 전송하는 전송부를 포함하며,
    상기 메모리부는,
    상기 태스크가 러닝 상태가 되면 프리태스크 훅(PreTaskHook)을 호출하고, 상기 태스크가 러닝 상태를 벗어나면 포스트태스크 훅(PostTaskHook)을 호출하는 실시간 운영체제 태스크 모니터링 장치.
  6. 삭제
  7. 청구항 5에 있어서,
    상기 메모리부는,
    상기 훅이 호출된 정보를 이용하여 상기 러닝 태스크의 실행 시간 정보를 저장하는 실시간 운영체제 태스크 모니터링 장치.
  8. 청구항 5에 있어서,
    상기 사용자 단말기는,
    상기 복수의 태스크에 대한 상태 변화를 실시간 모니터링하는 실시간 운영체제 태스크 모니터링 장치.
KR1020120126988A 2012-11-09 2012-11-09 실시간 운영체제 태스크 모니터링 방법 및 장치 KR101390267B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120126988A KR101390267B1 (ko) 2012-11-09 2012-11-09 실시간 운영체제 태스크 모니터링 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120126988A KR101390267B1 (ko) 2012-11-09 2012-11-09 실시간 운영체제 태스크 모니터링 방법 및 장치

Publications (1)

Publication Number Publication Date
KR101390267B1 true KR101390267B1 (ko) 2014-04-30

Family

ID=50658943

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120126988A KR101390267B1 (ko) 2012-11-09 2012-11-09 실시간 운영체제 태스크 모니터링 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101390267B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104331354A (zh) * 2014-11-20 2015-02-04 普华基础软件股份有限公司 一种云计算的实时综合监控方法
KR101928349B1 (ko) 2016-09-26 2018-12-12 재단법인대구경북과학기술원 실시간 운영체제의 태스크 실행 시간 모니터링 장치 및 그 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004264954A (ja) * 2003-02-28 2004-09-24 Nec Corp Cpu使用率測定システム
JP2008310748A (ja) * 2007-06-18 2008-12-25 Honda Motor Co Ltd タスク実行時間記録装置、タスク実行時間記録方法、及びタスク実行時間記録用プログラム
JP2009003757A (ja) 2007-06-22 2009-01-08 Nippon Telegr & Teleph Corp <Ntt> 時間監視装置、方法、およびプログラム
KR20120073715A (ko) * 2010-12-27 2012-07-05 재단법인대구경북과학기술원 운영체제 태스크의 실행시간 모니터링 방법 및 시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004264954A (ja) * 2003-02-28 2004-09-24 Nec Corp Cpu使用率測定システム
JP2008310748A (ja) * 2007-06-18 2008-12-25 Honda Motor Co Ltd タスク実行時間記録装置、タスク実行時間記録方法、及びタスク実行時間記録用プログラム
JP2009003757A (ja) 2007-06-22 2009-01-08 Nippon Telegr & Teleph Corp <Ntt> 時間監視装置、方法、およびプログラム
KR20120073715A (ko) * 2010-12-27 2012-07-05 재단법인대구경북과학기술원 운영체제 태스크의 실행시간 모니터링 방법 및 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104331354A (zh) * 2014-11-20 2015-02-04 普华基础软件股份有限公司 一种云计算的实时综合监控方法
KR101928349B1 (ko) 2016-09-26 2018-12-12 재단법인대구경북과학기술원 실시간 운영체제의 태스크 실행 시간 모니터링 장치 및 그 방법

Similar Documents

Publication Publication Date Title
CN109408223B (zh) 资源配置方法、装置、终端及存储介质
CN106681811B (zh) 基于线程池的多线程调度方法及装置
KR101723389B1 (ko) 적응적 응용 프로그램 구동 장치 및 방법
CN106547578B (zh) 终端应用app的加载方法及装置
CN106127036B (zh) 持续性和弹性的工作者进程
US20160306647A1 (en) Method for affinity binding of interrupt of virtual network interface card, and computer device
CN107783833B (zh) 一种终端后台应用程序的管理方法及装置
RU2009132388A (ru) Согласование загрузки между несколькими способными к загрузке устройствами
CN108271150B (zh) 支持同时对多台手机进行刷机或数据清除的方法及系统
CN109324962B (zh) 一种基于云物联技术的应用程序的测试方法及设备
US20240160474A1 (en) Multi-core processor task scheduling method, and device and storage medium
CN110971591B (zh) 一种多进程访问可信应用的方法和系统
CN110968508B (zh) 一种小程序的加载时间确定方法、装置、终端及存储介质
CN108710304B (zh) 一种客户端运行管理方法及客户端
KR101390267B1 (ko) 실시간 운영체제 태스크 모니터링 방법 및 장치
CN113467884A (zh) 资源配置方法和装置、电子设备及计算机可读存储介质
CN116860391A (zh) Gpu算力资源调度方法、装置、设备和介质
CN105528261A (zh) 一种嵌入式设备中智能输出调试信息的方法及系统
CN110908866A (zh) 软件监控方法及相关设备
CN102811436A (zh) 一种固件更新方法及装置
CN106919489A (zh) 应用程序的应用界面异常退出的监测方法及装置
CN110928787B (zh) 自动化测试脚本录制回放方法、装置、设备和存储介质
CN109947576A (zh) 一种虚拟机内部代理程序管理的方法
US11853153B2 (en) Multi-thread exit method and mobile terminal
CN114296754A (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: 20170328

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180406

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190325

Year of fee payment: 6