KR20120017430A - 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템 - Google Patents

사용자 터미널에서 사용가능한 어플리케이션 생성 시스템 Download PDF

Info

Publication number
KR20120017430A
KR20120017430A KR1020117027332A KR20117027332A KR20120017430A KR 20120017430 A KR20120017430 A KR 20120017430A KR 1020117027332 A KR1020117027332 A KR 1020117027332A KR 20117027332 A KR20117027332 A KR 20117027332A KR 20120017430 A KR20120017430 A KR 20120017430A
Authority
KR
South Korea
Prior art keywords
virtual
application
user terminal
server
applications
Prior art date
Application number
KR1020117027332A
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 데리더, 콜레트
Publication of KR20120017430A publication Critical patent/KR20120017430A/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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • 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

Landscapes

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

Abstract

본 발명은 사용자 터미널에서 이용가능한 어플리케이션 생성 시스템(1)에 관한 것으로서, 상기 시스템은 복수의 가상 어플리케이션(2, 3, 4) 중에서 어플리케이션을 선택하기 위하여 인터페이스(6)와 연결가능한 사용자 터미널(5), 복수의 가상 머신(8, 9, 10, 11)으로 나뉘어지는 하나 이상의 제 1 물리적인 서버(7), 복수의 가상 어플리케이션(2, 3, 4)을 저장하기 위한 수단(12), 제 2 웨어하우징 물리적인 서버(13), 가상 머신에 의해 실행되는 어플리케이션의 디스플레이를 제 2 서버(13)로 이송하는 수단(14) 그리고 상기 제 2 서버(13)의 디스플레이를 사용자 터미널(5)로 이송하는 수단(15)을 포함하고, 상기 어플리케이션 선택에 의해 대응하는 가상 어플리케이션이 로드되고 제 1 물리적인 서버(7)의 복수의 가상 머신(8, 9, 10, 11) 중에서 미사용 가상 머신(8, 9, 10, 11)에서 실행하고, 각각의 가상 머신(8, 9, 10, 11)이 단일의 어플리케이션을 로드하고 실행할 수 있다.

Description

사용자 터미널에서 사용가능한 어플리케이션 생성 시스템{SYSTEM FOR MAKING AN APPLICATION AVAILABLE ON A USER TERMINAL}
본 발명은 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템에 관한 것이다.
여러 공동의 컴퓨팅 기반구조(computing infrastructure)가 가상 어플리케이션을 사용하는 것은 공지되었다. 이러한 기술은 어플리케이션과 이 어플리케이션의 시스템 환경을 실행가능한 형태로 동일한 패키지에 캡슐화(encapsulate)할 수 있다. 더욱이, 가상 어플리케이션은 특별한 설치를 필요로 하지 않는다. 사용자는 아이콘을 클릭함으로써 가상 어플리케이션을 간단하게 오픈시킬 수 있다. 어플리케이션이 로컬 네트워크, 전형적으로 인터넷으로부터, 또는 모바일 지원(support)으로부터 물리적인 머신으로 이후 다운로드 된다. 어플리케이션이 즉, 물리적인 머신에서 로컬 실행된다. 가상 어플리케이션이 단 하나의 작동 시스템에서 작동하도록 설계되었다는 것을 알 수 있다.
그러나, 이러한 타입의 솔루션은 많은 단점을 갖는다. 제 1 단점은 사용자 터미널(즉, 전형적으로 로컬 파일)에서의 트레이스는 가상 어플리케이션의 실행에 의해 그리고 다운로드에 의해 발생한다는 점으로 이루어진다.
제 2 단점은 가상 어플리케이션이 사용자의 머신에서 실행될 수 있다는 점이다. 즉, 바이러스를 포함하거나 다운로드하는 가상 어플리케이션이 실행될 때 사용자를 감염시킬 수 있다는 것이다.
제 3 단점은 가상 어플리케이션이 단 하나의 작동 시스템으로 설계되었다는 점이다. 종종, 가상 어플리케이션이 상이한 작동 시스템과 양립할 수 있다.
상기 단점을 해결하기 위한 이들 가상 어플레케이션에 대한 알려진 개량법(장치)에 따라, 어플리케이션의 "스트리밍(streaming)"이 또한 어플리케이션의 가상화로 이루어지며 이러한 가상화에서 가상 어플리케이션이 작동될 필요가 있는 구성요소만을 로드한다.
이 결과, 어플리케이션의 "스트리밍"은 상기 기재한 것과 매우 유사한 단점과 관련된다. 더욱이, 많은 회사가 IT 목록(inventory)을 조정하기 위해 터미널 서버 타입의 원격 오피스 억세스 기술을 사용한다. 이러한 종류의 실행에 따라, 많은 어플리케이션이 단일의 서버에 설치된다. 서버 접근 권한을 갖는 사용자가 그 각각의 머신으로부터 다양한 어플리케이션에 접근할 수 있다.
그러나, 이러한 기술은 또한 어플리케이션이 서버에 의해 형성된 공통의 환경에서 실행되는 정도로 단점을 갖는다. 결론적으로, 다양한 어플리케이션이 공통의 환경 내에서 서로 스스로 상호작용할 수 있다.
따라서, 2개의 상이한 버전의 동일한 소프트웨어가 때때로 호환가능하고 서로 콘플릭트 될 수 있다. 이러한 단점을 해소하기 위해 단지 하나의 소프트웨어 버전이 일반적으로 서버에 설치된다.
더욱이, 제 1 소프트웨어 제품의 버전이 제 2 소프트웨어 제품의 버전과 호환가능하지 않게 때때로 발생한다. 이 결과, 제 1 및 제 2 소프트웨어 제품과 공유된 환경에서 작동할 수 없다. 이에 더하여, 특정 어플리케이션이 서버에서 작동하도록 설계되지 않고 이에 따라 반드시 구성되어야만 한다. 서버에서 실행하도록 설계된 소프트웨어용 라이센스를 얻는 것과 관련된 비용이 이로써 영향을 받는다.
부가적인 단점은 사용자가 인터넷에 접속하자마자 서버가 컴퓨터 바이러스에 의해 감염될 취약성을 갖는다는 것이다. 사실상, 서버가 컴퓨터 바이러스에 의해 감염될 때, 서버를 이용하는 모든 사용자가 바이러스에 의해 영향을 받을 위험에 놓인다.
더욱이, 이러한 타입의 시스템은 사용자가 서버에 접근할 권한을 얻을 수 있도록 중요(heavy) 로컬 클라이언트의 설치를 필요로 한다. 이에 따라 사용자 터미널의 성능이 악화된다. 더욱이 이러한 클라이언트의 트레이스가 사용자 터미널에 여전히 남아 있다.
또한 완전한 작업 환경을 가상화(virtualise)한다고 알려졌다. 이러한 상황에서 어플리케이션이 가상 머신에서 실행된다. 이러한 특징은 사용자 시스템에서의 작동 시스템과 어플리케이션 사이의 호환성의 문제점을 무관하게 한다.
일례로써, 특허문헌 WO 2009/001221에는 복잡한 작업 환경의 가상화를 가능하게 하는 시스템이 개시되어 있다. 보다 상세하게는, 상기 특허문헌에는 안전한 사용자 계정을 만드는 단계로 이루어진 시스템이 개시되어 있다. 이러한 사용자 계정은 인터넷을 통해 복수의 가상 어플리케이션을 제공하는 가상의 IT 환경으로의 사용자 접근을 가능하게 한다. 이러한 IT 환경은 원격 물리적인 서버에 만들어진다. 따라서, 사용자는 이러한 IT 환경에 원격으로 접근할 수 있다. 이후 시스템은 사용자에게 어플리케이션을 원격으로 실행하는 가능성을 제공한다. 결론적으로, 사용자가 통화불능일 때, 가상 오피스에 통합된 가상 IT 환경은 계속 존재한다. 더욱이, 사용자 계정을 통해 사용자에게 접근이 승인되기 때문에, 사용자는 어느 하나의 컴퓨터로부터 이러한 가상 오피스에 접근할 수 있다.
그러나, 어플리케이션이 공유된 환경에서 작동하기 때문에, 이러한 시스템은 단점이 있다. 즉, 어플리케이션이 상호작용할 수 있다. 주 단점은 상기 기재한 단점과 상당히 유사하다, 즉:
- 상이한 소프트웨어 버전의 비호환성 위험, 및
- 여러 소프트웨어 중에서 수개의 소프트웨어의 비호환성 위험.
다시 말하자면, 본 발명의 목적은 임의의 호환성 제한 없이 그리고 상이한 사용자가 사용할 때 바이러스에 의한 감염의 위험성이 없이 상이한 소프트웨어 프로그램 및/또는 소프트웨어 버전의 사용을 가능하게 하고, 소프트웨어의 실행이 여하튼 사용자 터미널의 성능에 영향을 미치지 않는 시스템을 제안함으로써, 상기 기재한 바와 같은 문제점을 해소하는 것이다.
결국, 본 발명은 이용가능한 어플리케이션을 사용자 터미널에서 생성하기 위한 시스템에 관한 것으로서, 상기 시스템은:
- 상기 어플리케이션을 복수의 가상 어플리케이션으로부터 선택하기 위해 인터페이스와 연결될 수 있는 사용자 터미널;
- 복수의 가상 머신으로 파티션 된 하나 이상의 제 1 물리적인 서버;
- 복수의 가상 어플리케이션을 저장하는 수단;
- 웨어하우징(warehousing)을 위한 제 2 물리적인 서버;
- 디스플레이를 상기 가상 머신에서 실행된 상기 어플리케이션으로부터 상기 제 2 서버까지 이송하는 수단; 및
- 상기 디스플레이를 상기 제 2 서버로부터 상기 사용자 터미널까지 이송하는 수단을 포함하며,
상기 어플리케이션의 선택에 의해 상기 하나 이상의 제 1 물리적인 서버의 상기 복수의 가상 머신 중에서 미사용 가상 머신에서의 대응하는 가상 어플리케이션이 로딩되고 실행되며, 각각의 가상 머신은 단 하나의 어플리케이션을 로드하고 실행하도록 설계된다.
상기 단락에서 간략하게 기재된 주 특징 외에도, 본 발명에 따른 시스템이 개별적으로 또는 임의의 기술적으로 가능한 조합으로 고려된, 아래 기재된 바와 같은, 하나 이상의 부가적인 특징을 포함한다:
- 상기 제 1 및 제 2 물리적인 서버는 로컬 네트워크를 통해 연결되고, 상기 사용자 터미널은 제 1 원격 네트워크 억세스 프로토콜을 통해 상기 로컬 네트워크와 통신할 수 있고;
- 상기 사용자 터미널은 상기 제 1 원격 네트워크 억세스 프로토콜을 해석할 수 있게 하고 상기 자바 가상 머신을 실행하는 자바 애플릿 및 자바 가상 머신을 포함하고;
- 선택된 인터페이스는 안전한 웹 인터페이스이고;
- 상기 가상 머신의 상기 작동 시스템은, 상기 가상 어플리케이션을 실행하기 위해 필수적인 구성요소만을 포함하도록, 불필요한 모든 장비가 제거되고;
- 본 발명에 따른 시스템은 가상 머신을 선택할 수 있고 상기 가상 머신이 첫째로, 스탠바이 상태로부터 둘째로, 활성 상태로 스위치할 수 있는 활성화 수단을 포함하고;
- 상기 가상 머신은 상기 가상 머신을 실행하는 상기 어플리케이션의 하나 이상의 윈도우의 디스플레이만을 상기 제 2 서버로 이송하고;
- 각각의 상기 가상 어플리케이션은 상기 어플리케이션과 이에 대응하는 시스템 환경에 캡슐화(encapsulate)하고;
- 상기 가상 어플리케이션의 상기 저장 수단은 네트워크 공유 디스크에 의해 형성된다.
본 발명의 여러 특징 및 장점은 본 발명에 따른 시스템 구성요소가 나타나 있는 첨부된 도 1을 참조함으로써, 아래 단지 예시적으로 기재한 실시예로부터 명확하게 알 수 있다. 도 1은, 명확하게 하기 위하여, 본 발명의 이해를 돕기 위한 구성요소만이 나타나 있고, 축적에 맞춰 도시되지 않았으며 편리를 위해 개략적으로 도시되었다.
도 1은 사용자(18)가 본 발명에 따른 복수의 원격 가상 어플리케이션(2, 3, 4)에 접근할 수 있게 하는 시스템(1)이다.
가상화 어플리케이션에 의해 제 1 물리적인 서버(7)가 파티션될 수 있다. 이들 가상화 어플리케이션이 임의 종류의 물리적인 서버에 설치될 수 있고 물리적 서버를 수개의 가상 머신(8, 9, 10, 11)으로 파티션할 수 있다.
아래 기재된 바와 같이, 가상 머신이라는 표현은 어플리케이션 및/또는 프로그램을 로드하고 실행하도록 최적화된 임의의 전기 설비를 포함하지 않은 서버를 의미한다는 것을 알 수 있을 것이다. 가상 머신이 요청되지 않을 때, 최소 실행 상태를 유지할 것이다. 최소 실행의 이러한 상태는 프로세서에서 사용된 리소스(resource)와 메모리 레벨을 최대로 감소시키는 단계로 이루어진다. 즉, 스탠바이 상태이다. 이후, 리소스가 그 성능을 향상시키도록 증가되게 가능한 빨리 요청된다. 이러한 요청은 활성화 수단(20)에 의해 영향을 받는다.
더욱이 가상 어플리케이션이 어플리케이션 가상화에 의해 얻어지고, 이러한 어플리케이션 가상화는 시스템에 접근불가한 동일한 패키지에서의 시스템 환경과 어플리케이션을 캡슐화하는 단계로 이루어진다.
또한, 아래 기재된 바와 같이, 가상 머신(8, 9, 10, 11)은 작동 시스템이 불필요한 모든 장비가 제거된 머신이며, 즉, 가상 어플리케이션의 실행에 필수적이지 않는 모든 구성요소가 가능한 신속하게 실행될 수 있도록 삭제된다는 것을 알 수 있다. 더욱이, 가상 머신(8, 9, 10, 11)이 각각 그 자신의 작동 시스템으로 설치된다. 따라서, 가상 어플리케이션(2, 3, 4)이 로드되고 가상 머신(8, 9, 10, 11)에서 실행될 때, 자동적으로 실행하고 임의의 외부 구성요소를 필요로 하지 않는다.
단지 예를 들기 위한 목적으로서, 제 2 물리적인 서버(13)가 4개의 가상 머신(8, 9, 10, 11)으로부터 시작하는 디스플레이 다중 디스플레이와 웨어하우스로 사용된다.
도 1에 도시된 본 발명으로 이루어진 시스템(1)의 본 발명의 하나의 가능한 실시예에 있어서, 사용자(18)는 또한 사용자 터미널(5)을 통해 제 2 서버(13)의 디스플레이에 접근한다. 이러한 사용자 터미널(5)은 예를 들면, 컴퓨터 워크스테이션, 퍼스널 컴퓨터, 실제로 휴대전화나 또는 인터넷에 접근가능한 임의의 여러 타입의 장치로도 이루어질 수 있다.
제 2 서버(13)가 처음으로 억세스되었을 때, 사용자(18)는 안전한 웹 인터페이스(6)를 통해 사용자 계정을 반드시 만들어야 한다. 이어서, 이러한 사용자 계정에 의해 사용자(18)가 제 2 서버(13)에 비공개 및 안전한 방식으로 접근할 수 있다. 이러한 접근은 인터넷에 접근하도록 제공된 사용자 터미널의 사용유무와 무관하게 사용자에게 이용가능하다. 이러한 계정의 생성에 의해 사용자가 예를 들면 패스워드를 얻을 수 있다.
사용자(18)가 연결될 때, 사용자는 안전한 웹 인터페이스(6)를 통해 제 2 서버(13)에 접근할 수 있다. 사용자(18)는 사전에 얻은 패스워드를 반드시 제공해야만 한다. 제 2 서버(13)는 사용자(18)에게 수개의 가상 어플리케이션(2, 3, 4)의 선택을 제공한다. 그러나, 이는 이들 가상 어플리케이션(2, 3, 4)이 사용자에게 접근가능하다는 것을 의미하지 않는다. 수개의 어플리케이션은 지불을 필요로 할 수 있고 가입(subscription)에 따라 접근가능할 수도 있다. 이러한 접근은 단지 이로 한정되는 것이 아닌, 예를 들면 일 년, 한 달과 같은 소정의 기간일 수 있거나, 또는 예를 들면 100회 사용 또는 25회 사용과 같은 제한된 사용 횟수, 또는 실제로 30분 또는 120분일 수 있다.
본 실시예에 있어서, 사용자(18)는 두 달의 기간 동안에 3개의 부과될 가상 어플리케이션(2, 3, 4)을 가입한다. 이들 가상 어플리케이션(2, 3, 4)은 예를 들면 이로 한정되는 것은 아니지만, 워드 프로세싱 또는 스프레드시트 또는 텍스트 편집 어플리케이션일 수 있다.
사용자(18)가 가입하는 3개의 가상 어플리케이션(2, 3, 4)은 제 2 서버(13)를 통해 사용자에게 접근할 수 있다.
사용자(18)가 사용자 패스워드로써 안전한 웹 인터페이스(6)에서 그 자신을 확인하자마자, 사용자 터미널(5)과 제 2 서버(13) 사이의 제 1 원격 네트워크 억세스 프로토콜(21)은 이들 2개의 구성요소 사이의 신속한, 유동적인 통신을 가능하게 한다. 예를 들면, 사용자 터미널은 타입 NX™의 제 1 억세스 프로토콜을 사용할 수 있다. 이는 특히 무관한 구성요소가 전송되지 않게 할 수 있고 캐쉬 메모리에 배치된 구성요소가 잠재 및 접근 시간을 감소시킬 수 있다.
제 2 서버(13)는 이후 사용자(18)에게 사용자가 가입하는 3개의 가상 어플리케이션(2, 3, 4) 접근 선택을 제공한다.
사용자(18)가 3개의 가상 어플리케이션(2, 3, 4) 중 하나의 어플리케이션을 선택할 때, 활성화 수단(20)은 선택된 어플리케이션을 실행시킬 수 있는 가상 머신을 선택한다. 상기 기재한 가상 머신은 로드할 수 있고 단 하나의 어플리케이션을 실행할 수 있다는 것을 알 수 있을 것이다. 즉, 토우(tow) 가상 어플리케이션(2 및 3)이 동일한 가상 머신(8)과 동시에 실행될 수 없다.
단지 예를 들어 설명하자면, 사용자(18)가 워드 프로세싱을 위한 타입의 제 1 가상 어플리케이션(2)을 선택한다. 이러한 워드 프로세싱의 버전은 예를 들면, 버전 V1이다.
이후, 사용자(18)는 즉 워드 프로세싱 타입과 유사한 제 2 가상 어플리케이션(3)을 선택한다. 그러나, 이러한 제 2 가상 어플리케이션(3)의 버전 V2는 버전 V1보다 더 새로운 버전이라는 것을 알 수 있다.
- 제 1 가상 어플리케이션(2)은 예를 들면, 최소 실행 상태에 있는 제 1 가상 머신(8)에서 로드되어 실행되고; 그리고
- 제 2 가상 어플리케이션(3)은 예를 들면, 최소 실행 상태에 있는 제 2 가상 머신(9)에서 로드되고 실행된다.
가상 어플리케이션(2 및 3)이 로드되자마자, 프로세서 및 메모리 레벨에서의 리소스가 활성화 수단(20)에 의해 2개의 가상 머신(8 및 9)으로 할당되어 그 처리 속도가 증가된다.
제 1 가상 어플리케이션(2) 및 제 2 가상 어플리케이션(3)의 디스플레이가 제 2 서버(13)로 이송된다. 즉, 제 2 서버(13)는 디스플레이 웨어하우스로 사용된다. 사용자 터미널에서 이용가능한 디스플레이 공간과 사용자 적합도를 최적화하기 위하여, 어플리케이션 윈도우의 단지 디스플레이만이 제 2 서버(13)로 이송된다. 이러한 특징은 제 2 원격 오피스 억세스 프로토콜(22)(전형적으로 RDP)로 달성된다. 이러한 실시예에 있어서, 본 출원인은 2개의 가상 어플리케이션(2 및 3)의 윈도우가 서버(13) 상에 디스플레이될 수 있으나 디스플레이의 갯수가 어느 정도일 수 있다는 것을 알 수 있다고 설명하였다. 게다가, 제 2 서버(13)가 하나 이상의 사용자에 의해 실행되는 가상 어플리케이션의 디스플레이를 웨어하우스하도록 사용될 수 있다는 것을 알 수 있다.
각각의 2개의 가상 어플리케이션(2 및 3)이 격리된 방식으로, 즉 상이한 가상 머신 상에서 실행한다. 이 결과 가상 어플리케이션(2 및 3)이 상호작용 불가능하다.
유리하게도 이러한 구성은 보통 상황하에서 공존하지 않는 다중 어플리케이션 용 하나의 사용자 터미널(15)의 가능성을 제공한다. 정보 제공의 목적으로서, 만들어진 가상 머신(8, 9, 10, 11)은 의도된 어플리케이션(2, 3, 4)의 사용에 필수적이지 않는 모든 구성요소로 가능한 한 클리어된다. 예를 들면, 모든 스크린 백그라운드가 로드되지 않는다.
또한, 사용자(18)에 의해 실행된 작동이 제 2 서버(13) 및 사용자(18)가 사용하고 있는 어플리케이션에 대응하는 가상 머신(8, 9, 10, 11)에 동시에 전송된다는 것을 알 수 있다. 작동이라는 표현은 키보드를 타이핑하거나 사용자 터미널(5)에서 마우스를 이동시키는 작용을 의미한다는 것을 알 수 있을 것이다.
사용자(18)가 더 이상 가상 어플리케이션(2 및 3)을 콜하지 않자마자, 각각의 어플리케이션이 본 실시예에 있어서 가상 머신(8 및 9), 즉 가상 어플리케이션(2 및 3)으로부터 로드되지 않는다. 가상 머신(8 및 9)이 그 초기 상태로 복귀하고 바람직하지 못한 사용자 파일이나 다음번 처리를 방해하는 임의의 다른 구성요소와 유사한 임의의 오염원을 포함하지 않으며 가상 어플리케이션(2 또는 3) 중 하나의 어플리케이션이 런치된다(launched).
가상 어플리케이션(2, 3, 4)이 사용될 때, 데이터가 물리적인 서버(7) 및/또는 사용자 터미널(5)에서 기록될 수 있다. 유리하게도 가상 어플리케이션(2, 3, 4) 중 어느 하나도 사용자 터미널(5)에 기록 및/또는 실행되지 않는다는 것을 알 수 있을 것이다.
일반적으로, 시스템(1)은 한편으로 복수의 가상 머신(8, 9, 10, 11)으로 파티션된 하나 이상의 제 1 물리적인 서버(7)와 다른 한편으로 가상 어플리케이션(2, 3, 4)을 저장하는 수단(12)로 이루어지고, 각각의 가상 머신에는 그 자신의 최소 작동 시스템, 즉 최소한으로 감소된 그 자신의 최소 작동 시스템이 통합된다. 가상 어플리케이션(2, 3, 4)이 패키지 된다. 이러한 특징은 가상 어플리케이션(2, 3, 4)이 가상 머신(8, 9, 10, 11) 상에 설치될 필요가 없고 가상 어플리케이션(2, 3, 4)이 반드시 설치되거나 및/또는 사용자 터미널(5)에서 실행될 필요가 없다는 것을 의미한다.
일반적으로 가상 어플리케이션(2, 3, 4)은 어플리케이션 및 이 어플리케이션의 DLL 타입 의존성(dependencies)을 포함하는 패키지에 의해 형성된다. 패키지가 실행가능한 형태로 사전-생성된다(pre-created).
패키지가 제 1 물리적인 서버(7)에 배치되고, 사용자(18)가 가상 어플리케이션(2, 3 또는 4)을 런치 하기를 원할 때, 활성화 수단(20)을 통해 가상 머신(8, 9 10 또는 11)에 나타내고(import) 상기 가상 머신에서 자동적으로 실행한다. 디스플레이가 수단(14)을 통해 상기 가상 머신(8, 9 10, 11)으로부터 제 2 서버(13)로 전송되고 이후 수단(15)을 통해 제 2 서버(13)로부터 사용자 터미널(5)로 전송된다. 유리하게도, 이러한 메카니즘에 의해 디스크 공간이 최적화될 수 있다. 따라서, 물리적인 서버(7)가 가상 어플리케이션(2, 3, 4)을 실행하는데 필수적이지 않는 임의의 구성요소를 포함하지 않기 때문에 가능한 경량이 될 수 있다.
사용자(18)가 인터페이스(6)와 연결할 특성을 제공하는 임의 타입의 사용자 터미널(5)을 통해 유리하게도 제 2 서버(13)와 연결가능하다. 이렇게 하기 위하여, 사용자 터미널(5)이 자바 가상 머신과 자바 애플릿을 포함한다면 유리하다. 애플릿은 제 2 서버(13)와 연결될 때 사용자 터미널(5) 상에 직접적으로 로드될 수 있다.
도시되지는 않았지만 본 발명의 범주 내의 실시예에 따라, 가상 어플리케이션(2)이 3개의 사용자(18)에 의해 콜된다. 이러한 가상 어플리케이션(2)이 3개의 상이한 가상 머신(8, 9, 10)에서 로드되고 실행된다. 이 결과, 동일한 가상 어플리케이션(2)의 실행이 격리되고 가상 머신(8)에서 실행되는 가상 어플리케이션(2)이 가상 머신(9)에서 실행하고 있는 가상 어플리케이션과 상호작용할 수 없다.
또한, 본 발명에 따른 시스템이 복수의 제 1 물리적인 서버를 포함한다는 것을 알 수 있다. 모든 물리적인 서버(즉, 가상 머신 및 웨어하우징 서버를 호스트하는 서버)가 바람직하게 데이터 센터에 호스트 되며, 이는 서버로의 원활한 접근을 향상시키는데 필요한 고 패스 밴드 폭이 화재시 물리적인 그리고 전기적인 안전성과 보호는 별 문제로 하고, 이용가능하고; 즉, 접속지에서의 인터넷 접근을 위한 최종 사용자의 능력에 따라 결정될 필요가 없다는 것을 의미한다.
요약하자면, 본 발명은 특히
- 호환될 수 없는 복수의 어플리케이션의 실행;
- 문제점을 원격 머신으로 반드시 이송하지 않고도 어플리케이션을 사용자 터미널에 격리;
- 인터넷에 접근하는 임의의 사용자 터미널(5)로부터 로컬 네트워크(19)로의 권한이 부여된 접근; 이러한 접근은 제 1 원격 네트워크 억세스 프로토콜(21)을 통해 실행됨;
- 인터넷 접근의 잠재 효과의 제거;
- 사용자 터미널에서의 모든 트레이스를 제거를 가능하게 한다.
본 발명의 실시예는 단지 본 발명의 이해를 돕기 위해 예시적으로 기재되었음을 알 수 있을 것이다. 당업자라면 본 발명의 범주 내에서 본 발명에 따른 프로세스 및/또는 시스템에 대한 여러 변경이 가능하다는 것을 알 수 있을 것이다.
- 5 : 사용자 터미널
- 18 : 사용자
- 7 : 제 1 물리적인 서버
- 8, 9, 10, 11 : 4개의 가상 머신
- 20 : 작동 수단
- 13 : 디스플레이용 제 2 웨어하우징 서버
- 2, 3, 4 : 3개의 가상 어플리케이션
- 12 : 3개의 가상 어플리케이션(2, 3, 4)을 위한 저장 수단
- 6 : 안전한 웹 인터페이스에 의해 형성될 수 있는 3개의 가상 어플리케이션(2, 3, 4)용 선택 인터페이스
- 15 : 예를 들면, 웹 서버가 제 2 서버(13) 상에 위치되고 그 디스플레이가 사용자 터미널(5)로 이송되는, 제 2 서버(13)의 디스플레이를 사용자 터미널(5)로 이송하기 위한 수단
- 14 : 가상 머신(8, 9, 10, 11)의 디스플레이를 제 2 서버(13)로 이송하기 위한 수단

Claims (9)

  1. 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템(1)으로서,
    - 복수의 가상 어플리케이션(2, 3, 4)으로부터 상기 어플리케이션을 선택하기 위해 인터페이스(6)와 연결될 수 있는 사용자 터미널(5);
    - 복수의 가상 머신(8, 9, 10, 11)으로 파티션된 하나 이상의 제 1 물리적인 서버(7);
    - 복수의 가상 어플리케이션(2, 3, 4)을 저장하는 수단(12);
    - 웨어하우징을 위한 제 2 물리적인 서버(13);
    - 상기 가상 머신에서 실행된 상기 어플리케이션으로부터 상기 제 2 서버(13)까지 상기 디스플레이를 이송하는 수단(14); 및
    - 상기 제 2 서버(13)로부터 상기 사용자 터미널(5)까지 상기 디스플레이를 이송하는 수단(15)을 포함하고,
    상기 어플리케이션의 선택에 의해 상기 하나 이상의 제 1 물리적인 서버(7)의 상기 복수의 가상 머신(8, 9, 10, 11) 중에서 미사용 가상 머신(8, 9, 10, 11)에서 대응하는 가상 어플리케이션의 로딩과 실행이 발생하고, 각각의 가상 머신 (8, 9, 10, 11)이 단지 하나의 어플리케이션을 로드하고 실행하도록 설계되는 것을 특징으로 하는 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템(1).
  2. 청구항 1에 있어서,
    상기 제 1 및 제 2 물리적인 서버는 로컬 네트워크(19)를 통해 연결되고, 상기 사용자 터미널(5)은 제 1 원격 네트워크 억세스 프로토콜(21)을 통해 상기 로컬 네트워크(19)와 통신할 수 있는 것을 특징으로 하는 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템(1).
  3. 청구항 1 또는 2에 있어서,
    상기 사용자 터미널(5)은 상기 원격 네트워크 억세스 프로토콜(21)이 해석될 수 있게 하고 상기 자바 가상 머신에서 실행되는 자바 애플릿 및 자바 가상 머신을 포함하는 것을 특징으로 하는 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템(1).
  4. 청구항 1 내지 3 중 어느 한 항에 있어서,
    선택된 상기 인터페이스(6)는 안전한 웹 인터페이스인 것을 특징으로 하는 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템(1).
  5. 청구항 1 내지 4 중 어느 한 항에 있어서,
    상기 가상 머신(8, 9, 10, 11)의 상기 작동 시스템은, 상기 가상 어플리케이션(2, 3, 4)을 반드시 실행하는데 필수적인 구성요소만을 포함하도록, 불필요한 모든 장비가 제거되는 것을 특징으로 하는 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템(1).
  6. 청구항 1 내지 5 중 어느 한 항에 있어서,
    상기 가상 머신(8)을 선택할 수 있고 첫째로, 스탠바이 상태로부터, 둘째로, 작동 상태까지 스위치될 수 있게 하는 활성화 수단(20)이 포함되는 것을 특징으로 하는 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템(1).
  7. 청구항 1 내지 6 중 어느 한 항에 있어서,
    상기 가상 머신(8)은 상기 가상 머신(8)에서 현재 실행되는 상기 어플리케이션의 하나 이상의 윈도우의 디스플레이만을 상기 제 2 서버(13)로 이송하는 것을 특징으로 하는 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템(1).
  8. 청구항 1 내지 7 중 어느 한 항에 있어서,
    각각의 상기 가상 어플리케이션(2, 3, 4)은 어플리케이션과 이에 대응하는 시스템 환경을 캡슐화하는 것을 특징으로 하는 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템(1).
  9. 청구항 1 내지 8 중 어느 한 항에 있어서,
    상기 가상 어플리케이션(2, 3, 4)용 상기 저장 수단(12)은 네트워크 공유 디스크에 의해 형성되는 것을 특징으로 하는 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템(1).
KR1020117027332A 2009-04-17 2010-04-16 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템 KR20120017430A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0952539 2009-04-17
FR0952539A FR2944618B1 (fr) 2009-04-17 2009-04-17 Systeme de mise a disposition d'une application sur un terminal utilisateur.

Publications (1)

Publication Number Publication Date
KR20120017430A true KR20120017430A (ko) 2012-02-28

Family

ID=41402282

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117027332A KR20120017430A (ko) 2009-04-17 2010-04-16 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템

Country Status (6)

Country Link
US (1) US20120096077A1 (ko)
EP (1) EP2419827A1 (ko)
JP (1) JP2012524312A (ko)
KR (1) KR20120017430A (ko)
FR (1) FR2944618B1 (ko)
WO (1) WO2010119125A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120023265A (ko) * 2010-09-01 2012-03-13 한국전자통신연구원 유무선 인터넷 환경에서 다중 인터페이스 사용자 단말을 이용하여 안전한 결제를 수행하기 위한 클라이언트/서버 기반 고신뢰 세션을 제어하는 네트워크 관리 방법
US8862767B2 (en) * 2011-09-02 2014-10-14 Ebay Inc. Secure elements broker (SEB) for application communication channel selector optimization
WO2014018644A2 (en) * 2012-07-24 2014-01-30 Cloudvolumes Inc. Systems and methods for operating an application distribution system
CN102972010B (zh) * 2012-08-17 2015-03-25 华为技术有限公司 一种云环境下虚拟应用双机的切换方法、装置及系统
WO2015187713A1 (en) 2014-06-02 2015-12-10 Antique Books, Inc. Advanced proof of knowledge authentication
FR3030966A1 (fr) * 2014-12-23 2016-06-24 Orange Systeme de generation d'une fonction reseau virtualisee
US11265165B2 (en) * 2015-05-22 2022-03-01 Antique Books, Inc. Initial provisioning through shared proofs of knowledge and crowdsourced identification
US9898321B2 (en) * 2015-07-23 2018-02-20 At&T Intellectual Property I, L.P. Data-driven feedback control system for real-time application support in virtualized networks
FR3086425B1 (fr) 2018-09-20 2021-03-05 Blade Procede d'execution d'un programme d'application dans un systeme informatique

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2365554B (en) * 2000-05-31 2004-09-01 Ibm Virtual machine support for multiple aplications
EP1418501A1 (fr) * 2002-11-08 2004-05-12 Dunes Technologies S.A. Méthode d'administration d'applications sur des machines virtuelles
US20050160423A1 (en) * 2002-12-16 2005-07-21 Bantz David F. Enabling a guest virtual machine in a windows environment for policy-based participation in grid computations
US8122106B2 (en) * 2003-03-06 2012-02-21 Microsoft Corporation Integrating design, deployment, and management phases for systems
US20050256923A1 (en) * 2004-05-14 2005-11-17 Citrix Systems, Inc. Methods and apparatus for displaying application output on devices having constrained system resources
EP1847928A1 (en) * 2004-09-30 2007-10-24 Citrix Systems, Inc. Method and apparatus for isolating execution of software applications
US7681200B2 (en) * 2005-07-22 2010-03-16 Microsoft Corporation Secure hardware desktop buffer composition
US8104033B2 (en) * 2005-09-30 2012-01-24 Computer Associates Think, Inc. Managing virtual machines based on business priorty
US20070260702A1 (en) * 2006-05-03 2007-11-08 University Of Washington Web browser architecture for virtual machine access
US20080034408A1 (en) * 2007-04-23 2008-02-07 Sachin Duggal Network-Based Computing Service On A Streamed Virtual Computer
US20090006537A1 (en) * 2007-06-29 2009-01-01 Microsoft Corporation Virtual Desktop Integration with Terminal Services

Also Published As

Publication number Publication date
EP2419827A1 (fr) 2012-02-22
JP2012524312A (ja) 2012-10-11
WO2010119125A1 (fr) 2010-10-21
US20120096077A1 (en) 2012-04-19
FR2944618B1 (fr) 2011-11-25
FR2944618A1 (fr) 2010-10-22

Similar Documents

Publication Publication Date Title
KR20120017430A (ko) 사용자 터미널에서 사용가능한 어플리케이션 생성 시스템
RU2436149C2 (ru) Мигрирование виртуальной машины, которая владеет ресурсом, таким, как аппаратное устройство
Simmhan et al. Bridging the gap between desktop and the cloud for escience applications
CN110032413B (zh) 一种桌面虚拟化方法、相关设备及计算机存储介质
US20140365910A1 (en) Systems and methods for sharing and switching between personas on mobile technology platforms
Bruneo et al. I/Ocloud: Adding an IoT dimension to cloud infrastructures
Chen et al. A lightweight virtualization solution for android devices
JP2008524686A (ja) コンピュータ装置においてアプリケーションを保守する方法
US10423471B2 (en) Virtualizing integrated calls to provide access to resources in a virtual namespace
Mavridis et al. Orchestrated sandboxed containers, unikernels, and virtual machines for isolation‐enhanced multitenant workloads and serverless computing in cloud
EP2570920A1 (en) System and method for cross-platform application execution and display
KR101680702B1 (ko) 클라우드 기반 웹 호스팅 시스템
Oh et al. FLUID: Flexible user interface distribution for ubiquitous multi-device interaction
US20170272546A1 (en) Blocking an interface of a redirected usb composite device
Nakao et al. Toward remote service invocation in android
Rellermeyer et al. Engineering the cloud from software modules
JP2021518014A (ja) メモリフットプリントを制限したオンデマンドコード実行
Singh et al. Analysis for exploring scope of mobile agents in cloud computing
Kuchler et al. Function as a Function
KR20140018076A (ko) 복수의 사용자 계정들을 갖는 클라이언트에 대한 가상 데스크톱 서비스 시스템
Di Martino et al. Cross-platform cloud APIs
CN114860401A (zh) 异构云桌面调度系统、方法、服务系统、装置及介质
Divya Mobile application with cloud computing
Elson et al. Refactoring Human Roles Solves Systems Problems.
Pandurov et al. Platform for extending home automation gateway's functionality with plugin mechanism

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid