KR101363156B1 - Method for executing scheduling context in dm scheduling enabler - Google Patents
Method for executing scheduling context in dm scheduling enabler Download PDFInfo
- Publication number
- KR101363156B1 KR101363156B1 KR1020070003447A KR20070003447A KR101363156B1 KR 101363156 B1 KR101363156 B1 KR 101363156B1 KR 1020070003447 A KR1020070003447 A KR 1020070003447A KR 20070003447 A KR20070003447 A KR 20070003447A KR 101363156 B1 KR101363156 B1 KR 101363156B1
- Authority
- KR
- South Korea
- Prior art keywords
- scheduling
- scheduling component
- node
- component
- task
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling 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
본 발명은 디바이스 관리 시스템에서 관리 대상이 되는 디바이스에 설치된 DM 스케줄링 인에이블러가 스케줄링 콘텍스트를 실행하는 방법에 관한 것으로, 상기 스케줄링 콘텍스트를 인스톨하고, 상기 스케줄링 콘텍스트에 포함되는 다수의 스케줄링 컴포넌트를 활성화 하고, 상기 다수의 스케줄링 컴포넌트 중 임의의 스케줄링 컴포넌트에 설정된 태스크 실행 조건으로 다른 스케줄링 컴포넌트의 실행 결과가 설정되어 있으면, 상기 다른 스케줄링 컴포넌트의 실행 결과에 따라 상기 임의의 스케줄링 컴포넌트의 태스크를 실행하고, 상기 임의의 스케줄링 컴포넌트의 실행 결과를 저장한다. The present invention relates to a method in which a DM scheduling enabler installed in a device to be managed in a device management system executes a scheduling context. The present invention relates to installing the scheduling context, activating a plurality of scheduling components included in the scheduling context. If the execution result of another scheduling component is set as a task execution condition set in any scheduling component of the plurality of scheduling components, the task of the arbitrary scheduling component is executed according to the execution result of the other scheduling component, and the arbitrary Stores the execution result of the scheduling component of the.
스케줄링 콘텍스트, 스케줄링 컴포넌트, 종속성 Scheduling context, scheduling component, dependencies
Description
도 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
상기한 스케줄링 콘텍스트를 실행하기 위해, 도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
그런데 하나의 스케줄링 콘텍스트에 포함되는 여러 스케줄링 컴포넌트들이 논리적으로 연계되어 있기 때문에, 서로의 상태에 영향을 받는 경우가 발생한다. 하지만, 상기한 종래 기술의 컨디션 비교부(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
따라서 본 발명은 스케줄링 콘텍스트에 포함되는 스케줄링 컴포넌트의 태스크가 다른 스케줄링 컴포넌트 실행 결과에 영향을 받을 때 발생할 수 있는 문제를 해결할 수 있는 방법을 제공한다. 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
한편, 본 발명은 상기 임의의 스케줄링 컴포넌트의 실행 결과를 특정 노드에 저장하지 않고 상기 결과값이 필요한 서버나 다른 스케줄링 컴포넌트에 보고하거나, 혹은 도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, a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings. It is to be noted that the same components in the drawings are denoted by the same reference numerals and symbols as possible even if they are shown in different drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.
본 발명의 일 실시예에 따른 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
스케줄링 콘텍스트 구성부(301)는 스케줄링 콘텍스트를 설치하고, 구성을 변경한다. 상기 스케줄링 콘텍스트는 일반적으로 모니터링해야하는 디바이스의 상태나 구성요소에 대응하는 다수의 스케줄링 컴포넌트를 포함하며, 스케줄링 콘텍스트가 설치됨에 따라, 스케줄링 콘텍스트 MO가 DM 스케줄링 인에이블러 클라이언트(300)에 저장된다. 상기 스케줄링 콘텍스트 MO는 각 스케줄링 컴포넌트에 대응하여 설정된 태스크 실행 조건, 사용자 인터랙션 정보, 실행하야 하는 태스크 정보, 보고 대상과 보고되어야하는 정보의 종류를 나타내는 정보, 보고된 정보, 로깅 제어 정보, 상태 정보 등을 저장하는 노드들을 포함하며, 각 스케줄링 컴포넌트 실행에 필요한 모든 정보를 저장한다. 때문에, 스케줄링 콘텍스트의 설치가 완료되고 실행이 시작되면, DM 스케줄링 인에이블러 클라이언트(300)는 저장된 스케줄링 콘텍스트 MO를 참조하여, 설치된 스케줄링 콘텍스트에 포함되는 각 스케줄링 컴포넌트에 설정된 조건에 따라 각 스케줄링 컴포넌트와 관련되어지는 디바이스의 동작을 모니터링하여, 디바이스 관리 서버에 보고한다. The scheduling
컨디션 비교부(303)는 상기 스케줄링 콘텍스트에 포함되는 각각의 스케줄링 컴포넌트에 설정된 태스크 실행 조건과 디바이스의 상태 또는 스케줄링 콘텍스트의 실행 상태가 부합하는지 확인하고, 태스크 실행 조건과 디바이스의 상태가 일치하는 스케줄링 컴포넌트가 존재하면, 해당 스케줄링 컴포넌트의 태스크가 실행될 수 있도록 이를 사용자 인터랙션부(305)로 통보한다. 종래의 스케줄링 컴포넌트에 설정될 수 있는 태스크 실행 조건으로 시간(time), 임계치(threshold), 트랩(trap) 등이 있었다. 시간은 디바이스의 동작 시간 또는 현재 시각 등으로 설정될 수 있는 조건이고, 임계치는 디바이스의 동작 수행에 따라 발생할 수 있는 임의의 값으로 설정될 수 있는 조건이고, 트랩은 디바이스의 동작 수행시 발생할 수 있는 임의의 이벤트로 설정될 수 있는 조건이다. 본 발명에서는 이러한 일반적인 태스크 실행 조건이외에도 스케줄링 컴포넌트 간의 연관성에 따라 각 스케줄링 컴포넌트의 실행 결과값으로 설정될 수 있는 조건, 즉, 내부 종속성(interior dependency)을 태스크 실행 조건으로 추가한다. 이에 따라, 각 스케줄링 컴포넌트는 서로 연관성이 있는 다른 스케줄링 컴포넌트가 존재한다면, 상기 다른 스케줄링 컴포넌트의 태스크 실행 결과에 따른 상태 값을 자신의 태스크 실행 여부를 결정하는 조건으로 설정할 수 있는 것이다. 다시 말해, 컨디션 비교부(303)는 임의의 스케줄링 컴포넌트의 태스크 실행 조건으로 내부 종속성이 설정되어 있으면, 관련 스케줄링 컴포넌트로 지정되어 있는 스케줄링 컴포넌트의 태스크 실행 결과값이 상기 내부 종속성으로 설정된 조건 값과 일치하는지 확인한다. 그리고 다른 태스크 실행 조건, 예를 들어, 시간, 트랩, 임계치 조건이 일치하는지 확인하여, 설정된 모든 태스크 실행 조건이 만족되면, 컨디션 비교부(303)는 상기 임의의 스케줄링 컴포넌트에 설정된 태스크 실행 조건이 만족되었음을 사용자 인터랙션부(305)로 통보한다. The
사용자 인터랙션부(305)는 상기 컨디션 비교부(303)의 통보를 수신하면, 각 스케줄링 컴포넌트 설정에 따라 사용자의 인터랙션을 선택적으로 확인한 후 태스크 실행부(307)로 태스크 실행을 요청한다. 태스크 실행부(307)는 태스크 실행 요청에 따라 해당 스케줄링 컴포넌트의 태스크를 실행하고, 그 결과를 게이팅 기능부(309) 로 출력한다. 게이트 기능부(309)는 각각의 스케줄링 컴포넌트의 태스크 실행 결과 중 디바이스 관리 서버로 전송할 데이터들을 선별하여 상태 보고부(311)로 출력한다. 상태 보고부(311)는 각 스케줄링 컴포넌트 별로 게이팅 기능부(311)에 의해 선별된 태스크 실행 결과 및 상태 변화를 디바이스 관리 서버로 전송한다. 그리고 상태 보고부(311)는 본 발명의 제1실시예에 따라, 각 스케줄링 컴포넌트의 설정을 참조하여 태스크 실행 결과 및 상태 변화가 다른 스케줄링 컴포넌트의 태스크 실행 조건으로 설정되어 있으면, 상기 컨디션 비교부(303)로 상기 태스크 실행 결과 및 상태 변화를 보고한다. 이때, 상기 상태 변화는 프로세스 중에 발생할 수 있는 모든 오류를 포함할 수 있으며, 다른 스케줄링 컴포넌트에 영향을 줄 수 있는 모든 상태 정보를 포함할 수 있다. 다시 말해 상태 보고부(311)는 임의의 스케줄링 컴포넌트에 태스크 실행 결과가 다른 스케줄링 컴포넌트의 태스크 실행 조건으로 설정되어 있으면, 상기 임의의 스케줄링 컴포넌트의 태스크 실행 결과 또는 상태 변화를 컨디션 비교부(303)로 보고하여, 컨디션 비교부(303)가 상기 다른 스케줄링 컴포넌트의 태스크 실행 조건의 만족 여부를 확인할 때, 보고된 정보를 참조할 수 있게 한다. 상태 보고부(311)의 태스크 실행 결과 및 상태 변화 보고 방식은 상기 다른 스케줄링 컴포넌트와 관련된 스케줄링 텍스트 MO의 해당 노드에 상기 임의의 스케줄링 컴포넌트 태스크의 실행 결과 및 상태 변화를 입력함으로써 이루어질 수 있다. 이에 따라 컨디션 비교부(303)는 상기 다른 스케줄링 컴포넌트의 태스크 실행 조건의 만족 여부를 확인할 때, 다른 스케줄링 컴포넌트와 관련된 노드만을 참조하여, 다른 스케줄링 컴포넌트의 태스크 실행 조건으로 설정된 내부 종속성 값과 상 태 보고부(311)에 의해 보고된 태스크 실행 결과 및 상태 변화를 비교한다. When the
상기한 제1실시예에서는 상태 보고부(311)가 임의의 스케줄링 컴포넌트 태스크 실행 결과를 관련된 다른 스케줄링 컴포넌트의 노드에 입력하여 보고하도록 구성하였으나, 본 발명에 따른 제2실시예에에서는 상태 보고부(311)의 보고 없이, 컨디션 비교부(303)가 임의의 스케줄링 컴포넌트의 태스크 실행 조건 확인시, 임의의 스케줄링 컴포넌트에 영향을 미치는 스케줄링 컴포넌트 노드로 지정된 스케줄링 컴포넌트와 관련된, 스케줄링 콘텍스트 MO의 노드를 확인하여 동작을 수행하도록 구성할 수도 있다. In the first embodiment, the
본 발명의 제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
상기와 같이 구성되는 DM 스케줄링 인에이블러 클라이언트(300)의 본 발명의 제1실시예에 따른 동작과정을 도4에 도시하였다. 도4에 도시된 과정은 하나의 스케줄링 콘텍스트에 포함되는 다수의 스케줄 컴포넌트 중에서 두 개의 스케줄링 컴포넌트의 실행 과정을 나타낸 것으로, 제1스케줄링 컴포넌트의 태스크 실행에 따른 결과 및 상태 변화가 제2스케줄링 컴포넌트의 태스크 실행에 영향을 미치는 경우를 가정한 것이다. 그리고 제1스케줄링 컴포넌트는 다른 스케줄링 컴포넌트의 태스크 실행 결과에 영향을 받지 않고, 제2스케줄링 컴포넌트의 태스크 실행 결과는 다른 스케줄링 컴포넌트의 태스크 실행에 영향을 미치지 않는다고 가정한다. 4 illustrates an operation of the DM
DM 스케줄링 인에이블러 클라이언트(300)는 401단계에서 스케줄링 콘텍스트를 인스톨하고 403단계로 진행한다. 이에 따라 스케줄링 콘텍스트 MO가 저장되며, 상기 가정에 따라, 스케줄링 콘텍스트 MO에서 제1스케줄링 컴포넌트와 관련된 노드 중 리포팅 노드는 컴포넌트 노드를 포함하고, 목적 컴포넌트 노드에 제2스케줄링 컴포넌트의 MO ID가 저장된다. 그리고 제2스케줄링 컴포넌트와 관련된 노드 중 컨디션 노드는 내부 종속성 노드를 하위 노드로 포함하며, 기준값 노드에 비교 기준 값이 저장된다. 403단계에서 DM 스케줄링 인에이블러 클라이언트(300)는 스케줄링 콘텍스트를 시작하여 각각의 스케줄링 컴포넌트를 활성화하여 405단계와 415단계로 진행한다. The DM
제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
한편, 제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
도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
이에 따라, 도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
DM 스케줄링 인에이블러 클라이언트(300)는 상기와 같이 구성되는 스케줄링 콘텍스트 MO를 참조하여, 제1스케줄링 컴포넌트와 제2스케줄링 컴포넌트를 수행할 수 있다. The DM
상술한 바와 같이 본 발명은 하나의 스케줄링 콘텍스트에 포함되는 다수의 스케줄링 컴포넌트 중 서로 간에 연관성을 가지는 스케줄링 컴포넌트가 존재하면, 해당 스케줄링 컴포넌트 실행시 연관된 스케줄링 컴포넌트의 태스크 실행 결과 및 상태 변화를 체크하도록 함으로써, 불필요한 스케줄링 컴포넌트의 실행을 방지하고, 스케줄링 콘텍스트 실행시 올바른 수행결과를 얻을 수 있게 한다. 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.
상술한 본 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시할 수 있다. 따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위와 특허청구범위의 균등한 것에 의해 정해 져야 한다. While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. 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)
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 KR20080066246A (en) | 2008-07-16 |
KR101363156B1 true 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) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060114660A (en) * | 2005-05-02 | 2006-11-07 | 엘지전자 주식회사 | System and method for scheduling device management |
-
2007
- 2007-01-11 KR KR1020070003447A patent/KR101363156B1/en not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060114660A (en) * | 2005-05-02 | 2006-11-07 | 엘지전자 주식회사 | System and method for scheduling device management |
KR20060114661A (en) * | 2005-05-02 | 2006-11-07 | 엘지전자 주식회사 | System and method for interacting with user in managing device |
Also Published As
Publication number | Publication date |
---|---|
KR20080066246A (en) | 2008-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100641238B1 (en) | Device management system and device management command scheduling method thereof | |
JP4809772B2 (en) | Management based on computer system and distributed application model | |
KR101474413B1 (en) | Terminal for pefforming scheduled device mangament and method thereof | |
CN103095490B (en) | Find and the performance information of excavating equipment is used for sending updates to equipment in advance | |
KR101292979B1 (en) | Method for managing software in terminal using device management server | |
KR101369026B1 (en) | Method and system for sharing performance data between different information technology product/solution deployments | |
CN102047683B (en) | Dynamic fault analysis for a centrally managed network element in a telecommunications system | |
US11256544B2 (en) | Redistributing update resources during update campaigns | |
KR101342370B1 (en) | Terminal and method for pefforming device managemnt scheduled based on treshold thereof | |
KR101349805B1 (en) | Method for scheduling device managemnt using trap mechanism and terminal thereof | |
US20060123278A1 (en) | Method and apparatus for generating diagnoses of network problems | |
JP2008506179A (en) | Device management system and device management instruction scheduling method in the system | |
US8407329B2 (en) | Reporting information to a network | |
US20090031011A1 (en) | Device management system and method for setting configuration-valve therein | |
WO2007083954A1 (en) | Method for scheduling device management and terminal thereof | |
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 | |
US20240205091A1 (en) | Cloud-native approach to support desired state model reconciliation with networking equipment | |
WO2017157903A1 (en) | End-to-end virtualized network function healing | |
Canzari et al. | Using nagios to monitor the telescope manager (TM) of the square kilometre array (SKA) | |
Mosincat et al. | Dynamically adaptive systems through automated model evolution using service compositions | |
CA2501729C (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 |