KR20080066246A - Method for executing scheduling context in dm scheduling enabler - Google Patents

Method for executing scheduling context in dm scheduling enabler Download PDF

Info

Publication number
KR20080066246A
KR20080066246A KR1020070003447A KR20070003447A KR20080066246A KR 20080066246 A KR20080066246 A KR 20080066246A KR 1020070003447 A KR1020070003447 A KR 1020070003447A KR 20070003447 A KR20070003447 A KR 20070003447A KR 20080066246 A KR20080066246 A KR 20080066246A
Authority
KR
South Korea
Prior art keywords
scheduling
scheduling component
node
component
task
Prior art date
Application number
KR1020070003447A
Other languages
Korean (ko)
Other versions
KR101363156B1 (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 KR1020070003447A priority Critical patent/KR101363156B1/en
Publication of KR20080066246A publication Critical patent/KR20080066246A/en
Application granted granted Critical
Publication of KR101363156B1 publication Critical patent/KR101363156B1/en

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/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)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

A method for executing scheduling context in a device management scheduling enabler is provided to solve a problem probably occurring when a task of a scheduling component included in the scheduling context is affected by an execution result of other scheduling components, and use resources efficiently by preventing execution of the unnecessary scheduling components. Scheduling context is installed and a plurality of scheduling components included in the scheduling context is enabled(403). A task of a predetermined scheduling component is executed according to an execution result of other scheduling components when the execution result of other scheduling components is set as a task execution condition of the predetermined scheduling component(407). The execution result of the predetermined scheduling component is stored by reporting the execution result of the predetermined scheduling component to a preset scheduling component when the preset scheduling component information referring to the execution result of the predetermined scheduling component is set.

Description

DM 스케줄링 인에이블러의 스케줄링 콘텍스트 실행 방법{METHOD FOR EXECUTING SCHEDULING CONTEXT IN DM SCHEDULING ENABLER}How to execute the scheduling context of the DMM scheduling enabler {METHOD FOR EXECUTING SCHEDULING CONTEXT IN DM SCHEDULING ENABLER}

도 1은 종래의 디바이스 관리 시스템과 디바이스의 구성을 나타낸 도면,1 is a view showing the configuration of a device management system and a conventional device;

도 2는 본 발명의 실시예에 따른 DM 스케줄링 인에이블러 클라이언트의 구성을 나타낸 도면,2 is a diagram illustrating a configuration of a DM scheduling enabler client according to an embodiment of the present invention;

도 3a와 3b는 본 발명의 실시예에 따른 스케줄링 콘텍스트 MO의 구성을 나타낸 도면,3A and 3B illustrate a configuration of a scheduling context MO according to an embodiment of the present invention;

도 4는 본 발명의 일 실시예에 따른 DM 스케줄링 인에이블러 클라이언트의 스케줄 콘텍스트 실행 과정을 나타낸 도면,4 illustrates a process of executing a schedule context of a DM scheduling enabler client according to an embodiment of the present invention;

도 5는 본 발명의 일 실시예에 따른 스케줄 콘텍스트 실행 과정을 나타낸 도면,5 illustrates a process of executing a schedule context according to an embodiment of the present invention;

도 6a와 6b는 본 발명의 일 실시예에 따른 노드 값이 설정된 스케줄링 MO의 구성을 나타낸 도면. 6A and 6B illustrate a configuration of a scheduling MO in which node values are set according to an embodiment of the present invention.

본 발명은 디바이스 관리 시스템(Device Management System)에 관한 것으로, 특히 관리 대상이 되는 디바이스에 설치된 DM(Device Management) 스케줄링 인에이블러가 스케줄링 콘텍스트를 관리하는 방법에 관한 것이다. The present invention relates to a device management system, and more particularly, to a method of managing a scheduling context by a device management (DM) scheduling enabler installed in a device to be managed.

DM 서버에서 원격으로 디바이스를 관리하기 위하여 OMA 표준에서는 DM 인에이블러(DM enabler)를 사용한다. 그리고 DM서버에서 디바이스를 무선으로 관리 할 때 네트워크의 부하를 줄이기 위해 DM 스케줄링 인에이블러(DM scheduler enabler)가 제안되었다. DM 스케줄링 인에이블러는 DM 세션을 이용하여 온라인으로 매번 명령을 보내는 방식 대신 임의의 조건에 맞게 실행해야 하는 태스크(task)를 디바이스의 스케줄러에 저장해 두어 디바이스 자체적으로 실행할 수 있도록 하는 인에이블러이다. 이에 따라, 도1에 도시된 바와 같이, 디바이스(100)는 DM 스케줄링 인에이블러 클라이언트(110)를 내장하고, DM 스케줄링 인에이블러 클라이언트(110)는 향후 실행되어야 하는 태스크와 그에 맞는 조건을 저장한다. 도1은 종래의 디바이스 관리 시스템(200)과 디바이스의 구성(100)을 나타낸 도면이다. 이러한, DM 스케줄링 인에이블러 클라이언트(110)를 구동하기 위하여 DM 관리 시스템(200)은 초기에 디바이스(100)에 설치하는 스케줄링 콘텍스트(scheduling context)는 논리적으로 연관성이 있는 여러 개의 스케줄링 컴포넌트(schedule component)로 이루어져 있다. 상기 스케줄링 콘텍스트의 구동 원리는 디바이스의 상태가 스케줄링 콘텍스트에 저장된 시간, 임계치, 트랩으로 이루어진 조건을 만족하면 사용자의 인터랙션(interaction)을 선택적으로 거친 다음 해당 태스크가 실행되도록 하는 메커니즘이다.  The OMA standard uses a DM enabler to manage devices remotely from a DM server. In addition, a DM scheduler enabler has been proposed to reduce the network load when the DM server manages the device wirelessly. The DM scheduling enabler is an enabler that stores a task that needs to be executed according to an arbitrary condition in the scheduler of the device instead of sending a command online every time using a DM session so that the device can execute itself. Accordingly, as shown in FIG. 1, the device 100 includes a DM scheduling enabler client 110, and the DM scheduling enabler client 110 stores a task to be executed in the future and a condition corresponding thereto. do. 1 is a diagram illustrating a conventional device management system 200 and a configuration 100 of a device. In order to drive the DM scheduling enabler client 110, a scheduling context that the DM management system 200 initially installs in the device 100 is logically related to a plurality of scheduling components. ) The driving principle of the scheduling context is a mechanism that selectively executes a user's interaction after the user's state satisfies a condition consisting of time, threshold, and trap stored in the scheduling context, and then executes a corresponding task.

상기한 스케줄링 콘텍스트를 실행하기 위해, 도1에서와 같이, 종래의 DM 스케줄링 인에이블러 클라이언트(110)는 OMA-DM 인에이블러 클라이언트(120)를 이용하여 OMA-DM 인에이블러 서버(220)와 통신한다. DM 스케줄링 인에이블러 클라이언트(110)는 스케줄링 콘텍스트를 인스톨하거나 재구성(reconfiguration)하는 기능을 하는 스케줄링 콘텍스트 구성부(scheduling context configuration function)(130)와, 디바이스의 상태 또는 스케줄링 콘텍스트 실행 상태가 스케줄링 조건에 부합하는지를 확인하는 컨디션 비교부(condition matching function)(140)와, 사용자와의 인터랙션(interaction)을 담당하는 사용자 인터랙션부(user interaction function)(150)를 포함한다. 그리고 DM 스케줄링 인에이블러 클라이언트(110)는 디바이스의 상태 또는 스케줄링 콘텍스트 실행 상태가 스케줄링 조건에 부합하면 해당 태스크를 실행하는 태스크 실행부(task execution function)(160)와, 선택적으로 디바이스 관리 시스템(200)에 리포트를 함으로써 효율을 높이기 위한 게이팅 기능부(Gating function)(170)와, 디바이스 관리 시스템(200) 상태를 보고하기 위한 상태 보고부(status reporting function)(180)와, 결과를 저장하기 위한 로깅 기능부(logging function)(190)를 포함한다. To execute the scheduling context described above, as shown in FIG. 1, the conventional DM scheduling enabler 110 uses the OMA-DM enabler client 120 to perform the OMA-DM enabler server 220. Communicate with The DM scheduling enabler client 110 has a scheduling context configuration function 130 that functions to install or reconfigure the scheduling context, and the state of the device or the execution state of the scheduling context is dependent on the scheduling condition. A condition matching function 140 for confirming conformity and a user interaction function 150 in charge of interaction with a user are included. In addition, the DM scheduling enabler client 110 may include a task execution function 160 that executes a corresponding task when the state of the device or the execution state of the scheduling context matches a scheduling condition, and optionally, the device management system 200. Gating function 170 to increase efficiency by reporting to the device, a status reporting function 180 for reporting the status of the device management system 200, and a result for storing the result. And a logging function 190.

그런데 하나의 스케줄링 콘텍스트에 포함되는 여러 스케줄링 컴포넌트들이 논리적으로 연계되어 있기 때문에, 서로의 상태에 영향을 받는 경우가 발생한다. 하지만, 상기한 종래 기술의 컨디션 비교부(140)는 시간(time), 트랩(trap), 임계 치(threshold)로 이루어진 조건만을 체크하여, 이를 만족하는 경우 태스크를 실행하도록 구성되어 있을 뿐 다른 스케줄링 컴포넌트의 결과에 영향을 받을 수 있는 태스크를 실행하도록 구성되어 있지 않다. 또한 상태 보고부(180)가 태스크 실행 결과를 DM 관리 시스템(200)으로만 보고하도록 설정되어 있을 뿐, 다른 스케줄링 컴포넌트로 보고하도록 설정되어 있지 않다. 때문에, 하나의 스케줄링 콘텍스트에 포함되는 스케줄링 컴포넌트 간에 연관성이 있을 때 이를 해결 할 수가 없다는 문제점이 있다. 또한 논리적으로 연관이 있는 스케줄링 컴포넌트들이 각기 설정된 컨디션이 만족되더라도 다른 스케줄링 컴포넌트의 상태에 따라 태스크를 실행할 필요도 없는 경우가 있으며, 실행하더라도 원치 않은 결과를 낳게 되는 경우도 있다. 이러한 경우 불필요한 스케줄링 컴포넌트가 실행되는 것이고, 이에 따라 자원 낭비가 발생한다. However, since several scheduling components included in one scheduling context are logically linked, they may be affected by the state of each other. However, the condition comparison unit 140 according to the related art checks only a condition consisting of time, trap, and threshold, and executes a task if it satisfies this. It is not configured to run tasks that might be affected by the component's results. In addition, the status reporting unit 180 is set to report the task execution result only to the DM management system 200, and is not set to report to another scheduling component. Therefore, there is a problem that cannot be solved when there is an association between scheduling components included in one scheduling context. In addition, logically related scheduling components do not need to execute tasks depending on the state of other scheduling components even if the set conditions are satisfied. Sometimes, the scheduling components may have undesirable results. In this case, unnecessary scheduling component is executed, and resource waste occurs.

따라서 본 발명은 스케줄링 콘텍스트에 포함되는 스케줄링 컴포넌트의 태스크가 다른 스케줄링 컴포넌트 실행 결과에 영향을 받을 때 발생할 수 있는 문제를 해결할 수 있는 방법을 제공한다. Accordingly, the present invention provides a method for solving a problem that may occur when a task of a scheduling component included in a scheduling context is affected by another scheduling component execution result.

그리고 본 발명은 불필요한 스케줄링 컴포넌트의 실행을 방지하여 자원 소모를 효율적으로 할 수 있는 방법을 제공한다. In addition, the present invention provides a method for efficiently consuming resources by preventing the execution of unnecessary scheduling components.

또한 본 발명은 스케줄링 콘텍스트 실행시 올바른 수행결과를 얻을 수 있는 방법을 제공한다. In addition, the present invention provides a method for obtaining correct execution results when executing a scheduling context.

상기의 목적을 달성하기 위한 본 발명은, 디바이스 관리 시스템에서 관리 대상이 되는 디바이스의 디바이스 관리 스케줄링 인에이블러 클라이언트가 스케줄링 콘텍스트를 실행하는 방법에 있어서, 상기 스케줄링 콘텍스트를 인스톨하는 과정과, 상기 스케줄링 콘텍스트에 포함되는 다수의 스케줄링 컴포넌트를 활성화 하는 과정과, 상기 다수의 스케줄링 컴포넌트 중 임의의 스케줄링 컴포넌트에 설정된 태스크 실행 조건으로 다른 스케줄링 컴포넌트의 실행 결과가 설정되어 있으면, 상기 다른 스케줄링 컴포넌트의 실행 결과에 따라 상기 임의의 스케줄링 컴포넌트의 태스크를 실행하는 과정과, 상기 임의의 스케줄링 컴포넌트의 실행 결과를 저장하는 과정을 포함한다. According to an aspect of the present invention, a method of executing a scheduling context by a device management scheduling enabler client of a device to be managed in a device management system includes: installing the scheduling context; Activating a plurality of scheduling components included in the control unit, and if an execution result of another scheduling component is set as a task execution condition set in any scheduling component of the plurality of scheduling components, according to the execution result of the other scheduling component. Executing a task of an arbitrary scheduling component, and storing a result of executing the arbitrary scheduling component.

그리고 본 발명은 상기 임의의 스케줄링 컴포넌트의 실행 결과를 참조하는 미리 설정된 스케줄링 컴포넌트가 있으면, 상기 임의의 스케줄링 컴포넌트 실행 결과를, 상기 스케줄링 콘텍스트 인스톨시 저장되는 스케줄링 콘텍스트 MO의 상기 미리 설정된 스케줄링 컴포넌트와 관련된 노드에 저장함으로써, 상기 임의의 스케줄링 컴포넌트의 실행 결과를 상기 미리 설정된 스케줄링 컴포넌트로 보고한다. 여기서 상기 MO는 Management Object의 약자이며, 단말을 관리하는 외부 서버가 단말로 설정값과 측정값을 전달 또는 획득하거나, 단말이 외부 서버로 상기 값들을 전송하는 대상 노드로 구성된다. 즉, 본 발명에서 상기 노드는 스케줄 관련 정보를 개별적으로 지닌 구성 단위로 볼 수 있다.And if there is a preset scheduling component referencing the execution result of the arbitrary scheduling component, the node associated with the predetermined scheduling component of the scheduling context MO stored at the time of the scheduling context installation. By storing the result of execution of the arbitrary scheduling component as the preset scheduling component. Herein, the MO is an abbreviation of Management Object, and is configured as a target node in which an external server managing a terminal delivers or obtains a set value and a measured value to a terminal, or a terminal transmits the values to an external server. That is, in the present invention, the node may be viewed as a component unit having schedule related information individually.

그리고 본 발명은 상기 임의의 스케줄링 컴포넌트의 태스크 실행시, 상기 스케줄링 콘텍스트 MO에서 상기 임의의 스케줄링 컴포넌트의 컨디션 노드의 하위 노 드를 참조하여 상기 임의의 스케줄링 컴포넌트에 설정된 태스크 실행 조건으로 다른 스케줄링 컴포넌트의 실행 결과가 설정되어 있음을 파악하고, 상기 다른 스케줄링 컴포넌트의 실행 결과를 확인하여 상기 임의의 스케줄링 컴포넌트의 태스크를 실행한다. And the present invention executes another scheduling component with a task execution condition set in the scheduling component by referring to a lower node of the condition node of the scheduling component in the scheduling context MO when executing the task of the scheduling component. It determines that the result is set, checks the execution result of the other scheduling component, and executes the task of the arbitrary scheduling component.

그리고 본 발명은 상기 임의의 스케줄링 컴포넌트의 태스크를 실행할시, 상기 스케줄링 콘텍스트 MO에서 상기 임의의 스케줄링 컴포넌트의 컨디션 노드에 내부 종속성 노드가 포함되어 있으면 상기 임의의 스케줄링 컴포넌트의 태스크 실행 조건으로 상기 다른 스케줄링 컴포넌트의 실행 결과가 설정되어 있는 것으로 판단하는 단계와, 상기 컨디션 노드에 설정된 다른 태스크 실행 조건이 만족하고, 상기 내부 종속성 노드의 하위 노드인 기준값 노드에 저장된 기준값과 상기 내부 종속성 노드의 하위 노드인 상기 결과값 노드에 저장된 상기 다른 스케줄링 컴포넌트의 실행 결과값을 비교하여 일치하면 상기 임의의 스케줄링 컴포넌트의 태스크를 실행하는 단계를 포함한다. And when the task node of the scheduling component MO includes an internal dependency node in the scheduling context of the scheduling component MO, the task scheduling condition of the scheduling component of the scheduling component MO. Determining that the execution result of the step is set, and the result value which is a lower node of the internal dependency node and a reference value stored in a reference value node which is a lower node of the internal dependency node when other task execution conditions set in the condition node are satisfied. Comparing the execution result of the other scheduling component stored in the value node and executing the task of any scheduling component if there is a match.

그리고 본 발명은 상기 임의의 스케줄링 컴포넌트의 실행 결과를 참조하는 미리 설정된 스케줄링 컴포넌트에 대한 정보는 상기 스케줄링 콘텍스트 MO에서 상기 임의의 스케줄링 컴포넌트의 리포팅 노드의 하위 노드인 목적 컴포넌트 노드(33)에 저장한다. In addition, the present invention stores the information on the preset scheduling component referring to the execution result of the scheduling component in the destination component node 33 which is a lower node of the reporting node of the scheduling component in the scheduling context MO.

한편, 본 발명은 상기 임의의 스케줄링 컴포넌트의 실행 결과를 특정 노드에 저장하지 않고 상기 결과값이 필요한 서버나 다른 스케줄링 컴포넌트에 보고하거나, 혹은 도3b의 로그 컨트롤 노드에 저장할 수 있다. Meanwhile, the present invention may report the result of execution of any scheduling component to a server or another scheduling component that requires the result without storing the result in a specific node, or may store the result in the log control node of FIG. 3B.

그리고 본 발명은 상기 임의의 스케줄링 컴포넌트의 태스크를 실행시 상기 스케줄링 콘텍스트 MO에서 상기 임의의 스케줄링 컴포넌트의 컨디션 노드의 하위 노드를 참조하여 상기 임의의 스케줄링 컴포넌트에 설정된 태스크 실행 조건으로 다른 스케줄링 컴포넌트의 실행 결과가 설정되어 있음을 파악하고, 상기 스케줄링 콘텍스트 MO에서 상기 다른 스케줄링 컴포넌트의 컨디션 노드를 확인하여 상기 다른 스케줄링 컴포넌트의 실행 결과를 파악하여 상기 임의의 스케줄링 컴포넌트의 태스크를 실행한다. The present invention is a result of executing another scheduling component with a task execution condition set in the scheduling component by referring to a lower node of the condition node of the scheduling component in the scheduling context MO when executing the task of the scheduling component. Is set, and checks the condition node of the other scheduling component in the scheduling context MO to determine the execution result of the other scheduling component to execute the task of the arbitrary scheduling component.

이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다. 도면에서 동일한 구성요소들에 대해서는 비록 다른 도면에 표시되더라도 가능한 한 동일한 참조번호 및 부호로 나타내고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명은 생략한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Note that the same components in the drawings are represented by the same reference numerals and symbols as much as possible even though they are shown in different drawings. In addition, in describing the present invention, when it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.

본 발명의 일 실시예에 따른 DM 스케줄링 인에이블러 클라이언트(300)의 구성을 도2에 도시하였다. 도2를 참조하여, 본 발명의 일 실시예에 따른 DM 스케줄링 인에이블러 클라이언트(300)는 스케줄링 콘텍스트 구성부(scheduling context configuration function)(301)와, 컨디션 비교부(condition matching function)(303)와, 인터랙션부(user interaction function)(305)와, 태스크 실행부(task execution function)(307)와, 게이팅 기능부(Gating function)(309)와, 상태 보고부(status reporting function)(311)와, 로깅 기능부(logging function)(313)를 포함한다. 2 illustrates a configuration of a DM scheduling enabler client 300 according to an embodiment of the present invention. Referring to FIG. 2, the DM scheduling enabler client 300 according to an embodiment of the present invention may include a scheduling context configuration function 301 and a condition matching function 303. And a user interaction function 305, a task execution function 307, a gating function 309, and a status reporting function 311. And a logging function 313.

스케줄링 콘텍스트 구성부(301)는 스케줄링 콘텍스트를 설치하고, 구성을 변경한다. 상기 스케줄링 콘텍스트는 일반적으로 모니터링해야하는 디바이스의 상태나 구성요소에 대응하는 다수의 스케줄링 컴포넌트를 포함하며, 스케줄링 콘텍스트가 설치됨에 따라, 스케줄링 콘텍스트 MO가 DM 스케줄링 인에이블러 클라이언트(300)에 저장된다. 상기 스케줄링 콘텍스트 MO는 각 스케줄링 컴포넌트에 대응하여 설정된 태스크 실행 조건, 사용자 인터랙션 정보, 실행하야 하는 태스크 정보, 보고 대상과 보고되어야하는 정보의 종류를 나타내는 정보, 보고된 정보, 로깅 제어 정보, 상태 정보 등을 저장하는 노드들을 포함하며, 각 스케줄링 컴포넌트 실행에 필요한 모든 정보를 저장한다. 때문에, 스케줄링 콘텍스트의 설치가 완료되고 실행이 시작되면, DM 스케줄링 인에이블러 클라이언트(300)는 저장된 스케줄링 콘텍스트 MO를 참조하여, 설치된 스케줄링 콘텍스트에 포함되는 각 스케줄링 컴포넌트에 설정된 조건에 따라 각 스케줄링 컴포넌트와 관련되어지는 디바이스의 동작을 모니터링하여, 디바이스 관리 서버에 보고한다. The scheduling context constructing unit 301 installs a scheduling context and changes the configuration. The scheduling context generally includes a number of scheduling components corresponding to the state or component of the device to be monitored, and as the scheduling context is installed, the scheduling context MO is stored in the DM scheduling enabler client 300. The scheduling context MO may include task execution conditions, user interaction information, task information to be executed, information indicating a report target and a kind of information to be set, reported information, logging control information, and status information corresponding to each scheduling component. It contains nodes that store the information, and stores all the information needed to execute each scheduling component. Therefore, when the installation of the scheduling context is completed and execution starts, the DM scheduling enabler client 300 refers to the stored scheduling context MO, and according to the conditions set in each scheduling component included in the installed scheduling context, The operation of the device to be related is monitored and reported to the device management server.

컨디션 비교부(303)는 상기 스케줄링 콘텍스트에 포함되는 각각의 스케줄링 컴포넌트에 설정된 태스크 실행 조건과 디바이스의 상태 또는 스케줄링 콘텍스트의 실행 상태가 부합하는지 확인하고, 태스크 실행 조건과 디바이스의 상태가 일치하는 스케줄링 컴포넌트가 존재하면, 해당 스케줄링 컴포넌트의 태스크가 실행될 수 있도록 이를 사용자 인터랙션부(305)로 통보한다. 종래의 스케줄링 컴포넌트에 설정될 수 있는 태스크 실행 조건으로 시간(time), 임계치(threshold), 트랩(trap) 등이 있었다. 시간은 디바이스의 동작 시간 또는 현재 시각 등으로 설정될 수 있는 조건이고, 임계치는 디바이스의 동작 수행에 따라 발생할 수 있는 임의의 값으로 설정될 수 있는 조건이고, 트랩은 디바이스의 동작 수행시 발생할 수 있는 임의의 이벤트로 설정될 수 있는 조건이다. 본 발명에서는 이러한 일반적인 태스크 실행 조건이외에도 스케줄링 컴포넌트 간의 연관성에 따라 각 스케줄링 컴포넌트의 실행 결과값으로 설정될 수 있는 조건, 즉, 내부 종속성(interior dependency)을 태스크 실행 조건으로 추가한다. 이에 따라, 각 스케줄링 컴포넌트는 서로 연관성이 있는 다른 스케줄링 컴포넌트가 존재한다면, 상기 다른 스케줄링 컴포넌트의 태스크 실행 결과에 따른 상태 값을 자신의 태스크 실행 여부를 결정하는 조건으로 설정할 수 있는 것이다. 다시 말해, 컨디션 비교부(303)는 임의의 스케줄링 컴포넌트의 태스크 실행 조건으로 내부 종속성이 설정되어 있으면, 관련 스케줄링 컴포넌트로 지정되어 있는 스케줄링 컴포넌트의 태스크 실행 결과값이 상기 내부 종속성으로 설정된 조건 값과 일치하는지 확인한다. 그리고 다른 태스크 실행 조건, 예를 들어, 시간, 트랩, 임계치 조건이 일치하는지 확인하여, 설정된 모든 태스크 실행 조건이 만족되면, 컨디션 비교부(303)는 상기 임의의 스케줄링 컴포넌트에 설정된 태스크 실행 조건이 만족되었음을 사용자 인터랙션부(305)로 통보한다. The condition comparison unit 303 checks whether the task execution condition set in each scheduling component included in the scheduling context matches the state of the device or the execution state of the scheduling context, and the scheduling component in which the task execution condition and the state of the device match. Is present, the user interaction unit 305 is notified so that the task of the scheduling component can be executed. Task execution conditions that can be set in a conventional scheduling component include time, threshold, trap, and the like. The time is a condition that can be set to the operation time or the current time of the device, the threshold is a condition that can be set to any value that can occur according to the performance of the device operation, and the trap can occur when the device is performing the operation. Condition that can be set for any event. In addition to the general task execution conditions, the present invention adds a condition that can be set as an execution result value of each scheduling component according to the association between scheduling components, that is, an internal dependency as a task execution condition. Accordingly, if there are other scheduling components that are related to each other, each scheduling component may set a state value according to a task execution result of the other scheduling component as a condition for determining whether to execute its own task. In other words, if the internal dependency is set as a task execution condition of any scheduling component, the condition comparison unit 303 matches the task execution result value of the scheduling component designated as the related scheduling component with the condition value set as the internal dependency. Check it. If all task execution conditions are satisfied by checking whether other task execution conditions, for example, time, trap, and threshold conditions match, the condition comparison unit 303 satisfies the task execution conditions set in the scheduling component. The user interaction unit 305 is notified.

사용자 인터랙션부(305)는 상기 컨디션 비교부(303)의 통보를 수신하면, 각 스케줄링 컴포넌트 설정에 따라 사용자의 인터랙션을 선택적으로 확인한 후 태스크 실행부(307)로 태스크 실행을 요청한다. 태스크 실행부(307)는 태스크 실행 요청에 따라 해당 스케줄링 컴포넌트의 태스크를 실행하고, 그 결과를 게이팅 기능부(309) 로 출력한다. 게이트 기능부(309)는 각각의 스케줄링 컴포넌트의 태스크 실행 결과 중 디바이스 관리 서버로 전송할 데이터들을 선별하여 상태 보고부(311)로 출력한다. 상태 보고부(311)는 각 스케줄링 컴포넌트 별로 게이팅 기능부(311)에 의해 선별된 태스크 실행 결과 및 상태 변화를 디바이스 관리 서버로 전송한다. 그리고 상태 보고부(311)는 본 발명의 제1실시예에 따라, 각 스케줄링 컴포넌트의 설정을 참조하여 태스크 실행 결과 및 상태 변화가 다른 스케줄링 컴포넌트의 태스크 실행 조건으로 설정되어 있으면, 상기 컨디션 비교부(303)로 상기 태스크 실행 결과 및 상태 변화를 보고한다. 이때, 상기 상태 변화는 프로세스 중에 발생할 수 있는 모든 오류를 포함할 수 있으며, 다른 스케줄링 컴포넌트에 영향을 줄 수 있는 모든 상태 정보를 포함할 수 있다. 다시 말해 상태 보고부(311)는 임의의 스케줄링 컴포넌트에 태스크 실행 결과가 다른 스케줄링 컴포넌트의 태스크 실행 조건으로 설정되어 있으면, 상기 임의의 스케줄링 컴포넌트의 태스크 실행 결과 또는 상태 변화를 컨디션 비교부(303)로 보고하여, 컨디션 비교부(303)가 상기 다른 스케줄링 컴포넌트의 태스크 실행 조건의 만족 여부를 확인할 때, 보고된 정보를 참조할 수 있게 한다. 상태 보고부(311)의 태스크 실행 결과 및 상태 변화 보고 방식은 상기 다른 스케줄링 컴포넌트와 관련된 스케줄링 텍스트 MO의 해당 노드에 상기 임의의 스케줄링 컴포넌트 태스크의 실행 결과 및 상태 변화를 입력함으로써 이루어질 수 있다. 이에 따라 컨디션 비교부(303)는 상기 다른 스케줄링 컴포넌트의 태스크 실행 조건의 만족 여부를 확인할 때, 다른 스케줄링 컴포넌트와 관련된 노드만을 참조하여, 다른 스케줄링 컴포넌트의 태스크 실행 조건으로 설정된 내부 종속성 값과 상 태 보고부(311)에 의해 보고된 태스크 실행 결과 및 상태 변화를 비교한다. When the user interaction unit 305 receives the notification from the condition comparison unit 303, the user interaction unit 305 selectively checks user interaction according to each scheduling component setting, and requests the task execution unit 307 to execute a task. The task execution unit 307 executes the task of the scheduling component according to the task execution request, and outputs the result to the gating function unit 309. The gate function unit 309 selects data to be transmitted to the device management server from the task execution result of each scheduling component and outputs the data to the status report unit 311. The status report unit 311 transmits the task execution result and the state change selected by the gating function unit 311 for each scheduling component to the device management server. According to the first embodiment of the present invention, if the task execution result and the state change are set to task execution conditions of another scheduling component with reference to the setting of each scheduling component, the condition comparison unit ( 303) reports the task execution result and state change. In this case, the state change may include all errors that may occur during the process, and may include all state information that may affect other scheduling components. In other words, if the task execution result is set to a task execution condition of another scheduling component in the scheduling component 311, the status reporter 311 sends the task execution result or state change of the scheduling component to the condition comparison unit 303. By reporting, the condition comparison unit 303 may refer to the reported information when checking whether the task execution condition of the other scheduling component is satisfied. The task execution result and state change reporting method of the status report unit 311 may be performed by inputting an execution result and a state change of the scheduling component task to a corresponding node of the scheduling text MO associated with the other scheduling component. Accordingly, when the condition comparison unit 303 checks whether the task execution condition of the other scheduling component is satisfied, only the node related to the other scheduling component is referred to, and the internal dependency value and the state set as the task execution condition of the other scheduling component are reported. The task execution result and the state change reported by the unit 311 are compared.

상기한 제1실시예에서는 상태 보고부(311)가 임의의 스케줄링 컴포넌트 태스크 실행 결과를 관련된 다른 스케줄링 컴포넌트의 노드에 입력하여 보고하도록 구성하였으나, 본 발명에 따른 제2실시예에에서는 상태 보고부(311)의 보고 없이, 컨디션 비교부(303)가 임의의 스케줄링 컴포넌트의 태스크 실행 조건 확인시, 임의의 스케줄링 컴포넌트에 영향을 미치는 스케줄링 컴포넌트 노드로 지정된 스케줄링 컴포넌트와 관련된, 스케줄링 콘텍스트 MO의 노드를 확인하여 동작을 수행하도록 구성할 수도 있다. In the first embodiment, the status report unit 311 is configured to input and report an execution result of an arbitrary scheduling component task to a node of another related scheduling component. However, in the second embodiment according to the present invention, the status report unit ( Without reporting of 311), when the condition comparison unit 303 checks the task execution condition of any scheduling component, the node of the scheduling context MO associated with the scheduling component designated as the scheduling component node affecting any scheduling component is checked. It may also be configured to perform an operation.

본 발명의 제1실시예에 따라 구성될 수 있는 스케줄링 콘텍스트 MO의 구성을 도3a와 3b에 도시하였다. 이하 설명에서 첨자가'*'로 표시된 노드는 0개 또는 여러 개의 노드가, '+'로 표시된 노드는 1개 또는 그 이상의 노드가 존재함을 의미한다. 도3a와 3b를 참조하여, 스케줄링 콘텍스트 MO의 스케줄링 노드(Schedule)(11)의 하위에 구비되는 임의의 스케줄링 컴포넌트(X+)(12)는 하위 노드로 컨디션 노드(Cond)(13)와, 사용자 인터랙션 노드(UI)와, 태스크 노드(Task)와, 리포팅 노드(Reporting)(27)와, 로깅 제어 노드(LogCtrl)와, 초기 상태 노드(InitState)와, 상태 노드(State) 등을 포함할 수 있다. 즉, 상기 스케줄링 노드(Schedule)(11)는 실행할 각각의 스케줄링 컴포넌트 별로, 각 스케줄링 컴포넌트와 관련된 정보를 저장하는 하위 노드를 구비한다. 상기 컨디션 노드(Cond)(13)는 해당 스케줄링 컴포넌트의 태스크 실행과 관련된 조건들이 저장되는 하위 노드를 구비하며, 상기 사용자 인터랙션 노드(UI)는 해당 스케줄링 컴포넌트와 관련된 사용자 인터랙션 값이 저장되는 하위 노드를 구비한다. 상기 태스크 노드(Task)는 해당 스케줄링 컴포넌트에서 실행되는 태스크를 저장하고, 상기 리포팅 노드(Reporting)(27)는 해당 스케줄링 컴포넌트의 태스크 실행 결과의 리포트 대상에 대한 정보가 저장되는 하위 노드들을 구비한다. 상기 로그 제어 노드(LogCtrl)는 해당 스케줄링 컴포넌트의 실행 히스토리 정보가 저장되는 하위 노드를 구비하며, 상기 태스크의 실행 결과값을 저장할 수 있다. 그리고 상기 초기 상태 노드(InitState)는 스케줄 컴포넌트의 실행 시점에 대한 정보가 저장되고, 상태 노드(State)는 스케줄 컴포넌트의 현재 실행 상태에 대한 정보가 저장된다. 그리고 본 발명의 일 실시예에 따라 컨디션 노드(13)는 종래의 태스크 실행 조건 값이 저장되는 시간 노드(Timer)(15), 임계치 노드(Th)(17), 트랩 노드(Trap)(19) 이외에 내부 종속성 노드(interior dependency)(21)를 새롭게 하위 노드로 포함할 수 있다. 상기 시간 노드(Timer)(15)는 상기 태스크 실행 조건 값 중 시간과 관련된 조건 값을 저장하고, 임계치 노드(Th)(17)는 상기 태스크 실행 조건 값 중 특정 임계치와 관련된 조건 값을 저장하고, 상기 트랩 노드(Trap)(19)는 상기 태스크 실행 조건 값 중 디바이스의 동작 수행시 발생할 수 있는 임의의 이벤트와 관련된 값을 저장한다. 내부 종속성 노드(21)는 상기 임의의 스케줄링 컴포넌트(12)의 태스크 실행 여부가 다른 스케줄링 컴포넌트의 실행과 관련이 있음을 의미하며, 관련된 스케줄링 컴포넌트에 대한 정보를 포함하며, 하위에 비교 기준값이 저장되는 기준값 노드(Variable)(23)와, 다른 스케줄링 컴포넌트의 태스크 결과 및 상태 변화가 저장되는 결과값 노드(Decision Value)(25)를 포함한다. 또한 리포팅 노드(27)는 보고 대상이 되는 디 바이스 관리 서버와 관련된 정보가 저장되는 서버노드(Server)(29)외에 상기 임의의 스케줄링 컴포넌트(12)의 태스크 실행 결과 및 상태 변화가 다른 스케줄링 컴포넌트에 영향을 주는 것을 의미하는 컴포넌트 노드(Component)(31)를 포함할 수 있다. 그리고 컴포넌트 노드(31)는 하위 노드로 당 스케줄링 컴포넌트의 실행 결과에 영향을 받는 다른 스케줄링 컴포넌트를 식별할 수 있는 정보인 MO ID가 저장되는 목적 컴포넌트 노드(ToRef)(33)를 포함한다. 이러한 스케줄링 콘텍스트 MO의 구성은 본 발명의 제1실시예에 따른 구성이며, 본 발명의 제2실시예 또는 다른 실시예에 따라 다르게 구성될 수 있다. 3A and 3B illustrate the configuration of a scheduling context MO that may be configured according to the first embodiment of the present invention. In the following description, a node indicated by a subscript '*' means zero or several nodes, and a node represented by a '+' means that one or more nodes exist. 3A and 3B, any scheduling component (X +) 12 provided below the scheduling node 11 of the scheduling context MO is a lower node, the condition node (Cond) 13, and the user. It may include an interaction node (UI), a task node (Task), a reporting node (Reporting) 27, a logging control node (LogCtrl), an initial state node (InitState), a state node (State) and the like. have. That is, the scheduling node 11 includes a lower node that stores information related to each scheduling component for each scheduling component to be executed. The condition node (Cond) 13 has a lower node for storing the conditions related to the task execution of the scheduling component, the user interaction node (UI) is a lower node for storing the user interaction value associated with the scheduling component. Equipped. The task node stores a task executed in a corresponding scheduling component, and the reporting node 27 includes lower nodes that store information on a report target of a task execution result of the corresponding scheduling component. The log control node LogCtrl may include a lower node that stores execution history information of a corresponding scheduling component, and may store an execution result value of the task. In addition, the initial state node InitState stores information about an execution time of a schedule component, and the state node State stores information about a current execution state of a schedule component. According to an embodiment of the present invention, the condition node 13 may include a time node 15, a threshold node Th 17, and a trap node 19 in which a conventional task execution condition value is stored. In addition, an internal dependency node 21 may be newly included as a lower node. The time node 15 stores a condition value related to time among the task execution condition values, and the threshold node Th 17 stores a condition value related to a specific threshold value among the task execution condition values, The trap node 19 stores a value related to any event that may occur when the device performs an operation among the task execution condition values. The internal dependency node 21 means that the execution of the task of any scheduling component 12 is related to the execution of other scheduling components. The internal dependency node 21 includes information on related scheduling components, and a comparison reference value is stored below. A reference value node (Variable) 23 and a decision value node 25 in which task results and state changes of other scheduling components are stored. In addition to the server node 29 in which the reporting node 27 stores information related to the device management server to be reported, the reporting node 27 may change a task execution result and state change of the scheduling component 12 to another scheduling component. It may include a component node (Component) 31 that means to influence. The component node 31 includes a target component node (ToRef) 33 in which a MO ID, which is information for identifying another scheduling component affected by the execution result of the scheduling component, is stored as a lower node. The configuration of the scheduling context MO is a configuration according to the first embodiment of the present invention, and may be configured differently according to the second embodiment or another embodiment of the present invention.

상기와 같이 구성되는 DM 스케줄링 인에이블러 클라이언트(300)의 본 발명의 제1실시예에 따른 동작과정을 도4에 도시하였다. 도4에 도시된 과정은 하나의 스케줄링 콘텍스트에 포함되는 다수의 스케줄 컴포넌트 중에서 두 개의 스케줄링 컴포넌트의 실행 과정을 나타낸 것으로, 제1스케줄링 컴포넌트의 태스크 실행에 따른 결과 및 상태 변화가 제2스케줄링 컴포넌트의 태스크 실행에 영향을 미치는 경우를 가정한 것이다. 그리고 제1스케줄링 컴포넌트는 다른 스케줄링 컴포넌트의 태스크 실행 결과에 영향을 받지 않고, 제2스케줄링 컴포넌트의 태스크 실행 결과는 다른 스케줄링 컴포넌트의 태스크 실행에 영향을 미치지 않는다고 가정한다. 4 illustrates an operation of the DM scheduling enabler client 300 configured as described above according to the first embodiment of the present invention. 4 illustrates a process of executing two scheduling components among a plurality of scheduling components included in one scheduling context, and a result and a state change according to the execution of the task of the first scheduling component are the tasks of the second scheduling component. It is assumed that it affects performance. In addition, it is assumed that the first scheduling component is not affected by the task execution result of another scheduling component, and the task execution result of the second scheduling component does not affect the task execution of other scheduling components.

DM 스케줄링 인에이블러 클라이언트(300)는 401단계에서 스케줄링 콘텍스트를 인스톨하고 403단계로 진행한다. 이에 따라 스케줄링 콘텍스트 MO가 저장되며, 상기 가정에 따라, 스케줄링 콘텍스트 MO에서 제1스케줄링 컴포넌트와 관련된 노드 중 리포팅 노드는 컴포넌트 노드를 포함하고, 목적 컴포넌트 노드에 제2스케줄링 컴포넌트의 MO ID가 저장된다. 그리고 제2스케줄링 컴포넌트와 관련된 노드 중 컨디션 노드는 내부 종속성 노드를 하위 노드로 포함하며, 기준값 노드에 비교 기준 값이 저장된다. 403단계에서 DM 스케줄링 인에이블러 클라이언트(300)는 스케줄링 콘텍스트를 시작하여 각각의 스케줄링 컴포넌트를 활성화하여 405단계와 415단계로 진행한다. The DM scheduling enabler client 300 installs a scheduling context in step 401 and proceeds to step 403. Accordingly, the scheduling context MO is stored, and according to the above assumption, the reporting node among the nodes related to the first scheduling component in the scheduling context MO includes a component node, and the MO ID of the second scheduling component is stored in the target component node. The condition node among the nodes related to the second scheduling component includes an internal dependency node as a lower node, and the comparison reference value is stored in the reference value node. In step 403, the DM scheduling enabler client 300 starts a scheduling context to activate each scheduling component, and proceeds to steps 405 and 415.

제1스케줄링 컴포넌트 활성화에 따라 DM 스케줄링 인에이블러 클라이언트(300)는 405단계에서 제1스케줄 컴포넌트와 관련된 스케줄링 콘텍스트의 MO의 노드 중 컨디션 노드를 확인하여, 디바이스의 동작 상태가 제1스케줄링 컴포넌트에 설정된 태스크 실행 조건에 만족되는지 확인하고, 만족하면 407단계로 진행한다. 407단계에서 DM 스케줄링 인에이블러 클라이언트(300)는 제1스케줄링 컴포넌트의 태스크를 실행하고 409단계로 진행한다. 409단계에서 DM 스케줄링 인에이블러 클라이언트(300)는 스케줄링 콘텍스트 MO에서 제1스케줄링 컴포넌트와 관련된 노드 중 리포팅 노드의 하위 노드로 컴포넌트 노드가 존재함을 확인함에 따라, 제1스케줄링 컴포넌트의 영향을 받는 다른 스케줄링 컴포넌트가 존재함을 확인하여 411단계로 진행한다. 만약, 컴포넌트 노드가 존재하지 않는다면 413단계로 진행하여, 디바이스 관리 서버로 제1스케줄링 컴포넌트의 태스크 실행에 따른 상태를 보고한다. 411단계에서 DM 스케줄링 인에이블러 클라이언트(300)는 다른 스케줄링 컴포넌트에 영향을 미치는 값들을, 컴포넌트 노드의 하위 노드인 목적 컴포넌트 노드를 참조하여 해당 스케줄링 컴포넌트의 노드에 저장한다. 즉, 제2스케줄링 컴포넌트와 관련된 노드 중 내부 종속성 노드의 하위 노드인 결정 값 노드에 제1스케줄링 컴포넌트 태 스크 실행 결과 및 상태 변화 값을 저장한다. 이때 저장되는 값의 종류는 리포팅 노드에 의해 결정될 수 있다. According to the activation of the first scheduling component, the DM scheduling enabler client 300 checks a condition node among the nodes of the MO of the scheduling context associated with the first scheduling component in step 405, so that an operation state of the device is set in the first scheduling component. If the task execution condition is satisfied, the process proceeds to step 407. In operation 407, the DM scheduling enabler client 300 executes a task of the first scheduling component and proceeds to operation 409. In step 409, the DM scheduling enabler client 300 determines that the component node exists as a lower node of the reporting node among the nodes related to the first scheduling component in the scheduling context MO, and thus is affected by the other scheduling component. In step 411, the scheduling component is confirmed to exist. If the component node does not exist, the process proceeds to step 413 and reports the status of the task execution of the first scheduling component to the device management server. In operation 411, the DM scheduling enabler client 300 stores values influencing other scheduling components in the node of the scheduling component by referring to the target component node which is a child node of the component node. That is, the result of the first scheduling component task execution and the state change value are stored in the decision value node which is a lower node of the internal dependency node among the nodes related to the second scheduling component. In this case, the type of the stored value may be determined by the reporting node.

한편, 제2스케줄링 컴포넌트 활성화에 따라 DM 스케줄링 인에이블러 클라이언트(300)는 415단계에서 제2스케줄링 컴포넌트와 관련된 스케줄링 콘텍스트의 MO의 노드 중 컨디션 노드를 확인하여, 디바이스의 동작 상태가 제2스케줄링 컴포넌트의 태스크 실행 조건을 만족하는지 확인한다. 이때, 제2스케줄링 컴포넌트의 컨디션 노드에 내부 종속성 노드가 포함됨으로, DM 스케줄링 인에이블러 클라이언트(300)는 내부 종속성 노드의 하위 노드인 기준값 노드에 저장된 값과 결과값 노드에 저장된 값을 비교하여, 두 값이 일치하면 내부 종속성 조건을 만족한 것으로 판단한다. 즉, 상기 제1스케줄링 컴포넌트의 태스크 실행에 따라 결과값 노드에 저장된 제1스케줄링 컴포넌트의 태스크 실행 결과 및 상태 변환이 기준값을 만족하는지 확인한다. 이외에 다른 태스크 실행 조건도 만족되면, DM 스케줄링 인에이블러 클라이언트(300)는 417단계로 진행하여 제2스케줄링 컴포넌트 태스크를 실행하고 419단계로 진행하여 디바이스 관리 서버로 제2스케줄링 컴포넌트 상태를 보고한다. According to the activation of the second scheduling component, the DM scheduling enabler 300 checks the condition node among the nodes of the MO of the scheduling context associated with the second scheduling component in step 415, so that the operation state of the device is determined by the second scheduling component. Check if the task execution condition is satisfied. In this case, since the internal dependency node is included in the condition node of the second scheduling component, the DM scheduling enabler client 300 compares the value stored in the reference value node, which is a child node of the internal dependency node, with the value stored in the result value node. If the two values match, it is determined that the internal dependency condition is satisfied. That is, according to the execution of the task of the first scheduling component, it is checked whether the task execution result and the state transformation of the first scheduling component stored in the result node satisfy the reference value. If other task execution conditions are satisfied, the DM scheduling enabler client 300 proceeds to step 417 to execute the second scheduling component task, and proceeds to step 419 to report the second scheduling component status to the device management server.

도5와, 도6a, 6b는 상기 도4에 도시된 실시예에서 제1스케줄링 컴포넌트의 태스크 실행 조건으로 태스크 내용의 BER(Bit Error Rate) 값이 0.001 보다 작으면 해당 태스크 예로 DiagMon 데이터, 즉, 디바이스에서 발생하는 오류와 관련된 데이터를 수집하라는 것이고, 제2스케줄링 컴포넌트의 태스크 실행 조건과 태스크 내용이 네트워크의 사용량이 적은 자정에, 수집된 DiagMon 데이터를 디바이스 관리 서버에게 전송하라는 것이라고 가정했을 때의 DM 스케줄링 인에이블러 클라이언 트(300)의 동작 과정과, 스케줄링 콘텍스트 MO의 구성을 나타낸 것이다. 제2스케줄링 컴포넌트의 태스크인 DiagMon 데이터를 디바이스 관리 서버에게 전송하는 것은 전송할 데이터가 없으면 할 필요가 없는 동작이며, 단지 시간의 조건에만 부합된다고 해서 실행된다면 자원의 낭비를 야기할 것이다. 즉, 제1스케줄링 컴포넌트의 태스크가 실행되고 나서 이루어져야만 의미가 있는 것이다. 이러한 두 스케줄링 컴포넌트를 포함하는 스케줄링 콘텍스트를 통해서 올바른 결과를 얻어내기 위해서는 두 스케줄링 컴포넌트 간의 종속성(dependency)을 해결할 필요가 있다. 이에 따라 본 발명에서는 제1스케줄링 컴포넌트의 태스크 수행 결과를 상태 보고 기능을 이용하여 제2스케줄링 컴포넌트가 태스크 실행 조건의 만족 여부를 확인할 때, 참조하도록 하는 것이다. 5, 6A, and 6B are examples of the corresponding task when the bit error rate (BER) value of the task content is less than 0.001 as the task execution condition of the first scheduling component in the embodiment shown in FIG. DM is assumed to collect data related to errors occurring in the device, and the task execution condition and task contents of the second scheduling component are to transmit the collected DiagMon data to the device management server at midnight when the network is low. The operation of the scheduling enabler 300 and the configuration of the scheduling context MO are shown. Sending DiagMon data, which is a task of the second scheduling component, to the device management server is an operation that does not need to be performed when there is no data to be transmitted, and it will cause a waste of resources if it is executed only if the conditions of time are met. That is, it is meaningful only after the task of the first scheduling component is executed. In order to obtain correct results through a scheduling context including these two scheduling components, it is necessary to resolve the dependency between the two scheduling components. Accordingly, in the present invention, the task scheduling result of the first scheduling component is referred to when the second scheduling component determines whether the task execution condition is satisfied by using a status reporting function.

이에 따라, 도6a와 6b에 도시된 바와 같이 스케줄링 콘텍스트 MO가 구성될 수 있다. 제1스케줄링 컴포넌트를 X1(503), 제2스케줄링 컴포넌트를 X2(521)라고 했을 때, X1(503)의 컨디션 노드(505)의 하위 노드인 임계치 노드(507)에 BER 값과 0.001 을 비교할 때 필요한 노드 값이 저장되고, 태스크 노드(509)에는 DiagMon 데이터 수집이라는 태스크가 저장된다. 그리고 X1(503)의 상태 보고 정보가 저장되는 리포팅 노드(511)의 하위로 서버 노드(513) 이외에 태스크 실행 결과 및 상태 정보의 영향을 받는 다른 스케줄링 컴포넌트가 있음을 나타내는 컴포넌트 노드(515)가 포함되며, 컴포넌트 노드(515)의 하위 노드인 목적 컴포넌트 노드(517)에 상기 제2스케줄링 컴포넌트의 MO ID가 저장된다. X2(521)의 컨디션 노드(523)는 하위 노드로 타이머 노드(525)와 내부 종속성 노드(527)를 포함하며, 타이머 노드(525)에는 상기 매일 자정이 조건값으로 저장된다. 그리고 내부 종속성 노드(527)에는 제1스케줄링 컴포넌트와의 연관성을 나타내기 위해 X1이 저장되고, 하위 노드인 결과값 노드(529)에 제1스케줄링 컴포넌트의 태스크 실행 결과값인 true가 저장된다. 그리고 태스크 노드(531)에는 DiaMon 데이터 전송이라는 태스크가 저장되고, 리포팅 노드(533)는 하위 노드로 서버 노드(535)만을 구비한다. Accordingly, the scheduling context MO may be configured as shown in Figs. 6A and 6B. When the first scheduling component is referred to as X1 503 and the second scheduling component is referred to as X2 521, when the BER value and 0.001 are compared to the threshold node 507 which is a lower node of the condition node 505 of the X1 503. Necessary node values are stored, and task node 509 stores a task called DiagMon data collection. A component node 515 is included below the reporting node 511 in which the status report information of the X1 503 is stored, indicating that there are other scheduling components that are affected by the task execution result and the status information in addition to the server node 513. The MO ID of the second scheduling component is stored in the target component node 517 which is a lower node of the component node 515. The condition node 523 of the X2 521 includes a timer node 525 and an internal dependency node 527 as subordinate nodes. The timer node 525 stores the daily midnight as a condition value. X1 is stored in the internal dependency node 527 to indicate an association with the first scheduling component, and true, a result value of task execution of the first scheduling component, is stored in a result node 529 that is a lower node. In addition, a task called DiaMon data transmission is stored in the task node 531, and the reporting node 533 includes only the server node 535 as a lower node.

DM 스케줄링 인에이블러 클라이언트(300)는 상기와 같이 구성되는 스케줄링 콘텍스트 MO를 참조하여, 제1스케줄링 컴포넌트와 제2스케줄링 컴포넌트를 수행할 수 있다.  The DM scheduling enabler client 300 may perform the first scheduling component and the second scheduling component with reference to the scheduling context MO configured as described above.

상술한 바와 같이 본 발명은 하나의 스케줄링 콘텍스트에 포함되는 다수의 스케줄링 컴포넌트 중 서로 간에 연관성을 가지는 스케줄링 컴포넌트가 존재하면, 해당 스케줄링 컴포넌트 실행시 연관된 스케줄링 컴포넌트의 태스크 실행 결과 및 상태 변화를 체크하도록 함으로써, 불필요한 스케줄링 컴포넌트의 실행을 방지하고, 스케줄링 콘텍스트 실행시 올바른 수행결과를 얻을 수 있게 한다. As described above, in the present invention, when there is a scheduling component that is related to each other among a plurality of scheduling components included in one scheduling context, the execution of the task and the state change of the associated scheduling component are checked when the scheduling component is executed. It prevents the execution of unnecessary scheduling components and ensures correct execution results when executing the scheduling context.

상술한 본 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시할 수 있다. 따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위와 특허청구범위의 균등한 것에 의해 정해 져야 한다. In the above description of the present invention, specific embodiments have been described, but various modifications may be made without departing from the scope of the present invention. Therefore, the scope of the present invention should not be defined by the described embodiments, but should be determined by the equivalent of claims and claims.

상술한 바와 같이 본 발명은 하나의 스케줄링 콘텍스트에 포함되는 다수의 스케줄링 컴포넌트 중 서로 간에 연관성을 가지는 스케줄링 컴포넌트가 존재하면, 해당 스케줄링 컴포넌트 실행시 연관된 스케줄링 컴포넌트의 태스크 실행 결과 및 상태 변화를 체크하도록 함으로써, 불필요한 스케줄링 컴포넌트의 실행을 방지하고, 스케줄링 콘텍스트 실행시 올바른 수행결과를 얻을 수 있게 한다. As described above, in the present invention, when there is a scheduling component that is related to each other among a plurality of scheduling components included in one scheduling context, the execution of the task and the state change of the associated scheduling component are checked when the scheduling component is executed. It prevents the execution of unnecessary scheduling components and ensures correct execution results when executing the scheduling context.

Claims (7)

디바이스 관리 시스템에서 관리 대상이 되는 디바이스의 디바이스 관리 스케줄링 인에이블러 클라이언트가 스케줄링 콘텍스트를 실행하는 방법에 있어서,A device management scheduling enabler client of a device managed by a device management system executes a scheduling context, the method comprising: 상기 스케줄링 콘텍스트를 인스톨하는 과정과, Installing the scheduling context; 상기 스케줄링 콘텍스트에 포함되는 다수의 스케줄링 컴포넌트를 활성화 하는 과정과, Activating a plurality of scheduling components included in the scheduling context; 상기 다수의 스케줄링 컴포넌트 중 임의의 스케줄링 컴포넌트에 설정된 태스크 실행 조건으로 다른 스케줄링 컴포넌트의 실행 결과가 설정되어 있으면, 상기 다른 스케줄링 컴포넌트의 실행 결과에 따라 상기 임의의 스케줄링 컴포넌트의 태스크를 실행하는 과정과, Executing a task of the scheduling component according to the execution result of the other scheduling component when the execution result of the other scheduling component is set as the task execution condition set in the scheduling component of the plurality of scheduling components; 상기 임의의 스케줄링 컴포넌트의 실행 결과를 저장하는 과정을 포함함을 특징으로 하는 실행 방법. And storing the execution result of the arbitrary scheduling component. 제1항에 있어서, 상기 임의의 스케줄링 컴포넌트의 실행 결과를 저장하는 과정은, The method of claim 1, wherein storing the execution result of the arbitrary scheduling component comprises: 상기 임의의 스케줄링 컴포넌트의 실행 결과를 참조하는 미리 설정된 스케줄링 컴포넌트가 설정되어 있으면, 상기 임의의 스케줄링 컴포넌트 실행 결과를, 상기 스케줄링 콘텍스트 인스톨시 저장되는 스케줄링 콘텍스트 MO의 상기 미리 설정 된 스케줄링 컴포넌트와 관련된 노드에 저장함으로써, 상기 임의의 스케줄링 컴포넌트의 실행 결과를 상기 미리 설정된 스케줄링 컴포넌트로 보고하는 과정임을 특징으로 하는 실행 방법.If a preset scheduling component is set that refers to an execution result of the scheduling component, the execution result of the arbitrary scheduling component is transmitted to a node associated with the preset scheduling component of the scheduling context MO which is stored when the scheduling context is installed. And storing the execution result of the scheduling component to the preset scheduling component. 제2항에 있어서, 상기 임의의 스케줄링 컴포넌트의 태스크를 실행하는 과정은, 상기 스케줄링 콘텍스트 MO에서 상기 임의의 스케줄링 컴포넌트의 컨디션 노드의 하위 노드를 참조하여 상기 임의의 스케줄링 컴포넌트에 설정된 태스크 실행 조건으로 다른 스케줄링 컴포넌트의 실행 결과가 설정되어 있음을 파악하고, 상기 다른 스케줄링 컴포넌트의 실행 결과를 확인하여 상기 임의의 스케줄링 컴포넌트의 태스크를 실행하는 과정임을 특징으로 하는 실행 방법. 3. The method of claim 2, wherein executing a task of any scheduling component is different from a task execution condition set for the scheduling component with reference to a lower node of a condition node of the scheduling component in the scheduling context MO. Determining that an execution result of a scheduling component is set, and checking an execution result of the other scheduling component to execute a task of the arbitrary scheduling component. 제3항에 있어서, 상기 임의의 스케줄링 컴포넌트의 태스크를 실행하는 과정은, The method of claim 3, wherein executing a task of any scheduling component comprises: 상기 스케줄링 콘텍스트 MO에서 상기 임의의 스케줄링 컴포넌트의 컨디션 노드에 내부 종속성 노드가 포함되어 있으면 상기 임의의 스케줄링 컴포넌트의 태스크 실행 조건으로 상기 다른 스케줄링 컴포넌트의 실행 결과가 설정되어 있는 것으로 판단하는 단계와,Determining that an execution result of the other scheduling component is set as a task execution condition of the scheduling component when the condition node of the scheduling component includes an internal dependency node in the scheduling context MO; 상기 컨디션 노드에 설정된 다른 태스크 실행 조건이 만족하고, 상기 내부 종속성 노드의 하위 노드인 기준값 노드에 저장된 기준값과 상기 내부 종속성 노드의 하위 노드인 상기 결과값 노드에 저장된 상기 다른 스케줄링 컴포넌트의 실행 결과값을 비교하여 일치하면 상기 임의의 스케줄링 컴포넌트의 태스크를 실행하는 단계를 포함함을 특징으로 하는 실행 방법. The other task execution condition set in the condition node is satisfied, and the reference value stored in the reference value node, which is a lower node of the internal dependency node, and the execution result value of the other scheduling component stored in the result value node, which is a child node of the internal dependency node. Executing the task of any scheduling component if compared and matched. 제4항에 있어서, 상기 임의의 스케줄링 컴포넌트의 실행 결과를 참조하는 미리 설정된 스케줄링 컴포넌트에 대한 정보는 상기 스케줄링 콘텍스트 MO에서 상기 임의의 스케줄링 컴포넌트의 리포팅 노드의 하위 노드에 저장됨을 특징으로 하는 실행 방법. 5. The method of claim 4, wherein information about a preset scheduling component that refers to an execution result of the scheduling component is stored in a lower node of a reporting node of the scheduling component in the scheduling context MO. 제1항에 있어서, 상기 임의의 스케줄링 컴포넌트의 실행 결과는 상기 스케줄링 콘텍스트 인스톨시 저장되는 스케줄링 콘텍스트 MO에서 상기 임의의 스케줄링 컴포넌트의 하위 노드에 저장함을 특징으로 하는 실행 방법.The method of claim 1, wherein the execution result of the scheduling component is stored in a lower node of the scheduling component in the scheduling context MO which is stored when the scheduling context is installed. 제6항에 있어서, 상기 임의의 스케줄링 컴포넌트의 태스크를 실행하는 과정은, 상기 스케줄링 콘텍스트 MO에서 상기 임의의 스케줄링 컴포넌트의 컨디션 노드의 하위 노드를 참조하여 상기 임의의 스케줄링 컴포넌트에 설정된 태스크 실행 조 건으로 다른 스케줄링 컴포넌트의 실행 결과가 설정되어 있음을 파악하고, 상기 스케줄링 콘텍스트 MO에서 상기 다른 스케줄링 컴포넌트의 컨디션 노드를 확인하여 상기 다른 스케줄링 컴포넌트의 실행 결과를 파악하여 상기 임의의 스케줄링 컴포넌트의 태스크를 실행하는 과정임을 특징으로 하는 실행 방법. 7. The method of claim 6, wherein executing a task of any scheduling component is different from a task execution condition set for the scheduling component with reference to a subnode of a condition node of the scheduling component in the scheduling context MO. The execution result of the scheduling component is determined, the condition node of the other scheduling component is checked in the scheduling context MO, the execution result of the other scheduling component is determined, and the task of the scheduling component is executed. The execution method characterized.
KR1020070003447A 2007-01-11 2007-01-11 Method for executing scheduling context in dm scheduling enabler KR101363156B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070003447A KR101363156B1 (en) 2007-01-11 2007-01-11 Method for executing scheduling context in dm scheduling enabler

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070003447A KR101363156B1 (en) 2007-01-11 2007-01-11 Method for executing scheduling context in dm scheduling enabler

Publications (2)

Publication Number Publication Date
KR20080066246A true KR20080066246A (en) 2008-07-16
KR101363156B1 KR101363156B1 (en) 2014-02-13

Family

ID=39821151

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070003447A KR101363156B1 (en) 2007-01-11 2007-01-11 Method for executing scheduling context in dm scheduling enabler

Country Status (1)

Country Link
KR (1) KR101363156B1 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100824298B1 (en) * 2005-05-02 2008-04-23 엘지전자 주식회사 Method for scheduling device management and terminal thereof

Also Published As

Publication number Publication date
KR101363156B1 (en) 2014-02-13

Similar Documents

Publication Publication Date Title
KR100641238B1 (en) Device management system and device management command scheduling method thereof
CN103095490B (en) Find and the performance information of excavating equipment is used for sending updates to equipment in advance
KR101369026B1 (en) Method and system for sharing performance data between different information technology product/solution deployments
US7103874B2 (en) Model-based management of computer systems and distributed applications
KR101474413B1 (en) Terminal for pefforming scheduled device mangament and method thereof
CN102047683B (en) Dynamic fault analysis for a centrally managed network element in a telecommunications system
EP2472400A2 (en) System and method for remote administration of computer network
US11256544B2 (en) Redistributing update resources during update campaigns
KR20080016160A (en) Method for managing software in terminal using device management server
KR101342370B1 (en) Terminal and method for pefforming device managemnt scheduled based on treshold thereof
US20100122119A1 (en) Method to manage performance monitoring and problem determination in context of service
JP2008506179A (en) Device management system and device management instruction scheduling method in the system
Gámez et al. Creating self-adapting mobile systems with dynamic software product lines
US8140614B2 (en) Distributed computing environment with remote data collection management
Kumar et al. imanage: Policy-driven self-management for enterprise-scale systems
KR101363156B1 (en) Method for executing scheduling context in dm scheduling enabler
KR20100067913A (en) Method for healing faults in sensor network and the sensor network for implementing the method
US20050114826A1 (en) Apparatus and method for self management of information technology component
Canzari et al. Using nagios to monitor the telescope manager (TM) of the square kilometre array (SKA)
Burkert et al. Rule-based technical management for the dependable operation of networked building automation systems
Mosincat et al. Dynamically adaptive systems through automated model evolution using service compositions
KR100669153B1 (en) System management system and method based on standard management module
AU2004279195B2 (en) Model-based management of computer systems and distributed applications
Kande Discussion of various models related to cloud performance

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

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee