KR102126218B1 - 동적 명령어 처리 장치 및 방법 - Google Patents

동적 명령어 처리 장치 및 방법 Download PDF

Info

Publication number
KR102126218B1
KR102126218B1 KR1020150154508A KR20150154508A KR102126218B1 KR 102126218 B1 KR102126218 B1 KR 102126218B1 KR 1020150154508 A KR1020150154508 A KR 1020150154508A KR 20150154508 A KR20150154508 A KR 20150154508A KR 102126218 B1 KR102126218 B1 KR 102126218B1
Authority
KR
South Korea
Prior art keywords
command
instruction
software component
related information
user interface
Prior art date
Application number
KR1020150154508A
Other languages
English (en)
Other versions
KR20170052262A (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 KR1020150154508A priority Critical patent/KR102126218B1/ko
Priority to US15/191,024 priority patent/US9747144B2/en
Publication of KR20170052262A publication Critical patent/KR20170052262A/ko
Application granted granted Critical
Publication of KR102126218B1 publication Critical patent/KR102126218B1/ko

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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • 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/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/3017Runtime instruction translation, e.g. macros
    • 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • 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/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Stored Programmes (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

본 발명은 동적 명령어 처리 장치 및 방법에 관한 것이다.
이에 따른 본 발명은, 적어도 하나의 사용자 인터페이스 및 적어도 하나의 소프트웨어 컴포넌트와 통신을 수행하는 통신부 및 상기 적어도 하나의 소프트웨어 컴포넌트로부터 제1 명령어 관련 정보를 수신하면, 상기 제1 명령어 관련 정보를 기초로 명령어 트리를 구성하고 상기 제1 명령어 관련 정보를 상기 적어도 하나의 사용자 인터페이스로 전송하며, 상기 적어도 하나의 사용자 인터페이스로부터 제2 명령어 관련 정보를 수신하면, 상기 제2 명령어 관련 정보에 대응하는 소프트웨어 컴포넌트로 상기 제2 명령어 관련 정보를 전달하는 제어부를 포함하는 것을 특징으로 하는 동적 명령어 처리 장치 및 그 방법에 관한 것이다.

Description

동적 명령어 처리 장치 및 방법{Dynamic commands processing apparatus and method thereof}
본 발명은 동적 명령어 처리 장치 및 방법에 관한 것이다.
일반적인 명령어 처리 메커니즘에서는 명령어를 받는 소프트웨어 및 하드웨어 컴포넌트의 컴파일 시점에 명령어가 결정된다. 따라서, 서비스 운용 중 명령어를 추가하거나 변경하려면, 해당 서비스를 일시적으로 중단해야만 하는 불편함이 있었다.
본 발명은 상기한 문제점을 해결하기 위한 것으로, 서비스 운용 중에 서비스 중단 없이 동적으로 명령어를 추가/삭제/변경하도록 하는 동적 명령어 처리 장치 및 방법을 제공한다.
또한, 본 발명은 명령어의 추가/삭제/변경이 발생하는 경우, 서비스 전체를 중단하는 대신 명령어의 추가/삭제/변경이 발생한 컴포넌트만 재시작할 수 있는 동적 명령어 처리 장치 및 방법을 제공한다.
상술한 과제를 해결하기 위한 본 발명에 따른 동적 명령어 처리 장치는, 적어도 하나의 사용자 인터페이스 및 적어도 하나의 소프트웨어 컴포넌트와 통신을 수행하는 통신부 및 상기 적어도 하나의 소프트웨어 컴포넌트로부터 제1 명령어 관련 정보를 수신하면, 상기 제1 명령어 관련 정보를 기초로 명령어 트리를 구성하고 상기 제1 명령어 관련 정보를 상기 적어도 하나의 사용자 인터페이스로 전송하며, 상기 적어도 하나의 사용자 인터페이스로부터 제2 명령어 관련 정보를 수신하면, 상기 제2 명령어 관련 정보에 대응하는 소프트웨어 컴포넌트로 상기 제2 명령어 관련 정보를 전달하는 제어부를 포함하는 것을 특징으로 한다.
또한, 상술한 과제를 해결하기 위한 본 발명에 따른 동적 명령어 처리 방법은, 적어도 하나의 소프트웨어 컴포넌트로부터 제1 명령어 관련 정보를 수신하면, 상기 제1 명령어 관련 정보를 기초로 명령어 트리를 구성하고 상기 제1 명령어 관련 정보를 적어도 하나의 사용자 인터페이스로 전송하는 등록 단계 및 상기 적어도 하나의 사용자 인터페이스로부터 제2 명령어 관련 정보를 수신하면, 상기 제2 명령어 관련 정보에 대응하는 소프트웨어 컴포넌트로 상기 제2 명령어 관련 정보를 전달하는 실행 단계를 포함하는 것을 특징으로 한다.
본 발명에 따른 동적 명령어 처리 장치 및 방법은 서비스 운용 중 시스템에서 명령어를 동적으로 추가/삭제/변경하는 것이 가능하게 함으로써, 서비스의 연속성을 보장할 수 있도록 한다.
도 1은 본 발명에 따른 동적 명령어 처리 장치가 동작하는 시스템의 구조를 나타낸 도면이다.
도 2는 본 발명에 따른 동적 명령어 처리 방법에 있어서, 등록 절차를 나타낸 흐름도이다.
도 3은 본 발명에 따른 동적 명령어 처리 방법에 있어서, 실행 절차를 나타낸 흐름도이다.
도 4는 본 발명에 따른 동적 명령어 처리 방법을 나타낸 순서도이다.
도 5는 명령어 체계를 설명하기 위한 도면이다.
도 6은 본 발명에 따른 명령어 트리의 기본적인 구성을 나타낸 도면이다.
도 7은 구성된 명령어 트리의 일 예를 나타낸 도면이다.
도 8은 본 발명에 따른 명령어 트리에 있어서, 노드 명령어 노드의 구성을 나타낸 도면이다.
도 9는 본 발명에 따른 명령어 트리에 있어서, 일반 명령어 노드의 구성을 나타낸 도면이다.
도 10은 본 발명의 일 실시 예에서, 노드 명령어 처리 함수의 등록 방법을 나타낸 도면이다.
본 명세서의 실시 예를 설명함에 있어 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우, 그 상세한 설명은 생략될 수 있다.
본 명세서에서 사용되는 "포함한다," "포함할 수 있다." 등의 표현은 개시된 해당 기능, 동작, 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작, 구성요소 등을 제한하지 않는다. 또한, 본 명세서에서, "포함하다." 또는 "가지다." 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.  
본 명세서에서 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
이하, 첨부된 도면을 참조하여 본 발명을 설명한다.
도 1은 본 발명에 따른 동적 명령어 처리 장치가 동작하는 시스템의 구조를 나타낸 도면이다.
도 1을 참조하면, 본 발명이 적용되는 시스템은 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n), 동적 명령어 처리 장치(200) 및 적어도 하나의 소프트웨어 컴포넌트(300-1. 300-2, …, 300-n)를 포함하여 구성된다.
적어도 하나의 사용자 인터페이스(shell)(100-1, 100-2, …, 100-n)는 시스템 운영자로부터 명령어를 입력받는 구성 요소이다. 본 발명의 다양한 실시 예에서, (100-1, 100-2, …, 100-n)는 CMSH(Cluster Manager Shell Interface)일 수 있다. 이하에서는, 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)가 CMSH인 경우를 예로 들어 본 발명을 설명하나, 본 발명의 사상이 침해되지 않는 한, 다양한 사용자 인터페이스를 이용하는 시스템에 본 발명이 적용될 수 있다.
본 발명의 다양한 실시 예에서, 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)는 초기화 단계에서 동적 명령어 처리 장치(200)에 연결되어, 동적 명령어 처리 장치(200)를 통해 적어도 하나의 소프트웨어 컴포넌트(300-1, 300-2, …, 300-n)에 대한 명령어 관련 정보를 수신하여 명령어 트리를 구성한다. 이때, 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)는 TCP, UDP, Raw IP 및 Unix Domain Socket 등을 통하여 동적 명령어 처리 장치(200)에 연결될 수 있다. 명령어 트리는 해당 명령어에 대응하는 소프트웨어 컴포넌트 식별자(ID), 명령어 식별자, 도움말(help string) 등을 포함하여 구성될 수 있으며, 이에 대하여는 하기에서 자세히 설명한다.
본 발명의 다양한 실시 예에서, 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)는 시스템 운영자로부터 명령어가 입력되면, 명령어 트리를 이용하여 입력된 명령어에 대응하는 명령어 관련 정보를 동적 명령어 처리 장치(200)로 전송하여, 해당 소프트웨어 컴포넌트에서 명령어가 실행되도록 할 수 있다.
동적 명령어 처리 장치(200)는 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)와 적어도 하나의 소프트웨어 컴포넌트(300-1. 300-2, …, 300-n)를 관리한다. 다양한 실시 예에서, 동적 명령어 처리 장치(200)는 명령어 관리자(command manager)로 명명될 수 있다.
동적 명령어 처리 장치(200)는 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)와 적어도 하나의 소프트웨어 컴포넌트(300-1. 300-2, …, 300-n)와 데이터를 송수신하기 위한 통신부 및 동적 명령어 처리 장치(200)의 동작을 제어하기 위한 제어부를 포함하여 구성된다. 이하에서 제어부의 다양한 동작을 설명한다.
본 발명의 다양한 실시 예에서, 동적 명령어 처리 장치(200)는 적어도 하나의 소프트웨어 컴포넌트(300-1. 300-2, …, 300-n)로부터 각 소프트웨어 컴포넌트의 명령어 관련 정보를 수신하여 명령어 트리를 구성한다. 또한, 동적 명령어 처리 장치(200)는 수신된 명령어 관련 정보를 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)로 전송하여, 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)가 각자의 명령어 트리를 구성할 수 있도록 한다.
이때, 동적 명령어 처리 장치(200)는 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)의 모드를 변경할 수 있다. 본 발명의 다양한 실시 예에서, 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)는 권한에 따라 기본적인 시스템 일반 상태를 확인할 수 있는 view 모드, 명령어를 실행할 수 있는 config 모드 또는 명령어 실행을 중단하고 시스템 운영 상태를 확인할 수 있는 enable 모드로 동작할 수 있다. 동적 명령어 처리 장치(200)는 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)로 명령어 관련 정보를 전송하여 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)가 명령어 트리를 구성하는 동안 명령어가 실행되는 것을 방지하기 위하여 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n) 중 config 모드로 동작 중인 사용자 인터페이스를 enable 모드로 변경할 수 있다.
본 발명의 다양한 실시 예에서, 동적 명령어 처리 장치(200)는 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)로부터 명령어 관련 정보가 수신되면, 수신된 명령어 관련 정보에 대응하는 소프트웨어 컴포넌트로, 수신된 명령어 관련 정보를 전달한다. 동적 명령어 처리 장치(200)는 수신된 명령어 관련 정보를 단순히 대응하는 소프트웨어 컴포넌트로 전달(forward)하는 기능을 수행한다.
적어도 하나의 소프트웨어 컴포넌트(300-1, 300-2, …, 300-n)는 자신이 실행할 수 있는 명령어와 해당 명령어에 대응하는 함수를 매핑하고 이를 실행한다. 이를 위하여, 적어도 하나의 소프트웨어 컴포넌트(300-1, 300-2, …, 300-n)는 명령어 매퍼(command mapper)(301-1, 301-2, …, 301-n)를 포함하여 구성될 수 있다.
본 발명의 다양한 실시 예에서, 적어도 하나의 소프트웨어 컴포넌트(300-1, 300-2, …, 300-n)는 명령어 매퍼(301-1, 301-2, …, 301-n)를 통해 명령어에 명령어의 식별자(ID)를 할당하고 그에 대응하는 함수를 매핑하여 매핑 정보를 구성한다. 적어도 하나의 소프트웨어 컴포넌트(300-1, 300-2, …, 300-n)는 함수와 매핑된 명령어에 대한 명령어 관련 정보를 동적 명령어 처리 장치(200)로 전송하여, 동적 명령어 처리 장치(200) 및 동적 명령어 처리 장치(200)에 연결된 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)가 명령어 트리를 구성할 수 있도록 한다.
본 발명의 다양한 실시 예에서, 적어도 하나의 소프트웨어 컴포넌트(300-1, 300-2, …, 300-n)는, 명령어 매퍼(301-1, 301-2, …, 301-n)를 통해 명령어 처리 장치(200)로부터 명령어 관련 정보가 수신되면, 매핑 정보를 이용하여 명령어 관련 정보에 대응하는 명령어를 판단하고, 판단된 명령어에 매핑된 함수를 실행한다. 구체적으로, 적어도 하나의 소프트웨어 컴포넌트(300-1, 300-2, …, 300-n)는 명령어 관련 정보에 포함된 명령어 식별자를 매핑 정보에서 검색하여, 매핑된 함수를 판단하고, 판단된 함수를 실행할 수 있다.
이하에서는, 본 발명에 따른 동적 명령어 처리 장치(200)의 동적 명령어 처리 방법에 대하여 구체적으로 설명한다.
본 발명에 따른 동적 명령어 처리 방법은, 적어도 하나의 소프트웨어 컴포넌트(300-1, 300-2, …, 300-n)로부터 수신된 명령어 관련 정보를 이용하여 자신의 명령어 트리를 구성하고, 명령어 관련 정보를 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)로 전송하여 각각의 사용자 인터페이스가 명령어 트리를 구성하도록 하는 '등록 절차' 및 적어도 하나의 사용자 인터페이스(100-1, 100-2, …, 100-n)로부터 수신된 명령어 관련 정보를 대응하는 소프트웨어 컴포넌트로 전달하여 명령어가 실행되도록 하는 '실행 절차'를 포함할 수 있다.
도 2는 본 발명에 따른 동적 명령어 처리 방법에 있어서, 등록 절차를 도시한 흐름도이다.
도 2를 참조하면, 본 발명에 따른 동적 명령어 처리 장치(200)는 소프트웨어 컴포넌트(300)로부터 연결 요청을 수신한다(21). 동적 명령어 처리 장치(200)는 소프트웨어 컴포넌트(300)가 동적 명령어 처리 장치(200)에 연결되기 위하여 전송하는 연결 요청을 수신할 수 있다.
동적 명령어 처리 장치(200)는 수신된 연결 요청에 응답하여, 소프트웨어 컴포넌트(300)에 식별자를 할당할 수 있다(22). 여기서, 식별자는 소프트웨어 컴포넌트(300)를 식별하기 위해 사용되는 것으로, 사용자 인터페이스(100)에 의하여 특정 명령어가 실행될 때, 해당 명령어를 수행할 수 있는 소프트웨어 컴포넌트(300)를 식별하기 위해 사용될 수 있다.
소프트웨어 컴포넌트(300)가 동적 명령어 처리 장치(200)에 연결되면, 소프트웨어 컴포넌트(300)는 명령어 및 그에 대응하는 함수를 매핑한다(23). 소프트웨어 컴포넌트(300)는 명령어 매퍼(301)를 통해 명령어에 명령어 식별자를 할당하고, 그에 대응하는 함수를 포인터 형식으로 매핑하여 명령어 식별자와 대응하는 함수 간 매핑 정보를 구성한다.
매핑 정보는 다음의 표 1과 같이 구성될 수 있다.
Command ID #1 Command ID #2 ...
함수 포인터 함수 포인터 ...
기타 파라미터 기타 파라미터 ...
이후에 소프트웨어 컴포넌트(300)는 명령어 식별자 및 매핑 정보를 동적 명령어 처리 장치(200)로 전송하여, 명령어 관련 정보를 등록한다(24). 소프트웨어 컴포넌트(300)는 명령어 식별자 및 매핑 정보 외에 동적 명령어 처리 장치(200)의 명령어 트리 구성에 필요한 정보를 동적 명령어 처리 장치(200)로 전송할 수 있다.
동적 명령어 처리 장치(200)는 소프트웨어 컴포넌트(300)로부터 수신된 정보를 이용하여 명령어 트리를 구성한다(25). 기존에 구성된 명령어 트리가 있는 경우, 동적 명령어 처리 장치(200)는 명령어 트리를 갱신할 수 있다.
또한, 동적 명령어 처리 장치(200)는 사용자 인터페이스(100)가 명령어 트리를 구성할 수 있도록, 수신된 정보를 사용자 인터페이스(100)로 전달할 수 있다. 이때, 동적 명령어 처리 장치(200)는 사용자 인터페이스(100)의 연결 요청에 의해 사전에 사용자 인터페이스(100)와 연결되어 있어야 한다.
사용자 인터페이스(100)는 명령어를 실행하기 위한 config 모드로 동작 중일 수 있다. 동적 명령어 처리 장치(100)는 등록 절차 중에 config 모드로 동작 중인 사용자 인터페이스(100)에 의하여 명령어가 실행되는 것을 방지하기 위해, config 모드로 동작 중인 사용자 인터페이스(100)를 enable 모드로 변경할 수 있다(26). 이후에 동적 명령어 처리 장치(200)는 소프트웨어 컴포넌트(300)로부터 수신된 정보 또는 자신의 명령어 트리를 기초로 생성된 명령어 관련 정보를 사용자 인터페이스(100)로 전송할 수 있다(27). 이때, 명령어 관련 정보는, 명령어 식별자 및 매핑 정보를 포함할 수 있다. 또는, 명령어 관련 정보는 사용자 인터페이스(100)가 명령어 트리를 구성하기 위해 필요한 정보로써 해당 명령어에 대한 소프트웨어 컴포넌트 식별자, 도움말 등을 더 포함할 수 있다.
사용자 인터페이스(100)는 동적 명령어 처리 장치(200)로부터 수신된 정보를 이용하여 명령어 트리를 구성한다(28). 기존에 구성된 명령어 트리가 있는 경우, 사용자 인터페이스(100)는 명령어 트리를 갱신할 수 있다.
명령어 등록이 완료된 경우에, 소프트웨어 컴포넌트(300)는 동적 명령어 처리 장치(200)로 연결 해제 요청을 전송할 수 있다(29).
동적 명령어 처리 장치(200)는 소프트웨어 컴포넌트(300)로부터 연결 해제 요청이 수신되면, 소프트웨어 컴포넌트(300)와의 연결을 해제하고, 해당 소프트웨어 컴포넌트(300)의 연결 해제에 따른 명령어 트리를 구성할 수 있다(25'). 일 실시 예에서 연결 해제에 따른 명령어 트리는, 해당 소프트웨어 컴포넌트(300)에서 실행 가능한 명령어의 명령어 관련 정보를 명령어 트리로부터 삭제함으로써 구성될 수 있다.
또한, 동적 명령어 처리 장치(200)는 소프트웨어 컴포넌트(300)의 연결 해제에 따른 명령어 관련 정보를 사용자 인터페이스(100)로 전송함으로써(26'), 사용자 인터페이스(100)가 해당 소프트웨어 컴포넌트(300)의 연결 해제에 따른 명령어 트리를 구성할 수 있도록 한다(27').
추가로, 동적 명령어 처리 장치(200)는 명령어 트리 구성을 위하여 enable 모드로 동작 중인 사용자 인터페이스(100)를 config 모드로 변경할 수 있다.
도 3은 본 발명에 따른 동적 명령어 처리 방법에 있어서, 실행 절차를 나타낸 흐름도이다. 도 3에 따른 실행 절차는 도 2에 따른 등록 절차에 따라 명령어 트리가 구성된 이후, 사용자 인터페이스(100) 및 소프트웨어 컴포넌트(300)가 동적 명령어 처리 장치(200)에 연결된 상태에서 수행된다. 도 3에 따른 실행 절차에서 사용자 인터페이스(100)는 config 모드로 동작할 수 있다.
도 3을 참조하면, 사용자 인터페이스(100)는 시스템 운영자로부터 명령어가 입력되면(31), 명령어 트리를 이용하여 입력된 명령어에 대응하는 명령어 관련 정보를 판단한다(32). 사용자 인터페이스(100)는 명령어의 토큰별로 명령어 트리를 검색하여 명령어에 대응하는 명령어 관련 정보, 예를 들어, 입력된 명령어에 대응하는 소프트웨어 컴포넌트 식별자, 명령어 식별자 등을 판단할 수 있다.
사용자 인터페이스(100)는 판단된 명령어 관련 정보를 동적 명령어 처리 장치(200)로 전송한다(33). 명령어 관련 정보를 수신한 동적 명령어 처리 장치(200)는, 명령어 관련 정보에 포함된 소프트웨어 컴포넌트 식별자에 대응하는 소프트웨어 컴포넌트(300)로 명령어 관련 정보를 전달한다(34).
여기서, 전달되는 명령어 관련 정보는 이하에서 도 6을 참조하여 설명되는 노드 명령어 관련 정보(602)(또는, 일반 명령어 관련 정보(603))일 수 있으며, 이하에서 도 8 내지 도 10을 참조하여 설명되는 바와 같이 동적으로 구성되어 전달되며, 자세한 내용은 도 8 내지 도 10을 참조하여 설명한다.
명령어 관련 정보에 포함된 소프트웨어 컴포넌트 식별자에 대응하는 소프트웨어 컴포넌트(300)를 판단하기 위하여, 동적 명령어 처리 장치(200)는 미리 구성된 명령어 노드를 이용하거나, 명령어 식별자와 소프트웨어 컴포넌트 식별자 간 매핑 정보를 별도로 기저장할 수 있다. 명령어 식별자와 소프트웨어 컴포넌트 식별자 간 매핑 정보는 다음의 표 2와 같이 구성될 수 있다. 표 2에서 CMSH는 도 1의 사용자 인터페이스를 의미한다.
Sender 명령어 식별자 소프트웨어 컴포넌트
CMSH #1 Command ID #1 Component #1
CMSH #2 Command ID #2 Component #2
... ... ...
명령어 관련 정보를 수신한 소프트웨어 컴포넌트(300)는 기저장된 명령어 식별자들 및 이들의 매핑 정보를 이용하여 명령어 관련 정보에 포함된 명령어 식별자에 매핑된 함수를 판단한다(35).
이후에, 소프트웨어 컴포넌트(300)는 판단된 함수를 호출하여 명령어가 실행되도록 한다(36).
상술한 도 2 및 도 3의 동적 명령어 처리 방법에서, 소프트웨어 컴포넌트(300)의 동작들은 명령어 매퍼(301)에 의하여 수행될 수 있으며, 그 동작의 주체는 소프트웨어 컴포넌트(300)에 포함되거나 그에 대응되는 구성이면 제한하지 않는다.
도 4는 본 발명에 따른 동적 명령어 처리 방법을 나타낸 순서도이다.
도 4를 참조하면, 본 발명에 따른 동적 명령어 처리 장치(200)는 먼저 대기 모드에서 동작할 수 있다(41). 대기 모드에서 동적 명령어 처리 장치(200)는 사용자 인터페이스(100) 및 소프트웨어 컴포넌트(300)와 연결되어 있을 수 있다.
일 실시 예에서, 동적 명령어 처리 장치(200)는 소프트웨어 컴포넌트(300)로부터 연결 요청이 수신되면, 소프트웨어 컴포넌트(300)에 소프트웨어 컴포넌트 식별자를 할당할 수 있다.
대기 모드에서 소프트웨어 컴포넌트(300)로부터 명령어 관련 정보가 수신되면(42), 동적 명령어 처리 장치(200)는 수신된 명령어 관련 정보를 기초로 명령어 트리를 구성한다(43). 소프트웨어 컴포넌트(300)로부터 수신되는 명령어 관련 정보는, 예를 들어 소프트웨어 컴포넌트 식별자, 명령어 식별자, 명령어에 대응하는 함수와의 매핑 정보 등을 포함할 수 있다. 명령어 트리는 각각의 명령어에 대한 소프트웨어 컴포넌트 식별자, 명령어 식별자, 명령어에 대응하는 함수와의 매핑 정보, 도움말 등으로 구성될 수 있다.
다음으로, 동적 명령어 처리 장치(200)는 동적 명령어 처리 장치(200)에 연결된 사용자 인터페이스(100)가 config 모드로 동작하는지 여부를 판단하고(44), config 모드로 동작하는 사용자 인터페이스(100)를 enable 모드로 변경한다(45).
이후에 동적 명령어 처리 장치(200)는 사용자 인터페이스(100)로 수신된 명령어 관련 정보를 전송하여(46), 사용자 인터페이스(100)가 명령어 트리를 구성할 수 있도록 한다. 일 실시 예에서, 동적 명령어 처리 장치(200)는 자신이 구성한 명령어 트리를 기초로 명령어 관련 정보를 생성하여 동적 명령어 처리 장치(200)로 전송할 수 있다. 동적 명령어 처리 장치(200)가 사용자 인터페이스(100)로 전송하는 명령어 관련 정보는, 예를 들어, 소프트웨어 컴포넌트 식별자, 명령어 식별자, 명령어에 대응하는 함수와의 매핑 정보, 도움말 등을 포함할 수 있다.
일 실시 예에서, 동적 명령어 처리 장치(200)는 사용자 인터페이스(100)로부터 명령어 관련 정보가 수신되면(47), 이를 명령어 관련 정보에 포함된 소프트웨어 컴포넌트 식별자에 대응하는 소프트웨어 컴포넌트(300)로 전달한다(48).
이후, 동적 명령어 처리 장치(200)는 시스템이 종료된 것으로 판단될 때까지(49), 대기 모드로 회귀하여 상술한 동작들을 반복 수행한다.
이하에서는, 상술한 동적 명령어 처리 장치(200)에서 구성되는 명령어 트리의 상세한 구조를 설명한다.
도 5는 명령어 체계를 설명하기 위한 도면이다.
본 발명의 다양한 실시 예에서, 시스템은 권한에 따라 기본적인 시스템 일반 상태를 확인할 수 있는 view 모드, 명령어를 실행할 수 있는 config 모드 또는 명령어 실행을 중단하고 시스템 운영 상태를 확인할 수 있는 enable 모드를 지원할 수 있다.
그에 따라 명령어 체계는 각각의 모드에서 사용자 인터페이스(100)가 이용할 수 있는 명령어들로 구성된다. 도 5를 참조하면, 각 모드는 명령어 트리에서 하나의 상위 노드(501)를 구성한다. 일 예로, 명령어 트리는 view 노드, config 노드 및 enable 노드로 구성될 수 있다.
각각의 상위 노드(501)는 해당 상위 노드(501)에 대응하는 모드로 진입할 수 있도록 하는 노드 명령어(502)와 해당 모드에 진입하여 수행할 수 있는 일반 명령어(503)를 포함하여 구성될 수 있다. 노드 명령어(502)는 예를 들어 "모드명" + "terminal"로 구성될 수 있다.
명령어들은 해당 명령어가 실행될 수 있는 모드에 따라, 명령어 트리 내에서 노드(501) 별로 그루핑된다. 즉, config 모드에서 실행될 수 있는 명령어는 config 노드의 하위 노드로 추가된다.
일 실시 예에서 config 모드에서 ping 명령어를 실행하고자 하는 경우, 시스템 운영자는 "config terminal"이라는 노드 명령어(502)를 입력하여 config 모드로 진입하고, "ping"이라는 일반 명령어(503)를 입력하여 해당 명령어가 실행되도록 할 수 있다.
이하에서는, 상술한 명령어 체계에 기반하여 구성되는 명령어 트리의 구조를 상세하게 설명한다.
도 6은 본 발명에 따른 명령어 트리의 기본적인 구성을 나타낸 도면이다.
도 6을 참조하면, 명령어 트리는 뿌리 노드(601) 아래 노드 명령어 노드(602)와 노드 명령어(602)의 하위 노드로 추가되는 일반 명령어 노드(603)를 포함하여 구성된다. 노드 명령어 노드(602) 및 일반 명령어 노드(603)는 소프트웨어 컴포넌트(300)로부터 수신된 명령어를 구성하는 토큰 순서대로 명령어 트리 내에 배치될 수 있다.
또한, 노드 명령어 노드(602) 및 일반 명령어 노드(603)는 각각의 노드 명령어 및 일반 명령어에 대한 명령어 관련 정보로 구성된다. 노드 명령어에 대한 명령어 관련 정보는, 노드 명령어 문법, 해당 노드 진입 시 출력되는 프롬프트의 출력 형식, 노드 식별자, 도움말 등을 포함할 수 있다. 일반 명령어에 대한 명령어 관련 정보는, 노드 식별자, 상위 노드 관련 파라미터(예를 들어, 상위 노드 식별자), 일반 명령어 문법, 명령어 식별자, 명령어에 대응하는 소프트웨어 컴포넌트 정보(예를 들어, 소프트웨어 컴포넌트 식별자)(Owner), 매핑 정보, 도움말 등을 포함할 수 있다.
상기한 바에 따라 구성된 명령어 트리의 일 예가 도 7에 도시되어 있다.
일 실시 예에서, 소프트웨어 컴포넌트(300)에서 실행되는 명령어가 [A B C D], [A B E], [A C F]인 경우, 명령어 트리는 도 7에 도시된 바와 같이, 구성될 수 있다.
구체적으로, 명령어 트리는 [A B C D] 명령어에 대응하여 노드 명령어 노드(702) 아래에 A 토큰, B 토큰, C 토큰 및 D 토큰에 각각 대응하는 일반 명령어 노드(703, 704, 705, 706)를 순차적으로 포함하여 구성되고, [A B E] 명령어에 대응하여 노드 명령어 노드(702) 아래에 A 토큰, B 토큰 및 E 토큰에 각각 대응하는 일반 명령어 노드(703, 704, 707)를 순차적으로 포함하여 구성될 수 있다. 또한, 명령어 트리는 [A C F] 명령어에 대응하여 노드 명령어 노드(702) 아래에 A 토큰, C 토큰 및 F 토큰에 각각 대응하는 일반 명령어 노드(703, 708, 709)를 순차적으로 포함하여 구성될 수 있다.
본 발명에 따른 명령어 트리에 따르면, 구성된 명령어 트리에 따라 임의의 노드 명령어(토큰) 다음에 실행 가능한 명령어가 기설정된다. 따라서, 도움말은 해당 일반 명령어 다음에 실행 가능한 일반 명령어 정보를 포함할 수 있고, 사용자 인터페이스(100)(또는 동적 명령어 관리 장치(200))는 시스템 관리자에게 도움말을 출력하여 시스템 관리자가 실행 가능한 일반 명령어를 판단할 수 있도록 돕는다. 예를 들어, 일반 명령어 B가 입력된 경우, 사용자 인터페이스(100)는 일반 명령어 B 노드(704)의 하위 노드에 배치된 일반 명령어 C 및 E 노드(705, 707)의 도움말(710, 711)을 출력할 수 있다. 만약, 일반 명령어 B 노드(704)의 하위 노드에 배치된 일반 명령어가 없다면, 사용자 인터페이스(100)는 출력값을 '0'으로 결정하고 명령어 검색을 완료하지 않을 수 있다. 명령어 식별자는 마지막으로 수행 완료된 일반 명령어의 명령어 식별자를 포함할 수 있다.
도 8은 본 발명에 따른 명령어 트리에 있어서, 노드 명령어 노드의 구성을 나타낸 도면이다.
본 발명의 다양한 실시 예에서, 노드 명령어 노드(602)는 동적 명령어 처리 장치(200)에서 구성될 수 있다. 소프트 컴포넌트(300)로부터 수신된 명령어 관련 정보를 기초로 명령어 트리를 구성할 때, 명령어가 어떤 모드에서 동작하는지, 즉 어떤 노드에 배치되어야 하는지 미리 알아야 하기 때문에, 노드 명령어 노드(602)는 사전에 동적 명령어 처리 장치(200)에서 구성된다.
노드 명령어 노드(602)를 구성하는 노드 명령어 정의(801)는 노드 명령어(502)에 대한 명령어 관련 정보를 구성하기 위한 모든 정보를 포함하는 매크로로 구성될 수 있다. 매크로는 도 8에 도시된 바와 같이 호출이 가능한 함수(802) 형태로 변경되어, 명령어와 함께 파라미터를 전달할 수 있도록 구성된다. 이때, 파라미터는 상위 노드 정보와 현재 명령어 파라미터를 포함할 수 있다.
도 9는 본 발명에 따른 명령어 트리에 있어서, 일반 명령어 노드의 구성을 나타낸 도면이다.
일반 명령어 노드(603)를 구성하는 일반 명령어 정의(901)는 일반 명령어를 수신하고자 하는 소프트웨어 컴포넌트(300)에서 정의될 수 있다. 명령어 트리는 일반 명령어 정의(901)를 기초로 구성될 수 있으며, 그에 따라 명령어 트리는 일반 명령어 정의(901)에 기초한 명령어 식별자 및 매핑 정보를 포함할 수 있다.
등록된 명령어는 매크로에 의해 호출 가능한 함수(902) 형태로 변경된다. 명령어 매퍼(301)는 명령어 식별자와 그에 대응하는 함수 포인터를 포함하는 매핑 정보(903)를 저장할 수 있다.
도 10은 본 발명의 일 실시 예에서, 노드 명령어 처리 함수의 등록 방법을 나타낸 도면이다.
일 실시 예에서, Config 노드에 노드 명령어 interface [interface_name]와 일반 명령어 ip address 명령어가 설정된다고 가정한다. 구체적으로, "interface eth0"라는 노드 명령어에 하부 일반 명령어로 "ip address A.B.C.D"라는 일반 명령어가 배치된다고 하면, 소프트웨어 컴포넌트(300) 중 어느 하나는 "ip address A.B.C.D" 일반 명령어만을 처리해야 하고, 다른 하나는 "interface eth0"와 "ip address A.B.C.D"를 동시에 처리해야 하는 경우가 발생할 수 있다.
이를 해결하기 위해, 노드 명령어는 동적 명령어 처리 장치(200)에서 정의되므로, 각 소프트웨어 컴포넌트(300)가 노드 명령어 호출 시 수행될 함수(1002)를 미리 등록할 수 있다. 이 경우, 동적 명령어 처리 장치(200)는 노드 진입시 명령어 식별자를 소프트웨어 컴포넌트(300)로 전달하고 전달된 명령어 식별자를 기초로 저장된 함수(1002)를 호출할 수 있도록 한다. 소프트웨어 컴포넌트(300)에 포함된 명령어 매퍼(301)는 명령어 식별자와 매핑 정보를 동시에 저장할 수 있다.
본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 그리고 본 명세서와 도면에 개시된 실시 예들은 본 발명의 내용을 쉽게 설명하고, 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 범위는 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 사용자 인터페이스
200: 동적 명령어 처리 장치
300: 소프트웨어 컴포넌트
301: 명령어 매퍼

Claims (12)

  1. 적어도 하나의 사용자 인터페이스 및 적어도 하나의 소프트웨어 컴포넌트와 통신을 수행하는 통신부; 및
    상기 적어도 하나의 소프트웨어 컴포넌트로부터 제1 명령어 관련 정보를 수신하면, 상기 제1 명령어 관련 정보를 기초로 명령어 트리를 구성하고 상기 제1 명령어 관련 정보를 상기 적어도 하나의 사용자 인터페이스로 전송하며, 상기 적어도 하나의 사용자 인터페이스로부터 제2 명령어 관련 정보를 수신하면, 상기 제2 명령어 관련 정보에 대응하는 소프트웨어 컴포넌트로 상기 제2 명령어 관련 정보를 전달하는 제어부를 포함하고,
    상기 제어부는 상기 사용자 인터페이스를, 사용자 권한에 따라 내부 상태를 조회하도록 제어하는 제1 모드, 명령어를 실행하도록 제어하는 제2 모드 및 명령어의 실행을 중단하고 내부 운영 상태를 확인하도록 제어하는 제3 모드 중 어느 하나의 모드로 제어하는 동적 명령어 처리 장치.
  2. 제1항에 있어서, 상기 제1 명령어 관련 정보는,
    상기 적어도 하나의 소프트웨어 컴포넌트에 의하여 명령어에 할당된 명령어 식별자 및 상기 명령어 식별자에 매핑된 함수에 관한 매핑 정보를 포함하는 동적 명령어 처리 장치.
  3. 제1항에 있어서, 상기 제2 명령어 관련 정보는,
    명령어 식별자 및 상기 명령어 식별자에 대응하는 소프트웨어 컴포넌트 식별자를 포함하는 것을 특징으로 하는 동적 명령어 처리 장치.
  4. 제1항에 있어서, 상기 제어부는,
    상기 제1 명령어 관련 정보를 전송하기 이전에, 상기 적어도 하나의 사용자 인터페이스 중 상기 제2 모드로 동작 중인 사용자 인터페이스를 상기 제3 모드로 변경하도록 제어하는 동적 명령어 처리 장치.
  5. 제1항에 있어서, 상기 명령어 트리는,
    복수의 노드 명령어 노드 및 상기 복수의 노드 명령어의 하위 노드로 추가되는 복수의 일반 명령어 노드를 포함하여 구성되는 것을 특징으로 하는 동적 명령어 처리 장치.
  6. 제5항에 있어서, 상기 복수의 노드 명령어 노드는,
    노드 명령어 문법, 프롬프트 출력 형식, 노드 식별자, 도움말 중 적어도 하나를 포함하는 노드 명령어에 대한 명령어 관련 정보로 구성되고,
    상기 복수의 일반 명령어 노드는,
    노드 식별자, 상위 노드 관련 파라미터, 일반 명령어 문법, 명령어 식별자, 상기 명령어 식별자에 대응하는 소프트웨어 컴포넌트 정보, 상기 명령어 식별자에 매핑된 함수에 관한 매핑 정보, 도움말 중 적어도 하나를 포함하는 일반 명령어에 대한 명령어 관련 정보로 구성되는 것을 특징으로 하는 동적 명령어 처리 장치.
  7. 제5항에 있어서, 상기 복수의 노드 명령어 노드는,
    상기 노드 명령어에 대한 명령어 관련 정보를 포함하는 매크로를 호출 가능한 함수 형태로 변경하는 노드 명령어 정의로 구성되는 것을 특징으로 하는 동적 명령어 처리 장치.
  8. 제5항에 있어서, 상기 복수의 일반 명령어 노드는,
    상기 일반 명령어에 대한 명령어 관련 정보 및 매핑 정보를 포함하는 매크로를 호출 가능한 함수 형태로 변경하는 일반 명령어 정의로 구성되는 동적 명령어 처리 장치.
  9. 적어도 하나의 소프트웨어 컴포넌트로부터 제1 명령어 관련 정보를 수신하면, 상기 제1 명령어 관련 정보를 기초로 명령어 트리를 구성하고 상기 제1 명령어 관련 정보를 적어도 하나의 사용자 인터페이스로 전송하는 등록 단계; 및
    상기 적어도 하나의 사용자 인터페이스로부터 제2 명령어 관련 정보를 수신하면, 상기 제2 명령어 관련 정보에 대응하는 소프트웨어 컴포넌트로 상기 제2 명령어 관련 정보를 전달하는 실행 단계를 포함하되,
    상기 등록 단계에서는 상기 적어도 하나의 사용자 인터페이스를,
    사용자 권한에 따라 내부 상태를 조회하도록 제어하는 제1 모드, 명령어를 실행하도록 제어하는 제2 모드 및 명령어의 실행을 중단하고 내부 운영 상태를 확인하도록 제어하는 제3 모드 중 어느 하나로 모드로 제어하는 동적 명령어 처리 방법.
  10. 제9항에 있어서, 상기 등록 단계는,
    상기 적어도 하나의 소프트웨어 컴포넌트로부터 연결 요청을 수신하는 단계; 및
    상기 적어도 하나의 소프트웨어 컴포넌트에 소프트웨어 컴포넌트 식별자를 할당하는 단계를 포함하는 것을 특징으로 하는 동적 명령어 처리 방법.
  11. 제9항에 있어서, 상기 등록 단계는,
    상기 적어도 하나의 사용자 인터페이스 중 상기 제2 모드로 동작 중인 사용자 인터페이스를 상기 제3 모드로 변경하는 단계; 및
    상기 제1 명령어 관련 정보를 상기 적어도 하나의 사용자 인터페이스로 전송하는 단계를 포함하는 동적 명령어 처리 방법.
  12. 제9항에 있어서, 상기 실행 단계는,
    상기 적어도 하나의 사용자 인터페이스로부터 제2 명령어 관련 정보를 수신하면, 상기 명령어 트리를 기초로 상기 제2 명령어 관련 정보에 대응하는 소프트웨어 컴포넌트 식별자를 판단하는 단계; 및
    상기 소프트웨어 컴포넌트 식별자에 대응하는 소프트웨어 컴포넌트로, 상기 제2 명령어 관련 정보를 전달하는 단계를 포함하는 것을 특징으로 하는 동적 명령어 처리 방법.
KR1020150154508A 2015-11-04 2015-11-04 동적 명령어 처리 장치 및 방법 KR102126218B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150154508A KR102126218B1 (ko) 2015-11-04 2015-11-04 동적 명령어 처리 장치 및 방법
US15/191,024 US9747144B2 (en) 2015-11-04 2016-06-23 Function processing apparatus and function processing method dynamically process network function using commands

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150154508A KR102126218B1 (ko) 2015-11-04 2015-11-04 동적 명령어 처리 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20170052262A KR20170052262A (ko) 2017-05-12
KR102126218B1 true KR102126218B1 (ko) 2020-06-24

Family

ID=58637671

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150154508A KR102126218B1 (ko) 2015-11-04 2015-11-04 동적 명령어 처리 장치 및 방법

Country Status (2)

Country Link
US (1) US9747144B2 (ko)
KR (1) KR102126218B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112131432A (zh) * 2019-06-25 2020-12-25 中兴通讯股份有限公司 数据网络设备的命令行多叉树获取方法及装置
CN112202621A (zh) * 2020-10-13 2021-01-08 北京时代凌宇信息技术有限公司 边缘计算系统通道管理方法及边缘系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080046873A1 (en) * 2006-08-17 2008-02-21 Rumsey James K Method and system for providing dynamically configurable and extensible control of electronic devices
JP4458762B2 (ja) * 2002-04-04 2010-04-28 パナソニック株式会社 ホスト機器、ターゲット機器、ホスト機器又はターゲット機器で実行されるプログラム、及び機器制御システム
US20130298205A1 (en) * 2006-09-29 2013-11-07 Micron Technology, Inc. Architecture for virtual security module

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6697754B1 (en) * 2000-08-09 2004-02-24 Agilent Technologies, Inc. Generation and execution of instrument control macro files for controlling a signal measurement system
US6941179B2 (en) * 2002-04-04 2005-09-06 Matsushita Electric Industrial Co., Ltd. Device control system, network constructed by the system, and program executed on device constructing the system
KR100419606B1 (ko) 2002-04-23 2004-03-04 한국전자통신연구원 Cli기반 네트워크 장비 관리 시스템과 네트워크 장비간정책 정보 일관성을 유지를 위한 망 관리 인터페이스운용장치 및 방법
US8051105B1 (en) * 2007-01-10 2011-11-01 The Mathworks, Inc. Directing searches on tree data structures
US8434131B2 (en) * 2009-03-20 2013-04-30 Commvault Systems, Inc. Managing connections in a data storage system
KR20150071946A (ko) 2013-12-19 2015-06-29 한국전자통신연구원 데이터 처리 장치 및 데이터 처리 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4458762B2 (ja) * 2002-04-04 2010-04-28 パナソニック株式会社 ホスト機器、ターゲット機器、ホスト機器又はターゲット機器で実行されるプログラム、及び機器制御システム
US20080046873A1 (en) * 2006-08-17 2008-02-21 Rumsey James K Method and system for providing dynamically configurable and extensible control of electronic devices
US20130298205A1 (en) * 2006-09-29 2013-11-07 Micron Technology, Inc. Architecture for virtual security module

Also Published As

Publication number Publication date
US20170123868A1 (en) 2017-05-04
US9747144B2 (en) 2017-08-29
KR20170052262A (ko) 2017-05-12

Similar Documents

Publication Publication Date Title
KR101979362B1 (ko) 가상화된 네트워크 기능을 업그레이드하는 방법 및 네트워크 기능 가상화 오케스트레이터
US10608871B2 (en) Network functions virtualization based fault processing method and apparatus
WO2019184164A1 (zh) 自动部署Kubernetes从节点的方法、装置、终端设备及可读存储介质
US11641308B2 (en) Software defined networking orchestration method and SDN controller
EP2843906B1 (en) Method, apparatus, and system for data transmission
US9967852B2 (en) CPE network configuration systems and methods
US10826768B2 (en) Controlled node configuration
WO2016119631A1 (zh) 一种接入云服务的方法及接入设备
US9021005B2 (en) System and method to provide remote device management for mobile virtualized platforms
CN104639385B (zh) 检测l2vpn网络用户侧接口连通性的方法及设备
US8938061B1 (en) Systems and methods for configuring and registering internet protocol (IP) phones
CN102594944B (zh) 一种自动配置的方法和网络设备
GB2462160A (en) A distributed server system includes a table indicating communication relationships between various service programs
US11546228B2 (en) Zero-touch configuration of network devices using hardware metadata
CN111865629A (zh) 用于配置服务实例的方法、设备和计算机程序产品
KR102126218B1 (ko) 동적 명령어 처리 장치 및 방법
CN108039968B (zh) 网络优化方法、设备及计算机可读存储介质
CN112714370A (zh) 业务配置方法、设备和系统
US10348521B2 (en) Distributed gateways
WO2023146620A1 (en) Network topology mapping for correctly configuring clustered networks
WO2016062065A1 (zh) 客户终端设备cpe工作方式的切换方法及装置
WO2017193722A1 (zh) 一种网络质量管理系统检测任务调度方法、装置
JP2020065127A (ja) 装置設定制御装置、ネットワークシステム、装置設定方法及びプログラム
KR102557744B1 (ko) 데이터 링크 계층 스위치를 개통하는 방법, 전자장치 및 시스템
CN111200513B (zh) 服务器启动方法、服务器及集群服务器系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant