KR20130101776A - 파일 시스템 기능을 제공하는 단말기의 장치 및 방법 - Google Patents

파일 시스템 기능을 제공하는 단말기의 장치 및 방법 Download PDF

Info

Publication number
KR20130101776A
KR20130101776A KR1020120022786A KR20120022786A KR20130101776A KR 20130101776 A KR20130101776 A KR 20130101776A KR 1020120022786 A KR1020120022786 A KR 1020120022786A KR 20120022786 A KR20120022786 A KR 20120022786A KR 20130101776 A KR20130101776 A KR 20130101776A
Authority
KR
South Korea
Prior art keywords
application
file system
command
executed
specific command
Prior art date
Application number
KR1020120022786A
Other languages
English (en)
Other versions
KR101920239B1 (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 KR1020120022786A priority Critical patent/KR101920239B1/ko
Priority to US13/713,093 priority patent/US9009737B2/en
Priority to EP13153453.9A priority patent/EP2637099A3/en
Priority to CN201310069058.7A priority patent/CN103309751B/zh
Publication of KR20130101776A publication Critical patent/KR20130101776A/ko
Application granted granted Critical
Publication of KR101920239B1 publication Critical patent/KR101920239B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • 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/448Execution paradigms, e.g. implementations of programming paradigms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은, 단말기의 동작 방법에 있어서, 제1 애플리케이션으로부터 특정 명령어를 수신하는 과정; 제2 애플리케이션의 실행 여부와 관계없이, 상기 수신한 특정 명령어를 상기 제2 애플리케이션으로 전달하는 과정; 및 상기 제2 애플리케이션으로부터 상기 특정 명령어의 실행 결과를 전달받는 과정을 포함하는 것을 그 구성상의 특징으로 하는 파일 시스템 기능을 제공하는 단말기의 방법에 관한 것이다.

Description

파일 시스템 기능을 제공하는 단말기의 장치 및 방법{APPARATAS AND METHOD OF PROVIDING A FILE SYSTEM FUNCTION IN A TERMINAL}
본 발명은 파일 시스템 기능에 관한 것이다.
파일 시스템 기능(file system function)을 제공하는 응용 프로그램이 개발되면서, 운영체제(Operating System) 외부에서 제공되는 파일 시스템 기능을 운영체제에 통합되도록 발전하였다. 예를 들면, 외부 응용 프로그램이 파일 시스템의 사용을 요청하면 커널(kernel) 내 VFS(Virtual File System)를 통하여 EXT3(Extended File System 3), NTFS(NT File System), FAT32(File Allocation Table 32) 등과 같은 실제 파일 시스템으로 전달되어 처리된다. 또한, FUSE(File System in Userspace)도 응용 프로그램에서 제공되는 파일 시스템이 VFS 하부에서 처리되도록 하여 이를 사용하는 응용 프로그램에서는 표준 입출력 인터페이스를 통하여 사용할 수 있게 되었다.
그러나, 종래에 파일 시스템 기능을 제공하는 응용 프로그램을 사용하고자 하는 경우에는 해당 응용 프로그램이 실행중이어야 했다. 왜냐하면, 해당 응용 프로그램이 실행중이 아니라면, 파일 시스템에 대한 사용 요청을 처리할 수가 없기 때문이다. 따라서, 파일 시스템을 사용하기 위해서는 해당 파일 시스템 기능을 제공하는 응용 프로그램이 미리 실행되어 있어야 하는 문제점이 있었다. 그러므로, 해당 파일 시스템을 사용할 시점을 미리 알 수 없기 때문에 사용자의 편의성이 떨어지는 문제점도 있었다.
본 발명은 기존에 제안된 방법들의 상기와 같은 문제점들을 해결하기 위해 제안된 것으로서, 운영체제 외부에서 응용 프로그램을 통해 제공되는 파일 시스템을 필요할 때 사용자가 쉽게 사용할 수 있는 장치 및 방법을 제공하는 것을 목적으로 한다.
본 발명의 다른 목적은, 파일 시스템을 제공하는 응용 프로그램의 동작 시점을 사용자가 설정할 수 있어 사용자의 편의성을 향상시켜 줄 수 있는 장치 및 방법을 제공하는 것을 목적으로 한다.
본 발명의 또 다른 목적은, 단말기에 별도의 인디케이터(indicator)를 표시하도록 하여 외부 파일 시스템의 동작 여부에 관한 정보를 제공할 수 있는 장치 및 방법을 제공하는 것을 목적으로 한다.
상기한 목적을 달성하기 위한 본 발명의 특징에 따른 파일 시스템 기능을 제공하는 단말기의 방법은, 단말기의 동작 방법에 있어서, 제1 애플리케이션으로부터 특정 명령어를 수신하는 과정; 제2 애플리케이션의 실행 여부와 관계없이, 상기 수신한 특정 명령어를 상기 제2 애플리케이션으로 전달하는 과정; 및 상기 제2 애플리케이션으로부터 상기 특정 명령어의 실행 결과를 전달받는 과정을 포함하는 것을 그 구성상의 특징으로 한다.
바람직하게는, 상기 제2 애플리케이션은, 파일 시스템 기능(file system function)을 제공하는 애플리케이션일 수 있다.
바람직하게는, 상기 특정 명령어는, 특정 파일을 읽어오라는 명령어 및 특정 파일을 저장하라는 명령어 중 적어도 하나를 포함할 수 있다.
바람직하게는, 상기 제2 애플리케이션을 설치하는 과정; 상기 설치된 제2 애플리케이션의 정보를 읽어들이는 과정; 상기 설치된 제2 애플리케이션의 실행 상태를 입력받는 과정; 및 상기 읽어들인 제2 애플리케이션의 정보 및 상기 입력받은 제2 애플리케이션의 실행 상태를 저장하는 과정을 더 포함할 수 있다.
바람직하게는, 상기 제2 애플리케이션의 정보는, 상기 제2 애플리케이션의 아이디, 제2 애플리케이션의 암호화 관련 정보 및 제2 애플리케이션의 기능 중 적어도 하나를 포함할 수 있다.
바람직하게는, 상기 설치된 제2 애플리케이션의 실행 상태를 입력받는 과정은, 상기 제2 애플리케이션이 항상 실행되도록 하는 명령어를 입력받는 과정, 상기 제2 애플리케이션의 실행이 필요할 때만 자동으로 실행되도록 하는 명령어를 입력받는 과정 및 상기 제2 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받도록 하는 과정 중 적어도 하나의 과정을 포함할 수 있다.
바람직하게는, 상기 제2 애플리케이션의 실행 여부와 관계없이, 상기 수신한 특정 명령어를 상기 제2 애플리케이션으로 전달하는 과정은, 상기 제2 애플리케이션의 실행이 중단된 경우라면, 상기 제2 애플리케이션의 설정된 실행 상태를 확인하는 과정; 상기 실행 상태가 상기 제2 애플리케이션의 실행이 필요할 때만 자동으로 실행되도록 하는 상태로 확인된 경우, 상기 제2 애플리케이션을 자동으로 실행시키는 과정; 및 상기 실행된 제2 애플리케이션으로, 상기 수신한 특정 명령어를 전달하는 과정을 포함할 수 있다.
바람직하게는, 상기 제2 애플리케이션의 실행 여부와 관계없이, 상기 수신한 특정 명령어를 상기 제2 애플리케이션으로 전달하는 과정은, 상기 제2 애플리케이션의 실행이 중단된 경우라면, 상기 제2 애플리케이션의 설정된 실행 상태를 확인하는 과정; 상기 실행 상태가 상기 제2 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받도록 하는 상태로 확인된 경우, 상기 제2 애플리케이션의 실행 여부에 관한 메시지를 디스플레이하는 과정; 상기 제2 애플리케이션을 실행하도록 하는 명령어를 입력받아, 상기 제2 애플리케이션을 실행시키는 과정; 및 상기 실행된 제2 애플리케이션으로, 상기 수신한 명령어를 전달하는 과정을 포함할 수 있다.
바람직하게는, 상기 특정 명령어의 실행 결과를 상기 제1 애플리케이션으로 피드백(feedback)하는 과정을 더 포함할 수 있다.
상기한 목적을 달성하기 위한 본 발명의 특징에 따른 파일 시스템 기능을 제공하는 단말기의 장치는, 단말기의 장치에 있어서, 제1 애플리케이션으로부터 특정 명령어를 수신하여, 제2 애플리케이션의 실행 여부와 관계없이 상기 수신한 특정 명령어를 상기 제2 애플리케이션으로 송신하고, 상기 제2 애플리케이션으로부터 상기 특정 명령어의 실행 결과를 수신하는 온 디맨드 파일 시스템 매니저(On Demand File System Manager) 모듈; 및 상기 제2 애플리케이션이 동작할 수 있도록 상기 제2 애플리케이션과 상기 온 디맨드 파일 시스템 매니저 모듈에 공통된 인터페이스를 제공하는 온 디맨드 파일 시스템 인터페이스(On Demand File System Interface) 모듈을 포함하는 것을 그 구성상의 특징으로 한다.
바람직하게는, 상기 제2 애플리케이션은, 파일 시스템 기능(file system function)을 제공하는 애플리케이션일 수 있다.
바람직하게는, 상기 특정 명령어는, 특정 파일을 읽어오라는 명령어 및 특정 파일을 저장하라는 명령어 중 적어도 하나를 포함할 수 있다.
바람직하게는, 상기 제2 애플리케이션을 설치하여, 상기 설치된 제2 애플리케이션의 정보를 읽어들이고, 상기 설치된 제2 애플리케이션의 실행 상태를 입력받는 패키지 매니저(Package Manager) 모듈을 더 포함하고, 상기 온 디맨드 파일 시스템 매니저 모듈은, 상기 패키지 매니저 모듈로부터 상기 읽어들인 제2 애플리케이션의 정보 및 상기 입력받은 제2 애플리케이션의 실행 상태를 저장할 수 있다.
바람직하게는, 상기 제2 애플리케이션의 정보는, 상기 제2 애플리케이션의 아이디, 제2 애플리케이션의 암호화 관련 정보 및 제2 애플리케이션의 기능 중 적어도 하나를 포함할 수 있다.
바람직하게는, 상기 패키지 매니저 모듈은, 상기 제2 애플리케이션이 항상 실행되도록 하는 명령어를 입력받거나, 상기 제2 애플리케이션의 실행이 필요할 때만 자동으로 실행되도록 하는 명령어를 입력받거나, 상기 제2 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받을 수 있다.
바람직하게는, 상기 온 디맨드 파일 시스템 매니저 모듈은, 상기 제2 애플리케이션의 실행이 중단된 경우라면, 상기 제2 애플리케이션의 설정된 실행 상태를 확인하고, 상기 실행 상태가 상기 제2 애플리케이션의 실행이 필요할 때만 자동으로 실행되도록 하는 상태로 확인된 경우, 상기 제2 애플리케이션을 자동으로 실행시키는 애플리케이션 매니저(Application Manager) 모듈을 더 포함하고, 상기 온 디맨드 파일 시스템 매니저 모듈은, 상기 실행된 제2 애플리케이션으로 상기 전달받은 특정 명령어를 전달할 수 있다.
바람직하게는, 상기 온 디맨드 파일 시스템 매니저 모듈은, 상기 제2 애플리케이션의 실행이 중단된 경우라면, 상기 제2 애플리케이션의 설정된 실행 상태를 확인하고, 상기 실행 상태가 상기 제2 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받도록 하는 상태로 확인된 경우 상기 제2 애플리케이션의 실행 여부에 관한 메시지를 디스플레이하도록 하며, 상기 제2 애플리케이션을 실행하도록 하는 명령어를 전달받는 그래픽 라이브러리(Graphic Library) 모듈을 더 포함하며, 상기 온 디맨드 파일 시스템 매니저 모듈은, 상기 제2 애플리케이션을 실행시켜, 상기 실행된 제2 애플리케이션으로 상기 수신한 명령어를 전달할 수 있다.
바람직하게는, 상기 온 디맨드 파일 시스템 매니저 모듈은, 상기 특정 명령어의 실행 결과를 상기 제1 애플리케이션으로 피드백할 수 있다.
본 발명의 파일 시스템 기능을 제공하는 단말기의 장치 및 방법에 따르면, 운영체제 외부에서 응용 프로그램을 통해 제공되는 파일 시스템을 필요할 때 사용자가 쉽게 사용할 수 있어 사용자의 편의성을 향상시켜주는 효과가 있다.
도 1은 본 발명에 따른 파일 시스템 기능을 제공하는 단말기의 전체적인 구성을 도시한 도면.
도 2는 본 발명에 따른 파일 시스템 기능을 설정하는 일 실시예를 나타낸 도면.
도 3의(a)는 본 발명에 따른 파일 시스템 기능을 설정할 애플리케이션을 선택하는 일 실시예를 나타낸 도면.
도 4는 본 발명에 따른 파일 시스템 기능을 제공하는 복 수개의 애플리케이션이 설정된 경우 파일 시스템 기능을 수행할 애플리케이션을 선택하는 일 실시예를 나타낸 도면.
도 5는 본 발명에 따른 파일 시스템 기능의 실행 상태를 설정하는 일 실시예를 나타낸 도면.
도 6은 본 발명에 따른 파일 시스템 기능의 제공 여부를 디스플레이하는 인디케이터 동작의 일 실시예를 나타낸 도면.
도 7은 본 발명의 파일 시스템 기능을 제공하는 단말기의 동작 순서를 나타낸 순서도.
도 8은 본 발명에 따른 파일 시스템 기능을 제공하는 단말기의 구성을 도시한 블록도.
이하, 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예를 상세하게 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 또한, 유사한 기능 및 작용을 하는 부분에 대해서는 도면 전체에 걸쳐 동일한 부호를 사용한다.
도 1은 본 발명에 따른 파일 시스템 기능을 제공하는 단말기의 전체적인 구성을 도시한 도면이다. 먼저, 제2 애플리케이션(101)은 파일 시스템 기능(File System Function)을 제공하는 애플리케이션이다. 여기서, 파일 시스템이란 컴퓨터에서 파일이나 자료를 쉽게 발견 및 접근할 수 있도록 보관 또는 조직하는 체제를 가리키는 말이다. 보다 구체적으로는, 파일 시스템은 통상 하드 디스크나 시디롬과 같은 실제 자료 보관 장치를 사용하여 파일의 물리적 소재를 관리하는 것을 가리키나 네트워크 프로토콜을 수행하는 클라이언트를 통하여 파일 서버상의 자료로의 접근을 제공하는 방식과 가상의 형태로서 접근 수단만이 존재하는 방식도 파일 시스템의 범위에 포함될 수 있다. 일반적으로 파일 시스템은 저장 장치, 입출력 제어, 기본 파일시스템, 파일조직 모듈, 가상 파일시스템과 같이 여러 개의 계층으로 구성되어 있다. 그렇게 함으로써 하드 디스크, 시디롬 드라이브, 플래시 메모리 등 다양한 형태의 저장 장치를 지원할 수 있고, 하나의 시스템에 여러 개의 파일 시스템을 사용할 수 있다. 본 발명의 제2 애플리케이션(101)은 파일 시스템 기능을 제공하는 애플리케이션으로, 제1 애플리케이션(104)이 요청한 특정 명령어를 실행한다. 예를 들면, 제1 애플리케이션(104)이 특정 명령어를 단말기에 전달하면, 단말기는 glibc(105) 및 VFS(Virtual File System, 106)을 통하여, FUSE(File System in Userspace, 107)가 특정 명령어를 전달받는다. 이후, FUSE(107)에서 전달받은 특정 명령어는 온 디맨드 파일 시스템 매니저 모듈(On Demand File System Manager Modual, 103) 및 온 디맨드 파일 시스템 인터페이스 모듈(On Demand File System Interface Modual, 108)을 통하여, 제2 애플리케이션(101)으로 전달된다. 특정 명령어를 전달받은 제2 애플리케이션(101)은 해당 명령어를 실행하여 그 피드백을 상술한 순서와 반대로 제1 애플리케이션(104)으로 전달한다.
종래에는 단말기가 제2 애플리케이션이 실행 중인 경우에만, 제1 애플리케이션으로부터 전달받은 특정 명령어를 제2 애플리케이션으로 전달할 수 있었다. 즉, 제2 애플리케이션이 실행 중에 있어야만 해당 명령어를 전달받아 실행할 수 있었다. 그러나, 본 발명에서는 단말기는 파일 시스템 기능을 제공하는 제2 애플리케이션(101)의 실행 여부와 관계없이 제1 애플리케이션(104)으로부터 전달받은 특정 명령어를 제2 애플리케이션(101)으로 전달할 수 있다. 즉, 본 발명에서 단말기는 사용자로부터 제2 애플리케이션의 실행 상태를 입력받아, 제2 애플리케이션(101)이 실행중이 아니더라도 제1 애플리케이션(101)으로부터 전달받은 특정 명령어를 제2 애플리케이션(101)으로 전달하여, 제2 애플리케이션(101)으로부터 해당 명령어의 실행 결과를 전달받을 수 있다. 보다 구체적으로, 본 발명에서는 제2 애플리케이션(101)이 항상 실행되도록 설정할 수 있고, 제2 애플리케이션(101)의 실행이 필요할 때만 자동으로 실행되도록 설정할 수 있으며, 제2 애플리케이션(101)의 실행이 필요할 때마다 실행 여부를 입력받도록 할 수도 있다. 바람직하게는, 제2 애플리케이션(101)의 실행이 필요할 때만 자동으로 실행되도록 설정하거나, 제2 애플리케이션(101)의 실행이 필요할 때마다 실행 여부를 사용자로부터 입력받도록 설정하는 것이 효율적이다. 왜냐하면, 파일 시스템 서비스는 일반적으로 많은 데이터 통신을 필요로 하고, CPU, RAM 및 배터리 등의 기기의 리소스를 지속적으로 사용하기 때문에 항상 실행되도록 하는 것은 바람직하지 못하다.
패키지 매니저 모듈(Package Manager Modual, 102)은 파일 시스템 기능을 제공하는 제2 애플리케이션(101)이 단말기에 설치된 경우에, 제2 애플리케이션(101)으로부터 제2 애플리케이션(101)의 정보를 읽어온다. 여기서, 제2 애플리케이션의 정보는 제2 애플리케이션의 아이디, 제2 애플리케이션의 암호화 관련 정보 및 제2 애플리케이션의 기능 중 적어도 하나를 포함하는 정보로 정의된다. 보다 구체적으로는, 제2 애플리케이션(101)이 단말기에 설치되면 가장 먼저 패키지 매니저 모듈(102)은 제2 애플리케이션(101)으로부터 제2 애플리케이션의 아이디, 제2 애플리케이션의 암호화 관련 정보 및 제2 애플리케이션의 기능 등에 관한 정보를 읽어들여 이를 저장한다. 이후, 패키지 매니저 모듈(102)은 저장된 제2 애플리케이션의 정보를 온 디맨드 파일 시스템 매니저 모듈(On Demand File System Manager Modual, 103)로 전달한다.
패키지 매니저 모듈(102)의 또 다른 기능은 사용자로부터 입력받은 제2 애플리케이션의 실행 상태를 저장한다. 보다 구체적으로는, 단말기가 사용자로부터 제2 애플리케이션이 항상 실행되도록 하는 명령어를 입력받거나, 제2 애플리케이션의 실행이 필요할 때만 자동으로 실행되도록 하는 명령어를 입력받거나, 제2 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받은 경우에 각각의 실행 상태가 패키지 매니저 모듈(102)에 저장된다. 따라서, 패키지 매니저 모듈(102)은 사용자에 의하여 설정된 제2 애플리케이션의 실행 상태에 따라 각각의 동작을 수행한다. 패키지 매니저 모듈(102)의 추가적인 기능으로 제2 애플리케이션(101)에 파일 시스템 기능이 포함되어 있는지 식별하는 역할을 수행한다. 보다 구체적으로는, 단말기에 제2 애플리케이션(101)이 설치된 경우에 패키지 매니저 모듈(102)은 제2 애플리케이션(101)으로부터 제2 애플리케이션의 정보를 읽어와 해당 애플리케이션에 파일 시스템 기능이 포함되어 있는지 식별할 수 있다.
온 디맨드 파일 시스템 매니저 모듈(On Demand File System Manager Modual, 103)은 FUSE(File System in Userspace, 107)로부터 제1 애플리케이션(104)이 요청한 특정 명령어를 전달받아, 온 디맨드 파일 시스템 인터페이스 모듈(On Demand File System Interface Modual, 108)을 통하여 제1 애플리케이션(104)으로 특정 명령어를 전달하는 역할을 한다. 보다 구체적으로는, FUSE로부터 특정 명령어를 전달받은 온 디맨드 파일 시스템 매니저 모듈(103)은 제2 애플리케이션의 실행 상태를 감지하여, 제2 애플리케이션(101)이 실행중인 경우에는 온 디맨드 파일 시스템 인터페이스 모듈(108)을 통하여 제2 애플리케이션(101)으로 특정 명령어를 바로 전달한다. 그러나, 만약 제2 애플리케이션(101)이 실행중이 아니라면, 온 디맨드 파일 시스템 매니저(103)는 애플리케이션 매니저(Application Manager Modual, 109)로 제2 애플리케이션(101)을 동작시키도록 하는 명령어를 전달한다. 이후, 온 디맨드 파일 시스템 매니저(103)로부터 제2 애플리케이션(101)을 실행시키도록 하는 명령어를 전달받은 애플리케이션 매니저 모듈(109)은 제2 애플리케이션(101)을 동작시킨다. 이후, 제2 애플리케이션(101)이 실행되어 해당 명령어를 수행하고, 명령어를 수행한 결과는 상술한 과정과 반대 과정으로 다시 제1 애플리케이션(104)으로 피드백된다. 즉, 제2 애플리케이션(101)에서 제1 애플리케이션이 요청한 특정 명령어를 수행하여, 수행한 결과는 온 디맨드 파일 시스템 인터페이스 모듈(108), 온 디맨드 파일 시스템 매니저 모듈(103), FUSE(107), VFS(106), glibc(105)를 통해서 다시 제1 애플리케이션(104)으로 피드백된다.
제1 애플리케이션(104)은 응용 프로그램에 해당하는 애플리케이션으로, 단말기에 특정 명령어를 전달한다. 즉, 본 발명에서는 제1 애플리케이션(104)은 특정 명령어를 단말기로 전달하지만, 단말기에서는 제1 애플리케이션(104)으로부터 전달받은 명령어를 단말기 내부의 운영체제(Operating System)에 요청하지 않고, 운영체제 외부에 존재하는 파일 시스템 기능을 제공하는 제2 애플리케이션(101)으로 전달한다. 따라서, 제1 애플리케이션(104)으로부터 전달받은 특정 명령어를 운영체제 내부에 요청하지 않고, 운영체제 외부에 존재하는 제2 애플리케이션으로부터 해당 명령어의 실행 결과를 전달받을 수 있어, 단말기에서 파일이나 자료를 쉽게 발견 및 접근할 수 있는 장점이 있다.
glibc(105) 및 VFS(Virtual File System, 106)는 각각 단말기 외부와 내부에 존재하는 표준화된 인터페이스이다. 즉, glibc(105) 및 VFS(106)는 제1 애플리케이션(104)으로부터 수신한 특정 명령어를 FUSE(107)로 전달할 수 있도록 하는 인터페이스이다.
FUSE(File System in Userspace, 107)는 유닉스 계열의 운영체제에 적재할 수 있는 커널 모듈(Kernel)이다. 보다 구체적으로는, FUSE를 이용하면 단말기에 운영체제와 같은 권한이 아닌 사용자가 커널 코드를 편집하지 않고도 자신의 파일 시스템을 만들 수 있는 장점이 있다. 즉, FUSE는 유저 인터페이스에서 파일 시스템 코드를 실행할 수 있도록 실제 커널 인터페이스와 유저 인터페이스를 연결하는 역할을 한다. 본 발명에서 FUSE(107)는 단말기가 제1 애플리케이션(104)으로부터 특정 명령어를 전달받으면, 해당 명령어를 수행할 수 있는 제2 애플리케이션(101)으로 그 명령어를 전달하는 역할을 한다. 바람직하게는, FUSE(107) 뿐만 아니라 INOTY가 그 역할을 수행할 수 있다.
온 디맨드 파일 시스템 인터페이스 모듈(On Demand File System Interface Modual, 108)은 온 디맨든 파일 시스템 매니저 모듈(103)과 제2 애플리케이션(101) 사이에 구비되어, 온 디맨드 파일 시스템 매니저 모듈(103)과 제2 애플리케이션(101)을 연결하는 인터페이스이다.
애플리케이션 매니저 모듈(Application Manager Modual, 109)은 제2 애플리케이션(101)을 동작시키는 역할을 한다. 보다 구체적으로는, 제2 애플리케이션(101)이 실행중이 아니라면, 애플리케이션 매니저 모듈(109)은 온 디맨드 파일 시스템 모듈(108)로부터 제2 애플리케이션(101)을 동작시키도록 하는 명령어를 전달받아 제2 애플리케이션(101)을 실행시킨다.
그래픽 라이브러리 모듈(Graphic Library Modual, 110)은 각종 설정 정보를 입력받기 위한 유저 인터페이스(User Interface)를 제공한다. 예를 들면, 사용자가 제2 애플리케이션의 실행 상태를 제2 애플리케이션이 필요할 때마다 실행 여부를 입력받도록 설정한 경우, 제2 애플리케이션의 실행이 필요할 때 단말기의 표시부를 통하여 제2 애플리케이션의 실행 여부를 디스플레이한다.
도 2는 본 발명에 따른 파일 시스템 기능을 설정하는 일 실시예를 나타낸 도면이다. 먼저, 본 발명에 따른 파일 시스템 기능을 설정하기 위하여 단말기의 메뉴 항목을 선택하면, 단말기에 저장된 다양한 애플리케이션이 디스플레이된다. 이중, 파일 시스템 기능을 설정하는 항목을 선택하면, 도 2의(a)에 도시된 바와 같이 단말기의 표시부에 파일 시스템 기능의 설정 여부의 메시지가 디스플레이된다. 이후, 사용자는 파일 시스템 기능을 설정하겠다는 명령어를 표시부에 입력하면, 파일 시스템 기능이 설정된다.
여기서, 파일 시스템이란 컴퓨터에서 파일이나 자료를 쉽게 발견 및 접근할 수 있도록 보관 또는 조직하는 체제를 가리키는 말이다. 보다 구체적으로는, 파일 시스템은 통상 하드 디스크나 시디롬과 같은 실제 자료 보관 장치를 사용하여 파일의 물리적 소재를 관리하는 것을 가리키나 네트워크 프로토콜을 수행하는 클라이언트를 통하여 파일 서버상의 자료로의 접근을 제공하는 방식과 가상의 형태로서 접근 수단만이 존재하는 방식도 파일 시스템의 범위에 포함될 수 있다. 일반적으로 파일 시스템은 저장 장치, 입출력 제어, 기본 파일시스템, 파일조직 모듈, 가상 파일시스템과 같이 여러 개의 계층으로 구성되어 있다. 그렇게 함으로써 하드 디스크, 시디롬 드라이브, 플래시 메모리 등 다양한 형태의 저장 장치를 지원할 수 있고, 하나의 시스템에 여러 개의 파일 시스템을 사용할 수 있다. 본 발명에서는 파일 시스템 기능을 제공하는 적어도 하나 이상의 애플리케이션을 설치하여, 응용 애플리케이션이 단말기에 특정 명령어를 수행하도록 요청한 경우에, 해당 명령어를 파일 시스템 기능을 제공하는 애플리케이션에서 실행될 수 있게 처리한다. 따라서, 단말기 내부의 운영체제에서 특정 명령어를 수행하는 것보다 파일이나 자료를 쉽게 발견 및 접근할 수 있어 효율성이 향상되는 장점이 있다.
도 2의(b)는 본 발명에 따른 파일 시스템 기능을 이용할 파일 디렉터리를 설정하는 일 실시예를 나타낸 도면이다. 먼저, 도 2의(a)를 통하여 상술한 바와 같이, 단말기에 파일 시스템 기능을 설정하였으면 파일 시스템 기능을 이용할 파일 디렉터리(directory)를 선택하게 된다. 보다 구체적으로는, 단말기에 저장되어 있는 다양한 컨텐츠 중에서 파일 시스템 기능을 이용할 컨텐츠를 선택한다는 의미이다. 즉, 단말기의 d 드라이브에 저장되어 있는 특정 파일을 파일 시스템 기능을 제공하는 애플리케이션으로 이동하여, 이후 응용 애플리케이션에서 파일 시스템 기능을 제공하는 애플리케이션으로 이동된 특정 파일을 호출한 경우에는 파일 시스템 기능을 제공하는 애플리케이션으로 특정 파일을 호출한다는 의미이다. 예를 들면, 도 2의(b)에 도시된 바와 같이, 사용자가 d 드라이브의 Media라는 디렉터리에 저장되어 있는 file 3이라는 파일을 선택하는 경우를 가정해보자. 이후, 응용 애플리케이션에서 단말기에 저장되어 있는 file 3라는 파일을 호출하는 경우에, 단말기는 단말기의 d 드라이브로 file 3이라는 파일을 호출하지 않고, file 3가 저장되어 있는 애플리케이션을 호출 명령을 전달한다. 따라서, 단말기 내부의 운영체제에서 특정 명령어를 수행하는 것보다 파일이나 자료를 쉽게 발견 및 접근할 수 있어 효율성이 향상되는 장점이 있다.
도 3의(a)는 본 발명에 따른 파일 시스템 기능을 설정할 애플리케이션을 선택하는 일 실시예를 나타낸 도면이다. 도 2를 통하여 상술한 바와 같이, 사용자가 파일 시스템 기능을 설정하고, 파일 시스템 기능을 이용할 파일의 디렉터리를 선택하였으면, 파일 시스템 기능을 설정할 애플리케이션을 선택하여야 한다. 보다 구체적으로는, 단말기에 설치한 여러 애플리케이션 중에서 파일 시스템 기능을 설치할 애플리케이션을 선택한다는 의미이다. 예를 들면, 사용자가 파일 시스템 기능을 선택한 후, 파일 시스템 기능을 이용할 파일의 디렉터리로 단말기의 d 드라이브의 Media라는 디렉터리에 저장되어 있는 file 3이라는 파일을 선택하였다고 가정하자. 이후, 사용자는 file 3라는 파일을 단말기의 d 드라이브로부터 저장할 애플리케이션을 선택한다. 도 3의(a)로 예를 들면, 사용자가 파일 시스템 기능을 이용할 파일의 디렉터리로 단말기의 d 드라이브의 Media라는 디렉터리에 저장되어 있는 file 3이라는 파일을 선택하였으면, 단말기의 표시부에 file 3를 저장할 애플리케이션을 선택하라는 메시지가 디스플레이된다. 단말기의 표시부에 디스플레이된 적어도 하나의 애플리케이션은 file 3의 파일을 저장하여 파일 시스템 기능을 제공할 수 있는 애플리케이션이다. 따라서, 사용자는 file 3의 파일을 저장하여 파일 시스템 기능을 제공할 애플리케이션을 선택할 수 있다. 도 3의(a)는 여러 애플리케이션 중에서 애플리케이션 2를 선택한 것으로, 선택된 애플리케이션 2는 file 3에 대하여 파일 시스템 기능을 제공할 수 있다. 물론 사용자의 설정에 의하여 파일 시스템 기능을 제공할 애플리케이션을 둘 이상으로 선택할 수도 있다. 도 3의(b)는 파일 시스템 기능을 제공할 애플리케이션으로 두 개의 애플리케이션이 선택된 실시예를 나타낸 것이다. 따라서, 사용자는 복 수개의 애플리케이션을 선택하여 단말기에 저장되어 있는 특정 컨텐츠에 대하여 복 수개의 애플리케이션에서 파일 시스템 기능에 제공될 수 있도록 설정할 수도 있다.
도 4는 본 발명에 따른 파일 시스템 기능을 제공하는 복 수개의 애플리케이션이 설정된 경우 파일 시스템 기능을 수행할 애플리케이션을 선택하는 일 실시예를 나타낸 도면이다. 도 3을 통하여 상술한 바와 같이, 본 발명에 따른 파일 시스템 기능을 제공하는 애플리케이션은 적어도 하나 이상으로 설정할 수 있기 때문에, 도 4는 이중 어느 하나를 선택하는 일 실시예를 나타낸 것이다. 예를 들면, 사용자가 file 3라는 파일에 대하여 파일 시스템 기능을 설정할 애플리케이션으로 애플리케이션 2와 애플리케이션 4를 선택하였다고 가정하자. 이후, 응용 애플리케이션에서 file 3라는 파일을 단말기로 호출한 경우에, 단말기에서는 file 3가 저장되어 있는 애플리케이션을 검색한 결과 애플리케이션 2와 애플리케이션 4가 검색될 것이다. 파일 시스템 기능을 제공하는 두 개의 애플리케이션을 검색한 단말기는, 도 4의(a)에 도시된 바와 같이, 단말기의 표시부에 flie 3가 저장되어 있는 애플리케이션이 두 개 검색되었다는 메시지를 디스플레이한다. 이후, 도 4의(b)에 도시된 바와 같이, 단말기는 파일 시스템 기능을 수행할 애플리케이션을 선택하라는 메시지를 디스플레이한다. 상술한 예를 들어 설명하면, file 3라는 파일에 대하여 파일 시스템 기능을 제공하는 애플리케이션 2와 애플리케이션 4 중, 어느 하나를 선택하는 메시지가 디스플레이된다. 이후, 사용자는 애플리케이션 2와 애플리케이션 4 중, 어느 하나를 선택하여 file 3의 파일을 애플리케이션 2로 호출할 수 있다. 즉, 단말기는 애플리케이션 2로부터 file 3를 호출하여, file 3를 호출한 응용 애플리케이션으로 file 3를 피드백할 수 있다. 따라서, 단말기 내부의 운영체제에서 특정 명령어를 수행하는 것보다 파일 시스템 기능을 제공하는 애플리케이션을 이용하여 파일이나 자료를 쉽게 발견 및 접근할 수 있다.
도 5는 본 발명에 따른 파일 시스템 기능의 실행 상태를 설정하는 일 실시예를 나타낸 도면이다. 여기서, 파일 시스템 기능의 실행 상태란, 파일 시스템 기능을 제공하는 애플리케이션의 실행 상태를 설정하는 것을 말한다. 보다 구체적으로, 본 발명에서는 파일 시스템 기능을 제공하는 애플리케이션이 항상 실행되는 상태, 애플리케이션의 실행이 필요할 때만 자동으로 실행되는 상태 및 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받는 상태의 세 가지의 실행 상태를 제안하고 있다.
먼저, 사용자에 의하여 파일 시스템 기능을 제공하는 애플리케이션이 항상 실행되도록 설정된 경우, 단말기가 동작 중이라면 파일 시스템 기능을 제공하는 애플리케이션은 항상 실행 상태에 있게 된다. 도 5의(a)는 파일 시스템 기능을 제공하는 애플리케이션이 항상 실행되도록 설정되는 일 실시예를 나타낸 것이다. 보다 구체적으로, 파일 시스템 기능을 설정하고, 파일 시스템 기능을 이용할 파일의 디렉터리를 입력하고, 파일 시스템 기능을 설정할 애플리케이션을 선택한 후에는 단말기의 표시부에 파일 시스템 기능의 실행 상태를 입력하라는 메시지가 디스플레이된다. 이후, 사용자는 단말기의 표시부에 디스플레이되어 있는 실행 상태 중, Always 부분을 선택하여 파일 시스템 기능이 항상 실행되도록 설정할 수 있다.
다른 사용 상태로, 사용자의 의하여 파일 시스템 기능을 제공하는 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받도록 설정된 경우, 평소에는 해당 애플리케이션이 동작하지 않다가 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받게 된다. 도 5의(b)는 파일 시스템 기능을 제공하는 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받도록 설정되는 일 실시예를 나타낸 것이다. 보다 구체적으로, 파일 시스템 기능을 설정하고, 파일 시스템 기능을 이용할 파일의 디렉터리를 입력하고, 파일 시스템 기능을 설정할 애플리케이션을 선택한 후에는 단말기의 표시부에 파일 시스템 기능의 실행 상태를 입력하라는 메시지가 디스플레이된다. 이후, 사용자는 단말기의 표시부에 디스플레이되어 있는 실행 상태 중, Pop-up 부분을 선택하여 파일 시스템 기능이 항상 실행되도록 설정할 수 있다.
또 다른 사용 상태로, 사용자의 의하여 파일 시스템 기능을 제공하는 애플리케이션의 실행이 필요할 때만 자동으로 실행되도록 설정된 경우, 평소에는 해당 애플리케이션이 동작하지 않다가 애플리케이션의 실행이 필요할 때만 자동으로 실행된다. 도 5의(c)는 파일 시스템 기능을 제공하는 애플리케이션의 실행이 필요할 때만 자동으로 실행하도록 설정되는 일 실시예를 나타낸 것이다. 보다 구체적으로, 파일 시스템 기능을 설정하고, 피일 시스템 기능을 이용할 파일의 디렉터리를 입력하고, 파일 시스템 기능을 설정할 애플리케이션을 선택한 후에 단말기의 표시부에 파일 시스템 기능의 실행 상태를 입력하라는 메시지가 디스플레이된다. 이후, 사용자는 단말기의 표시부에 디스플레이되어 있는 실행 상태 중, Automatic 부분을 선택하여 파일 시스템 기능이 필요할 때만 실행되도록 설정할 수 있다.
종래에는 단말기가 파일 시스템을 제공하는 애플리케이션이 실행 중인 경우에만, 응용 애플리케이션으로부터 전달받은 특정 명령어를 파일 시스템을 제공하는 애플리케이션으로 전달할 수 있었다. 즉, 파일 시스템을 제공하는 애플리케이션이 실행 중에 있어야만 해당 명령어를 전달받아 실행할 수 있었다. 그러나, 본 발명에서는 단말기는 파일 시스템 기능을 제공하는 애플리케이션의 실행 여부와 관계없이 응용 애플리케이션으로부터 전달받은 특정 명령어를 파일 시스템을 제공하는 애플리케이션으로 전달할 수 있다. 즉, 본 발명에서 단말기는 사용자로부터 파일 시스템을 제공하는 애플리케이션의 실행 상태를 입력받아, 애플리케이션이 실행중이 아니더라도 응용 애플리케이션으로부터 전달받은 특정 명령어를 파일 시스템을 제공하는 애플리케이션으로 전달하여, 파일 시스템을 제공하는 애플리케이션으로부터 해당 명령어의 실행 결과를 전달받을 수 있다.
도 6은 본 발명에 따른 파일 시스템 기능의 제공 여부를 디스플레이하는 인디케이터 동작의 일 실시예를 나타낸 도면이다. 먼저, 사용자는 도 6의(a)에 도시된 인디케이터(Indicator, 601)를 통하여 본 단말기가 파일 시스템 기능을 제공하는 단말기임을 확인할 수 있다. 보다 구체적으로, 파일 시스템 기능을 제공하는 단말기의 경우, 단말기의 일 측면에 인디케이터를 디스플레이하여 본 단말기가 파일 시스템 기능을 제공하는 단말기임을 나타낼 수 있다. 또한, 도 6의(b)에 도시된 인디케이터(602)를 통하여 현재 단말기에서 파일 시스템 기능을 제공하고 있다는 것을 나타낼 수 있다. 따라서, 사용자는 단말기의 일 측면에 디스플레이된 인디케이터를 확인하여 본 단말기에서 파일 시스템 기능이 제공되는 단말기인지 여부와 현재 파일 시스템 기능을 제공하고 있는지 여부를 확인할 수 있다.
아래의 <표 1>은 본 발명에 따른 파일 시스템을 제공하는 애플리케이션의 설치 정보의 일 실시예를 나타낸 것이다.
<?xml version="1.0"?>
-<Manifest>
<Id>Ow1kv60dix/</Id>
<Secret>4B659A055E80B77EE8834CB0FBD1B8625</Secret>
<AppVersion>1.0.1</AppVersion>
-<Privileges>
-<Privilege>
<Name>ALLSHARE</Name>
</Privilege>
-<Privilege>
<Name>STORAGE_SERVICE</Name>
</Privilege>
<Privileges>
-<DeviceProfile>
<APIVersion>2.0<</APIVersion>
<CPU>ARM9</CPU>
<InputDevice>Touch</InputDevice>
<MinimumHeapSize>16</MinimumHeapSize>
<MinimumVRAMSize>4</MinimumVRAMSize>
<ScreenSize>480x800</ScreenSize>
<SoundMixing>Enable</SoundMixing>
</DeviceProfile>
</Manifest>
여기서, 3행의 <Id>Ow1kv60dix/</Id>는 파일 시스템 기능을 제공하는 애플리케이션의 아이디를 나타낸 것이다.
4행의 <Secret>4B659A055E80B77EE8834CB0FBD1B8625</Secret>는 암호화 관련 정보를 나타낸 것이다. 또한, 8행의 <Name>ALLSHARE</Name>는 파일 시스템 기능을 제공하는 애플리케이션의 기능을 나타낸 것이다.
도 7은 본 발명의 파일 시스템 기능을 제공하는 단말기의 동작 순서를 나타낸 순서도이다. 도 7에 도시된 바와 같이, 먼저 사용자는 단말기에 파일 시스템 기능을 제공하는 애플리케이션을 설치한다(701). 여기서, 파일 시스템이란 컴퓨터에서 파일이나 자료를 쉽게 발견 및 접근할 수 있도록 보관 또는 조직하는 체제를 가리키는 말이다. 는 말이다. 보다 구체적으로는, 파일 시스템은 통상 하드 디스크나 시디롬과 같은 실제 자료 보관 장치를 사용하여 파일의 물리적 소재를 관리하는 것을 가리키나 네트워크 프로토콜을 수행하는 클라이언트를 통하여 파일 서버상의 자료로의 접근을 제공하는 방식과 가상의 형태로서 접근 수단만이 존재하는 방식도 파일 시스템의 범위에 포함될 수 있다. 일반적으로 파일 시스템은 저장 장치, 입출력 제어, 기본 파일시스템, 파일조직 모듈, 가상 파일시스템과 같이 여러 개의 계층으로 구성되어 있다. 그렇게 함으로써 하드 디스크, 시디롬 드라이브, 플래시 메모리 등 다양한 형태의 저장 장치를 지원할 수 있고, 하나의 시스템에 여러 개의 파일 시스템을 사용할 수 있다.
파일 시스템 기능을 제공하는 제2 애플리케이션을 단말기에 설치한 후, 제1 애플리케이션으로부터 특정 명령어를 수신한다(702). 보다 구체적으로, 제1 애플리케이션에서 특정 명령어를 단말기로 요청하면, 단말기에서는 특정 명령어를 단말기의 운영체제 내부로 전달하지 않고, 운영체제 외부에 위치하고 있는 제2 애플리케이션으로 전달하기 위해서 glibc 및 VFS(Virtual File System)을 통하여, FUSE(File System in Userspace)로 전달한다. 이후, 제1 애플리케이션으로부터 특정 명령어를 전달받은 FUSE는 해당 명령어를 온 디맨드 파일 시스템 매니저 모듈(On Demand File System Manager Modual)로 전달한다.
제1 애플리케이션으로부터 특정 명령어를 수신한 온 디맨드 파일 시스템 모듈은 제2 애플리케이션이 실행중인지 판단한다(703). 보다 구체적으로, 단말기는 파일 시스템 기능을 제공하는 제2 애플리케이션이 실행중이어야 제1 애플리케이션으로부터 전달받은 특정 명령어를 제2 애플리케이션으로 전달할 수 있기 때문이다. 종래에는 파일 시스템 기능을 제공하는 애플리케이션이 실행중이 아니라면, 상술한 특정 명령어를 파일 시스템 기능을 제공하는 애플리케이션으로 전달하지 못했다. 즉, 종래에 파일 시스템 기능을 제공하는 응용 프로그램을 사용하고자 하는 경우에는 해당 응용 프로그램이 실행중이어야 했다. 왜냐하면, 해당 응용 프로그램이 실행중이 아니라면, 파일 시스템에 대한 사용 요청을 처리할 수가 없기 때문이다. 따라서, 파일 시스템을 사용하기 위해서는 해당 파일 시스템 기능을 제공하는 응용 프로그램이 미리 실행되어 있어야 했다. 그러므로, 해당 파일 시스템을 사용할 시점을 미리 알 수 없기 때문에 사용자의 편의성이 떨어지는 단점이 있었다. 그러나, 본 발명에서는 파일 시스템 기능을 제공하는 애플리케이션의 실행 여부와 관계없이 제1 애플리케이션으로부터 전달받은 특정 명령어를 제2 애플리케이션으로 전달할 수 있는 장점이 있다.
온 디맨드 파일 시스템 매니저 모듈에서 제2 애플리케이션이 실행중인지 판단하여, 제2 애플리케이션이 실행중이라고 판단되면 제2 애플리케이션으로 특정 명령어를 전달한다(704). 보다 구체적으로는, 온 디맨드 파일 시스템 매니저 모듈에서 제2 애플리케이션이 실행중이라고 판단하였으면, 온 디맨드 파일 시스템 매니저 모듈은 제1 애플리케이션으로부터 전달받은 특정 명령어를 온 디맨드 파일 시스템 인터페이스 모듈을 통하여 제2 애플리케이션으로 전달한다. 이후, 제2 애플리케이션 모듈은 온 디맨드 파일 시스템 인터페이스 모듈을 통하여 전달받은 특정 명령어를 수행한다. 예를 들면, 상술한 특정 명령어가 특정 파일을 저장하라는 명령어인 경우에는 제2 애플리케이션은 제1 애플리케이션으로부터 전달받은 특정 파일을 제2 애플리케이션에 저장한다.
제2 애플리케이션으로 특정 명령어를 전달한 온 디맨드 파일 시스템 매니저 모듈은 제2 애플리케이션으로부터 특정 명령어의 실행 결과를 전달받는다(705). 보다 구체적으로, 제2 애플리케이션에서 실행된 특정 명령어의 실행 결과는 다시 온 디맨드 파일 시스템 인터페이스 모듈을 통하여 온 디맨드 파일 시스템 매니저 모듈이 전달받는다. 예를 들면, 제1 애플리케이션으로부터 전달된 특정 명령어가 특정 파일을 읽어오라는 명령어인 경우, 제2 애플리케이션은 제2 애플리케이션에 저장되어 있는 특정 파일을 온 디맨드 파일 시스템 인터페이스 모듈을 통하여 다시 온 디맨드 파일 시스템 매니저 모듈로 전달한다.
제2 애플리케이션으로부터 특정 명령어의 실행결과를 전달받은 온 디맨드 파일 시스템 매니저 모듈은 제1 애플리케이션으로 실행결과를 전달한다(706). 보다 구체적으로는, 제2 애플리케이션으로부터 특정 명령어의 실행결과를 전달받은 온 디맨드 파일 시스템 매니저 모듈은 특정 명령어의 실행결과를 다시 FUSE, VFS 및 glibc를 통하여 제1 애플리케이션으로 전달한다.
만약, 상술한 과정(703)에서, 제2 애플리케이션이 실행중이 아니라고 판단되면, 단말기는 제2 애플리케이션을 실행시킨다(707). 보다 구체적으로는, 제1 애플리케이션으로부터 특정 명령어를 수신한 온 디맨드 파일 시스템 모듈에서 현재 제2 애플리케이션이 실행중인지 판단하여, 실행중이 아니라고 판단되면 온 디맨드 파일 시스템 매니저 모듈은 애플리케이션 매니저 모듈(Application Manager Modual)로 제2 애플리케이션을 실행하도록 하는 명령어를 전달한다. 이후, 온 디맨드 파일 시스템 매니저 모듈은 제2 애플리케이션을 실행시킨다.
도 8은 본 발명에 따른 파일 시스템 기능을 제공하는 단말기의 구성을 도시한 블록도이다. 도 8에 도시된 바와 같이, 본 발명에 따른 단말기는 제어부(801), 통신모듈(802), 입력부(803), 출력부(804) 및 저장부(805)를 포함하여 구성될 수 있다.
제어부(801)는 단말기의 전반적인 동작을 제어한다. 본 발명에서 제어부(801)는 온 디맨드 파일 시스템 매니저 모듈, 온 디맨드 파일 시스템 인터페이스 모듈, 애플리케이션 매니저 모듈, 패키지 매니저 모듈, 그래픽 라이브러리 모듈을 포함하여 구성될 수 있다.
디맨드 파일 시스템 매니저 모듈은, 제1 애플리케이션으로부터 특정 명령어를 수신하여, 제2 애플리케이션의 실행 여부와 관계없이 수신한 특정 명령어를 제2 애플리케이션으로 송신하고, 제2 애플리케이션으로부터 특정 명령어의 실행 결과를 수신한다. 또한, 패키지 매니저 모듈로부터 읽어들인 제2 애플리케이션의 정보 및 입력받은 제2 애플리케이션의 실행 상태를 저장한다. 또한, 제2 애플리케이션의 실행이 중단된 경우라면, 제2 애플리케이션의 설정된 실행 상태를 확인하고, 실행된 제2 애플리케이션으로 전달받은 특정 명령어를 전달한다. 또한, 제2 애플리케이션의 실행이 중단된 경우라면, 제2 애플리케이션의 설정된 실행 상태를 확인하고, 제2 애플리케이션을 실행시켜, 실행된 제2 애플리케이션으로 수신한 명령어를 전달한다. 또한, 특정 명령어의 실행 결과를 제1 애플리케이션으로 피드백한다.
온 디맨드 파일 시스템 인터페이스 모듈은, 제2 애플리케이션이 동작할 수 있도록 제2 애플리케이션과 온 디맨드 파일 시스템 매니저 모듈에 공통된 인터페이스를 제공한다.
애플리케이션 매니저 모듈은, 실행 상태가 제2 애플리케이션의 실행이 필요할 때만 자동으로 실행되도록 하는 상태로 확인된 경우, 제2 애플리케이션을 자동으로 실행시킨다.
패키지 매니저 모듈은, 제2 애플리케이션을 설치하여, 설치된 제2 애플리케이션의 정보를 읽어들이고, 설치된 제2 애플리케이션의 실행 상태를 입력받는다. 또한, 제2 애플리케이션이 항상 실행되도록 하는 명령어를 입력받거나, 제2 애플리케이션의 실행이 필요할 때만 자동으로 실행되도록 하는 명령어를 입력받거나, 제2 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받는다.
그래픽 라이브러리 모듈은, 실행 상태가 제2 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받도록 하는 상태로 확인된 경우 제2 애플리케이션의 실행 여부에 관한 메시지를 디스플레이하도록 하며, 제2 애플리케이션을 실행하도록 하는 명령어를 전달받는다.
통신모듈(802)은 음성 및 데이터 통신을 위해 안테나를 통해 송수신되는 신호를 처리한다.
입력부(803)는 사용자의 선택에 의해 발생하는 입력 데이터를 제어부(801)로 제공한다.
출력부(804)는 제어부(801)의 제어에 따라 휴대용 단말기의 상태 정보, 메뉴 화면 및 스토리 정보를 표시한다.
저장부(805)는 단말기의 동작을 제어하기 위한 프로그램을 저장하는 프로그램 저장부 및 프로그램 수행 중에 발생되는 데이터를 저장하는 데이터 저장부로 구성될 수 있다.
상술한 블록 구성에서, 제어부(801)는 휴대용 단말기의 전반적인 기능을 수행할 수 있다. 본 발명에서 이를 별도로 구성하여 도시한 것은 각 기능들을 구별하여 설명하기 위함이다. 따라서 실제로 제품을 구현하는 경우에 휴대용 단말기의 기능 모두를 제어부(801)에서 처리하도록 구성할 수도 있으며, 기능 중 일부만을 제어부(801)에서 처리하도록 구성할 수도 있다.
이상 설명한 본 발명은 본 발명이 속한 기술분야에서 통상의 지식을 가진 자에 의하여 다양한 변형이나 응용이 가능하며, 본 발명에 따른 기술적 사상의 범위는 아래의 특허청구범위에 의하여 정해져야 할 것이다.
101: 제2 애플리케이션 102: Package Manager Modual
103: On Demand File System Manager Modual
104: 제1 애플리케이션 105: glibc
106: VFS(Virtual File System)
107: FUSE(File System in Userspace)
108: On Demand File System Interface Modual
109: Application Manager Modual 110: Graphic Library Modual
601: 인디케이터 602: 인디케이터
801: 제어부 802: 통신모듈
803: 입력부 804: 출력부
805: 저장부

Claims (18)

  1. 단말기의 동작 방법에 있어서,
    제1 애플리케이션으로부터 특정 명령어를 수신하는 과정;
    제2 애플리케이션의 실행 여부와 관계없이, 상기 수신한 특정 명령어를 상기 제2 애플리케이션으로 전달하는 과정; 및
    상기 제2 애플리케이션으로부터 상기 특정 명령어의 실행 결과를 전달받는 과정을 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서, 상기 제2 애플리케이션은,
    파일 시스템 기능(file system function)을 제공하는 애플리케이션인 것을 특징으로 하는 방법.
  3. 제1항에 있어서, 상기 특정 명령어는,
    특정 파일을 읽어오라는 명령어 및 특정 파일을 저장하라는 명령어 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  4. 제1항에 있어서,
    상기 제2 애플리케이션을 설치하는 과정;
    상기 설치된 제2 애플리케이션의 정보를 읽어들이는 과정;
    상기 설치된 제2 애플리케이션의 실행 상태를 입력받는 과정; 및
    상기 읽어들인 제2 애플리케이션의 정보 및 상기 입력받은 제2 애플리케이션의 실행 상태를 저장하는 과정을 더 포함하는 것을 특징으로 하는 방법.
  5. 제4항에 있어서, 상기 제2 애플리케이션의 정보는,
    상기 제2 애플리케이션의 아이디, 제2 애플리케이션의 암호화 관련 정보 및 제2 애플리케이션의 기능 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  6. 제4항에 있어서,
    상기 설치된 제2 애플리케이션의 실행 상태를 입력받는 과정은,
    상기 제2 애플리케이션이 항상 실행되도록 하는 명령어를 입력받는 과정, 상기 제2 애플리케이션의 실행이 필요할 때만 자동으로 실행되도록 하는 명령어를 입력받는 과정 및 상기 제2 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받도록 하는 과정 중 적어도 하나의 과정을 포함하는 것을 특징으로 하는 방법.
  7. 제1항에 있어서,
    상기 제2 애플리케이션의 실행 여부와 관계없이, 상기 수신한 특정 명령어를 상기 제2 애플리케이션으로 전달하는 과정은,
    상기 제2 애플리케이션의 실행이 중단된 경우라면, 상기 제2 애플리케이션의 설정된 실행 상태를 확인하는 과정;
    상기 실행 상태가 상기 제2 애플리케이션의 실행이 필요할 때만 자동으로 실행되도록 하는 상태로 확인된 경우, 상기 제2 애플리케이션을 자동으로 실행시키는 과정; 및
    상기 실행된 제2 애플리케이션으로, 상기 수신한 특정 명령어를 전달하는 과정을 포함하는 것을 특징으로 하는 방법.
  8. 제1항에 있어서,
    상기 제2 애플리케이션의 실행 여부와 관계없이, 상기 수신한 특정 명령어를 상기 제2 애플리케이션으로 전달하는 과정은,
    상기 제2 애플리케이션의 실행이 중단된 경우라면, 상기 제2 애플리케이션의 설정된 실행 상태를 확인하는 과정;
    상기 실행 상태가 상기 제2 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받도록 하는 상태로 확인된 경우, 상기 제2 애플리케이션의 실행 여부에 관한 메시지를 디스플레이하는 과정;
    상기 제2 애플리케이션을 실행하도록 하는 명령어를 입력받아, 상기 제2 애플리케이션을 실행시키는 과정; 및
    상기 실행된 제2 애플리케이션으로, 상기 수신한 명령어를 전달하는 과정을 포함하는 것을 특징으로 하는 방법.
  9. 제1항에 있어서,
    상기 특정 명령어의 실행 결과를 상기 제1 애플리케이션으로 피드백(feedback)하는 과정을 더 포함하는 것을 특징으로 하는 방법.
  10. 단말기의 장치에 있어서,
    제1 애플리케이션으로부터 특정 명령어를 수신하여, 제2 애플리케이션의 실행 여부와 관계없이 상기 수신한 특정 명령어를 상기 제2 애플리케이션으로 송신하고, 상기 제2 애플리케이션으로부터 상기 특정 명령어의 실행 결과를 수신하는 온 디맨드 파일 시스템 매니저(On Demand File System Manager) 모듈; 및
    상기 제2 애플리케이션이 동작할 수 있도록 상기 제2 애플리케이션과 상기 온 디맨드 파일 시스템 매니저 모듈에 공통된 인터페이스를 제공하는 온 디맨드 파일 시스템 인터페이스(On Demand File System Interface) 모듈을 포함하는 것을 특징으로 하는 장치.
  11. 제10항에 있어서, 상기 제2 애플리케이션은,
    파일 시스템 기능(file system function)을 제공하는 애플리케이션인 것을 특징으로 하는 장치.
  12. 제10항에 있어서, 상기 특정 명령어는,
    특정 파일을 읽어오라는 명령어 및 특정 파일을 저장하라는 명령어 중 적어도 하나를 포함하는 것을 특징으로 하는 장치.
  13. 제10항에 있어서,
    상기 제2 애플리케이션을 설치하여, 상기 설치된 제2 애플리케이션의 정보를 읽어들이고, 상기 설치된 제2 애플리케이션의 실행 상태를 입력받는 패키지 매니저(Package Manager) 모듈을 더 포함하고,
    상기 온 디맨드 파일 시스템 매니저 모듈은, 상기 패키지 매니저 모듈로부터 상기 읽어들인 제2 애플리케이션의 정보 및 상기 입력받은 제2 애플리케이션의 실행 상태를 저장하는 것을 특징으로 하는 장치.
  14. 제13항에 있어서, 상기 제2 애플리케이션의 정보는,
    상기 제2 애플리케이션의 아이디, 제2 애플리케이션의 암호화 관련 정보 및 제2 애플리케이션의 기능 중 적어도 하나를 포함하는 것을 특징으로 하는 장치.
  15. 제13항에 있어서,
    상기 패키지 매니저 모듈은, 상기 제2 애플리케이션이 항상 실행되도록 하는 명령어를 입력받거나, 상기 제2 애플리케이션의 실행이 필요할 때만 자동으로 실행되도록 하는 명령어를 입력받거나, 상기 제2 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받는 것을 특징으로 하는 장치.
  16. 제10항에 있어서,
    상기 온 디맨드 파일 시스템 매니저 모듈은, 상기 제2 애플리케이션의 실행이 중단된 경우라면, 상기 제2 애플리케이션의 설정된 실행 상태를 확인하고,
    상기 실행 상태가 상기 제2 애플리케이션의 실행이 필요할 때만 자동으로 실행되도록 하는 상태로 확인된 경우, 상기 제2 애플리케이션을 자동으로 실행시키는 애플리케이션 매니저(Application Manager) 모듈을 더 포함하고,
    상기 온 디맨드 파일 시스템 매니저 모듈은, 상기 실행된 제2 애플리케이션으로 상기 전달받은 특정 명령어를 전달하는 것을 특징으로 하는 장치.
  17. 제10항에 있어서,
    상기 온 디맨드 파일 시스템 매니저 모듈은, 상기 제2 애플리케이션의 실행이 중단된 경우라면, 상기 제2 애플리케이션의 설정된 실행 상태를 확인하고,
    상기 실행 상태가 상기 제2 애플리케이션의 실행이 필요할 때마다 실행 여부를 입력받도록 하는 상태로 확인된 경우 상기 제2 애플리케이션의 실행 여부에 관한 메시지를 디스플레이하도록 하며, 상기 제2 애플리케이션을 실행하도록 하는 명령어를 전달받는 그래픽 라이브러리(Graphic Library) 모듈을 더 포함하며,
    상기 온 디맨드 파일 시스템 매니저 모듈은, 상기 제2 애플리케이션을 실행시켜, 상기 실행된 제2 애플리케이션으로 상기 수신한 명령어를 전달하는 것을 특징으로 하는 장치.
  18. 제10항에 있어서,
    상기 온 디맨드 파일 시스템 매니저 모듈은, 상기 특정 명령어의 실행 결과를 상기 제1 애플리케이션으로 피드백하는 것을 특징으로 하는 장치.
KR1020120022786A 2012-03-06 2012-03-06 파일 시스템 기능을 제공하는 단말기의 장치 및 방법 KR101920239B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020120022786A KR101920239B1 (ko) 2012-03-06 2012-03-06 파일 시스템 기능을 제공하는 단말기의 장치 및 방법
US13/713,093 US9009737B2 (en) 2012-03-06 2012-12-13 Apparatus and method of terminal for providing file system function
EP13153453.9A EP2637099A3 (en) 2012-03-06 2013-01-31 Apparatus and method of terminal for providing file system function
CN201310069058.7A CN103309751B (zh) 2012-03-06 2013-03-05 提供文件系统功能的终端的设备和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120022786A KR101920239B1 (ko) 2012-03-06 2012-03-06 파일 시스템 기능을 제공하는 단말기의 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20130101776A true KR20130101776A (ko) 2013-09-16
KR101920239B1 KR101920239B1 (ko) 2018-11-20

Family

ID=47747370

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120022786A KR101920239B1 (ko) 2012-03-06 2012-03-06 파일 시스템 기능을 제공하는 단말기의 장치 및 방법

Country Status (4)

Country Link
US (1) US9009737B2 (ko)
EP (1) EP2637099A3 (ko)
KR (1) KR101920239B1 (ko)
CN (1) CN103309751B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180016488A (ko) * 2015-06-08 2018-02-14 알리바바 그룹 홀딩 리미티드 액세스 방법 및 장치

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102087395B1 (ko) * 2013-01-16 2020-03-10 삼성전자주식회사 전자 장치에서 응용프로그램을 실행하기 위한 장치 및 방법
US9015353B2 (en) * 2013-03-14 2015-04-21 DSSD, Inc. Method and system for hybrid direct input/output (I/O) with a storage device
US10120765B1 (en) 2014-12-19 2018-11-06 EMC IP Holding Company LLC Restore process using incremental inversion
US10095707B1 (en) * 2014-12-19 2018-10-09 EMC IP Holding Company LLC Nearline cloud storage based on FUSE framework
US9753814B1 (en) 2014-12-19 2017-09-05 EMC IP Holding Company LLC Application level support for selectively accessing files in cloud-based storage
US10095710B1 (en) 2014-12-19 2018-10-09 EMC IP Holding Company LLC Presenting cloud based storage as a virtual synthetic
US10235463B1 (en) 2014-12-19 2019-03-19 EMC IP Holding Company LLC Restore request and data assembly processes
US11402812B1 (en) 2019-03-22 2022-08-02 The Chamberlain Group Llc Apparatus and method for controlling a device

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5075847A (en) * 1989-05-26 1991-12-24 Hewlett-Packard Company Method and apparatus for computer program encapsulation
US5212792A (en) * 1989-06-01 1993-05-18 Hewlett-Packard Company Method and apparatus for controlling execution of tools in a computer-aided software engineering system
DE69130154T2 (de) * 1990-12-14 1999-05-20 Sun Microsystems Inc Verfahren und Gerät zur Nachrichtenvermittlung zwischen Prozessen
US5379426A (en) * 1991-01-25 1995-01-03 Sun Microsystems, Inc. Method and apparatus for object oriented interprocess message switching
US6314501B1 (en) * 1998-07-23 2001-11-06 Unisys Corporation Computer system and method for operating multiple operating systems in different partitions of the computer system and for allowing the different partitions to communicate with one another through shared memory
US6724408B1 (en) * 1999-08-10 2004-04-20 International Business Machines Corporation Command line interface for a data processing system
US6351776B1 (en) 1999-11-04 2002-02-26 Xdrive, Inc. Shared internet storage resource, user interface system, and method
JPWO2003048937A1 (ja) * 2001-12-07 2005-04-21 株式会社エヌ・ティ・ティ・ドコモ 移動通信端末、アプリケーションソフト配信装置、アプリケーションソフト配信システム、実行状態表示制御方法、実行状態表示制御プログラム及びコンピュータ読み取り可能な記録媒体
CN1427361A (zh) * 2001-12-17 2003-07-02 北京中视联联合软件有限公司 基于客户/服务器结构的底层设备驱动的方法
US7533214B2 (en) * 2002-02-27 2009-05-12 Microsoft Corporation Open architecture flash driver
US7363338B2 (en) * 2002-07-17 2008-04-22 Intel Corporation Selective assembly loading and execution based on platform capabilities
US7757010B2 (en) * 2006-04-28 2010-07-13 Mediatek Inc. Systems and methods for managing mass storage devices in electronic devices
EP2243080B1 (en) * 2007-12-13 2016-09-21 Advanced Micro Devices, Inc. Driver architecture for computing device having multiple graphics subsystems, reduced power consumption modes, software and methods
US8326802B2 (en) 2009-06-11 2012-12-04 International Business Machines Corporation File system location verification using a sentinel
US9063666B2 (en) * 2010-03-25 2015-06-23 International Business Machines Corporation File index, metadata storage, and file system management for magnetic tape

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180016488A (ko) * 2015-06-08 2018-02-14 알리바바 그룹 홀딩 리미티드 액세스 방법 및 장치
US11221997B2 (en) 2015-06-08 2022-01-11 Advanced New Technologies Co., Ltd. On-demand creation and access of a virtual file system

Also Published As

Publication number Publication date
CN103309751B (zh) 2018-07-27
KR101920239B1 (ko) 2018-11-20
US20130239129A1 (en) 2013-09-12
EP2637099A3 (en) 2016-10-26
EP2637099A2 (en) 2013-09-11
CN103309751A (zh) 2013-09-18
US9009737B2 (en) 2015-04-14

Similar Documents

Publication Publication Date Title
KR20130101776A (ko) 파일 시스템 기능을 제공하는 단말기의 장치 및 방법
US10739957B2 (en) Data processing method and electronic device supporting the same
JP5137781B2 (ja) 移動機及びアプリケーションの切替方法
US9384098B1 (en) Portable data archiving device
US20130219341A1 (en) Apparatus and method for creating a shortcut menu
KR20130003863A (ko) 원격 디바이스 드라이버를 이용한 원격 제어 시스템 및 원격 디바이스 드라이버를 이용한 원격 제어 방법
CN102238093A (zh) 防止业务中断的方法和装置
JP2002358167A5 (ko)
US20140351833A1 (en) Multi-computing environment operating on a single native operating system
KR101366993B1 (ko) 원격 디바이스 드라이버 제공 시스템 및 원격 디바이스 드라이버 제공 방법
US10009772B2 (en) Electronic apparatus and method of executing application program
US9185350B2 (en) Content selecting system, providing apparatus, transfer apparatus and content selecting method
WO2022037212A1 (zh) 显示设备、文件传输方法
CN104517067A (zh) 访问数据的方法、装置及系统
US20160182585A1 (en) Media playback redirected to a networked renderer
CN111045789B (zh) 一种虚拟机开机方法、装置及电子设备和存储介质
US9323907B2 (en) Distribution apparatus, device, control method for distribution apparatus, and storage medium
WO2022227997A1 (zh) 内存申请方法及相关设备
WO2021129031A1 (zh) Odn资源信息管理方法、装置及存储介质
KR102099680B1 (ko) 정보처리장치 및 그 제어방법
KR101394849B1 (ko) 휴대 단말기 및 휴대 단말기의 정보제공방법
KR102385801B1 (ko) 응용 프로그램을 실행하는 전자 장치 및 방법
CN110297645B (zh) 一种系统安装方法和电子设备
KR101638162B1 (ko) 모바일 단말의 어플리케이션의 실행을 지원하기 위한 방법, 장치 및 컴퓨터 판독 가능한 기록 매체
KR20150109938A (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