1 |
1
삭제
|
2 |
2
운영체제와 아키텍처로 구성된 시스템 환경을 갖는 사용자 단말에서 상기 운영체제와 아키텍처 중 적어도 하나와 다른 시스템 환경을 갖는 타겟 운영체제와 아키텍처로 구성된 외부 단말의 타겟 프로그램을 실행하기 위한 바이너리 호환 시스템으로서,외부 단말의 타겟 프로그램을 실행하기 위한 바이너리 파일의 헤더 정보를 이용하여 외부 단말의 타겟 운영체제 및 아키텍처를 식별하는 시스템 분석수단;외부 단말의 타겟 운영체제와 아키텍처에서 제공하는 수행 라이브러리 및 시스템 구성 정보들을 운영체제별 및 아키텍처별로 구비하고 이를 전체적으로 관리하는 가상의 운영체제수단;상기 시스템 분석수단으로부터 식별된 타겟 운영체제와 아키텍처를 기반으로 상기 가상의 운영체제수단의 가동을 준비하고, 타겟 프로그램을 실행하기 위한 바이너리 파일, 타겟 운영체제의 부팅시 필요한 라이브러리 및 레지스트리 정보를 메모리 영역에 로딩하는 로더수단;상기 가상의 운영체제수단으로부터 타겟 운영체제와 아키텍처에 해당하는 수행 라이브러리를 제공받아 타겟 프로그램을 실행하기 위한 바이너리 파일 내의 기계적인 코드를 해당 사용자 단말에 대응되는 실행 코드로 변환하는 변환수단; 및상기 사용자 단말의 운영체제에서 발생한 이벤트 요청을 인식하고, 인식된 이벤트 요청을 상기 변환수단으로 전달하는 프로그램 관리수단을 포함하되,상기 변환수단은 상기 가상의 운영체제수단으로부터 해당 이벤트 요청에 필요한 수행 라이브러리를 제공받아 상기 프로그램 관리수단으로부터 전달된 이벤트 요청에 따라 바이너리 파일 내의 기계적인 코드를 해당 사용자 단말에 대응되는 실행 코드로 실시간 변환하는 것을 특징으로 하는 사용자 단말에서 다른 시스템 환경을 갖는 외부 단말의 프로그램을 실행하기 위한 바이너리 호환 시스템
|
3 |
3
제2 항에 있어서,상기 프로그램 관리수단은 상기 변환수단으로부터 이벤트 요청에 따라 실시간 변환된 실행 코드를 제공받아 해당 사용자 단말의 화면에 디스플레이 해주며,상기 변환수단을 통해 이미 사용된 수행 라이브러리나 자주 사용되는 수행 라이브러리를 미리 변환하여 별도의 메모리 영역에 저장되도록 관리하며, 상기 별도의 메모리 영역에 저장된 수행 라이브러리를 상기 가상의 운영체제수단보다 우선순위로 상기 변환수단에 제공되도록 관리하는 것을 특징으로 하는 사용자 단말에서 다른 시스템 환경을 갖는 외부 단말의 프로그램을 실행하기 위한 바이너리 호환 시스템
|
4 |
4
제2 항에 있어서,상기 가상의 운영체제수단은 상기 사용자 단말 내의 프로세스 형태로 이루어지거나 상기 사용자 단말과 유/무선 통신망을 통해 연결되는 별도의 서버로 이루어지고, 상기 가상의 운영체제수단이 별도의 서버로 이루어질 경우, 상기 로더수단은 상기 별도의 서버와 연결하기 위한 통신 인터페이스를 구성하고, 타겟 운영체제를 위한 디렉토리와 파일이 초기화되도록 상기 별도의 서버로 가동 준비 요청메시지를 전달하며,상기 수행 라이브러리는 레지스트리 관리, 프로세스 관리, 파일 관리, 폰트 데이터 관리, 화면 관리 또는 이벤트 관리 라이브러리 중 적어도 어느 하나의 라이브러리로 이루어지며,상기 로더수단은 타겟 운영체제를 위한 디렉토리와 파일이 초기화되도록 상기 가상의 운영체제수단으로 가동 준비 요청메시지를 전달하는 것을 특징으로 하는 사용자 단말에서 다른 시스템 환경을 갖는 외부 단말의 프로그램을 실행하기 위한 바이너리 호환 시스템
|
5 |
5
제2 항에 있어서,상기 변환수단은 내부 범용 레지스터를 준비한 후 바이너리 파일 내의 연산을 분리하고 명령어를 개별적으로 변환함으로서 해당 사용자 단말에 대응되는 실행 코드로 변환되는 것을 특징으로 하는 사용자 단말에서 다른 시스템 환경을 갖는 외부 단말의 프로그램을 실행하기 위한 바이너리 호환 시스템
|
6 |
6
삭제
|
7 |
7
운영체제와 아키텍처로 구성된 시스템 환경을 갖는 사용자 단말에서 상기 운영체제와 아키텍처 중 적어도 하나와 다른 시스템 환경을 갖는 타겟 운영체제와 아키텍처로 구성된 외부 단말의 타겟 프로그램을 실행하기 위한 바이너리 호환 방법으로서,(a) 외부 단말의 타겟 운영체제와 아키텍처에서 제공하는 수행 라이브러리 및 시스템 구성 정보들을 운영체제별 및 아키텍처별로 구비하고 이를 전체적으로 관리하는 가상의 운영체제를 구축하는 단계;(b) 외부 단말의 타겟 프로그램을 실행하기 위한 바이너리 파일의 헤더 정보를 이용하여 외부 단말의 타겟 운영체제 및 아키텍처를 식별하는 단계;(c) 상기 식별된 타겟 운영체제와 아키텍처를 기반으로 상기 가상의 운영체제의 가동을 준비하고, 타겟 프로그램을 실행하기 위한 바이너리 파일을 메모리 영역에 로딩함과 아울러 상기 가상의 운영체제로부터 타겟 운영체제의 부팅시 필요한 라이브러리 및 레지스트리 정보를 제공받아 메모리 영역에 로딩하는 단계; 및(d) 상기 가상의 운영체제로부터 제공된 타겟 운영체제와 아키텍처에 해당하는 수행 라이브러리를 이용하여 타겟 프로그램을 실행하기 위한 바이너리 파일 내의 기계적인 코드를 해당 사용자 단말에 대응되는 실행 코드로 변환하는 단계를 포함하되,상기 단계(d) 이후에,상기 사용자 단말의 운영체제에서 발생한 이벤트 요청을 인식한 후, 상기 가상의 운영체제로부터 제공된 해당 이벤트 요청에 필요한 수행 라이브러리를 이용하여 해당 이벤트 요청에 따라 바이너리 파일 내의 기계적인 코드를 해당 사용자 단말에 대응되는 실행 코드로 실시간 변환하는 단계; 및인식된 이벤트 요청에 따라 실시간 변환된 실행 코드를 해당 사용자 단말의 화면에 디스플레이 해주는 단계를 더 포함하는 것을 특징으로 하는 사용자 단말에서 다른 시스템 환경을 갖는 외부 단말의 프로그램을 실행하기 위한 바이너리 호환 방법
|
8 |
8
제7 항에 있어서,상기 단계(d)에서 이미 사용된 수행 라이브러리나 자주 사용되는 수행 라이브러리를 미리 변환하여 별도의 메모리 영역에 저장하며, 상기 별도의 메모리 영역에 저장된 수행 라이브러리를 상기 가상의 운영체제보다 우선순위로 이용하는 것을 특징으로 하는 사용자 단말에서 다른 시스템 환경을 갖는 외부 단말의 프로그램을 실행하기 위한 바이너리 호환 방법
|
9 |
9
제7 항에 있어서,상기 단계(a)에서 수행 라이브러리는 레지스트리 관리, 프로세스 관리, 파일 관리, 폰트 데이터 관리, 화면 관리 또는 이벤트 관리 라이브러리 중 적어도 어느 하나의 라이브러리로 이루어진 것을 특징으로 하는 사용자 단말에서 다른 시스템 환경을 갖는 외부 단말의 프로그램을 실행하기 위한 바이너리 호환 방법
|
10 |
10
제7 항에 있어서,상기 단계(c)에서, 상기 가상의 운영체제의 가동을 준비하는 과정은 상기 가상의 운영체제에서 타겟 운영체제를 위한 디렉토리와 파일을 초기화하는 것을 특징으로 하는 사용자 단말에서 다른 시스템 환경을 갖는 외부 단말의 프로그램을 실행하기 위한 바이너리 호환 방법
|
11 |
11
제7 항에 있어서,상기 단계(d)는, 상기 가상의 운영체제로부터 제공된 타겟 운영체제와 아키텍처에 해당하는 수행 라이브러리를 이용하여 내부 범용 레지스터를 준비한 후 바이너리 파일 내의 연산을 분리하고 명령어를 개별적으로 변환함으로서 해당 사용자 단말에 대응되는 실행 코드로 변환하는 것을 특징으로 하는 사용자 단말에서 다른 시스템 환경을 갖는 외부 단말의 프로그램을 실행하기 위한 바이너리 호환 방법
|
12 |
12
제7 항 내지 제11 항 중 어느 한 항의 방법을 컴퓨터로 실행시킬 수 있는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체
|