KR100279810B1 - 멀티 타스크 시스템의 퍼포먼스 측정방법 - Google Patents

멀티 타스크 시스템의 퍼포먼스 측정방법 Download PDF

Info

Publication number
KR100279810B1
KR100279810B1 KR1019980018712A KR19980018712A KR100279810B1 KR 100279810 B1 KR100279810 B1 KR 100279810B1 KR 1019980018712 A KR1019980018712 A KR 1019980018712A KR 19980018712 A KR19980018712 A KR 19980018712A KR 100279810 B1 KR100279810 B1 KR 100279810B1
Authority
KR
South Korea
Prior art keywords
time
task
count value
counter
measurement
Prior art date
Application number
KR1019980018712A
Other languages
English (en)
Other versions
KR19990085978A (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 KR1019980018712A priority Critical patent/KR100279810B1/ko
Publication of KR19990085978A publication Critical patent/KR19990085978A/ko
Application granted granted Critical
Publication of KR100279810B1 publication Critical patent/KR100279810B1/ko

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

본 발명은 퍼포먼스 측정 명령이 인가된 후 데이터 수집시간과 리포트 출력시간이 인가되면 측정시간 동안 프리 카운터 타스크를 구동하고 카운터를 통해 초기 카운트 값을 측정하는 제1과정과, 데이터 수집시간에 의해 사용 버퍼 영역을 결정하여 결정한 사용 버퍼 영역을 측정시간에 대응하여 분할하는 제2과정과, 데이터 수집시간 경과 체크를 시작하고 측정시간을 주기로 하여 매 측정시간 중 상태 분석 타스크의 비가동이 발생할 시 프리 카운터 타스크를 구동하여 카운터를 통해 카운트한 실측 카운트 값을 사용 버퍼 영역의 해당 할당 영역에 순차적으로 기록하는 제3과정과, 제3과정을 수행하는 중에 매 리포트 출력 주기마다 초기 카운트 값과 해당 리포트 출력 주기 동안 측정시간 주기로 사용 버퍼 영역에 기록된 실측 카운트 값에 의해 계산한 점유율과 여유분율을 포함하는 리포트를 출력하는 제4과정과, 데이터 수집시간의 경과를 체크하면 퍼포먼스 측정을 종료하는 제5과정으로 이루어진 멀티 타스크 시스템의 퍼포먼스 측정방법을 구현하였다.

Description

멀티 타스크 시스템의 퍼포먼스 측정방법
본 발명은 적어도 두 개의 타스크(Task)를 내부에 구비한 멀티 타스크 시스템(Multi-Task System)에 관한 것으로, 특히 에뮬레이터(Emulator)를 이용하지 않고 시스템 퍼포먼스(System Performance)를 측정하는 방법에 관한 것이다.
통상적으로 새로운 시스템을 개발할 때 중앙처리장치(CPU)가 소프트웨어의 과부하로 시스템을 비정상적으로 운용하거나 CPU가 인위적으로 과부하를 인가했을 때 시스템의 동작 상태를 분석할 필요가 있다. 이때 요구되는 기능이 첫 번째로 시스템 퍼포먼스(System Performance) 측정 기능, 두 번째로 시스템에 인위적으로 스트레스(Stress)를 인가하는 기능, 세 번째로 타스크(Task)의 운용주기와 타스크(Task)의 우선 순위(Priority) 등을 변경할 수 있도록 하여 시스템 디버깅(System Debugging) 기능이다. 또한 제품이 현장(site)에 출하되어서 운용중일 때 소프트웨어(Software)가 어느 정도의 퍼포먼스를 가지고 운용되며, 이를 디버깅 기능으로 소프트웨어가 원활하게 운용될 수 있도록 처리하는 방법도 필요하다.
하지만 종래에는 시스템 자체적으로는 시스템이 현재 점유하고 있는 퍼포먼스 상태만을 표시하거나 에뮬레이터를 이용하는 경우에는 시스템 퍼포먼스의 누계 정보만을 알 수 있도록 구현되어 있었다. 또한 상기 에뮬레이터를 이용한 시스템 퍼포먼스 측정은 시스템이 현장에 설치하기 전에 이루어졌으며, 현장에 설치된 시스템의 경우에는 상기 에뮬레이터를 이용하여 시스템 퍼포먼스를 측정할 수 없었다.
따라서 시스템이 현장에 설치된 후에는 상기한 세 가지의 기능을 수행할 수 있는 방법이 없을 뿐 만 아니라 시스템이 현장에 설치되기 전이라 하더라도 시스템에 인위적으로 스트레스를 인가하는 기능, 시스템 디버깅 기능은 구현되어 있지 않았다. 또한 상기한 바와 같이 에뮬레이터를 이용하여 시스템 퍼포먼스를 측정한다고 하여도 누계 정보, 즉 측정을 시작한 시점에서부터 현재까지의 정보만을 알 수 있어 실시간으로 변화하는 시스템의 퍼포먼스 정보를 알 수 없는 문제점이 있었다. 다시 말해 현재 시점에서 이전 20초 또는 30초 동안의 퍼포먼스 변화 상태를 파악할 수 없었다.
따라서 상기한 문제점을 해결하기 위한 본 발명의 목적은 에뮬레이터가 없는 상황에서 시스템의 퍼포먼스를 측정하는 방법을 제공함에 있다.
또한 본 발명의 다른 목적은 에뮬레이터가 없는 상황에서 인위적으로 시스템에 스트레스를 가하여 시스템의 퍼포먼스를 측정하는 방법을 제공함에 있다.
상기한 목적을 달성하기 위해 본 발명은 퍼포먼스 측정 명령이 인가된 후 데이터 수집시간과 리포트 출력시간이 인가되면 측정시간 동안 프리 카운터 타스크를 구동하고 카운터를 통해 초기 카운트 값을 측정하는 제1과정과, 상기 데이터 수집시간에 의해 사용 버퍼 영역을 결정하여 상기 결정한 사용 버퍼 영역을 상기 측정시간에 대응하여 분할하는 제2과정과, 상기 데이터 수집시간 경과 체크를 시작하고 상기 측정시간을 주기로 하여 상기 매 측정시간 중 상태 분석 타스크의 비가동이 발생할 시 상기 프리 카운터 타스크를 구동하여 상기 카운터를 통해 카운트한 실측 카운트 값을 상기 사용 버퍼 영역의 해당 할당 영역에 순차적으로 기록하는 제3과정과, 상기 제3과정을 수행하는 중에 상기 매 리포트 출력 주기마다 해당 리포트 출력 주기 동안 상기 측정시간 주기로 상기 사용 버퍼 영역에 기록된 실측 카운트 값과 상기 초기 카운트 값에 의해 계산한 점유율과 여유분율을 포함하는 리포트를 출력하는 제4과정과, 상기 데이터 수집시간의 경과를 체크하면 퍼포먼스 측정을 종료하는 제5과정으로 이루어진 멀티 타스크 시스템의 퍼포먼스 측정방법을 구현하였다.
또한 상기한 목적을 달성하기 위해 바람직하기로는 운용자에 의해 인위적인 스트레스가 가해지면 실질적으로 상기 가해진 스트레스가 시스템에 가해지도록 스트레스 로드 타스크를 구동하여 상기 상태 분석 타스크의 구동을 제한한 후 상기 제3과정을 수행하며, 상기 리포트에 상기 가해진 스트레스를 추가하여 출력하는 과정을 더 구비하도록 하는 멀티 타스크 시스템의 퍼포먼스 측정방법을 구현하였다.
도 1은 본 발명의 일 실시 예에 따른 퍼포먼스 측정을 위한 개념적인 블록 구성을 도시한 도면.
도 2는 본 발명의 일 실시 예에 따른 멀티 타스크 시스템의 블록 구성을 도시한 도면.
도 3은 본 발명의 일 실시 예에 따른 퍼포먼스 측정을 위한 제어 흐름을 도시한 도면.
도 4는 도 3에 의해 구성되는 버퍼의 일 예를 도시한 도면.
이하 본 발명의 바람직한 일 실시 예를 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.
본 발명의 일 실시 예에 따른 퍼포먼스 측정을 위한 개념적인 구성은 도 1에 도시한 바와 같다. 상기 도 1을 참조하면, 입력부 130은 키보드 등으로 구성하며, 운용자의 조작에 의해 퍼포먼스 측정 명령 또는 퍼포먼스 측정을 위해 요구되는 데이터(측정시간, 데이터 수집시간, 리포트 출력시간 등)를 멀티 타스크 시스템 110으로 제공하는 기능을 수행한다. 상기 멀티 타스크 시스템 110은 상기 입력부 130으로부터 인가되는 데이터와 명령을 받아 상기 명령에 따른 기능을 수행하여 결과 데이터를 출력한다. 특히 본 발명에서는 상기 입력부 130의 퍼포먼스 측정 명령이 인가될 시 시스템의 퍼포먼스를 측정하여 측정한 시스템 퍼포먼스를 출력한다. 출력부 120은 상기 멀티 타스크 시스템 110으로부터 제공되는 결과 데이터 및 본 발명에 따른 시스템 퍼포먼스 리스트를 출력한다.
상기 도 1에 도시한 멀티 타스크 시스템 110의 본 발명의 일 실시 예에 따른 구성은 도 2에 도시한 바와 같다.
상기 도 2를 참조하면, 제어부 210은 멀티 타스크 시스템의 전반적인 동작을 제어하며, 특히 본 발명에 따른 시스템의 퍼포먼스를 측정하기 위한 제어를 수행한다. 상태 분석 타스크(Performance_Analyzer_Task) 214는 본 발명에 따른 멀티 타스크 시스템을 구성하는 타스크로 상기 제어부 210의 제어를 받는다. 프리 카운터 타스크(Free_caunter_Task) 212는 본 발명의 실시를 위하여 추가된 최하위(Low) 타스크로 시스템의 퍼포먼스를 측정하기 위해 상기 제어부 210의 제어를 받아 상기 상태 분석 타스크(Performance_Analyzer_Task) 214의 비가동시 가동한다. 스트레스 로드 타스크(Stress Load Task) 216은 상기 상태 분석 타스크(Performance_Analyzer_Task) 214의 상위 타스크로 상기 제어부 210의 제어를 받아 인위적으로 시스템에 스트레스를 가하는 기능을 수행한다. 상기 도 2에는 도시되지 않았으나 본 발명에 따른 기능을 수행하기 위해서는 상기 프리 카운터 타스크(Free_counter_Task) 212가 구동되는 동안을 카운트하는 별도의 카운터를 구비하여야 한다. 상기 카운터는 소정 주기를 가지는 펄스를 이용하여 상기 프리 카운터 타스크(Free_counter_Task) 212가 구동하는 동안에 발생하는 펄스 수를 카운트함으로써 측정이 가능하다.
상기한 인위적으로 스트레스를 가함이란 상기 제어부 210의 제어에 의해 우선 순위에 있는 상기 스트레스 로드 타스크(Stress Load Task) 216을 인위적으로 가동하여 상기 상태 분석 타스크(Performance_Analyzer_Task) 214의 구동을 차단함으로 상기 상태 분석 타스크(Performance_Analyzer_Task) 214의 비가동 시간을 증가시킴을 의미한다.
상기 도 2에 도시한 제어부 210이 본 발명에 따른 시스템 퍼포먼스를 측정하기 위한 제어 과정은 도 3에 도시한 제어 흐름도에 의해 수행되며, 상기 도 3에 의해 구성되는 버퍼의 일 예는 도 4에 도시한 바와 같다.
한편, 상기 도 2에 도시한 제어부 210이 본 발명의 일 실시 예에 따른 인위적인 스트레스를 부과하기 위한 제어 과정은 도 5에 도시한 제어 흐름에 의해 수행된다.
이하 상기한 구성을 참조하여 본 발명의 일 실시 예에 따른 동작을 상세히 설명하면 다음과 같다.
먼저 도 3을 참조하여 시스템 퍼포먼스를 측정하는 동작을 상세히 설명한다. 한편 상기 도 3을 참조하여 동작을 상세히 설명하기에 앞서 상기 도 3에는 모든 과정이 순차적인 흐름을 가지고 수행되는 것으로 도시하였으나 실질적으로는 312단계 내지 318단계가 수행된 후 320단계, 322단계 내지 326단계, 328단계 내지 332단계 및 334단계는 모드 동시에 같이 수행되는 과정임에 주의하여야 한다. 즉, 일 예로 320단계에서 비가동 시간을 카운트하는 과정이 수행되는 중에 측정시간의 경과에 따라 현재 카운트 값을 기록하는 과정인 322단계 내지 326단계가 같이 병행하여 수행된다.
멀티 타스크 시스템 110에 구비된 제어부 210은 도 3의 310단계에서 입력부 130으로부터 시스템 퍼포먼스의 측정을 요구하는 명령이 인가되는 가를 감시한다. 상기 시스템 퍼포먼스 측정 명령은 운용자가 시스템 퍼포먼스를 측정하기 위해 상기 입력부 130을 조작함에 의해 발생하는 데이터이다. 상기 명령이 인가되면 상기 제어부 210은 312단계로 진행하여 시스템 퍼포먼스를 측정하는데 요구되는 데이터를 운용자로부터 입력받는다. 상기 데이터를 운용자로부터 입력받는 동작은 제어부 210이 데이터의 입력을 요구하는 메시지를 출력부 120에 제공하며, 상기 출력부 120은 상기 메시지를 표시창을 통해 표시하므로 서 운용자에게 데이터를 입력하도록 요구한다. 상기 운용자가 상기 메시지에 응답하여 상기 입력부 130을 조작하여 데이터를 입력하면 상기 입력된 데이터는 상기 제어부 210으로 제공된다.
이때 상기 데이터는 측정시간, 데이터 수집시간 리포트 출력주기로 구성된다. 상기 측정시간은 시스템 퍼포먼스가 없는 상태에서 측정한 값과 시스템의 실제 구동 상태에서 측정한 실측값을 비교하기 위한 기준으로 사용되는 시간이며, 상기 측정시간은 운용자에 의해 입력받지 않고 시스템 자체 설정된 값을 이용할 수 있다. 실험에 의한 값으로는 "1초"를 측정시간으로 하는 것이 가장 정확한 측정이 이루어졌다. 상기 데이터 수집시간은 적어도 한번의 상기 측정시간이 포함되도록 정의되어야 하며, 시스템 퍼포먼스를 측정하는 시간으로 사용된다. 상기 리포트 출력주기는 상기 측정시간을 주기로 측정된 값에 의해 결정된 시스템 퍼포먼스를 출력하는 주기로 사용된다. 또한 상기 데이터가 소정 시간이 경과하도록 입력되지 않으면 사전에 시스템 자체에 설정된 데이터를 이용하여 측정을 시작한다.
상기 데이터를 입력받은 상기 제어부 210은 314단계로 진행하여 상기 측정시간 동안의 초기 카운터 값(CNT_ref)을 측정한다. 상기 초기 카운트 값은 상태 분석 타스크(Performance_Analyzer_Task) 214의 구동을 인위적으로 제한하고 프리 카운터 타스크(Free_counter_Task) 212를 상기 측정시간 동안 구동시키고 구동되는 동안에 발생하는 펄스의 수를 카운트함으로써 측정이 가능하다. 상기 초기 카운트 값이 측정되면 상기 제어부 210은 316단계로 진행하여 데이터 수집시간에 따라 실측 카운트 값을 기록할 버퍼의 영역을 결정한다. 예를 들어 상기 데이터 수집시간 내에 상기 측정시간에 따른 주기가 "n"번 포함되면 상기 "n"번의 측정시간에 따른 주기마다 측정되는 실측 카운트 값을 저장할 수 있는 "n"개의 영역으로 분할이 가능하도록 버퍼 영역을 결정한다. 상기 결정된 버퍼의 구조는 도 4에 도시한 바와 같다.
상기 버퍼 영역의 결정이 이루어지면 상기 제어부 210은 시스템 퍼포먼스 실측을 위한 동작 수행에 들어간다. 상기 제어부 210은 318단계에서 타이머를 구동하여 상기 데이터 수집시간 체크와 상기 리포트 출력주기 체크를 시작하며, 320단계에서는 비가동 시간을 상기 카운터를 이용하여 실측 카운트 값(CNT_1)의 카운트를 시작한다. 상기 비가동 시간이란 상기 상태 분석 타스크(Performance_Analyzer_Task) 214가 가동되지 않음에 따라 상기 스트레스 로드 타스크(Stress Load Task) 216이 가동하는 되는 시간을 의미한다. 즉, 어느 측정시간 동안에는 상기 비가동 시간이 없는 경우도 발생할 수 있는 반면에 어느 측정시간 동안에는 계속 비가동 시간인 경우가 발생할 수 있다는 의미이다.
상기 320단계에서 실측 카운트 값이 카운트되는 동안 별도로 322단계 내지 334단계에서 수행된다. 상기 제어부 210은 상기 322단계에서 상기 측정시간이 경과하는 가를 감시한다. 상기 측정시간의 경과를 감지하면 상기 제어부 210은 324단계에서 발생한 측정시간의 횟수를 카운트하는 카운트 값(CNT_2)을 1 증가시킨 후 326단계로 진행한다. 상기 제어부 210은 326단계로 진행하면 상기 결정된 버퍼 영역 중 상기 CNT_2에 대응하는 영역에 상기 측정시간이 경과되는 시점에서 상기 320단계에서 카운트된 실측 카운트 값(CNT_1)을 읽어 기록한다. 상기 결정된 버퍼 영역을 상기 측정시간에 대응하는 방법은 최초 경과를 감지한 측정시간으로부터 순차적으로 상기 버퍼 영역에 대응하도록 한다. 예컨대 4번째 감지한 측정시간의 경우에는 상기 버퍼 영역 중 4번째 영역에 기록한다.
또한 상기 322단계와 326단계가 수행되는 동안 328단계 내지 332단계가 동시에 수행되는데, 상기 제어부 210은 328단계에서 상기 318단계에서 시작한 리포트 출력 주기 체크에 의해 리포트 출력주기가 되었는가를 검사한다. 상기 제어부 210은 리포트 출력 주기가 되었다고 검사하면 330단계로 진행하여 점유율, 여유분율을 결정하여 상기 결정한 점유율, 여유분율 등을 포함하는 리포트를 출력한다. 상기 리포트를 출력하는 동작은 상기 제어부 210이 리포트에 포함되는 데이터를 출력부 120으로 제공하고, 상기 출력부 120이 상기 제공되는 데이터를 이용하여 표시하거나 인쇄하는 동작으로 수행된다.
상기 점유율은 상기 상태 분석 타스크(Performance_Analyzer_Task) 214가 가동하고 있는 시간이 총 측정 시간에서 차지하는 백분율을 의미하며, 상기 여유분율은 상기 상태 분석 타스크(Performance_Analyzer_Task) 214가 가동하고 있지 않는 시간이 총 측정 시간에서 차지하는 백분율을 의미한다.
상기 여유분율의 계산을 아래 도시한 <수학식 1>에 의해 얻을 수 있다.
상기한 <수학식 1>에서 CNTref는 리포트 출력주기 내에 발생한 측정시간에 기록된 실측 카운트 값의 평균값을 나타내며, 은 리포트 출력주기 내에 발생한 측정시간에 기록된 실측 카운트 값의 합을 나타내고 CNT2는 리포트 출력주기 내에 발생한 측정시간의 횟수를 나타낸다. 또한 CNTref는 상기 314단계에서 측정한 초기 카운트 값을 의미한다. 상기 <수학식 1>에도 나타난 바와 같이 상기 CNTref는 퍼포먼스가 전혀 발생하지 않은 상태에서 측정시간 동안 카운트된 값이므로 상기 CNTref를 측정한 상태는 여유분율이 100%라 할 수 있다. 그로 인해 상기한 <수학식 1>에 의해 여유분율을 구할 수 있는 것이다.
다음으로 상기 점유율의 계산을 아래 도시한 <수학식 2>에 의해 얻을 수 있다.
점유율 = 100 - 여유분율 (%)
따라서 상기 <수학식 1>과 <수학식 2>를 통해 얻은 점유율과 여유분율을 통해 시스템의 퍼포먼스를 생각할 수 있다.
한편 상기 330단계에서 제공되는 리스트 데이터에는 상기한 점유율, 여유분율 뿐 아니라 운용자에 의해 상기 312단계에서 입력받은 데이터 수집시간과 현재까지 측정된 여유분율 중 최대치와 최소치 및 리스트를 출력하는 현재시간이 포함된다.
상술한 동작에 의해 출력되는 리포트의 일 예를 도시하면 아래 <표 1>과 같이 나타낼 수 있다.
%I221 : SYS-PFMS [ Dur:030,Use:64,Free:36 (Hi:43,Lo:30), 15:27:44 ]%I221 : SYS-PFMS [ Dur:030,Use:62,Free:38 (Hi:43,Lo:30), 15:27:54 ]%I221 : SYS-PFMS [ Dur:030,Use:61,Free:39 (Hi:43,Lo:30), 15:28:04 ]%I221 : SYS-PFMS [ Dur:030,Use:61,Free:39 (Hi:43,Lo:30), 15:28:14 ]
상기한 <표 1>에서 보면, 리포트 출력 주기 10초, 데이터 수집시간 30초를 기초로 하여 측정한 시스템 퍼포먼스임을 알 수 있다. 즉, 상기 리포트 출력 주기는 상기 <표 1>에 도시한 측정 시간의 차, 예컨대 "15:27:44"와 "15:27:54"의 시간차를 보면 "10초"임을 알 수 있으며, 상기 데이터 수집시간은 상기 <표 1>에 도시한 지속시간(Dur:Duration)으로 알 수 있다. 또한 상기 <표 1>을 통해 데이터 수집시간 30초 동안 점유율(가동율:Use)이 61%∼64%, 여유분율(비가동율:Free)이 36%∼39% 내에서 변화하였으며, 현재까지 측정된 최대 여유분율(Hi)이 43%, 최소 여유분율(Lo)이 30%임을 알 수 있다. 예컨대 상기 데이터 수집시간은 1초∼255초 범위 내에서 가변이 가능하며, 리포트 출력 주기 또한 1초∼255초 범위 내에서 가변이 가능하다.
또한 334단계가 상기 322단계와 326단계, 328단계 내지 332단계가 수행되는 동안 동시에 수행되는데, 상기 제어부 210은 상기 334단계로 진행하면 상기 318단계에서 체크를 시작한 상기 데이터 수집시간이 경과하였는가를 검사하여, 상기 데이터 수집시간이 경과하면 본 발명에 따른 시스템 퍼포먼스를 측정하는 동작을 종료한다.
다음으로 도 5를 참조하여 운용자가 인위적으로 스트레스를 가하여 시스템 퍼포먼스를 측정하는 동작을 상세히 설명한다. 상기 스트레스를 인위적으로 가하는 것은 상술한 구성을 가진고 동작하는 멀티 타스크 시스템에서 요구되는 기능 중의 하나이다.
상술한 스트레스를 인위적으로 가하였을 때의 동작에 의해 출력되는 리포트의 일 예를 도시하면 아래 <표 2>와 같이 나타낼 수 있다.
%I221 : SYS-PFMS [ Dur:030,Use:81,Free:19 (Hi:43,Lo:18), 15:28:25 ], Stress:20%I221 : SYS-PFMS [ Dur:030,Use:80,Free:20 (Hi:43,Lo:18), 15:28:35 ], Stress:20%I221 : SYS-PFMS [ Dur:030,Use:80,Free:20 (Hi:43,Lo:18), 15:28:46 ], Stress:20%I221 : SYS-PFMS [ Dur:030,Use:80,Free:20 (Hi:43,Lo:18), 15:28:56 ], Stress:20
상기한 <표 2>에서 보면, 리포트 출력 주기 10초, 데이터 수집시간 30초, 인위적인 스트레스(Stress) 20을 기초로 하여 측정한 시스템 퍼포먼스임을 알 수 있다. 또한 상기 <표 2>를 통해 인위적인 스트레스가 20으로 설정되고 데이터 수집시간이 30초인 경우 점유율(Use)이 80%∼81%, 여유분율(Free)이 19%∼20% 내에서 변화하였으며, 현재까지 측정된 최대 여유분율(Hi)이 43%, 최소 여유분율(Lo)이 18%임을 알 수 있다. 즉, 상기한 <표 1>과 <표 2>를 대비하여 볼 때 인위적인 스트레스가 가해질 시 가해지지 않을 때 보다 여유분율이 감소함을 알 수 있다. 예컨대 상기 스트레스 부하 정도는 인위적으로 1%∼99% 범위 내에서 가변이 가능하다.
상기한 바와 같이 본 발명은 멀티 타스크 시스템 자체적으로 시스템 퍼포먼스를 측정할 수 있으며, 인위적으로 스트레스를 가하여 시스템의 퍼포먼스를 측정할 수 있도록 함으로써 얻을 수 있는 효과는 아래와 같다.
첫 번째로 시스템 개발시 타스크 우선순위, 타스크 주기조정 및 시스템에 영향을 미치는 주요 퍼포먼스의 수정을 디버그 모드에서 간단하게 변경하여 시스템의 퍼포먼스 변화를 원하는 형태로 볼 수 있으므로 시스템의 운용 효율의 향상과 개발시간을 단축하는 효과가 있다.
두 번째로 현장에서 시스템의 퍼포먼스를 분석하고 디버그 모드에서 조치 적용이 가능함으로 인한 소프트웨어 패키지(Software Package) 재적용의 감소로 시스템 신뢰성 향상 및 개발 부서의 현장 시험 가능함으로 인한 개발효율을 향상시키는 효과가 있다.
세 번째로 데이터 수집시간, 리포트 출력 주기의 변경이 가능함으로 인한 에뮬레이터를 이용하여 퍼포먼스를 분석하지 않아도 기능을 제공받을 수 있는 효과가 있다.
마지막으로 시스템의 인위적으로 스트레스를 부과하는 기능으로 시스템의 과부하시 운용상태 분석이 가능하므로 과부하로 인한 소프트웨어 품질로 인해 발생하는 사고를 미연에 방지할 수 있는 효과가 있다.

Claims (3)

  1. 프리 카운터 타스크의 구동 시간을 카운트하는 카운터를 가지는 멀티 타스크 시스템에서 측정시간이 소정 값으로 설정되고 운용자에 의해 퍼포먼스 측정 명령이 인가됨에 따라 수행되는 퍼포먼스 측정방법에 있어서,
    상기 퍼포먼스 측정 명령이 인가된 후 데이터 수집시간과 리포트 출력시간이 인가되면 상기 측정시간 동안 상기 프리 카운터 타스크를 구동하고 상기 카운터를 통해 초기 카운트 값을 측정하는 제1과정과,
    상기 데이터 수집시간에 의해 사용 버퍼 영역을 결정하여 상기 결정한 사용 버퍼 영역을 상기 측정시간에 대응하여 분할하는 제2과정과,
    상기 데이터 수집시간 경과 체크를 시작하고 상기 측정시간을 주기로 하여 상기 매 측정시간 중 상태 분석 타스크의 비가동이 발생할 시 상기 프리 카운터 타스크를 구동하여 상기 카운터를 통해 카운트한 실측 카운트 값을 상기 사용 버퍼 영역의 해당 할당 영역에 순차적으로 기록하는 제3과정과,
    상기 제3과정을 수행하는 중에 상기 매 리포트 출력 주기마다 상기 초기 카운트 값과 해당 리포트 출력 주기 동안 상기 측정시간 주기로 상기 사용 버퍼 영역에 기록된 실측 카운트 값에 의해 계산한 점유율과 여유분율을 포함하는 리포트를 출력하는 제4과정과,
    상기 데이터 수집시간의 경과를 체크하면 퍼포먼스 측정을 종료하는 제5과정으로 이루어짐을 특징으로 하는 멀티 타스크 시스템의 퍼포먼스 측정방법.
  2. 제1항에 있어서, 상기 제4과정이,
    상기 해당 리포트 출력 주기 동안 상기 측정시간을 주기로 상기 사용 버퍼 영역에 기록된 실측 카운트 값의 평균 실측 카운트 값을 계산하는 단계와.
    상기 초기 카운트 값에 대한 상기 평균 실측 카운트 값의 백분율을 계산하여 여유분율로 결정하는 단계와,
    상기 여유분율에 의해 점유율을 계산하는 단계와,
    상기 여유분율, 상기 점유율, 현재까지의 최대 여유분율, 현재까지의 최소 여유분율 및 현재 시간으로 구성한 리포트를 출력하는 단계로 이루어짐을 특징으로 하는 멀티 타스크 시스템의 퍼포먼스 측정방법.
  3. 제2항에 있어서,
    운용자에 의해 인위적인 스트레스가 가해지면 실질적으로 상기 가해진 스트레스가 시스템에 가해지도록 스트레스 로드 타스크를 구동하여 상기 상태 분석 타스크의 구동을 제한한 후 상기 제3과정을 수행하며, 상기 리포트에 상기 가해진 스트레스를 추가하여 출력하는 과정을 더 구비함을 특징으로 하는 멀티 타스크 시스템의 퍼포먼스 측정방법.
KR1019980018712A 1998-05-23 1998-05-23 멀티 타스크 시스템의 퍼포먼스 측정방법 KR100279810B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980018712A KR100279810B1 (ko) 1998-05-23 1998-05-23 멀티 타스크 시스템의 퍼포먼스 측정방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980018712A KR100279810B1 (ko) 1998-05-23 1998-05-23 멀티 타스크 시스템의 퍼포먼스 측정방법

Publications (2)

Publication Number Publication Date
KR19990085978A KR19990085978A (ko) 1999-12-15
KR100279810B1 true KR100279810B1 (ko) 2001-02-01

Family

ID=65891726

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980018712A KR100279810B1 (ko) 1998-05-23 1998-05-23 멀티 타스크 시스템의 퍼포먼스 측정방법

Country Status (1)

Country Link
KR (1) KR100279810B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8943503B2 (en) 2010-07-02 2015-01-27 Samsung Electronics Co., Ltd. Apparatus and method for thread progress tracking using deterministic progress index
KR101787262B1 (ko) 2016-06-01 2017-11-16 현대오트론 주식회사 차량용 전자 제어 유닛 및 차량용 전자 제어 유닛의 태스크 관리 방법

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100422132B1 (ko) * 2001-09-06 2004-03-11 엘지전자 주식회사 실시간 시스템의 씨피유 타스크 점유율 측정장치
KR100516929B1 (ko) * 2002-10-23 2005-09-23 한국과학기술정보연구원 작업관리 분석장치 및 방법과 그 프로그램을 저장한기록매체

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8943503B2 (en) 2010-07-02 2015-01-27 Samsung Electronics Co., Ltd. Apparatus and method for thread progress tracking using deterministic progress index
KR101787262B1 (ko) 2016-06-01 2017-11-16 현대오트론 주식회사 차량용 전자 제어 유닛 및 차량용 전자 제어 유닛의 태스크 관리 방법

Also Published As

Publication number Publication date
KR19990085978A (ko) 1999-12-15

Similar Documents

Publication Publication Date Title
EP1639471B1 (en) Workload profiling in computers
US7568028B2 (en) Bottleneck detection system, measurement object server, bottleneck detection method and program
EP1703403B1 (en) Determining an actual amount of time a processor consumes in executing a portion of code
US20020161553A1 (en) Adaptive load generation
US6405327B1 (en) Apparatus for and method of automatic monitoring of computer performance
US8078916B2 (en) Testing measurements
US20080208536A1 (en) System and Method for Automating the Analysis of Computer System Load Testing
CN101595457A (zh) 负载平衡剖析
US8010325B2 (en) Failure simulation and availability report on same
US4924428A (en) Real time digital signal processor idle indicator
KR100279810B1 (ko) 멀티 타스크 시스템의 퍼포먼스 측정방법
Abrams A tool to aid in model development and validation
JP2007316769A (ja) 計算機システムの開発方法、計算機システムの開発プログラム
JPH10293747A (ja) クライアント・サーバシステムの性能評価装置及び方式
JP3185551B2 (ja) インライン車体計測装置のタクト外計測実行タイミング制御装置
JP2002259236A (ja) 分散型制御システムと、かかるシステムにおける異常時データ収集方法
CN112035322A (zh) Jvm监控方法及装置
CN106855840B (zh) 一种系统cpu分析方法和装置
JP2536304B2 (ja) ジョブ終了時間予測システム
Ramani et al. SREPT: Software reliability estimation and prediction tool
Philip et al. A multiphase software reliability model: From testing to operational phase
JP2008310470A (ja) 計算機システムの異常監視方法
CN113704088B (zh) 一种进程追溯方法、进程追溯系统及相关装置
JP3603299B2 (ja) テストシステム
CN1534482A (zh) 实时监测处理器运算负荷的方法

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: 20061018

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee