KR100964326B1 - 클라이언트 프로그램의 자동실행방법, 그 장치, 및 상기 장치를 포함하는 메모리 장치 - Google Patents

클라이언트 프로그램의 자동실행방법, 그 장치, 및 상기 장치를 포함하는 메모리 장치 Download PDF

Info

Publication number
KR100964326B1
KR100964326B1 KR1020080018922A KR20080018922A KR100964326B1 KR 100964326 B1 KR100964326 B1 KR 100964326B1 KR 1020080018922 A KR1020080018922 A KR 1020080018922A KR 20080018922 A KR20080018922 A KR 20080018922A KR 100964326 B1 KR100964326 B1 KR 100964326B1
Authority
KR
South Korea
Prior art keywords
client program
host device
memory device
registration information
executing
Prior art date
Application number
KR1020080018922A
Other languages
English (en)
Other versions
KR20090093416A (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 KR1020080018922A priority Critical patent/KR100964326B1/ko
Publication of KR20090093416A publication Critical patent/KR20090093416A/ko
Application granted granted Critical
Publication of KR100964326B1 publication Critical patent/KR100964326B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • 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
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching

Landscapes

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

Abstract

클라이언트 프로그램의 자동실행장치 및 그 방법이 개시된다. 상기 기술적 과제를 달성하기 위한 클라이언트 프로그램의 자동실행방법은 클라이언트 프로그램을 포함하는 클라이언트 프로그램의 자동실행 장치가 저장된 메모리 장치가 호스트 장치에 접속되는 단계, 상기 메모리 장치가 상기 호스트 장치에 접속됨이 인식되면, 상기 클라이언트 프로그램의 자동실행 장치가 상기 클라이언트 프로그램을 실행하기 위한 등록정보를 상기 호스트 장치에 등록하는 단계, 등록정보에 기초하여 상기 클라이언트 프로그램이 서버와 통신을 하면서 실행되는 단계, 및 상기 클라이언트 프로그램이 종료되면, 상기 클라이언트 프로그램의 자동실행 장치는 상기 등록정보를 상기 호스트 장치에서 삭제하는 단계를 포함한다.

Description

클라이언트 프로그램의 자동실행방법, 그 장치, 및 상기 장치를 포함하는 메모리 장치{Method and apparatus for an auto-execution of client program and memory unit including the apparatus}
본 발명은 클라이언트 프로그램의 실행방법 및 그 장치에 관한 것으로, 보다 상세하게는 메모리 장치를 호스트에 접속만 하면, 자동으로 클라이언트 프로그램이 실행되고, 사용자가 프로그램을 종료하면 호스트에 저장된 상기 클라이언트 프로그램에 관련된 데이터가 모두 삭제될 수 있도록 하는 방법 및 장치에 관한 것이다.
종래의 어플리케이션의 자동실행 방법 또는 장치에서는 특정 어플리케이션을 저장하는 메모리 장치(예컨대, USB 장치)를 호스트 장치(예컨대, 컴퓨터)에 접속하면 자동으로 어플리케이션을 실행시키는 기술적 사상을 내포한다.
하지만, 이러한 종래의 방법에 의하면 특정 어플리케이션을 자동으로 실행하는데에만 중점이 있어서, 상기 호스트 장치에 소정의 정보 또는 실행을 위한 소정의 모듈이 등록된 상태에서 상기 어플리케이션이 종료되면 상기 호스트 장치에 등록된 정보들이 그대로 남게 된다.
하지만, 상기 등록된 정보들 중에서는 어플리케이션내에서 다루는 중요한 정 보들이 존재할 수 있다. 또한, 사용자 인증에 관련된 여러 개인 정보들이 호스트 장치에 등록 또는 설치될 수 있다. 그리고, 상기 특정 어플리케이션을 실행시키기 위해 상기 호스트 장치의 OS에 존재하는 레지스트리(registry)에 소정의 정보를 등록하는 경우가 많다.
따라서, 종래의 방법은 호스트 장치에 사용자가 실행시킨 특정 어플리케이션의 흔적(즉, 사용한 정보)가 존재하게 된다. 하지만, USB 메모리와 같이 이동성이 뛰어난 메모리 장치에 어플리케이션을 저장하여 다니면서, 사용자가 늘 사용하는 시스템이 아닌 언제 어디서나 상기 어플리케이션을 사용하기 위한 목적을 위해서는 상기 어플리케이션을 사용한 호스트 장치에 상기 어플리케이션과 관련된 어떠한 정보도 남는 것은 바람직하지 않다고 할 것이다. 특히, 상기 어플리케이션이 대용량의 어플리케이션인 경우에는 상기 호스트 장치에 남는 정보들의 크기 또한 커질 수 밖에 없다.
특히, 상기 어플리케이션이 클라이언트(client)/서버(server) 프로그램(예컨대, ERP(enterprise resource planning) 프로그램 등)과 같이 언제 어디서나 접속의 필요성이 있으면서도 실행시에 중요한 정보들이 다루어지는 경우에는 호스트 장치에 상기 클라이언트/서버 프로그램과 관련된 어떠한 정보도 남지 않는 것이 바람직하다.
또한, 메모리 장치에 포함된 클라이언트/서버 프로그램은 불법적으로 유통되어 복제되는 경우, 자동으로 실행되는 특성 때문에 서버의 트래픽을 증가시킬 수 있는 중요한 요인이 될 수 있다. 따라서, 메모리 장치에 저장된 정보들이 불법 복 제되는 경우에도 정당한 사용자가 아닌 경우에는 사용을 할 수 없도록 하는 방법이 중요하다.
따라서, 본 발명이 이루고자 하는 기술적인 과제는 클라이언트/서버 프로그램에 최적화된 어플리케이션의 자동실행방법 및 장치를 제공하는 것이다.
또한,클라이언트/서버 프로그램에서 클라이언트 프로그램을 자동으로 실행할 수 있으며, 실행이 종료되면 상기 클라이언트 프로그램이 실행된 호스트 장치에는 상기 클라이언트 프로그램과 관련된 정보가 모두 남지 않게 할 수 있는 방법 및 장치를 제공하는 것이다.
또한, 상기 클라이언트 프로그램이 불법적으로 복제되는 경우에는 자동으로 실행되지 않는 보호 수단을 같이 제공하는 것이다.
상기 기술적 과제를 달성하기 위한 클라이언트 프로그램의 자동실행방법은 클라이언트 프로그램을 포함하는 클라이언트 프로그램의 자동실행 장치가 저장된 메모리 장치가 호스트 장치에 접속되는 단계, 상기 메모리 장치가 상기 호스트 장치에 접속됨이 인식되면, 상기 클라이언트 프로그램의 자동실행 장치가 상기 클라이언트 프로그램을 실행하기 위한 등록정보를 상기 호스트 장치에 등록하는 단계, 등록정보에 기초하여 상기 클라이언트 프로그램이 서버와 통신을 하면서 실행되는 단계, 및 상기 클라이언트 프로그램이 종료되면, 상기 클라이언트 프로그램의 자동 실행 장치는 상기 등록정보를 상기 호스트 장치에서 삭제하는 단계를 포함한다.
상기 등록정보를 상기 호스트 장치에 등록하는 단계는 상기 메모리 장치의 식별자에 기초한 인증정보를 이용하여 상기 서버로부터 인증을 받는 단계를 포함하며, 인증 결과 상기 메모리 장치가 인증이 안되는 경우, 상기 클라이언트 프로그램이 실행되지 않는 것을 특징으로 한다.
상기 등록정보는 상기 서버에 접속하기 위해 필요한 접속 정보 또는 상기 클라이언트 프로그램의 일부 중 적어도 하나를 포함할 수 있다.
상기 클라이언트 프로그램의 일부가 상기 호스트 장치에 등록된 경우 상기 클라이언트 프로그램의 나머지 부분은 상기 메모리 장치를 로컬로 하여 실행될 수 있다.
상기 메모리 장치는 USB 메모리 장치일 수 있다. 상기 클라이언트 프로그램의 자동실행방법은 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체에 저장될 수 있다.
상기 기술적 과제를 해결하기 위한 클라이언트 프로그램의 자동실행장치는 제어모듈, 클라이언트 프로그램이 저장되는 클라이언트 프로그램 저장부, 메모리 장치가 호스트 장치에 접속되는지를 인지하는 인터페이스 모듈, 상기 클라이언트 프로그램을 실행하기 위한 등록정보를 상기 호스트 장치에 등록하기 위한 등록 모듈, 및 상기 등록정보를 상기 호스트 장치에서 삭제하기 위한 삭제 모듈을 포함하며, 상기 제어모듈은 상기 인터페이스 모듈에 의하여 상기 메모리 장치가 상기 호스트 장치에 접속됨이 인식되면, 상기 클라이언트 프로그램을 실행하기 위한 등록 정보를 상기 호스트 장치에 등록하도록 상기 등록 모듈을 제어하고, 등록정보에 기초하여 서버와 통신을 하면서 상기 클라이언트 프로그램을 실행시키며, 상기 클라이언트 프로그램이 종료되면, 상기 등록정보를 상기 호스트 장치에서 삭제하도록 상기 삭제모듈을 제어한다.
상기 등록모듈은 상기 메모리 장치의 식별자에 기초한 인증정보를 포함하며, 상기 제어모듈은 상기 인증 정보를 이용하여 상기 서버로부터 상기 메모리 장치를 인증받을 수 있다.
상기 기술적 과제를 해결하기 위한 메모리 장치는 상기 클라이언트 프로그램의 자동실행 장치가 저장되는 저장 수단 및 상기 클라이언트 프로그램의 자동실행 장치를 실행하는 프로세서가 포함되는 호스트에 접속하기 위한 접속 수단을 포함할 수 있다.
본 발명에 따른 클라이언트 프로그램의 자동실행방법 및 장치는 사용자가 언제 어디서나 간편하게 클라이언트 프로그램을 실행시켜 사용할 수 있으며, 사용후에는 실행 관련 정보들을 하나도 남기지 않도록 하여 사용자는 안심하고 프로그램을 사용할 수 있는 방법을 제공하는 것이다.
특히, 상기 클라이언트 프로그램의 자동실행방법이 클라이언트/서버 프로그램에 적용되는 경우, 데이터 프로세싱의 부하가 많이 걸리는 태스크(task)는 서버측에서 수행하고, 상기 클라이언트 프로그램에서는 최소한의 데이터 프로세싱만을 수행하도록 할 수 있으므로, 호스트 장치에 프로그램 자체의 설치를 할 필요가 없 이 최소한의 등록 정보만 상기 호스트 장치에 등록하였다가 삭제할 수 있는 효과가 있다.
또한, 데이터 프로세싱의 부하가 적으므로 프로세서가 상기 클라이언트 프로그램이 저장된 메모리 장치 자체에 접근하는 횟수가 적은 특징이 있다. 그러므로 상기 클라이언트 프로그램을 상기 호스트 장치에 복제하였다가 다시 삭제하는 것이 아니라 상기 메모리 장치를 로컬로 하여 상기 클라이언트 프로그램을 실행시켜도 처리속도에 큰 저하가 없는 장점이 존재할 수 있다.
또한, 인증된 메모리 장치 외에 불법으로 복제된 상기 클라이언트 프로그램은 자동실행이 되지 않는 보호 수단을 갖추고 있으므로, 프로그램의 배포자는 불법복제에 대한 불안을 해소할 수 있고, 보안이 중요한 서버/클라이언트 프로그램의 특성을 잘 살릴 수 있는 효과가 있다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다.
반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 실시 예에 따른 클라이언트 프로그램의 자동실행 시스템의 개략적인 기능 블록도를 나타낸다.
도 1을 참조하면, 본 발명의 실시 예에 따른 클라이언트 프로그램의 자동실행 시스템은 메모리 장치(100) 및 호스트 장치(200)를 포함한다.
상기 메모리 장치(100)는 본 발명의 기술적 사상을 구현하기 위해 이동성이 뛰어난 메모리 장치인 것이 바람직하다. 상기 메모리 장치(100)는 USB(Universal Serial Bus) 메모리 장치일 수 있다.
USB는 널리 공지된 바와 같이, 공통된 인터페이스를 표준으로 주변장치를 만들게 됨으로써, 개발자들은 주변장치를 만들 때 새로운 인터페이스 개발과 기존의 주변장치와의 충돌에 대한 부담을 줄일 수 있으며, 플러그 앤 플레이(PnP:Plug and Play)의 기능을 보다 쉬게 지원할 수 있게 된다. 따라서, USB 장치를 상기 메모리 장치(100)로 사용하는 경우, 상기 메모리 장치(100)가 상기 호스트 장치(200)에 접속되면 상기 호스트 장치(200) 및 상기 메모리 장치(100)는 각각 접속여부를 판단할 수 있다.
최근에는 USB 메모리 장치(100)가 주머니에 들어갈 수 있을 정도의 크기로 소형으로 제작되어 널리 판매되고 있으므로, 이동성이 뛰어난 장점이 있다.
한편, 사용자는 이동성이 뛰어난 상기 메모리 장치(100)를 휴대하고 다니다가, 자신이 늘 사용하던 컴퓨터가 아닌 다른 장소에서도 자신이 필요로 하는 어플리케이션을 사용할 필요가 발생할 수 있다. 특히, 본 명세서에서는 상기 어플리케이션은 서버/클라이언트 프로그램에서 클라이언트 측 프로그램을 의미한다.
사용자는 상기 메모리 장치(100)를 사무실 또는 집과 같이 자신이 편하게 사용할 수 있도록 셋팅(setting)된 시스템이 아니라, 출장지, 이웃집 등에 설치된 어떠한 데이터 처리장치, 즉, 상기 호스트 장치(200)를 이용하여 클라이언트 프로그램을 사용할 수 있다.
클라이언트 프로그램이라 함은, 서버 측과 네트워크를 통하여 데이터를 송수신하면서 소정의 기능을 수행하는 유저 어플리케이션(user application)을 의미할 수 있다. 예컨대, 클라이언트 프로그램은 ERP(enterprise resource planning) 프로그램일 수 있다. ERP와 같이 언제 어디서나 접속의 필요성이 있으면서도 실행시에 중요한 정보들이 다루어지는 경우에는 호스트 장치에 상기 클라이언트/서버 프로그램과 관련된 어떠한 정보도 남지 않는 것이 바람직하다. 또한, 이러한 클라이언트 프로그램은 불법적으로 유통되어 복제되는 경우, 자동으로 실행되는 특성 때문에 서버의 트래픽을 증가시킬 수 있는 중요한 요인이 될 수 있다. 메모리 장치에 저장된 정보들이 불법 복제되는 경우에도 정당한 사용자가 아닌 경우에는 사용을 할 수 없도록 하는 보호수단이 필요하게 된다.
또한, 본 발명의 기술적 사상이 클라이언트 프로그램에 적용되면, 서버/클라 이언트 프로그램의 특징상 데이터 프로세싱의 부하가 많이 걸리는 태스크(task)는 서버측에서 수행하고, 상기 클라이언트 프로그램에서는 최소한의 데이터 프로세싱만을 수행하도록 할 수 있으므로, 호스트 장치(200)에 프로그램 자체의 설치를 할 필요가 없이 최소한의 등록 정보만 호스트 장치(200)에 등록하였다가 삭제할 수 있다. 따라서, 본 발명의 기술적 사상은 호스트 장치(200)에 정보를 저장(또는 등록)하였다가 단순히 삭제하는 것이 아니라, 호스트 장치(200)에 등록하는 정보를 최소한으로 할 수 있는 장점이 있는 것이다. 등록되는 정보가 적다는 것은 악의적인 프로그램 또는 코드에 노출될 수 있는 확률이 작다는 것을 의미할 수 있다.
이러한 클라이언트 프로그램의 자동실행을 수행하기 위한 클라이언트 프로그램의 자동실행 장치의 구성 및 실행 방법은 도 2에 나타난다.
도 2는 본 발명의 실시 예에 따른 클라이언트 프로그램의 자동실행장치의 개략적인 블록 구성도를 나타낸다.
도 2를 참조하면, 본 발명의 실시 예에 따른 클라이언트 프로그램의 자동실행장치(100)는 제어모듈(110), 인터페이스 모듈(120), 등록 모듈(130), 삭제모듈(140), 및 클라이언트 프로그램 저장부(150)를 포함한다. 상기 클라이언트 프로그램의 자동실행장치(100)의 각각의 구성요소들은 기능 및 논리적으로 분리될 수 있음을 나타나기 위해 별도로 도면에 표시한 것이며, 물리적으로 반드시 별도의 구성요소이거나 별도의 코드로 구현되는 것을 의미하는 것은 아니다.
본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미 할 수 있다. 예컨대, 상기 모듈은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.
상기 제어모듈(110)은 본 발명의 기술적 사상을 구현하기 위하여 다른 구성요소들(예컨대, 인터페이스 모듈(120), 등록 모듈(130) 등등)을 제어할 수 있다.
상기 인터페이스 모듈(120)은 메모리 장치(100)가 호스트 장치(200)에 접속되는지를 인지하여 소정의 신호를 상기 제어모듈(110)로 전송할 수 있다. 그러면, 상기 소정의 신호를 수신한 제어모듈(110)은 메모리 장치(100)가 호스트 장치(200)에 접속되었음을 인지하게 되며, 이에 응답하여 본 발명의 기술적 사상에 따른 클라이언트 프로그램의 자동실행방법을 수행할 수 있다. 접속의 인지는 상기 메모리 장치(100)가 USB로 구현되는 경우에는 USB 표준에 정의된 프로토콜에 기초하여 수행될 수 있다.
상기 등록모듈(130)은 상기 클라이언트 프로그램을 실행하기 위한 등록정보를 상기 호스트 장치(200)에 등록할 수 있다. 여기서 등록정보라 함은, 메모리 장치(100)에서 호스트 장치(200)로 클라이언트 프로그램의 실행을 위해 임시적으로 저장되는 모든 정보를 의미할 수 있다. 하지만, 전술한 바와 같이, 본 발명의 실시 예에 따른 클라이언트 프로그램의 자동실행방법은 상기 등록정보를 최소한으로 할 수 있는 방법을 제시할 수 있다.
즉, 데이터 프로세싱의 부하가 많이 걸리는 태스크(task)는 서버측에서 수행 하고, 상기 클라이언트 프로그램에서는 최소한의 데이터 프로세싱만을 수행하도록 할 수 있으므로, 호스트 장치(200)에 프로그램 자체의 설치를 할 필요가 없을 뿐만 아니라, 설치를 하지 않아도 임시적으로 상기 호스트 장치(200)에 저장되어야 하는 데이터를 최소한으로 줄일 수 있다.
상기 등록정보는 상기 클라이언트 프로그램에 대응되는 서버프로그램이 실행되는 서버에 접속하기 위해 필요한 접속 정보 또는 상기 클라이언트 프로그램의 일부 중 적어도 하나를 포함할 수 있다. 즉, 상기 클라이언트 프로그램에서도 데이터 프로세싱의 양이 많은 기능을 수행하는 소정의 펑션(function) 또는 코드는 호스트 장치(200)에 설치될 수 있다. 구현 예에 따라 상기 호스트 장치(200)에 등록(설치)되는 코드는 다를 수 있다. 물론 구현 예에 따라, 상기 클라이언트 프로그램은 전혀 상기 호스트 장치(200)에 설치되지 않을 수도 있다. 상기 접속 정보는 상기 서버에 네트워크를 통하여 접속하기 위한 네트워크 주소 등을 포함할 수 있다. 또한, 상기 접속 정보 등은 상기 호스트 장치(200)의 OS(operating system)의 적어도 일부에 등록될 수도 있다. 예컨대, 상기 호스트 장치(200)에서 상기 클라이언트 프로그램이 실행되기 위해서는 상기 호스트 장치(200)의 레지스트리에 상기 접속 정보 또는 상기 서버의 포트 번호 등과 같은 정보가 등록되어야 할 경우가 있다. 물론, 단순히 상기 호스트 장치(200)의 로컬 저장 장치(미도시)에 단순히 복사되어 저장되는 경우도 있을 수 잇다.
한편, 상기 삭제모듈(140)은 상기 등록 모듈(130)에 의하여 상기 호스트 장치(200)에 등록된 등록정보를 삭제하는 역할을 수행한다. 삭제한다고 함은 상기 호 스트 장치(200)의 프로세서가 상기 호스트 장치(200)의 OS단 또는 로컬 저장 장치(즉, 파일 시스템)에 등록 또는 저장된 정보를 삭제하기 위한 소정의 제어신호(예컨대, 명령어)를 전송함을 의미할 수 있다. 상기 등록정보를 삭제하기 위해 상기 등록 모듈(130), 상기 삭제모듈(140), 또는 상기 클라이언트 프로그램의 자동실행장치의 다른 저장장치(미도시)에는 상기 등록정보가 저장되거나 등록된 위치에 대한 정보를 저장할 수 있다. 이러한 정보에 기초하여 상기 호스트 장치(200)는 널리 공지된 바와 같은 소위, 언인스톨(uninstall)과 유사한 동작을 수행할 수 있다. 따라서, 종래의 설치과정 없이 실행할 수 있는 프로그램 등에서도 프로그램을 실행하기 위해 소정의 정보가 OS 측(예컨대, 레지스트리)에는 저장되는 반면, 본 발명의 실시 예에 따른 클라이언트 프로그램의 자동실행방법에서는 호스트 장치에 등록되는 모든 등록정보를 삭제할 수 있으므로, OS측에 저장되는 정보도 삭제할 수 있는 기술적 사상을 제공한다.
한편, 상기 클라이언트 프로그램 저장부(150)에는 실행코자 하는 상기 클라이언트 프로그램의 코드 정보가 저장될 수 있다.
상기 제어모듈(110)은 상기 인터페이스 모듈(120)에 의하여 상기 메모리 장치(300)가 상기 호스트 장치에 접속됨이 인식되면, 상기 클라이언트 프로그램을 실행하기 위한 등록정보를 상기 호스트 장치(200)에 등록하도록 상기 등록모듈(130)을 제어하고, 등록정보에 기초하여 서버와 통신을 하면서 상기 클라이언트 프로그램을 실행시키며, 상기 클라이언트 프로그램이 종료되면, 상기 등록정보를 상기 호스트 장치(200)에서 삭제하도록 상기 삭제모듈(140)을 제어할 수 있다.
한편, 상기 등록모듈(130)은 상기 메모리 장치(100)의 식별자(예컨대, 디바이스 시리얼 넘버(serial number) 등)에 기초한 인증정보를 포함할 수 있다. 메모리 장치(100)의 식별자는 메모리 장치별로 유일한 값을 가지는 정보를 의미하며, 상기 인증정보는 상기 메모리 장치(100)의 식별자 자체 또는 상기 메모리 장치(100)의 식별자를 소정의 암호화 스킴(scheme)으로 암호화한 정보일 수 있다. 상기 인증정보를 이용하여 인증을 하는 경우에는 상기 클라이언트 프로그램의 자동실행장치가 불법복제되어 다른 메모리 장치에 복제된 경우에 상기 클라이언트 프로그램의 실행을 방지할 수 있는 효과가 있다. 상기 인증정보는 상기 클라이언트 프로그램이 상기 메모리 장치(100)에 저장되는 과정에서 상기 등록모듈(130)에 기록될 수 있다.
한편, 상기 등록모듈(130)이 상기 클라이언트 프로그램의 일부를 상기 호스트 장치(200)에 등록하는 경우라면, 등록된 상기 클라이언트 프로그램의 일부는 상기 호스트 장치(200)를 로컬로 하여(locally) 실행된다. 따라서, 상기 클라이언트 프로그램의 나머지 부분은 상기 메모리 장치(100)를 로컬로 하여 실행될 수 있다. 로컬로 하여 실행된다고 함은, 상기 호스트 장치(200)에 구비되는 프로세서가 상기 클라이언트 프로그램의 코드를 접근하고자 할때, 상기 코드를 읽어오는 위치를 의미할 수 있다. 즉, 상기 메모리 장치(100)를 로컬로 하여 실행된다고 함은 상기 프로세서가 상기 메모리 장치(100)의 상기 클라이언트 프로그램 저장부(150)에서 소정의 단위(예컨대, 페이지)로 메인 메모리 또는 캐쉬 메모리 등에 로딩하는 것을 의미할 수 있다.
결국 전술한 바와 같이, 본 발명의 실시 예에 따른 클라이언트 프로그램의 자동실행방법은 최소한의 등록정보를 등록할 수 있으며, 구현 예 및/또는 상기 클라이언트 프로그램의 종류, 특징에 따라 상기 클라이언트 프로그램의 전보를 상기 메모리 장치(100)를 로컬로 하여 실행할 수도 있다. 따라서, 상기 호스트 장치(200)에 상기 클라이언트 프로그램이 실행되면서 생성되는 정보 또는 실행하기 위해 저장되어야 하는 정보를 프로그램의 종료 후 삭제하는 것뿐만 아니라, 애초에 등록이 최소화되도록 할 수 있다.
본 발명의 실시 예에 따른 클라이언트 프로그램의 자동실행장치는 USB 메모리장치에 저장될 수 있다. 상기 USB 메모리 장치는 본 발명의 기술적 사상을 구현하기 위해 최소한 상기 클라이언트 프로그램의 자동실행 장치가 저장되는 저장 수단 및 상기 클라이언트 프로그램의 자동실행 장치를 실행하는 프로세서가 포함되는 호스트에 접속하기 위한 접속 수단을 포함하는 것이 바람직하다. 상기 USB 메모리 장치는 상기 클라이언트 프로그램의 자동실행장치를 저장한 채로 사용자들에게 제공, 판매될 수 있다.
본 발명의 실시 예에 따른 클라이언트 프로그램의 자동실행방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전 송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 실시 예에 따른 클라이언트 프로그램의 자동실행 시스템의 개략적인 기능 블록도를 나타낸다.
도 2는 본 발명의 실시 예에 따른 클라이언트 프로그램의 자동실행장치의 개략적인 블록 구성도를 나타낸다.

Claims (9)

  1. 클라이언트 프로그램을 포함하는 클라이언트 프로그램의 자동실행 장치가 저장된 메모리 장치가 호스트 장치에 접속되는 단계;
    상기 메모리 장치가 상기 호스트 장치에 접속됨이 인식되면, 상기 클라이언트 프로그램의 자동실행 장치가 상기 클라이언트 프로그램을 실행하기 위한 등록정보를 상기 호스트 장치에 등록하는 단계;
    상기 등록정보에 기초하여 상기 클라이언트 프로그램이 서버와 통신을 하면서 실행되는 단계; 및
    상기 클라이언트 프로그램이 종료되면, 상기 클라이언트 프로그램의 자동실행 장치는 상기 등록정보를 상기 호스트 장치에서 삭제하는 단계를 포함하며,
    상기 서버는 데이터 프로세싱 부하가 많이 걸리는 태스크를 수행하고, 상기 클라이언트 프로그램에서는 최소한의 데이터 프로세싱만을 수행하는 클라이언트 프로그램의 자동실행 방법.
  2. 제 1항에 있어서, 상기 등록정보를 상기 호스트 장치에 등록하는 단계는,
    상기 메모리 장치의 식별자에 기초한 인증정보를 이용하여 상기 서버로부터 인증을 받는 단계를 포함하며,
    인증 결과 상기 메모리 장치가 인증이 안되는 경우, 상기 클라이언트 프로그램이 실행되지 않는 클라이언트 프로그램의 자동실행 방법.
  3. 제 1항에 있어서, 상기 등록정보는,
    상기 서버에 접속하기 위해 필요한 접속 정보 또는 상기 클라이언트 프로그램의 일부 중 적어도 하나를 포함하는 클라이언트 프로그램의 자동실행 방법.
  4. 제 3항에 있어서, 상기 클라이언트 프로그램의 일부가 상기 호스트 장치에 등록된 경우,
    상기 클라이언트 프로그램의 나머지 부분은 상기 메모리 장치를 로컬로 하여 실행되는 클라이언트 프로그램의 자동실행 방법.
  5. 제 1항에 있어서, 상기 메모리 장치는 USB 메모리 장치인 클라이언트 프로그램의 자동실행 방법.
  6. 제 1항 내지 제5항 중 어느 한 항에 기재된 방법을 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  7. 제어모듈;
    클라이언트 프로그램이 저장되는 클라이언트 프로그램 저장부;
    메모리 장치가 호스트 장치에 접속되는지를 인지하는 인터페이스 모듈;
    상기 클라이언트 프로그램을 실행하기 위한 등록정보를 상기 호스트 장치에 등록하기 위한 등록 모듈; 및
    상기 등록정보를 상기 호스트 장치에서 삭제하기 위한 삭제 모듈을 포함하며,
    상기 제어모듈은 상기 인터페이스 모듈에 의하여 상기 메모리 장치가 상기 호스트 장치에 접속됨이 인식되면, 상기 클라이언트 프로그램을 실행하기 위한 등록정보를 상기 호스트 장치에 등록하도록 상기 등록 모듈을 제어하고, 등록정보에 기초하여 서버와 통신을 하면서 상기 클라이언트 프로그램을 실행시키며, 상기 클라이언트 프로그램이 종료되면, 상기 등록정보를 상기 호스트 장치에서 삭제하도록 상기 삭제모듈을 제어하며,
    상기 서버는 데이터 프로세싱 부하가 많이 걸리는 태스크를 수행하고, 상기 클라이언트 프로그램에서는 최소한의 데이터 프로세싱만을 수행하는 클라이언트 프로그램의 자동실행 장치.
  8. 제 1항에 있어서, 상기 등록모듈은,
    상기 메모리 장치의 식별자에 기초한 인증정보를 포함하며,
    상기 제어모듈은 상기 인증 정보를 이용하여 상기 서버로부터 상기 메모리 장치를 인증 받는 클라이언트 프로그램의 자동실행 장치.
  9. 제 7항에 기재된 클라이언트 프로그램의 자동실행 장치가 저장되는 저장 수단; 및
    상기 클라이언트 프로그램의 자동실행 장치를 실행하는 프로세서가 포함되는 호스트에 접속하기 위한 접속 수단을 포함하는 메모리장치.
KR1020080018922A 2008-02-29 2008-02-29 클라이언트 프로그램의 자동실행방법, 그 장치, 및 상기 장치를 포함하는 메모리 장치 KR100964326B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080018922A KR100964326B1 (ko) 2008-02-29 2008-02-29 클라이언트 프로그램의 자동실행방법, 그 장치, 및 상기 장치를 포함하는 메모리 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080018922A KR100964326B1 (ko) 2008-02-29 2008-02-29 클라이언트 프로그램의 자동실행방법, 그 장치, 및 상기 장치를 포함하는 메모리 장치

Publications (2)

Publication Number Publication Date
KR20090093416A KR20090093416A (ko) 2009-09-02
KR100964326B1 true KR100964326B1 (ko) 2010-06-17

Family

ID=41301900

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080018922A KR100964326B1 (ko) 2008-02-29 2008-02-29 클라이언트 프로그램의 자동실행방법, 그 장치, 및 상기 장치를 포함하는 메모리 장치

Country Status (1)

Country Link
KR (1) KR100964326B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060062587A (ko) * 2004-12-04 2006-06-12 소프트온넷(주) 호스트 컴퓨터상에서 응용프로그램 수행을 위한 휴대용디지털 저장장치 시스템 및 방법
KR20060067815A (ko) * 2004-12-15 2006-06-20 마이크로소프트 코포레이션 휴대용 저장 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060062587A (ko) * 2004-12-04 2006-06-12 소프트온넷(주) 호스트 컴퓨터상에서 응용프로그램 수행을 위한 휴대용디지털 저장장치 시스템 및 방법
KR20060067815A (ko) * 2004-12-15 2006-06-20 마이크로소프트 코포레이션 휴대용 저장 장치 및 방법

Also Published As

Publication number Publication date
KR20090093416A (ko) 2009-09-02

Similar Documents

Publication Publication Date Title
US7716384B2 (en) Removable device and control circuit for allowing a medium insertion
KR100713128B1 (ko) 바이러스 방역 장치 및 시스템
US9667426B2 (en) Information processing apparatus, program, storage medium and information processing system
KR100915803B1 (ko) 임베디드 리눅스 커널의 보안성 강화를 위한 응용 프로그램구동 방법 및 시스템
US8239674B2 (en) System and method of protecting files from unauthorized modification or deletion
JP4245374B2 (ja) 着脱式デバイスおよび制御回路
US7797504B2 (en) Device for processing information based on stored identifiers and a working method therof.
WO2009155805A1 (zh) 恶意代码检测方法及系统
JP2009146193A (ja) 無線通信端末、無線通信端末のデータを保護する方法、データを無線通信端末に保護させるためのプログラム、および当該プログラムを格納した記録媒体
KR20120050742A (ko) 커널 네이티브 에이피아이의 후킹 처리를 통한 디지털 저작권 관리 장치 및 방법
US20130036431A1 (en) Constraining Execution of Specified Device Drivers
CN101369302B (zh) 一种控制信息安全设备访问权限的方法和系统
US9219728B1 (en) Systems and methods for protecting services
KR100964326B1 (ko) 클라이언트 프로그램의 자동실행방법, 그 장치, 및 상기 장치를 포함하는 메모리 장치
CN112231761B (zh) 一种设备挂载方法、计算设备及可读存储介质
KR101844534B1 (ko) 전자 파일에 대한 보안 적용 방법
JP2009169868A (ja) 記憶領域アクセス装置及び記憶領域のアクセス方法
JP4388040B2 (ja) 不正接続防止システム、不正接続防止方法、ユーザ端末、及びユーザ端末用プログラム
KR20180060804A (ko) 전자장치, 전자장치의 제어방법 및 기록매체
CN112052477B (zh) 基于便携式操作系统盘的隔离方法及系统
CN102110214A (zh) 防止可移动存储器中的病毒感染计算机的方法及装置
US8533812B1 (en) Systems and methods for securing access to kernel devices
KR20100090119A (ko) 애플리케이션 가상화를 위한 이동형 메모리 장치의 보안 제공방법 및 상기 이동형 메모리 장치
CN112685701A (zh) 一种基于u盘的音频制品版权安全认证系统及方法
KR101264305B1 (ko) 파일 보호 장치, 파일 보호 방법, 및 컴퓨터 판독가능 기록 매체

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
FPAY Annual fee payment

Payment date: 20131210

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee