KR20110005991A - 임베디드 시스템 및 그 동작 방법 - Google Patents

임베디드 시스템 및 그 동작 방법 Download PDF

Info

Publication number
KR20110005991A
KR20110005991A KR1020090063404A KR20090063404A KR20110005991A KR 20110005991 A KR20110005991 A KR 20110005991A KR 1020090063404 A KR1020090063404 A KR 1020090063404A KR 20090063404 A KR20090063404 A KR 20090063404A KR 20110005991 A KR20110005991 A KR 20110005991A
Authority
KR
South Korea
Prior art keywords
application
stored
embedded system
platform
content
Prior art date
Application number
KR1020090063404A
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 KR1020090063404A priority Critical patent/KR20110005991A/ko
Publication of KR20110005991A publication Critical patent/KR20110005991A/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/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • G06F9/548Object oriented; Remote method invocation [RMI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/125Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
    • G06F21/126Interacting with the operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/128Restricting unauthorised execution of programs involving web programs, i.e. using technology especially used in internet, generally interacting with a web browser, e.g. hypertext markup language [HTML], applets, java
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • 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/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45529Embedded in an application, e.g. JavaScript in a Web browser
    • 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
    • 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/544Buffers; Shared memory; Pipes

Abstract

본 발명은 컨텐츠와, 상기 컨텐츠를 실행하기 위해 필요한 어플리케이션이 저장되어 있는 제1장치 및 상기 제1장치가 연결되면, 상기 컨텐츠를 실행할 수 있도록 상기 어플리케이션이 인스톨되고, 상기 제1장치와의 연결이 해제되면, 상기 설치된 어플리케이션이 언인스톨되는 제2장치를 포함한다. 본 발명에 의하면 이기종 임베디드 시스템 간에 어플리케이션을 공통으로 사용할 수 있으므로 부가적인 라이센스 비용을 절감할 수 있는 효과가 있다.
임베디드, 이기종, 컨텐츠, 어플리케이션, 서버, 클라이언트.

Description

임베디드 시스템 및 그 동작 방법 {Embedded system and operating method for the same}
본 발명은 임베디드 시스템에 관한 것으로서, 더욱 상세하게는 임베디드 시스템의 이기종 장치 간에 어플리케이션을 설치하여 컨텐츠를 실행시키는 방법 및 이를 구현한 임베디드 시스템에 관한 것이다.
일반적으로 임베디드 시스템(Embedded System)이란 미리 정해진 특정 기능을 수행하기 위해 컴퓨터의 하드웨어와 소프트웨어가 조합된 전자 제어 시스템을 말하며, 필요에 따라서는 일부 기계가 포함될 수 있다. 즉, 우리 생활에서 사용되는 각종 전자기기, 가전제품, 제어장치 등은 단순히 회로만으로 구성된 것이 아니라 마이크로 컨트롤러(또는 마이크로 프로세서)가 내장되어 있고, 이 마이크로 컨트롤러를 구동하여 특정한 기능을 수행하도록 프로그램이 내장되어 있는 시스템을 임베디드 시스템이라고 한다. 주변에서 쉽게 볼 수 있는 임베디드 시스템으로는 DVD 플레이어, 셋탑박스, 이동 단말 장치, MP3 플레이어, USB 메모리, 캠코더, 디지털 카메 라, 냉장고, 세탁기과 같은 가전기기 뿐만 아니라, 승강기, 항공기, 의료기기, 자동차, 공장제어, 통신 장비(교환기, 라우터 등)도 임베디드 시스템이다.
초기의 임베디드 시스템은 그 구성이 매우 단순하였으며, 4비트/8비트 컨트롤러에 제한된 동작을 하도록 하는 소프트웨어가 탑재된 시스템이 대부분이었다. 그러나, 요즘은 32비트 마이크로프로세서와 디지털 신호 처리기(DSP: Digital Signal Processor)가 일반적으로 사용됨에 따라 사용영역이 넓어지고 그에 따른 고성능의 소프트웨어도 함께 발달하게 되었다. 이러한 임베디드 시스템의 응용분야가 다양해지면서, 예전에는 단순했던 임베디드 소프트웨어가 점점 더 복잡하고 다양한 기능을 처리하게 되었다.
최근들어, IPod, 안드로이드와 같이 오픈 플랫폼을 활용하여 누구나 제한없이 프로그램을 만들어 사용할 수 있고, 제품의 구성을 바꿀 수 있는 수단을 제공하는 임베디드 시스템 제품군들이 많이 출시되고 있다. 하지만, 사용자의 활용수준이 낮아서 필요로 하는 어플리케이션을 직접 제작할 수 없는 경우, 사용자는 시스템 활용도를 높이기 위해 고가의 프로그램을 구매해야 하며, 여러 개의 임베디드 기기를 소지하는 사용자의 경우, 시스템 환경이 각각 다르므로 동일한 소프트웨어임에도 불구하고 여러 카피본을 구매해야 한다. 일반 사용자 뿐만 아니라 B2B 시장에도 이러한 요구사항이 반영되어, 기업은 사용자의 사용빈도를 체크하여 사용장소에 따라 다양한 제품군을 설치함으로써, 설치 비용을 줄이고, 관리해야 할 어플리케이션 수를 줄임으로써 관리상의 용이성을 극대화하고자 한다.
그러나, 사용빈도가 낮은 어플리케이션을 모든 임베디드 제품에 설치하는 것 은 비용상의 낭비일 뿐만 아니라 관리상으로 불편하다는 문제점이 있다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 필요한 경우에만 어플리케이션을 설치함으로써, 불필요한 비용 낭비를 감소시킬 수 있는 임베디드 시스템 및 그 동작 방법을 제공하는데 그 목적이 있다.
이와 같은 목적을 달성하기 위한 본 발명은 컨텐츠와, 상기 컨텐츠를 실행하기 위해 필요한 어플리케이션이 저장되어 있는 제1장치 및 상기 제1장치가 연결되면, 상기 컨텐츠를 실행할 수 있도록 상기 어플리케이션이 인스톨되고, 상기 제1장치와의 연결이 해제되면, 상기 설치된 어플리케이션이 언인스톨되는 제2장치를 포함한다.
상기 제1장치는, 상기 제2장치와의 통신을 위한 제1통신 인터페이스부, 상기 제1장치의 전반적인 제어를 하는 제어부, 상기 제1장치의 인증에 필요한 정보와 상기 어플리케이션의 인증에 필요한 정보를 포함하는 보안영역부, 상기 컨텐츠와 상기 어플리케이션이 저장되어 있는 어플리케이션부를 포함할 수 있다.
상기 제2장치는, 운영체제를 포함하는 플랫폼, 상기 제1장치와의 통신을 위한 제2통신 인터페이스부, 상기 제2통신 인터페이스부로부터 수신된 신호를 통해 상기 제1장치와의 연결여부를 확인하고, 상기 제1장치가 연결되면 상기 컨텐츠를 사용할 수 있도록 상기 플랫폼을 구동시키는 장치 드라이버부를 포함할 수 있다.
상기 제1통신 인터페이스부는 USB(Universal Serial Bus)규격, 블루투스 규격, RFID(Radio-Frequency IDentification) 규격 및/또는 IrDA(Infrared Data Association) 규격을 포함할 수 있다.
상기 제2통신 인터페이스부는 USB(Universal Serial Bus)규격, 블루투스 규격, RFID(Radio-Frequency IDentification) 규격 및/또는 IrDA(Infrared Data Association) 규격을 포함할 수 있다.
상기 플랫폼은 자바 런타임 환경일 수 있다.
상기 플랫폼은, 어플리케이션 정보가 저장된 플러그인 레지스트리와, 다수의 어플리케이션을 포함하는 번들을 포함할 수 있다.
상기 제1장치가 연결되면, 상기 장치 드라이버부는 상기 플러그인 레지스트리에 저장된 어플리케이션 정보와 상기 제1장치에 저장된 어플리케이션 정보를 비교하여, 상기 플랫폼이 상기 제1장치를 지원할 수 있는지 여부를 판단할 수 있다.
상기 장치 드라이버부는 상기 플랫폼이 상기 제1장치를 지원가능하면, 상기 제1장치에 저장된 어플리케이션이 상기 제2장치에 설치되어 있는지 여부를 확인하여, 상기 제2장치에 상기 어플리케이션이 설치되어 있지 않으면, 상기 제1장치에 저장된 어플리케이션을 상기 플러그인 레지스트리에 등록하여 인스톨을 진행할 수 있다.
상기 제1장치와의 연결이 해제되면, 상기 장치 드라이버부는 상기 인스톨된 어플리케이션을 언인스톨하고, 상기 플러그인 레지스트리를 갱신할 수 있다.
본 발명의 일 실시예에서 컨텐츠와 상기 컨텐츠의 실행에 필요한 어플리케이 션이 저장된 제1장치 및 상기 제1장치와 연결하여 상기 컨텐츠를 실행시키기 위한 제2장치를 포함하는 임베디드 시스템에서의 동작 방법에 있어서, 상기 제2장치는 상기 제1장치가 연결되었는지 여부를 확인하는 단계, 상기 제1장치가 연결되면 상기 제2장치는 상기 어플리케이션이 설치되어 있는지 여부를 확인하는 단계, 상기 어플리케이션이 설치되어 있지 않으면, 상기 제2장치는 상기 어플리케이션을 인스톨하는 단계, 상기 제2장치에서 상기 어플리케이션을 실행하는 단계, 상기 제2장치가 상기 제1장치에 저장된 컨텐츠를 실행하는 단계를 포함한다.
상기 제2장치는 상기 제1장치가 연결되었는지 여부를 확인하는 단계 후에, 상기 제2장치는 상기 제1장치를 인증하는 단계, 상기 제1장치의 인증에 성공하면 상기 제2장치는 상기 제1장치에 저장된 어플리케이션을 인증하는 단계, 상기 어플리케이션의 인증에 성공하면 상기 제2장치는 플랫폼이 상기 제1장치를 지원가능한지 여부를 판단하는 단계, 상기 플랫폼이 상기 제1장치를 지원가능하면 다음 단계로 진행하는 단계를 더 포함할 수 있다.
상기 제2장치는 상기 제1장치를 인증하는 단계에서, 상기 제2장치는 미리 저장된 등록번호와 상기 제1장치의 등록번호를 비교하여 상기 제1장치의 인증여부를 판단할 수 있다.
상기 제2장치는 상기 제1장치에 저장된 어플리케이션을 인증하는 단계에서, 상기 제2장치는 저장된 상기 어플리케이션의 인스톨 횟수를 이용하여 상기 어플리케이션의 인증 여부를 판단할 수 있다.
상기 제2장치는 상기 제1장치에 저장된 어플리케이션을 인증하는 단계에서, 상기 제2장치는 저장된 상기 어플리케이션의 인스톨 횟수가 임계치 이하이면 상기 어플리케이션에 대한 인증이 성공한 것으로 판단할 수 있다.
본 발명의 다른 실시예에서 컨텐츠와 상기 컨텐츠의 실행에 필요한 어플리케이션이 저장된 제1장치 및 상기 제1장치와 연결하여 상기 컨텐츠를 실행시키기 위한 제2장치를 포함하는 임베디드 시스템에서의 동작 방법에 있어서, 상기 제1장치와 상기 제2장치가 연결된 상태에서, 상기 제2장치는 상기 제1장치와의 연결이 해제되었는지 여부를 확인하는 단계, 상기 제2장치는 상기 제1장치와의 연결이 해제되면 상기 어플리케이션을 언인스톨하는 것이 필요한지 여부를 확인하는 단계, 상기 제2장치는 상기 어플리케이션을 언인스톨하는 것이 필요하면 상기 어플리케이션을 언인스톨하는 단계를 포함할 수 있다.
상기 어플리케이션을 언인스톨하는 단계 후에, 상기 제2장치는 캐쉬에 저장된 데이터를 삭제하는 단계를 더 포함할 수 있다.
상기 어플리케이션을 언인스톨하는 것이 필요한지 여부를 확인하는 단계는, 상기 어플리케이션이 인스톨된 누적 횟수를 계수하는 단계와, 상기 누적 횟수가 미리 설정된 설정치 이내이면 상기 어플리케이션의 언인스톨이 필요하지 않은 것으로 판단하고, 상기 누적 횟수가 미리 설정된 설정치 이상이면 상기 어플리케이션의 언인스톨이 필요한 것으로 판단하는 단계를 포함하여 이루어질 수 있다.
상기 어플리케이션의 언인스톨이 필요하지 않은 것으로 판단하면, 상기 어플리케이션을 언인스톨하지 않는 단계를 더 포함할 수 있다.
본 발명에 의하면 이기종 임베디드 시스템 간에 어플리케이션을 공통으로 사용할 수 있으므로 부가적인 라이센스 비용을 절감할 수 있는 효과가 있다. 예를 들어, USB 메모리를 다수의 임베디드 시스템에 연결할 때에, USB 메모리에 저장된 어플리케이션을 다수의 임베디드 시스템에 인스톨하여 사용할 수 있으므로, 부가적인 소프트웨어 설치비용을 절감할 수 있게 된다.
특히, MP3 플레이어, PMP, USB 메모리, 네비게이션, 핸드폰 등 개인들이 소지하는 임베디드 제품군이 늘어나는 추세에 있어서, 본 발명을 적용하면 하나의 기기에 저장된 소프트웨어의 라이센스로 문서, 멀티미디어 파일 등의 실행에 필요한 어플리케이션에 대한 임베디드 시스템 간의 호환성을 제공할 수 있다는 효과가 있다. 따라서, 하나의 임베디드 시스템에서 진행중이던 작업을 다른 임베디드 시스템에서도 사용할 수 있어서 업무의 편의에 기여하는 장점이 있다.
이하, 첨부된 도면을 참조해서 본 발명의 실시예를 상세히 설명하면 다음과 같다. 우선 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 본 발명의 일 실시예에 따른 임베디드 시스템의 구성을 보여주는 블록도이다. 임베디드 시스템은 제1장치(100)와 제2장치(200)를 포함하여 이루어진다.
제1장치(100)는 컨텐츠와, 컨텐츠를 실행하기 위해 필요한 어플리케이션이 저장되어 있다. 본 발명의 일 실시예에서 제1장치(100)에는 USB(Universal Serial Bus) 메모리가 사용될 수 있다.
제2장치(200)는 제1장치(100)가 연결되면 제1장치(100)에 저장된 컨텐츠를 실행할 수 있도록 어플리케이션이 설치되고, 제1장치(100)와의 연결이 해제되면, 설치된 어플리케이션이 언인스톨된다. 본 발명의 일 실시예에서 제2장치(200)에는 개인용 컴퓨터, 서버, 복합기 등이 사용될 수 있다.
이제 도 1을 참조하여, 제1장치(100)와 제2장치(200)의 구성을 상세하게 설명하면 다음과 같다.
제1장치(100)는 제1통신 인터페이스부(110), 제어부(120), 보안영역부(130), 어플리케이션부(140)를 포함한다.
제1통신 인터페이스부(110)는 제2장치(200)와의 통신을 하기 위해 필요한 역할을 한다. 본 발명의 일 실시예에서 제1통신 인터페이스부(110)는 USB(Universal Serial Bus)규격, 블루투스 규격, RFID(Radio-Frequency IDentification) 규격 및/또는 IrDA(Infrared Data Association) 규격을 포함하여 다양한 통신 프로토콜이 사용될 수 있다.
제어부(120)는 제1장치(100)의 전반적인 제어를 한다.
보안영역부(130)는 제1장치(100)의 인증에 필요한 정보와 어플리케이션의 인증에 필요한 정보를 포함하는 정보를 저장하고 있다. 본 발명의 일 실시예에서 보안영역부(130)는 MIB(Management information base)로서의 기능을 하고, 사용자의 접근이 제한되며, API를 통해서만 파일을 읽고 쓸 수 있다.
본 발명에서 보안영역부(130)에는 어플리케이션이 구동할 수 있는 환경정보를 갖고 있는 인증 구성 파일과, 제1장치(100) 연결시 자동 실행을 위한 런처(launcher)를 포함하여 구성될 수 있다. 이때, 보안영역부(130)는 인증 구성 파일을 참조하여 해당 어플리케이션의 설치 가능성 여부를 판단하게 된다. 예를 들어, 보안영역부(130)는 해당 어플리케이션이 다른 어플리케이션과 디펜던시(dependency) 관계인 경우, 지원 가능한 버전 정보, 참조하는 어플리케이션 정보, 시작 순서 등의 정보가 저장된 인증 구성 파일을 참조하여 해당 어플리케이션의 설치 가능성 여부를 판단할 수 있다.
어플리케이션부(140)는 컨텐츠와 어플리케이션이 저장되어 있는 영역이다. 예를 들어, 문서파일 등의 컨텐츠가 어플리케이션부(140)에 저장될 수 있다.
제2장치(200)는 제2통신 인터페이스부(210), 장치 드라이버부(220), 플랫폼(230)을 포함한다.
제2통신 인터페이스부(210)는 제1장치(100)와의 통신을 하기 위해 필요한 역할을 한다. 본 발명의 일 실시예에서 제2통신 인터페이스부(210)는 USB(Universal Serial Bus)규격, 블루투스 규격, RFID(Radio-Frequency IDentification) 규격 및/또는 IrDA(Infrared Data Association) 규격을 포함하여 다양한 통신 프로토콜이 사용될 수 있다.
장치 드라이버부(220)는 제2통신 인터페이스부(210)로부터 수신된 신호를 통해 제1장치(100)와의 연결여부를 확인하고, 제1장치(100)가 연결되면 컨텐츠를 사용할 수 있도록 플랫폼(230)을 구동시킨다. 본 발명의 일 실시예에서 장치 드라이버부(220)는 제1장치(100)의 연결을 센싱하고, 제1장치(100)가 연결되면 제1장치(100)를 제2장치(200)에서 사용가능하도록 초기화하는 모듈을 포함할 수 있다.
플랫폼(230)은 운영체제를 포함하고 있으며, 어플리케이션 정보가 저장된 플러그인 레지스트리(232)와 다수의 어플리케이션을 포함하는 번들(234)을 포함하고 있다. 본 발명의 일 실시예에서 플랫폼(230)은 자바 런타임 환경일 수 있다.
본 발명에서 제1장치(100)와 제2장치(200)가 제1 및 제2 통신 인터페이스부(110, 120)를 통해 서로 연결되면, 장치 드라이버부(220)는 플러그인 레지스트리(232)에 저장된 어플리케이션 정보와 제1장치(100)에 저장된 어플리케이션 정보를 비교하여, 플랫폼(230)이 제1장치(100)를 지원할 수 있는지 여부를 판단한다.
장치 드라이버부(220)는 플랫폼(230)이 제1장치(100)를 지원가능하면, 제1장치(100)에 저장된 어플리케이션이 제2장치(200)에 설치되어 있는지 여부를 확인하여, 제2장치(200)에 어플리케이션이 설치되어 있지 않으면, 제1장치(100)에 저장된 어플리케이션을 플러그인 레지스트리(232)에 등록하여 인스톨을 진행한다.
본 발명에서 제1장치(100)와 제2장치(200)가 연결되면, 장치 드라이버부(220)는 연결정보를 플랫폼(230)에 전달하고, 제1장치(100)의 런처가 구동되도록 한다. 제1장치(100)의 런처는 플러그인 레지스트리(232)를 이용해 제2장치(200)에 설치된 플러그인 정보를 확인하고, 이에 따라 어플리케이션의 설치 및 동작가능성 여부를 판단한다.
본 발명에서 제1장치(100)와 제2장치(200)의 연결이 해제되면, 장치 드라이버부(220)는 인스톨된 어플리케이션을 언인스톨하고, 이러한 정보를 반영하여 플러그인 레지스트리(232)를 갱신한다.
도 2는 본 발명의 일 실시예에 따른 임베디드 시스템에서의 동작 방법을 보여주는 흐름도이다.
제2장치(200)는 제1장치(100)가 연결되었는지 여부를 확인한다(S201).
제1장치(100)가 연결되면, 제2장치(200)는 제1장치(100)를 인증한다(S203). 본 발명의 일 실시예에서 제2장치(200)는 미리 저장된 등록번호와 제1장치(100)의 등록번호를 비교하여 제1장치(100)의 인증여부를 판단할 수 있다.
제1장치(100)의 인증에 성공하면, 제2장치(200)는 제1장치(100)에 저장된 어플리케이션을 인증한다(S205). 본 발명의 일 실시예에서 제2장치(200)는 저장된 어플리케이션의 인스톨 횟수를 이용하여 어플리케이션의 인증 여부를 판단할 수 있다. 이때, 제2장치(200)는 저장된 어플리케이션의 인스톨 횟수가 임계치 이하이면 어플리케이션에 대한 인증이 성공한 것으로 판단할 수 있다.
어플리케이션의 인증에 성공하면, 제2장치(200)는 플랫폼(230)이 제1장치(100)를 지원가능한지 여부를 판단한다(S207). S207 단계에서 제2장치(200)는 플러그인 레지스트리(230)를 이용하여 제2장치(200)에 설치된 번들(234) 정보를 수집 하고, 제1장치(100)로부터 다른 번들과의 디펜던시(dependency), 지원가능한 버전 정보, 참조하는 번들 정보 등을 읽어들여서 서로 비교하는 과정을 통하여 플랫폼(230)이 제1장치(100)를 지원가능한지 여부를 판단하게 된다.
플랫폼(230)이 제1장치(100)를 지원가능하면, 제2장치(200)는 제2장치(200)에 어플리케이션이 설치되어 있는지 여부를 확인한다(S209). 어플리케이션이 설치되어 있지 않으면, 제2장치(200)는 어플리케이션을 인스톨한다(S211).
다음, 제2장치(200)에서 어플리케이션을 실행한다(S213). 그리고, 제2장치(200)는 제1장치(100)에 저장된 컨텐츠를 실행한다(S215).
본 발명에서 설치하고자 하는 어플리케이션은 스탠드얼론(standalone) 방식으로 동작하는 독립 어플리케이션과 마임(MIME) 방식을 지원하는 어플리케이션일 수 있다. 설치하고자 하는 어플리케이션이 독립 어플리케이션일 경우, 사용자 인터페이스를 통해 어플리케이션이 실행되거나 자동실행될 수 있다. 반면, 마임(MIME) 방식을 지원하는 어플리케이션일 경우, 해당 컨텐츠의 확장자명과 플러그인과의 맵핑(mapping) 관계를 마임(MIME) DB에 등록하여, 향후 동일한 컨텐츠 포맷을 실행할 때 이용된다. 마임(MIME) 방식을 지원하는 어플리케이션일 경우, 제2장치(200)에 저장된 어플리케이션과 연동하여 해당 컨텐츠를 실행시킬 수 있다.
도 3은 본 발명의 다른 실시예에 따른 임베디드 시스템에서의 동작 방법을 보여주는 흐름도이다.
제1장치(100)와 제2장치(200)가 연결된 상태에서, 제2장치(200)는 제1장 치(100)와의 연결이 해제되었는지 여부를 확인한다(S301). 예를 들어, USB 규격, RFID 규격, 블루투스 규격 등의 통신 프로토콜을 통해 제2장치(200)와 제1장치(100)와의 연결 해제 여부를 확인할 수 있다.
제2장치(200)는 제1장치(200)와의 연결이 해제되면, 어플리케이션을 언인스톨하는 것이 필요한지 여부를 확인한다(S303). 본 발명의 일 실시예에서 어플리케이션이 마임(MIME) 방식일 경우, 파일 뷰어와 같은 임베디드 어플리케이션이 있으면, 마임(MIME) 정보를 갱신하게 된다.
제2장치(200)는 어플리케이션을 언인스톨하는 것이 필요하면, 어플리케이션을 언인스톨한다(S305).
제2장치(200)는 캐쉬에 저장된 캐쉬 데이터를 삭제한다(S307). S307 단계는 캐쉬 방식이 적용된 장치의 경우에 한정되므로, 캐쉬 방식이 적용되지 않은 장치에서는 S307 단계가 생략되어도 무방하다.
이상 본 발명을 몇 가지 바람직한 실시예를 사용하여 설명하였으나, 이들 실시예는 예시적인 것이며 한정적인 것이 아니다. 본 발명이 속하는 기술분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 다양한 변화와 수정을 가할 수 있음을 이해할 것이다.
도 1은 본 발명의 일 실시예에 따른 임베디드 시스템의 구성을 보여주는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 임베디드 시스템에서의 동작 방법을 보여주는 흐름도이다.
도 3은 본 발명의 다른 실시예에 따른 임베디드 시스템에서의 동작 방법을 보여주는 흐름도이다.
*도면의 주요 부분에 대한 부호의 설명*
100 제1장치 200 제2장치
110 제1통신 인터페이스부 120 제어부
130 보안영역부 140 어플리케이션부
210 제2통신 인터페이스부 220 장치 드라이버부
230 플랫폼 232 플러그인 레지스트리
234 번들

Claims (19)

  1. 컨텐츠와, 상기 컨텐츠를 실행하기 위해 필요한 어플리케이션이 저장되어 있는 제1장치; 및
    상기 제1장치가 연결되면, 상기 컨텐츠를 실행할 수 있도록 상기 어플리케이션이 인스톨되고, 상기 제1장치와의 연결이 해제되면, 상기 설치된 어플리케이션이 언인스톨되는 제2장치
    를 포함하는 임베디드 시스템.
  2. 제1항에 있어서,
    상기 제1장치는,
    상기 제2장치와의 통신을 위한 제1통신 인터페이스부;
    상기 제1장치의 전반적인 제어를 하는 제어부;
    상기 제1장치의 인증에 필요한 정보와 상기 어플리케이션의 인증에 필요한 정보를 포함하는 보안영역부;
    상기 컨텐츠와 상기 어플리케이션이 저장되어 있는 어플리케이션부
    를 포함하는 것을 특징으로 하는 임베디드 시스템.
  3. 제1항에 있어서,
    상기 제2장치는,
    운영체제를 포함하는 플랫폼;
    상기 제1장치와의 통신을 위한 제2통신 인터페이스부;
    상기 제2통신 인터페이스부로부터 수신된 신호를 통해 상기 제1장치와의 연결여부를 확인하고, 상기 제1장치가 연결되면 상기 컨텐츠를 사용할 수 있도록 상기 플랫폼을 구동시키는 장치 드라이버부
    를 포함하는 것을 특징으로 하는 임베디드 시스템.
  4. 제2항에 있어서,
    상기 제1통신 인터페이스부는 USB(Universal Serial Bus)규격, 블루투스 규격, RFID(Radio-Frequency IDentification) 규격 및/또는 IrDA(Infrared Data Association) 규격을 포함하는 것을 특징으로 하는 임베디드 시스템.
  5. 제3항에 있어서,
    상기 제2통신 인터페이스부는 USB(Universal Serial Bus)규격, 블루투스 규격, RFID(Radio-Frequency IDentification) 규격 및/또는 IrDA(Infrared Data Association) 규격을 포함하는 것을 특징으로 하는 임베디드 시스템.
  6. 제3항에 있어서,
    상기 플랫폼은 자바 런타임 환경인 것을 특징으로 하는 임베디드 시스템.
  7. 제6항에 있어서,
    상기 플랫폼은,
    어플리케이션 정보가 저장된 플러그인 레지스트리와,
    다수의 어플리케이션을 포함하는 번들을 포함하는 것을 특징으로 하는 임베디드 시스템.
  8. 제7항에 있어서,
    상기 제1장치가 연결되면, 상기 장치 드라이버부는 상기 플러그인 레지스트리에 저장된 어플리케이션 정보와 상기 제1장치에 저장된 어플리케이션 정보를 비교하여, 상기 플랫폼이 상기 제1장치를 지원할 수 있는지 여부를 판단하는 것을 특징으로 하는 임베디드 시스템.
  9. 제8항에 있어서,
    상기 장치 드라이버부는 상기 플랫폼이 상기 제1장치를 지원가능하면, 상기 제1장치에 저장된 어플리케이션이 상기 제2장치에 설치되어 있는지 여부를 확인하여, 상기 제2장치에 상기 어플리케이션이 설치되어 있지 않으면, 상기 제1장치에 저장된 어플리케이션을 상기 플러그인 레지스트리에 등록하여 인스톨을 진행하는 것을 특징으로 하는 임베디드 시스템.
  10. 제9항에 있어서,
    상기 제1장치와의 연결이 해제되면, 상기 장치 드라이버부는 상기 인스톨된 어플리케이션을 언인스톨하고, 상기 플러그인 레지스트리를 갱신하는 것을 특징으로 하는 임베디드 시스템.
  11. 컨텐츠와 상기 컨텐츠의 실행에 필요한 어플리케이션이 저장된 제1장치 및 상기 제1장치와 연결하여 상기 컨텐츠를 실행시키기 위한 제2장치를 포함하는 임베디드 시스템에서의 동작 방법에 있어서,
    상기 제2장치는 상기 제1장치가 연결되었는지 여부를 확인하는 단계;
    상기 제1장치가 연결되면, 상기 제2장치는 상기 어플리케이션이 설치되어 있는지 여부를 확인하는 단계;
    상기 어플리케이션이 설치되어 있지 않으면, 상기 제2장치는 상기 어플리케이션을 인스톨하는 단계;
    상기 제2장치에서 상기 어플리케이션을 실행하는 단계;
    상기 제2장치가 상기 제1장치에 저장된 컨텐츠를 실행하는 단계
    를 포함하는 임베디드 시스템에서의 동작 방법.
  12. 제11항에 있어서,
    상기 제2장치는 상기 제1장치가 연결되었는지 여부를 확인하는 단계 후에,
    상기 제2장치는 상기 제1장치를 인증하는 단계;
    상기 제1장치의 인증에 성공하면, 상기 제2장치는 상기 제1장치에 저장된 어 플리케이션을 인증하는 단계;
    상기 어플리케이션의 인증에 성공하면, 상기 제2장치는 플랫폼이 상기 제1장치를 지원가능한지 여부를 판단하는 단계;
    상기 플랫폼이 상기 제1장치를 지원가능하면, 다음 단계로 진행하는 단계를 더 포함하는 것을 특징으로 하는 임베디드 시스템에서의 동작 방법.
  13. 제12항에 있어서,
    상기 제2장치는 상기 제1장치를 인증하는 단계에서,
    상기 제2장치는 미리 저장된 등록번호와 상기 제1장치의 등록번호를 비교하여 상기 제1장치의 인증여부를 판단하는 것을 특징으로 하는 임베디드 시스템에서의 동작 방법.
  14. 제12항에 있어서,
    상기 제2장치는 상기 제1장치에 저장된 어플리케이션을 인증하는 단계에서,
    상기 제2장치는 저장된 상기 어플리케이션의 인스톨 횟수를 이용하여 상기 어플리케이션의 인증 여부를 판단하는 것을 특징으로 하는 임베디드 시스템에서의 동작 방법.
  15. 제14항에 있어서,
    상기 제2장치는 상기 제1장치에 저장된 어플리케이션을 인증하는 단계에서,
    상기 제2장치는 저장된 상기 어플리케이션의 인스톨 횟수가 임계치 이하이면 상기 어플리케이션에 대한 인증이 성공한 것으로 판단하는 것을 특징으로 하는 임베디드 시스템에서의 동작 방법.
  16. 컨텐츠와 상기 컨텐츠의 실행에 필요한 어플리케이션이 저장된 제1장치 및 상기 제1장치와 연결하여 상기 컨텐츠를 실행시키기 위한 제2장치를 포함하는 임베디드 시스템에서의 동작 방법에 있어서,
    상기 제1장치와 상기 제2장치가 연결된 상태에서, 상기 제2장치는 상기 제1장치와의 연결이 해제되었는지 여부를 확인하는 단계;
    상기 제2장치는 상기 제1장치와의 연결이 해제되면, 상기 어플리케이션을 언인스톨하는 것이 필요한지 여부를 확인하는 단계;
    상기 제2장치는 상기 어플리케이션을 언인스톨하는 것이 필요하면, 상기 어플리케이션을 언인스톨하는 단계
    를 포함하는 임베디드 시스템에서의 동작 방법.
  17. 제16항에 있어서,
    상기 어플리케이션을 언인스톨하는 단계 후에,
    상기 제2장치는 캐쉬에 저장된 데이터를 삭제하는 단계를 더 포함하는 것을 특징으로 하는 임베디드 시스템에서의 동작 방법.
  18. 제16항에 있어서,
    상기 어플리케이션을 언인스톨하는 것이 필요한지 여부를 확인하는 단계는,
    상기 어플리케이션이 인스톨된 누적 횟수를 계수하는 단계와,
    상기 누적 횟수가 미리 설정된 설정치 이내이면 상기 어플리케이션의 언인스톨이 필요하지 않은 것으로 판단하고, 상기 누적 횟수가 미리 설정된 설정치 이상이면 상기 어플리케이션의 언인스톨이 필요한 것으로 판단하는 단계를 포함하여 이루어지는 것을 특징으로 하는 임베디드 시스템에서의 동작 방법.
  19. 제18항에 있어서,
    상기 어플리케이션의 언인스톨이 필요하지 않은 것으로 판단하면, 상기 어플리케이션을 언인스톨하지 않는 단계를 더 포함하는 것을 특징으로 하는 임베디드 시스템에서의 동작 방법.
KR1020090063404A 2009-07-13 2009-07-13 임베디드 시스템 및 그 동작 방법 KR20110005991A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090063404A KR20110005991A (ko) 2009-07-13 2009-07-13 임베디드 시스템 및 그 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090063404A KR20110005991A (ko) 2009-07-13 2009-07-13 임베디드 시스템 및 그 동작 방법

Publications (1)

Publication Number Publication Date
KR20110005991A true KR20110005991A (ko) 2011-01-20

Family

ID=43612879

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090063404A KR20110005991A (ko) 2009-07-13 2009-07-13 임베디드 시스템 및 그 동작 방법

Country Status (1)

Country Link
KR (1) KR20110005991A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170082061A (ko) * 2016-01-05 2017-07-13 엘지전자 주식회사 의류처리장치
CN111741161A (zh) * 2019-03-25 2020-10-02 质子世界国际公司 电子系统
US11303745B2 (en) 2019-03-25 2022-04-12 Proton World International N.V. Electronic system
US11561921B2 (en) 2019-03-25 2023-01-24 Proton World International N.V. Electronic system

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170082061A (ko) * 2016-01-05 2017-07-13 엘지전자 주식회사 의류처리장치
KR20230031859A (ko) * 2016-01-05 2023-03-07 엘지전자 주식회사 의류처리장치
CN111741161A (zh) * 2019-03-25 2020-10-02 质子世界国际公司 电子系统
US11303745B2 (en) 2019-03-25 2022-04-12 Proton World International N.V. Electronic system
US11561921B2 (en) 2019-03-25 2023-01-24 Proton World International N.V. Electronic system
US11593905B2 (en) 2019-03-25 2023-02-28 Proton World International N.V. Electronic system

Similar Documents

Publication Publication Date Title
US8010959B2 (en) System and method for updating device drivers
US9563442B2 (en) Baseboard management controller and method of loading firmware
US7853944B2 (en) Apparatus and method for managing firmware of removable media device
CN107832241B (zh) 一种可实现自动运行的集成电路存储设备或方法
US8769667B2 (en) Information processing apparatus
EP2705422B1 (en) Dynamically redirecting boot to another operating system
EP1832977A2 (en) Platform boot with bridge support
KR20020082721A (ko) 디바이스 드라이버 설치방법
CN101369302B (zh) 一种控制信息安全设备访问权限的方法和系统
KR101112183B1 (ko) Host 기능을 통해 단말간의 무선네트워킹을 지원하는 usb 동글 시스템 및 그 운영 방법
US8214825B2 (en) Electronic device and method for installing software
KR20110005991A (ko) 임베디드 시스템 및 그 동작 방법
US9501444B2 (en) USB device and method thereof for automatically recognizing microsoft windowing operating system version
US9465597B2 (en) System for operating a device as a storage device and a modem device
EP2372565A1 (en) Method for managing USB devices
KR100719402B1 (ko) 전자기기 및 컴퓨터 판독 가능한 기록매체
KR20050004403A (ko) 이동식 저장장치 및 이동식 저장장치의 구동방법
CN104516743A (zh) 基于ActiveX的嵌入式设备固件的升级方法及系统
TWI411921B (zh) 電子系統、互連電子系統與週邊裝置之電腦可讀儲存媒體及其互連方法
CN115291951A (zh) Uefi启动方法、装置、电子设备以及存储介质
US10049070B2 (en) Data card, and data card switching method and apparatus
TWI690820B (zh) 以嵌入式瀏覽器模組管理憑證之系統及方法
KR101190314B1 (ko) 스마트 폰 앱을 이용한 펌웨어 업데이트 시스템 및 방법
EP3523745B1 (en) Electronic device, method for controlling thereof and computer-readable recording medium
KR101631655B1 (ko) 정보 보안 장치 및 그 제어방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment