KR102432707B1 - 가상화 프로그램을 이용한 노후 프로그램 구동방법 - Google Patents

가상화 프로그램을 이용한 노후 프로그램 구동방법 Download PDF

Info

Publication number
KR102432707B1
KR102432707B1 KR1020220044601A KR20220044601A KR102432707B1 KR 102432707 B1 KR102432707 B1 KR 102432707B1 KR 1020220044601 A KR1020220044601 A KR 1020220044601A KR 20220044601 A KR20220044601 A KR 20220044601A KR 102432707 B1 KR102432707 B1 KR 102432707B1
Authority
KR
South Korea
Prior art keywords
program
virtualization
computing device
format
resource
Prior art date
Application number
KR1020220044601A
Other languages
English (en)
Inventor
국도호
Original Assignee
국도호
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 국도호 filed Critical 국도호
Priority to KR1020220044601A priority Critical patent/KR102432707B1/ko
Application granted granted Critical
Publication of KR102432707B1 publication Critical patent/KR102432707B1/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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)

Abstract

실시예는 가상화 프로그램을 이용한 노후 프로그램 구동방법에 관한 것이다.
구체적으로, 이러한 구동방법은 PC에서 프로그램 등을 교체할 경우, 최신 OS이거나 또는, PC의 호환불가로 오래된 프로그램을 사용못하거나 PC 업그레이드가 힘든 경우 등에, 최신 OS 등으로 교체하면 가상화 프로그램을 이용하여 최신 버전에서 구버전의 OS및 프로그램 구동을 하도록 한다.
이를 위해, 이러한 교체를 할 경우, 구버전의 OS와 소프트웨어 미디어가 있을 시에는 가상화 프로그램에 이를 직접 설치하고(일반적방법), 미디어가 없을 시에는 기존의 사용중인 구버전을 'ACRONIS' 혹은 'GHOST' 백업으로 우회하여 가상화 프로그램에 복구한다.
그리고, 가상화 프로그램을 이용한 가상화시에는, 가상화 프로그램이 설치된 실제PC의 즉, 실제 컴퓨팅 장치의 리소스를 사용(분배)하여 프로그램상 가상의 하드웨어 환경을 구성 후 OS를 설치하는 것을 특징으로 한다.
따라서, 이를 통해 PC 등에서 프로그램 등을 교체할 경우, 최신 OS이거나 또는, PC 호환불가의 오래된 프로그램, PC 업그레이드가 힘든 경우 등에 가상화 프로그램을 이용하여 최신 OS기반 등의 PC에서 필요한 구버전의 OS및 프로그램 구동을 한다.
즉, 이렇게 하드웨어 공급이 끊기거나 업그레이드된 프로그램 동작이 곤란한 경우, 특히 산업현장의 PLC 등에 적용되었을 경우 등에 최소한의 설비교체를 한다.

Description

가상화 프로그램을 이용한 노후 프로그램 구동방법{Method for operating old program employing virtual program}
본 명세서에 개시된 내용은 PC 등에서 프로그램을 교체할 경우에, 교체한 최신 버전에서 이에 따른 구버전을 계속적으로 이용할 수 있도록 하는 기술 분야에 관한 것이다. 보다 상세하게는, PC 등에서 OS(Operating System) 또는 프로그램을 교체할 경우, 교체한 대상이 최신 OS이거나 또는, PC의 호환불가로 오래된 프로그램을 사용못하거나 혹은 PC 업그레이드가 힘든 경우 등에 최신 OS기반 등으로 구버전을 이용할 수 있도록 한다.
일반적으로, 다양한 프로그램 등은 하드웨어 또는 소프트웨어적인 측면에서 성능이 점점 나아지기도 하며, 따라서, 이러한 성능을 적용하도록 여러 가지 방식의 업그레이드 등이 필요하기도 하다.
예를 들어, 소프트웨어의 업그레이드는 새로운 방식이 나오는 경우, 또는 부속 기기에 여러 가지의 기능 등이 추가되는 경우, 또는 부속기기의 문제를 수정하거나, 유지 보수하는 경우 등에 동작하는 프로그램을 수정하기 위해 사용한다.
한편, 그런데 전술한 바와 같이, 최신 OS이거나 또는, PC의 호환불가로 오래된 프로그램을 사용못하거나 PC 업그레이드가 힘든 경우 혹은, 사후지원이 끝난 경우 등에 있어서는, 이를 위해 기존에는 설비 대부분을 교체하는 경우 등이 있다. 즉, 기존에 사용 중인 제어용 PC의 노후화로 인한 업그레이드가 필요할 시, 현장 PLC등과 같이 전 설비를 통째로 교체가 필요하다.
그런데, 이렇게 교체할 시에 예컨대 20~30억이 필요하고(제작사에서 PC만 따로 교체불가), 교체없이 그대로 사용할 시에는 PC노후화로 인한 부품 수급 장애가 발생하기도 한다.
그리고 또한, 신형PC 및 OS 호환성에 대한 문제도 발생한다.
그래서, 본 명세서에서는 이러한 호환성 및 업그레이드 문제 등을 해결 하여 일부 설비 교체 및 운전을 할 수 있도록 한다.
부가적으로 이러한 배경의 선행기술문헌은 아래의 특허문헌 정도이다.
(특허문헌 1) KR1020100128003 Y1
참고적으로, 이러한 문헌 1의 기술은 소프트웨어의 업그레이드 정도에 관한 것이다.
부연하면, 이 기술은 업그레이드 서버와 적어도 하나 이상의 부속기기를 연결한다. 그리고, 이러한 부속기기가 현재 사용하는 소프트웨어의 버전정보인 현재 버전정보를 전달받고, 소프트웨어를 서버로부터 전달받는다. 또한, 업그레이드용 버전정보가 현재 버전정보보다 최신 버전정보이면, 해당 파일을 업그레이드 서버로부터 전달받아 부속기기로 전달하여, 업그레이드를 수행하는 것이다.
개시된 내용은, PC에서 프로그램 등을 교체할 경우, 전술한 대로 최신 OS이거나 또는, PC 호환불가의 오래된 프로그램, PC 업그레이드가 힘든 경우 등에 최신 버전에서 구버전을 이용하는 가상화 프로그램을 이용한 노후 프로그램 구동방법을 제공하고자 한다.
즉, 이렇게 하드웨어 공급이 끊기거나 업그레이드된 프로그램 동작이 곤란한 경우, 특히 산업현장의 PLC 등에 적용되었을 경우 등에 최소한의 설비교체를 할 수 있도록 하는 가상화 프로그램을 이용한 노후 프로그램 구동방법을 제공하고자 한다.
실시예에 따른 가상화 프로그램을 이용한 노후 프로그램 구동방법은,
PC에서 프로그램 등을 교체할 경우, 특정 가상화 프로그램을 이용하여 하드웨어 공급이 끊기거나 업그레이드된 프로그램 동작이 곤란한 경우, 특히 산업현장의 PLC 등에 적용되었을 경우 등에 최소한의 설비교체를 하도록 한다.
구체적으로는, PC에서 프로그램 등을 교체할 경우, 구버전의 OS와 소프트웨어 미디어가 있을 시에는 이를 가상화 프로그램에 직접 설치하고(일반적방법), 미디어가 없을 시에는 기존의 사용중인 구버전을 'ACRONIS' 혹은 'GHOST' 백업을 통해 우회하여 가상화 프로그램 상에 복구를 한다.
그리고, 또한 이러한 가상화 프로그램을 이용한 가상화를 할 시에는, 가상화 프로그램이 설치된 실제PC의 즉, 실제 컴퓨팅 장치의 리소스를 사용(분배)하여 프로그램상 가상의 하드웨어 환경을 구성 후 OS 등을 설치하는 것을 특징으로 한다.
구체적으로는, 이러한 노후 프로그램 구동방법은,
사용자가 컴퓨팅 장치의 OS 또는 프로그램으로 설비 동작을 제어할 경우, 해당 제어부에서 OS 또는 프로그램을 사용자 요청에 따라 업그레이드 또는 교체를 포함한 관리 동작을 하여, 사용자가 특정 서비스의 사용을 원하는 바에 따라 구동하는 방법에 있어서,
상기 설비 동작을 제어할 경우, 실제 컴퓨팅 장치에 설정 가상화 포맷을 설치하여 등록하는 제 1 단계, 여기서,
상기 가상화 포맷은,
a) 먼저 관리할 대상 컴퓨팅 장치의 OS와 프로그램의 호환 여부를 확인하고,
b) 상기 확인 결과, 대상 컴퓨팅 장치의 OS와 프로그램의 호환이 될 경우에는 가상화 포맷과 컴퓨팅 장치와의 사용가능 제 1 설정 리소스(CPU와 메모리 그래픽 자원 포함) 대상과 점유율을 포함한 제 1 설정 리소스 자원을 다수의 상이한 OS와 프로그램별로 각기 상이하게 분배받아,
각각의 OS와 프로그램별로의 제 1 설정 리소스 자원을 사용해서, 가상화 포맷의 프로그램상에 상이한 OS/프로그램별로 각기 대응하는 가상의 하드웨어 환경을 구성한 후에 OS를 설치하고,
반면에, 대상 컴퓨팅 장치의 OS와 프로그램의 호환이 되지 않을 경우에는 소프트웨어 설치 미디어의 유무를 확인해서, 상기 확인 결과, 소프트웨어 설치 미디어가 있는 경우에는 가상화 포맷과 컴퓨팅 장치와의 제 2 설정 리소스 자원을 다수의 상이한 소프트웨어 설치 미디어별로 각기 상이하게 분배받아,
각각의 소프트웨어 설치 미디어별로의 제 2 설정 리소스 자원을 사용해서, 가상화 포맷의 프로그램상에 상이한 소프트웨어 설치 미디어별로 각기 대응하는 가상의 하드웨어 환경을 구성한 후에 호환가능 OS를 구축하여 소프트웨어 설치 미디어를 설치 진행함으로써,
각각의 경우에 부팅을 확인한 다음 다수의 상이한 설비별로 각기 대응하는 드라이버 설치 및 네트워크 설정을 하고,
c) 반면에 상기 확인 결과, 소프트웨어 설치 미디어가 없는 경우에는 가상화 포맷과 컴퓨팅 장치와의 제 3 설정 리소스 자원을 다수의 상이한 백업매체(예: ACRONIS)별로 각기 상이하게 분배받아,
각각의 백업매체별로의 제 3 설정 리소스 자원을 사용해서, 가상화 포맷의 프로그램상에 상이한 백업매체별로 각기 대응하는 가상의 하드웨어 환경을 구성한 후에 OS를 백업 진행하여 복원해서,
부팅을 확인한 다음 다수의 상이한 설비별로 각기 대응하는 드라이버 설치 및 네트워크 설정을 함으로써, 기존 설비의 구동상태와 동일한 상태로 만듦;
상기 기존 설비의 사용자 설정 제어정보를 입력받는 제 2 단계; 및
상기 사용자 설정 제어정보를 입력받을 경우, 상기 가상화 포맷으로부터 기존 설비의 동작을 해당 버전으로 맞게 상이하게 제어하는 제 3 단계; 를 포함하는 것을 특징으로 한다.
실시예들에 의하면, PC 등에서 프로그램 등을 교체할 경우, 최신 OS이거나 또는, PC 호환불가의 오래된 프로그램, PC 업그레이드가 힘든 경우 등에 가상화 프로그램을 이용하여 최신 OS기반 등의 PC에서 필요한 구버전의 OS및 프로그램 구동이 가능하다.
즉, 이렇게 하드웨어 공급이 끊기거나 업그레이드된 프로그램 동작이 곤란한 경우, 특히 산업현장의 PLC 등에 적용되었을 경우 등에 최소한의 설비교체를 한다.
그리고, 이러한 경우에, 이러한 가상화를 통해 호환성 및 업그레이드 문제를 해결 하여 일부 설비 교체 및 운전을 하도록 하고, 아울러 실물PC가 없이도 여러 다른 OS를 설치 구동하도록 한다.
도 1은 일실시예에 따른 가상화 프로그램을 이용한 노후 프로그램 구동방법을 개념적으로 설명하기 위한 도면
도 2는 일실시예에 따른 가상화 프로그램을 이용한 노후 프로그램 구동방법을 적용한 시스템을 전체적으로 도시한 도면
도 3은 일실시예에 따른 가상화 프로그램을 이용한 노후 프로그램 구동방법을 적용한 컴퓨팅 장치의 구성을 도시한 블록도
도 4는 일실시예에 따른 가상화 프로그램을 이용한 노후 프로그램 구동방법을 순서대로 도시한 플로우 차트
도 1은 일실시예에 따른 가상화 프로그램을 이용한 노후 프로그램 구동방법을 개념적으로 설명하기 위한 도면이다.
도 1에 도시된 바와 같이, 일실시예의 구동방법은 먼저, PC 등에서 프로그램 등을 교체할 경우, 특정 가상화 프로그램을 이용하여 최신 OS기반 등의 PC에서 필요한 구버전의 OS및 프로그램 구동이 가능하도록 한다.
즉, 이러한 노후설비 교체 방법은 이렇게 교체할 경우, 구버전의 OS와 소프트웨어 미디어가 있을 시에는 이를 가상화 프로그램에 직접 설치하고(일반적방법), 미디어가 없을 시에는 기존의 사용중인 구버전을 'ACRONIS' 혹은 'GHOST' 백업을 통해 우회하여 가상화 프로그램 상에 복구를 한다.
예를 들어, 이러한 백업 즉, 구축이 필요한 PC백업인 경우, 이러한 가상화 포맷에 백업용의 윈도우를 설치(OS버전무관 백업소프트웨어 사용용도)하고, 설치된 윈도우에 백업데이터 복원 후 드라이버 설치 및 네트워크 설정을 하므로, 기존 설비와 동일한 사용이 가능하다(데이터값 확인 및 설비 제어).
실질적인 예로는, a와 같이 실물 PC에서 윈도우 10 기반의 비교적 오래된 OS 또는 프로그램을 사용하다가 최신 버전의 OS로 바꾼 경우에, 이 가상화 프로그램을 설치 이용하여 최신 OS기반의 PC에서 필요한 구버전의 OS및 프로그램 구동을 하도록 한다. 그리고, 추가적으로 사용이 완료한 상태에서 다시 복구를 하기도 한다.
구체적으로는, 이러한 가상화 프로그램 즉, 가상화 포맷을 이용한 가상화를 할 시에는, 가상화 포맷이 설치된 실제PC의 즉, 실제 컴퓨팅 장치의 리소스를 사용(분배)하여 프로그램상 가상의 하드웨어 환경을 구성 후 OS를 설치 해 주는 것이다.
그래서, 이에 따라 이렇게 설치시에, 실물PC가 없이도 여러 다른 OS를 설치 구동하도록 한다.
한편, 부연하여 설명하면, 이러한 방법은 실제적으로는 가상이기 때문에 디바이스의 설치 제거가 용이하지만 실제PC의 성능의 한계를 넘어 동작하기는 힘들기도 하다.
추가적으로, 이러한 노후설비 교체 방법은 이러한 실물PC(host)와 가상화PC간 브릿지(Bridge) 사용으로 외부와 네트워크를 구축할 수 있도록 하기도 한다(b 참조).
구체적으로는, 외부의 주변 컴퓨팅 장치에 연결하여 확장하고자 할 경우, 상기 실제 컴퓨팅 장치(host)와, 상기 실제 컴퓨팅 장치 내에 가상화 포맷으로 만들어진 가상화 컴퓨팅 장치 간에 브릿지(Bridge) 포맷을 사용하여 연결하므로, 외부와 네트워크를 구축한다.
그래서, 이를 통해 가상화 포맷으로 프로그램 등이 만들어질 경우, 가상화 포맷을 구비한 장치에서 원격지 상에 외부의 장치에 대한 구동을 가상화 포맷으로 제어함으로써, 주변 설비도 예를 들어, 송풍기 등도 다양하게 조정하기도 한다.
추가적으로, 이러한 브릿지 포맷은 예컨대, 기존에 것으로 백업을 할 경우, 즉 전술한 복원 동작을 할 경우(백업소프트웨어용 OS를 백업 진행하여 복원하는 것임, 보다 상세한 것은 후술함), 부팅을 확인한 다음 네트워크 설정 등을 다시 한다. 그래서, 이러한 경우에 브릿지 포맷도 설정 등을 하여 외부와 연결하도록 한다.
구체적으로는, 이러한 브릿지 포맷은 연결 시나리오를 지원하고, 추출 및 라이브 연결 유형을 모두 지원하며(종래기술에 해당함), 추출 유형인 경우에는 연결할 상황에 따라 새로고침을 수행하기도 한다.
이상과 같이, 일실시예는 PC 등에서 프로그램 등을 교체할 경우, 최신 OS이거나 또는, PC 호환불가의 오래된 프로그램, PC 업그레이드가 힘든 경우 등에, 이런한 가상화 프로그램을 이용하여 최신 버전에서 구버전의 OS및 프로그램 구동을 하도록 한다.
따라서, 이를 통해 일실시예는 PC 등에서 프로그램 등을 교체할 경우, 최신 OS이거나 또는, PC 호환불가의 오래된 프로그램, PC 업그레이드가 힘든 경우 등에 가상화 프로그램을 이용하여 최신 OS기반 등의 PC에서 필요한 구버전의 OS및 프로그램 구동을 한다.
즉, 이렇게 하드웨어 공급이 끊기거나 업그레이드된 프로그램 동작이 곤란한 경우, 특히 산업현장의 PLC 등에 적용되었을 경우 등에 최소한의 설비교체를 한다.
그리고, 이러한 경우에, 이러한 가상화를 통해 호환성 및 업그레이드 문제를 해결 하여 일부 설비 교체 및 운전을 하도록 하고, 아울러 실물PC가 없이도 여러 다른 OS를 설치 구동하도록 한다.
도 2는 일실시예에 따른 가상화 프로그램을 이용한 노후 프로그램 구동방법을 적용한 시스템을 전체적으로 도시한 도면이다.
도 2에 도시된 바와 같이, 일실시예에 따른 시스템은 예를 들어, 크게 현장의 제어실과 원격지 등에 관리자 측의 컴퓨터실로 구분하고, 제어실에는 작업자 등을 위한 다수의 제어 PC를 구비하고, 컴퓨터실에는 관리자 등을 위한 제어 PC 또는, 서버를 구비한다.
그리고, 이러한 시스템은 기존과 같이, 여기에서와 같은 방식으로 제어실 내에 제어 PC1 또는, PC2에서 여러 가지의 기존 설비기기를 예를 들어, 송풍팬 등의 동작을 현장의 작업자가 사용하기를 원하는 바에 따라 상이하게 제어한다. 그리고, 컴퓨터실 내에 서버 등을 통해 관리 책임자가 사용하기를 원하는 바에 따라 원격으로 현장의 제어 PC1 등을 거쳐 설비기기의 동작을 제어하기도 하고, 제어 PC3을 통해 컴퓨터실에서 설비기기 등의 동작을 직접 제어하기도 한다.
이에 더하여, 이러한 시스템은 일실시예에 따라 여기에서와 같이, 제어 PC1에서 오래된 OS 또는 프로그램을 사용하거나, PC 업그레이드가 힘든 경우 혹은, 사후지원이 끝난 경우 등일 경우에, 최신 OS를 설치하여 교체를 완료하면, 전술한 가상화 프로그램을 설치 이용하여 최신 OS기반의 PC에서 필요한 구버전의 OS및 프로그램 구동이 가능하도록 한다.
즉, 가상화 프로그램을 사용하여 구버전의 OS 등을 구동하여 기존 설비기기의 동작을 제어하고, 원격지 등의 서버와도 정보를 송수신하여 원격지 상에서 제어를 하기도 한다.
부가해서, 이때 상기 각각의 장치는 상호 간에 자가망을 통해 연결한다. 이러한 경우, 제어실 내의 PC 등은 스위치(예: 허브)를 통해 연결하고, 제어실 내의 PC와 컴퓨터실의 서버 등은 스위치를 통해 랜통신으로 구체적으로는, 랜통신 3중화를 통해 연결한다.
상기 제어 PC1은 작업자 등을 위해 현장의 제어실에 설치된 것으로, 전술한 바대로 오래된 OS 또는 프로그램을 사용하거나, PC 업그레이드가 힘든 경우 등에, 최신 OS를 설치하여 교체를 완료하면, 일실시예의 가상화 프로그램을 설치 이용하여 최신 OS기반의 PC에서 필요한 구버전의 OS및 프로그램을 구동한다. 예를 들어, 이러한 구동을 통해 특정 장소의 송풍팬의 동작을 제어하여 현장 작업자가 청정하기를 원하는 상태로 바꾸어 준다. 또는, 가상화 프로그램을 이용하여 컴퓨터실 내에 서버 등과 원격지 상으로 연결해서 관리 책임자가 청정하기를 원하는 특정 상태로 제어를 받아 바꾸어 주기도 한다.
상기 제어 PC2는 마찬가지로 현장의 제어실에 설치된 것으로, 기존과 같이 설비기기의 동작을 전술한 구버전으로 제어한다.
상기 서버는 이러한 현장의 제어실 내에 제어 PC1 등의 동작을 원격지에서 관리 책임자의 키 조작에 따라 일괄 조절하여 관리한다. 그리고, 이러한 경우 상기 서버는 전술한 바대로, 일실시예의 가상화 프로그램을 통해 현장의 제어실 내에 제어 PC1과 연동하여 현장의 기존 설비기기에 관한 동작을 구버전을 사용하여 조절한다. 그리고, 아울러 설비기기의 상태와 점검 등의 이력을 관리하기도 한다(종래기술).
상기 제어 PC3은 원격지 등의 컴퓨터실에 설치된 것으로, 기존과 같이 설비기기의 동작 등을 전술한 구버전으로 제어한다.
도 3은 일실시예에 따른 가상화 프로그램을 이용한 노후 프로그램 구동방법을 적용한 제어 PC의 구성을 도시한 블록도이다.
도 3에 도시된 바와 같이, 일실시예에 따른 제어 PC(300)는 크게, 예를 들어 I/F부(301)와 메인 처리부(302), 데이터베이스(303)를 포함한다. 또한 추가적으로, 제어 PC(300)는 사용자 키 조작에 따라 각종 설정정보를 입력받는 키신호 입력부(304)와 표시부(305)를 포함한다.
상기 I/F부(301)는 설비기기와 주변의 제어 PC 또는, 원격지 상의 서버 등에 연결하여, 각종 제어정보와 설정정보 등을 송수신한다. 그리고, 이러한 경우에 제어정보는 예를 들어, 송풍팬의 온/오프 정보와 세기 정보, 식별정보 등이기도 하다.
상기 메인 처리부(302)는 우선적으로는 설비기기 등의 동작을 제어한다. 이러한 상태에서 일실시예에 따라 최신 버전으로 교체하여 가상화 프로그램을 설치한 경우, 이러한 구성으로부터 설비기기 등의 동작을 구 버전으로 제어함으로써, 오래된 OS 또는 프로그램 등을 교체하더라도 최신 버전으로 구 버전과 동일한 사용을 할 수 있도록 한다. 즉, 기존 설비기기에 대한 데이터값 확인 및 설비 제어 등이 가능하다. 그리고, 또한 상기 메인 처리부(302)는 이러한 경우에, 원격지 상에 서버 등과 연동해서 설비기기 등의 동작을 관리 책임자의 설정정보에 따라 상이하게 제어함으로써, 원격지에서도 전술한 동일한 사용을 할 수 있도록 한다.
상기 데이터베이스(303)는 이러한 설비기기와 제어 PC별로 등록 설정정보와 설비기기 등의 상태정보 등을 등록, 관리한다. 그리고, 또한 상태 관리 및 점검 등의 이력 정보를 등록, 관리하기도 한다.
도 4는 일실시예에 따른 가상화 프로그램을 이용한 노후 프로그램 구동방법을 순서대로 도시한 플로우 차트이다.
도 4에 도시된 바와 같이, 일실시예의 구동방법은 먼저 기존과 같이, 사용자가 컴퓨팅 장치의 OS 또는 프로그램으로 설비 동작을 제어할 경우, 해당 제어부에서 OS 또는 프로그램을 사용자 요청에 따라 업그레이드 또는 교체를 포함한 관리 동작을 하여, 사용자가 특정 서비스의 사용을 원하는 바에 따라 구동한다.
그래서, 이러한 상태에서 일실시예에 따른 구동방법은 이러한 설비 동작을 제어할 경우, 먼저 실제 컴퓨팅 장치에 설정 가상화 포맷을 설치하여 등록한다.
그리고, 이러한 경우에 상기 가상화 포맷은 아래와 같다.
a) 먼저, 이러한 구성은 관리할 대상 컴퓨팅 장치의 OS와 프로그램의 호환 여부를 확인한다(S401).
b) 상기 확인 결과, 대상 컴퓨팅 장치의 OS와 프로그램의 호환이 될 경우에는 가상화 포맷과 컴퓨팅 장치와의 제 1 설정 리소스(CPU와 메모리, 그래픽 자원 포함) 대상과 점유율을 포함한 제 1 설정 리소스 자원을 분배받는다.
예를 들어, 특정 'a' OS인 경우에는 CPU와 메모리를 60% 점유율로 사용하도록 하고, 그래픽 자원은 40%로 사용하도록 한다. 그리고, 다른 'b' OS인 경우에는 CPU와 메모리를 50% 점유율로 사용하도록 하고, 그래픽 자원은 40%로 사용하도록 한다.
그리고, 이러한 경우에 각각의 자원에 대해서 수치만을 할당하고, 즉 리소스 대상과 점유율에 관한 정보만을 할당하고, 실제적으로 사용할 경우에 이 정보만큼 분배하여 사용하는 것이다.
다음으로, 이러한 각각의 OS와 프로그램별로의 제 1 설정 리소스 자원을 사용해서, 가상화 포맷의 프로그램상에 상이한 OS/프로그램마다 각기 대응하는 가상의 하드웨어 환경을 구성한 후에 OS를 설치한다.
그리고, 이러한 경우에 하드웨어 환경과 OS도 위와 마찬가지로, 형식적으로 정보만을 사용하여 만들고, 실제적으로 사용할 경우에 이를 통해 자원을 분배받아 사용한다.
반면에, 대상 컴퓨팅 장치의 OS와 프로그램의 호환이 되지 않을 경우에는 소프트웨어 설치 미디어의 유무를 확인한다(S402).
상기 확인 결과, 소프트웨어 설치 미디어가 있는 경우에는 가상화 포맷과 컴퓨팅 장치와의 제 2 설정 리소스 자원을 다수의 상이한 소프트웨어 설치 미디어별로 각기 상이하게 분배받는다.
그래서, 이러한 각각의 소프트웨어 설치 미디어별로의 제 2 설정 리소스 자원을 사용해서, 상이한 소프트웨어 설치 미디어별로 각기 대응하는 가상의 하드웨어 환경을 구성한 후에 호환가능 OS를 구축하여 소프트웨어 설치 미디어를 설치 진행한다(S403).
그래서, 이에 따라 각각의 경우에 부팅을 확인한 다음 다수의 상이한 설비별로 각기 대응하는 드라이버 설치 및 네트워크 설정 또한, 브릿지 포맷 등의 설정을 한다(S406).
부가적으로, 이러한 경우에, 상기 브릿지 포맷은 전술한 바와 같이 아래와 같다.
즉, 각각의 경우에(예: 호환할 경우 등), 가상화 포맷과 컴퓨팅 장치와의 해당 리소스 자원을 다수의 상이한 브릿지 포맷별로 각기 상이하게 분배받는다.
그리고 나서, 이러한 각각의 브릿지 포맷별로의 리소스 자원을 사용해서, 상이한 브릿지 포맷별로 각기 대응하는 가상의 하드웨어 환경을 구성한 후에 OS를 설치한다.
그래서, 부팅을 확인한 다음 다수의 상이한 설비별로 각기 대응하는 드라이버 설치 및 네트워크 설정을 함으로써, 기존 설비를 사용하는 상태로 만든다.
따라서, 이를 통해 PC 등에서 프로그램 등을 교체할 경우, 최신 OS이거나 또는, PC 호환불가의 오래된 프로그램, PC 업그레이드가 힘든 경우 등에 가상화 프로그램을 이용하여 최신 OS기반 등의 PC에서 필요한 구버전의 OS및 프로그램 구동이 가능하다.
c) 한편, 다음으로 상기 확인 결과, 소프트웨어 설치 미디어가 없는 경우에는 가상화 포맷과 컴퓨팅 장치와의 제 3 설정 리소스 자원을 다수의 상이한 백업매체별로(예: ACRONIS) 각기 상이하게 분배받는다.
그래서, 이러한 각각의 백업매체별로의 제 3 설정 리소스 자원을 서용해서, 상이한 백업매체별로 각기 대응하는 가상의 하드웨어 환경을 구축한 후에 OS를 백업 진행하여 복원한다(S404-S405).
그리고, 부팅을 확인한 다음 다수의 상이한 설비별로 각기 대응하는 드라이버 설치 및 네트워크 설정(브릿지 포맷 포함)을 함으로써(S406), 기존 설비와 동일한 사용을 하는 구동 상태로 만든다.
즉, 이와 같이 전술바 바대로, 구버전의 OS와 소프트웨어 미디어가 있을 시에는 가상화 프로그램에 이를 직접 설치한다(일반적방법). 그리고, 또한 이러한 미디어가 없을 시에는 기존의 사용중인 구버전을 'ACRONIS' 혹은 'GHOST' 백업을 통해 우회하여 가상화 프로그램 상에 복구를 한다.
그리고 예를 들어, 이렇게 복구 즉, 구축이 필요한 PC백업인 경우, 가상화 포맷에 백업용의 윈도우를 설치(OS버전무관 백업소프트웨어 사용용도)하고, 설치된 윈도우에 백업데이터 복원 후 드라이버 설치 및 네트워크 설정을 하므로, 기존 설비와 동일한 사용이 가능하다(데이터값 확인 및 설비 제어).
그래서, 이러한 상태에서 현장에 적용하여(S407) 상기 기존 설비의 사용자 설정 제어정보를 입력받는다.
이를 통해, 이렇게 사용자 설정 제어정보를 입력받을 경우, 상기 가상화 포맷으로부터 기존 설비의 동작을 해당 버전으로 맞게 각기 상이하게 제어한다.
따라서, 이를 통해 일실시예는 PC 등에서 프로그램 등을 교체할 경우, 최신 OS이거나 또는, PC 호환불가의 오래된 프로그램, PC 업그레이드가 힘든 경우 등에 가상화 프로그램을 이용하여 최신 OS기반 등의 PC에서 필요한 구버전의 OS및 프로그램 구동이 가능하다.
즉, 이렇게 하드웨어 공급이 끊기거나 업그레이드된 프로그램 동작이 곤란한 경우, 특히 산업현장의 PLC 등에 적용되었을 경우 등에 최소한의 설비교체를 한다..
그리고 또한, 이러한 경우에 이러한 가상화를 통해 호환성 및 업그레이드 문제를 해결 하여 일부 설비 교체 및 운전을 하도록 하고, 아울러 실물PC가 없이도 여러 다른 OS를 설치 구동하도록 한다.
이상과 같이, 일실시예는 PC 등에서 프로그램 등을 교체할 경우, 최신 OS이거나 또는, PC 호환불가의 오래된 프로그램, PC 업그레이드가 힘든 경우 등에 가상화 프로그램을 이용하여 최신 OS기반 등의 PC에서 필요한 구버전의 OS및 프로그램 구동이 가능하다.
즉, 이렇게 하드웨어 공급이 끊기거나 업그레이드된 프로그램 동작이 곤란한 경우, 특히 산업현장의 PLC 등에 적용되었을 경우 등에 최소한의 설비교체를 한다.
구체적으로는, 구버전의 OS와 소프트웨어 미디어가 있을 시에는 가상화 프로그램에 직접 설치를 하고(일반적방법), 미디어가 없을 시에는 기존의 사용중인 구버전을 'ACRONIS' 혹은 'GHOST' 백업을 통해 우회하여 가상화 프로그램 상에 복구를 한다.
그리고, 가상화 프로그램을 이용한 가상화시에는, 가상화 프로그램이 설치된 실제PC의 즉, 실제 컴퓨팅 장치의 리소스를 사용(분배)하여 프로그램상 가상의 하드웨어 환경을 구성 후 OS를 설치한다.
따라서, 이를 통해 일실시예는 PC 등에서 프로그램 등을 교체할 경우, 최신 OS이거나 또는, PC 호환불가의 오래된 프로그램, PC 업그레이드가 힘든 경우 등에 가상화 프로그램을 이용하여 최신 OS기반 등의 PC에서 필요한 구버전의 OS및 프로그램 구동을 한다.
즉, 이렇게 하드웨어 공급이 끊기거나 업그레이드된 프로그램 동작이 곤란한 경우, 특히 산업현장의 PLC 등에 적용되었을 경우 등에 최소한의 설비교체를 한다.
그리고, 또한 이러한 경우에, 이러한 가상화를 통해 호환성 및 업그레이드 문제를 해결 하여 일부 설비 교체 및 운전을 하도록 하고, 아울러 실물PC가 없이도 여러 다른 OS를 설치 구동하도록 한다.
한편, 추가적으로 이러한 구성은 이렇게 가상화 포맷을 사용하여 설비 동작을 제어할 경우, 아래의 구성으로부터 설치 등의 이상을 보이는 경우에서도 이중으로 처리함으로써, 다양한 이상 상황에서도 설비 동작을 원활하게 수행할 수 있도록 한다.
이를 위해, 이러한 구성은 먼저 가상화 포맷과 대상 컴퓨팅 장치의 OS와 프로그램의 호환 여부를 확인하여 기존 설비와 동일한 사용 상태로 만드는 경우와 소프트웨어 설치 미디어를 통해 만드는 경우, 백업매체를 통해 만드는 경우에 각기 이상 여부를 확인한다.
상기 확인 결과, 이상이 발생한 경우에 동일한 설비를 사용하도록 한 설정 영역/그룹/채널 내의 컴퓨팅 장치 유무를 확인한다.
예를 들어, 영역은 동일한 작업 유형을(예: 설비 조정 또는, 관리 동작 등) 수행하는 컴퓨팅 장치를 관리자 키 조작에 따라 즉, 관리자가 같이 사용하기를 원하는 바에 따라 묶어서 하나의 동일 대상으로 한다.
그래서 상기 확인 결과, 동일 영역/그룹/채널 내의 컴퓨팅 장치가 있는 경우에 상기 브릿지 포맷으로 해당 컴퓨팅 장치를 호스트로 설정을 변경하여 가상화 컴퓨팅 장치 간에 연결한다.
따라서, 이를 통해 상기 가상화 포맷으로 기존 설비의 동작을 대응하는 사용버전으로 맞게 각기 상이하게 이중 제어를 하도록 한다.
다른 한편으로는 또한, 이러한 구성은 이렇게 기존 설비에 전술한 포맷을 설치하여 조정 등을 할 경우, 아래의 구성으로부터 다양한 실제 구성 형식 등과 같이 여러 가지 실제 상황에 따라서 정보를 상이하게 주고 받음으로써, 효율적으로 관리할 수 있도록 한다.
이를 위해, 상기 포맷은 예컨대 아래와 같이 동작한다.
a) 먼저, 이렇게 정보를 주고 받을 경우, 현재 OS 또는, 프로그램 등의 개수별로 대응하여 정보 변환 동작을 상이하게 제어한다.
b) 그리고 나서, 이러한 조정 등을 할 경우에, 미리 다수의 상이한 OS 또는, 프로그램 별로 요구 명령 값과 설정 기준 명령 값의 매핑 관계를 변환하는 맵 테이블을 등록한다.
그래서, 상기 조정 동작을 상기 맵 테이블에 의해 현재 대상에 맞게 상이하게 보정하여 제어하므로, 설비 기기 등을 원활하게 계속적으로 구동한다.
c) 추가적으로, 이러한 경우에 상기 맵 테이블에서 다수의 상이한 OS 또는, 프로그램 개수와 또는, 유형별로 각기 요구 명령 값과 설정 기준 명령 값의 매핑 관계를 변환하는 정보를 구비한다.
한편, 이에 더하여 이러한 장치는 이렇게 조정 등을 할 경우에, 각각의 장치별로서 맞게 조정을 수행함으로써, 다양한 방식과 상황에 맞추어서 변환을 신속하고 원활하게 한다.
이를 위해, 상기 맵 테이블은 아래와 같이 동작한다.
a) 즉, 먼저 전술한 바와 같이, 이러한 조정 동작을 상이하게 수행할 경우에, 아래의 설정 I/O포트 포맷으로부터 다수의 상이한 장치별로 I/O포트 구성을 각기 매트릭스화한다.
그리고 또한, 이러한 I/O포트 중에서 어느 하나 이상의 포트를 각 장치 유형별로 다원화한다.
아울러서 상기 I/O포트 포맷은 다수의 상이한 장치별로 각기 매트릭스형 I/O포트를 상이하게 조합 매칭한다.
b) 그래서, 이에 따라 조정을 상이하게 수행할 경우마다, 상기 I/O포트 포맷으로부터 각각의 장치 또는 유형별로 각기 변환 동작을 매트릭스 방식으로 다원화함으로써, 다양한 장치별로 맞게 변환한다.
한편, 이러한 구성은 이렇게 측정값을 수집하여 관리 정보처리장치에 제공하여 원격지에서 감시를 할 경우, 아래의 구성으로부터 정보를 암호 방식으로 안전하게 제공함으로써, 관리자 측에서 원활하게 고장 진단을 하도록 한다.
먼저, 원격 진단(특히, 고장 진단)은 아래와 같다.
즉, 이렇게 감시 서비스를 할 경우에, 전술한 일실시예에 따른 포맷에 대해서 교체 진단을 수행하므로, 대상을 적절하게 교체해서 지속적이고 안정적으로 운용한다.
이를 위해, 상기 관리 정보처리장치는 아래의 동작도 수행한다.
먼저, 상기 관리 정보처리장치는 설비 기기 등에 관한 상태 등의 정보가 전달될 경우, 아래의 일실시예에 따른 진단포맷으로부터 설비 기기의 기준 구동량특성정보와 현재 구동량특성정보를 각각의 장치 유형별로 비교한다.
상기 비교 결과, 상기 기준 구동량특성정보와 현재 구동량특성정보의 차이값이 미리 설정된 기준 차이값에 해당하는 경우에 정상으로 진단한다.
반면에, 상기 비교 결과, 기준 구동량특성정보와 현재 구동량특성정보의 차이값이 상기 기준 차이값에 해당하지 않는 경우에는 교체로 진단하므로, 전술한 포맷을 원활하게 유지보수한다.
그리고, 이러한 경우에 진단포맷은 아래와 같이 이루어진다.
a) 먼저, 상기한 진단포맷은 이렇게 교체 진단할 경우에, 다수의 상이한 포맷(또는, 설비 기기를 직접적으로도 할 수 있음)과 주변상황별로 소요시간과 상태 정보를 기초로 해서, 구동량을 분류하여 학습하는 방식을 정의한다.
b) 이때, 상기 학습 방식은 아래와 같다.
1) 다수의 상이한 포맷(또는, 설비 기기)과 주변상황별로 구동장치동작과 주변 상황상태 특징을 나타내는 데이터셋을 기초로 해서 구동량 데이터셋을 추출한다.
2) 다음, 이렇게 추출된 구동량 데이터셋을 다수의 상이한 장소와 주변상황 정보를 반영하여 속성화한다.
3) 그리고, 이렇게 속성화된 결과를 기초로 해서, 각각의 방식별로 지속 특성(또는, 식별)을 나타내는 기간 동안 동일한 구동량을 유지하는 구동량 특성을 결정한다.
4) 또한, 이러한 결과를 정규화하게 된다.
5) 그래서, 이러한 결과를 기초로 해서 각각의 방식별로 구동량 특성정보를 설정하여, 다수의 상이한 설비 기기와 주변 상황별로 구동량을 예측하는 정보를 만드는 독립(기준 구동량특성정보) 및 종속(구동량) 변수로 설정한다.
6) 그리고, 상기 설정된 결과를 학습 및 훈련 데이터로 만든다.
7) 그래서, 이를 통해 이렇게 만들어진 결과로부터 진단포맷을 구성해서 구비한다.
다음 이러한 상태에서, 구체적으로는, 아래의 구성으로부터 정보를 암호 방식으로 안전하게 제공함으로써, 관리자 측에서 원활하게 고장 진단을 하도록 한다.
즉, 이러한 구성은 먼저 정보를 제공할 경우, 예컨대 전술한 포맷을 통해 조정할 기기의 개수 또는 정보를 전달한 관리자 측의 개수별로 각기 해당 비밀 키와 배타적 논리합의 특징을 이용해서 n개(조정할 기기의 개수 또는, 관리자 측의 수)의 분산 정보를 만든다.
예를 들어, 관리자 측은 관리 정보처리장치(원격지 상)와 관리자 단말기, 작업 현장의 관리 정보처리장치 등이기도 하다.
참고로, 측정값은 각각의 감지 정보이다. 한편 그리고, 이러한 정보를 이용해서 n개의 부분 비밀 키를 만들어, n개의 개수 각각에 암호화된 분산 데이터와 부분 비밀 키를 저장함으로써, 암호화한다. 이러한 경우, 분산 데이터는 조정할 기기 또는 관리자 측별로 각기 구분하기도 한다.
이러한 배경을 간략하게 설명하면, 단말기가 고성능/고용량화 되어 감에 따라, 단말기의 내부의 중요 데이터들에 대한 보호 및 관리의 중요성이 대두되고 있다.
이러한 중요 데이터들의 보호 및 관리를 위해서 종래에는 단말기의 중요 데이터를 암호화하여 외부 저장 장치에 저장하여 백업하는 방법이 이용되고 있다.
하지만, 중요 데이터가 하나의 외부 저장 장치에 저장되는 경우, 저장 장치가 해킹되는 경우 중요 데이터가 손쉽게 유출되는 문제가 발생할 수 있다.
따라서, 중요 데이터를 외부 저장 장치에 저장함에 있어서, 보다 안전한 방법을 요구하기도 한다.
한편으로 특히, 그리고 또한, 이러한 경우에 임의의 초기값과 비밀키를 입력하는 방법을 스크램블을 활용하여 차단하기도 함으로써, 조금 더 효과적으로 데이터 분산 저장을 수행하기도 한다.
이를 위해, 먼저, 이렇게 암호화할 경우, 아래의 암호화 구성으로부터 정보를 암호화하여 해당 장치로 제공하도록 한다.
그리고 또한, 상기 암호화 구성은 아래와 같다.
a) 즉, 감시하기를 원하는 정보를 입력받을 경우, AES(Advanced Encryption Standard) 암호 방식을 바탕으로 해서 평문의 모양이나 길이에 따라 각기 상이한 비밀키를 하나 선택한다.
그리고 또한, 비밀키 크기에 따라 다수의 상이한 라운드 중에서 한 가지를 선택하여 반복실행함으로써 암호문을 획득한다.
또한, 각 라운드별 함수는 라운드 키 덧셈과 치환 계층, 확산 계층을 포함하는 ARIA(Academy Research Institute Agency) 암호화 포맷을 적용한다.
b) 그래서, 이를 통해 상기 라운드 키 덧셈 연산을 수행하기 전에, 평문과 비밀키로부터 n-1개의 스크램블러와(n개는 각각의 개수임) 배타적 논리합을 먼저 수행함으로써 변조한다.
c) 그리고 나서, 이러한 변조 정보를 n개의 부분 비밀 키로 설정하고, n개의 각 대상으로 서로 다른 하나의 부분 비밀 키를 제공한다.
d) 그래서 이렇게 변조를 수행한 경우, 상기 비밀키 크기에 따른 한 가지 라운드의 라운드 키 덧셈 연산을 포함한 라운드별 함수로서 반복실행함으로써 암호문을 획득한다.
그리고, 상기 암호문(형식)을 획득할 경우마다, 상기 스크램블러가 라운드 키 덧셈 연산에서 시스템적으로 소멸하고 연산결과를 상용의 AES와 동일한 형식으로 얻어진다.
한편, 이러한 점에 더하여 상기 데이터의 분산 저장 방법은 이렇게 암호화할 경우, 다른 예로서 종래 기술을 활용하여 아래의 구성으로부터 데이터의 분산 저장을 하므로, 다른 면으로 효과적인 분산 저장을 할 수 있도록 한다.
예를 들어, 이러한 구성은 먼저 스크램블을 n-1개 즉, 대상의 개수에서 하나를 뺀만큼 비밀 키를 구성하고, 이러한 비밀 키를 이용해서 n개의 분산 데이터를 만든다.
보다 구체적으로 설명하면, 상수항을 비밀 데이터로 하는 t-1차 랜덤 다항식(f(x))을 선택하고, t-1차 랜덤 다항식(f(x))의 x에 1부터 n까지의 값을 대입하여 n개의 분산 정보를 만들 수 있다. 이때, t는 비밀 데이터를 복구하는데 필요한 분산 데이터의 개수를 나타낸다.
그리고, 특정한 비밀 키를 구성한다.
다음, n-1개의 랜덤키를 즉, n-1개의 스크램블을 만들고, 비밀 키와 n-1개의 랜덤 키를 모두 비트단위 배타적 논리합(Bitwise XOR)한다.
그리고 나서, 이러한 정보를 n개의 부분 비밀 키로 설정하고, n개의 대상들 각각으로 서로 다른 하나의 부분 비밀 키를 송신할 수 있다.
그리고, n개의 분산 데이터 각각을 비밀 키로 암호화하여 n개의 암호화된 분산 정보를 만든다.
그리고, n개의 암호화된 분산 데이터를 각각의 대응하는 n개의 대상들로 송신하여 저장하도록 한다. 참고적으로, 이러한 방식은 위의 방식에 동일하게 사용하기도 한다.
그래서, 이렇게 암호화된 분산 데이터를 송신하기에 앞서, n개의 대상들이 정당한 사용자인지 인증하는 과정을 수행할 수 있다.
한편, 참고적으로 이러한 방법은 이렇게 암호화할 경우, 여기에서 분산하여 저장한 데이터를 복구하는 과정을 설명한다.
먼저, 비밀 데이터의 복구 요청을 받을 경우, n개의 대상들 중에서 적어도 t개의 관리자 측 개수 등로부터 암호화된 분산 데이터를 수신한다. 이러한 경우, 암호화된 분산 데이터를 수신하기에 앞서, t개의 대상과의 인증 과정을 수행할 수 있다.
그리고, 비밀 키를 구성한다
예를 들어, 내부에 비밀 키를 저장한 경우에는, 이 비밀 키를 이용하고, 그렇지 않은 경우에는, 별도로 비밀 키를 구성하기도 한다. 그리고 이러한 경우, 내부에서 비밀 키를 구성할 수 없으면, n개의 대상들을 통해서 비밀 키를 획득할 수 있다.
n개의 대상들을 통해서 비밀 키를 획득하는 것은, n개 대상들 각각과 인증하여 n개의 대상으로부터 부분 비밀 키를 수신하고, 수신된 n개의 부분 비밀 키를 모두 비트단위 배타적 논리합(Bitwise XOR)하여 비밀 키를 생성할 수 있다. 이러한 방식은 부가적으로 전술한 두 방식에 같이 사용하기도 한다.
그리고, t개의 암호화된 분산 데이터를 비밀 키로 복호화하여 t개의 분산 데이터를 만든다.
그리고 또한, t개의 분산 데이터를 이용해서 비밀 데이터를 복구한다.
비밀 데이터를 복구하는 과정을 보다 구체적으로 설명하면, t개의 분산 데이터를 이용해서 t-1차 랜덤 다항식(f(x))을 복구하고, t-1차 랜덤 다항식(f(x))의 상수항을 확인하고, 상수항을 비밀 데이터로 복구할 수 있다.
300 : 제어 PC
301 : I/F부 302 : 메인 처리부
303 : 데이터베이스
304 : 키신호 입력부 305 : 표시부

Claims (3)

  1. 사용자가 컴퓨팅 장치의 OS(Operating System) 또는 프로그램으로 설비 동작을 제어할 경우, 해당 컴퓨팅 장치의 제어부에서 OS 또는 프로그램을 사용자 요청에 따라 업그레이드 또는 교체를 포함한 관리 동작을 하여, 사용하기를 원하는 바에 따라 구동하는 방법에 있어서,
    상기 제어부에 의해 설비 동작을 제어할 경우, 실제 컴퓨팅 장치에 설정 가상화 포맷을 설치하여 등록하는 제 1 단계, 여기서
    상기 가상화 포맷은,
    a) 먼저 관리할 대상 컴퓨팅 장치의 OS와 프로그램의 호환 여부를 확인하고,
    b) 상기 확인 결과, 대상 컴퓨팅 장치의 OS와 프로그램의 호환이 될 경우에는 가상화 포맷과 컴퓨팅 장치와의 사용가능 제 1 설정 리소스(CPU와 메모리, 그래픽 자원 포함) 대상과 점유율을 포함한 제 1 설정 리소스 자원을 다수의 상이한 OS와 프로그램별로 각기 상이하게 분배받아,
    각각의 OS와 프로그램별로의 제 1 설정 리소스 자원을 사용해서, 가상화 포맷의 프로그램상에 상이한 OS 및 프로그램마다 대응하는 가상의 하드웨어 환경을 구성한 후에 OS를 설치하고,

    반면에, 대상 컴퓨팅 장치의 OS와 프로그램의 호환이 되지 않을 경우에는 소프트웨어 설치 미디어의 유무를 확인해서,
    상기 확인 결과, 소프트웨어 설치 미디어가 있는 경우에는 가상화 포맷과 컴퓨팅 장치와의 제 2 설정 리소스 자원을 다수의 상이한 소프트웨어 설치 미디어별로 각기 상이하게 분배받아,
    각각의 소프트웨어 설치 미디어별로의 제 2 설정 리소스 자원을 사용해서, 가상화 포맷의 프로그램상에 상이한 소프트웨어 설치 미디어마다 대응하는 가상의 하드웨어 환경을 구성한 후에 호환가능 OS를 구축하여 소프트웨어 설치 미디어를 설치 진행함으로써,
    각각의 경우에 부팅을 확인한 다음 다수의 상이한 설비별로 각기 대응하는 드라이버 설치 및 네트워크 설정을 하고,

    c) 상기 확인 결과, 소프트웨어 설치 미디어가 없는 경우에는 가상화 포맷과 컴퓨팅 장치와의 제 3 설정 리소스 자원을 다수의 상이한 백업매체별로 각기 상이하게 분배받아,
    각각의 백업매체별로의 제 3 설정 리소스 자원을 사용해서, 가상화 포맷의 프로그램상에 상이한 백업매체마다 대응하는 가상의 하드웨어 환경을 구성한 후에 OS를 백업 진행하여 복원해서,
    부팅을 확인한 다음 다수의 상이한 설비별로 각기 대응하는 드라이버 설치 및 네트워크 설정을 함으로써, 기존 설비와 동일한 사용 상태로 만듦;

    상기 기존 설비의 사용자 설정 제어정보를 입력받는 제 2 단계; 및

    상기 사용자 설정 제어정보를 입력받을 경우, 상기 가상화 포맷으로부터 기존 설비의 동작을 대응하는 사용버전으로 맞게 각기 상이하게 제어하는 제 3 단계; 를 포함하는 것을 특징으로 하는 가상화 프로그램을 이용한 노후 프로그램 구동 방법.
  2. 청구항 1에 있어서,
    상기 제 3 단계 후에,
    외부의 주변 컴퓨팅 장치에 연결하여 확장하고자 할 경우, 상기 실제 컴퓨팅 장치(host)와, 상기 실제 컴퓨팅 장치 내에 가상화 포맷으로 만들어진 가상화 컴퓨팅 장치 간에 브릿지(Bridge) 포맷을 사용하여 연결하므로, 외부와 네트워크를 구축하는 제 4 단계; 를 더 포함하고,

    상기 브릿지 포맷은,
    상기 가상화 포맷과 대상 컴퓨팅 장치의 OS와 프로그램의 호환 여부를 확인하여 기존 설비와 동일한 사용 상태로 만드는 경우와 소프트웨어 설치 미디어를 통해 만드는 경우, 백업매체를 통해 만드는 경우에 각기,
    가상화 포맷과 컴퓨팅 장치와의 해당 리소스 자원을 다수의 상이한 브릿지 포맷별로 각기 상이하게 분배받고,
    각각의 브릿지 포맷별로의 리소스 자원을 사용해서, 상이한 브릿지 포맷별로 각기 대응하는 가상의 하드웨어 환경을 구성한 후에 OS를 설치해서,
    부팅을 확인한 다음 다수의 상이한 설비별로 각기 대응하는 드라이버 설치 및 네트워크 설정을 함으로써, 기존 설비를 사용하는 상태로 만드는 것; 을 특징으로 하는 가상화 프로그램을 이용한 노후 프로그램 구동방법.
  3. 청구항 2에 있어서,
    상기 제 4 단계 후에,
    상기 가상화 포맷과 대상 컴퓨팅 장치의 OS와 프로그램의 호환 여부를 확인하여 기존 설비와 동일한 사용 상태로 만드는 경우와 소프트웨어 설치 미디어를 통해 만드는 경우, 백업매체를 통해 만드는 경우에 각기 이상 여부를 확인하여,
    상기 확인 결과, 각각의 경우에 이상이 발생한 경우에는 동일한 설비를 사용하도록 한 설정 영역과 그룹 또는, 채널 내의 컴퓨팅 장치 유무를 확인하여,
    상기 확인 결과, 동일 영역과 그룹 또는, 채널 내의 컴퓨팅 장치가 있는 경우에 상기 브릿지 포맷으로 해당 컴퓨팅 장치를 호스트로 설정을 변경하여 가상화 컴퓨팅 장치 간에 연결해서,
    상기 가상화 포맷으로 기존 설비의 동작을 대응하는 사용버전으로 맞게 각기 상이하게 이중 제어를 하도록 하는 것; 을 특징으로 하는 가상화 프로그램을 이용한 노후 프로그램 구동방법.
KR1020220044601A 2022-04-11 2022-04-11 가상화 프로그램을 이용한 노후 프로그램 구동방법 KR102432707B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220044601A KR102432707B1 (ko) 2022-04-11 2022-04-11 가상화 프로그램을 이용한 노후 프로그램 구동방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220044601A KR102432707B1 (ko) 2022-04-11 2022-04-11 가상화 프로그램을 이용한 노후 프로그램 구동방법

Publications (1)

Publication Number Publication Date
KR102432707B1 true KR102432707B1 (ko) 2022-08-16

Family

ID=83063931

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220044601A KR102432707B1 (ko) 2022-04-11 2022-04-11 가상화 프로그램을 이용한 노후 프로그램 구동방법

Country Status (1)

Country Link
KR (1) KR102432707B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990063139A (ko) * 1997-12-17 1999-07-26 이데이 노부유끼 정보 처리 장치, 정보 처리 방법 및 컴퓨터 프로그램 제공 매체
KR20060079088A (ko) * 2004-12-30 2006-07-05 마이크로소프트 코포레이션 그래픽 서브 시스템들을 가상화하기 위한 시스템들 및방법들
JP2008243123A (ja) * 2007-03-29 2008-10-09 Nec Corp バックアップ装置及び方法並びにプログラム
KR20170011802A (ko) * 2015-07-24 2017-02-02 삼성전자주식회사 기능 수행 환경의 백업 및 복원을 지원하는 장치 및 그 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990063139A (ko) * 1997-12-17 1999-07-26 이데이 노부유끼 정보 처리 장치, 정보 처리 방법 및 컴퓨터 프로그램 제공 매체
KR20060079088A (ko) * 2004-12-30 2006-07-05 마이크로소프트 코포레이션 그래픽 서브 시스템들을 가상화하기 위한 시스템들 및방법들
JP2008243123A (ja) * 2007-03-29 2008-10-09 Nec Corp バックアップ装置及び方法並びにプログラム
KR20170011802A (ko) * 2015-07-24 2017-02-02 삼성전자주식회사 기능 수행 환경의 백업 및 복원을 지원하는 장치 및 그 방법

Similar Documents

Publication Publication Date Title
CN100561923C (zh) 一种bios刷新升级的系统和方法
US7099477B2 (en) Method and system for backup and restore of a context encryption key for a trusted device within a secured processing system
CN102208001B (zh) 硬件支持的虚拟化密码服务
JP5241319B2 (ja) ネットワーク上に配置された構成要素についての情報を検出するためのパスワードを管理するコンピュータ・システム、並びにその方法及びコンピュータ・プログラム
US8230222B2 (en) Method, system and computer program for deploying software packages with increased security
US8588422B2 (en) Key management to protect encrypted data of an endpoint computing device
US7562160B2 (en) Storage device and method of setting configuration information of same
US8800060B2 (en) Information processing device performing software license authentication, communication system, and software license authentication method
JP4242819B2 (ja) オフライン作業可能な端末を有する計算機システム
CN107003866A (zh) 来自加密模板的加密虚拟机的安全创建
US8108940B2 (en) Method for protecting data from unauthorised access
US8443184B2 (en) System and method for personalizing devices
CN101258505A (zh) 安全的软件更新
JP2010062738A (ja) ネットワーク設定プログラム,ネットワーク設定方法及びネットワーク設定装置
CN109670325B (zh) 一种配置文件加解密的装置及其方法
KR102279190B1 (ko) 단말의 동작 방법, 관리 서버의 동작 방법 및 이동식 저장장치
US10447818B2 (en) Methods, remote access systems, client computing devices, and server devices for use in remote access systems
US20190273609A1 (en) Mutually authenticated adaptive management interfaces for interaction with sensitive infrastructure
JP2010244358A (ja) シンクライアントマスタの書換システム、シンクライアントマスタの書換方法、およびシンクライアント
KR102432707B1 (ko) 가상화 프로그램을 이용한 노후 프로그램 구동방법
CN111737747A (zh) 数据库保密方法、装置、设备及计算机存储介质
US20150304237A1 (en) Methods and systems for managing access to a location indicated by a link in a remote access system
CN111092918B (zh) 计算节点和建立云集群的方法
CN111190695A (zh) 一种基于鲲鹏芯片的虚拟机保护方法及装置
CN116501353B (zh) 固件更新方法、装置及设备和介质

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant