KR20150073136A - Mobile storage device providing mass virtual storage space and providing method thereof - Google Patents

Mobile storage device providing mass virtual storage space and providing method thereof Download PDF

Info

Publication number
KR20150073136A
KR20150073136A KR1020150034427A KR20150034427A KR20150073136A KR 20150073136 A KR20150073136 A KR 20150073136A KR 1020150034427 A KR1020150034427 A KR 1020150034427A KR 20150034427 A KR20150034427 A KR 20150034427A KR 20150073136 A KR20150073136 A KR 20150073136A
Authority
KR
South Korea
Prior art keywords
space
host computer
virtual
data
file
Prior art date
Application number
KR1020150034427A
Other languages
Korean (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 KR1020150034427A priority Critical patent/KR20150073136A/en
Publication of KR20150073136A publication Critical patent/KR20150073136A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F17/302
    • 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/0662Virtualisation aspects
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Abstract

Disclosed are a mobile storing device for providing a large capacity virtual storing space and a method for producing the same. According to an embodiment of the present invention, a mobile storing device connected to a host computer and providing a large capacity virtual storing space comprises: a networking module for receiving remote file information stored in at least one network storage server from the network storage server; a mapping module for setting a correspondence between data of the remote file and at least one of a plurality of virtual unit spaces included in a virtual storing space based on the received remote file information; a file system module for generating file system information about the virtual storing space based on the received remote file information and the correspondence, wherein the file system information is formed in a type of a host file system supported in an operation system installed in the host computer; a determining module for determining a receiving object network storage server corresponding to a reading object virtual unit space by the correspondence by responding to a request for reading of data corresponding to the reading object virtual unit space included in the virtual storing space inputted from the host computer; and a data input and output module for receiving remote file data corresponding to the reading object virtual unit space from the receiving object network storage server and providing the same to the host computer.

Description

대용량 가상저장공간을 제공하는 이동식 저장장치 및 그 제공방법{Mobile storage device providing mass virtual storage space and providing method thereof}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a mobile storage device and a method for providing the same,

본 발명은 대용량 가상저장공간을 제공하는 이동식 저장장치 및 그 제공방법 에 관한 것이다. 보다 상세하게는 호스트 컴퓨터에 이동식 저장장치가 연결되는 경우, 네트워크 스토리지 서버에서 제공하는 대용량 저장공간을 상기 호스트 컴퓨터의 파일 시스템 형태로 제공하는 대용량 가상저장공간을 제공하는 이동식 저장장치 및 그 제공방법에 관한 것이다.
The present invention relates to a portable storage device providing a large-capacity virtual storage space and a method of providing the same. More particularly, the present invention relates to a portable storage device that provides a large-capacity virtual storage space for providing a large-capacity storage space provided by a network storage server in the form of a file system of the host computer when a portable storage device is connected to the host computer, .

시대의 변화에 따라 사람들은 자신의 데이터를 언제 어디서나 사용하거나 저장하기를 원하며, 이를 위한 다양한 네트워크 스토리지 서비스(예를 들어, iCloud, Skydrive, Dropbox, Box.net, SugarSync, SiderOak, GoogleDrive 등의 클라우드 서비스)의 제공이 폭발적으로 증가되고 있다. 초기 사용자들은 문서와 같은 간단한 데이터만을 저장함으로써 적은 용량의 클라우드 서비스만으로도 충분히 활용이 가능했고, 자료를 받거나 저장할 때에는 많은 시간을 할애하지 않아도 되었다. 하지만, 시대의 변화로 인해 멀티미디어의 활용이 증가됨에 따라 자신만의 음악/영상/이미지 등을 관리하게 되며, 이로 인해 클라우드 서비스에 요구하는 용량은 수GB에서 수백GB까지 증가되고 있는 추세이다.As time goes by, people want to use or store their data anywhere, anytime, and there are a variety of network storage services (such as iCloud, Skydrive, Dropbox, Box.net, SugarSync, SiderOak, GoogleDrive, Service) has been exploding. Early users were able to use only a small amount of cloud services by storing only simple data such as documents, and did not have to spend much time receiving and storing data. However, due to the change of the age, the use of multimedia is increasing, and it manages its own music / image / image. Therefore, the capacity required for cloud service is increasing from several GB to several hundred GB.

네트워크 스토리지 서비스를 이용하는 방법은 다음과 같이 크게 3가지로 나누어 진다.There are three main ways to use network storage services.

- 웹- Web

- 전용 동기화 프로그램- Dedicated synchronization program

- 응용 프로그램 내장- Embedded application

웹을 이용한 데이터 접근 방법은 네트워크 스토리지 서비스가 유행하기 이전부터 사용되던 방법으로 웹 브라우저를 이용해 네트워크 스토리지 서버에 접속하고, 웹 서비스를 통해 데이터를 내려 받거나 올리는 방법을 말한다. 웹을 이용한 접근 방법은 사용자가 사용해야 하는 데이터가 적은 경우에는 해당 데이터만 내려 받으면 되므로 손쉽게 사용할 수 있는 장점을 가지고 있지만, 사용자가 접근하고자 하는 데이터가 2개 이상인 경우, 데이터 검색, 다운로드, 업로드 과정을 반복해서 수행해야 하는 번거로운 과정이 존재한다. 여기에 추가적으로 웹 접속 과정에서 아이디와 패스워드의 불법 유출 문제가 발생할 수도 있고, 다운로드 받은 데이터의 미 삭제로 인한 데이터 유출 문제도 발생할 수 있다.A method of data access using the Web is a method used before a network storage service became popular, a method of accessing a network storage server using a web browser, and downloading or uploading data through a web service. The web-based approach has the advantage of being easy to use because it requires only downloading the corresponding data if the user has little data to use. However, if the user wants to access more than two data, There is a cumbersome process that needs to be repeated. In addition, illegal leakage of ID and password may occur during the web connection process, and data leakage due to deletion of downloaded data may occur.

전용 동기화 프로그램을 이용한 방법은 대부분의 네트워크 스토리지 서비스에서 제공하는 기능으로서, 개인 PC나 개인 스마트 기기에 설치하여 네트워크 스토리지 서버에 있는 데이터와 사용자의 기기들에 있는 데이터를 동기화 시켜 주는 역할을 수행하며, 각각의 서비스마다 별도의 프로그램을 제공한다. 전용 동기화 프로그램은 시스템이 동작하는 동안 항상 동작하며, 데이터의 변화에 대해 즉각적으로 반응하여 네트워크 스토리지 서버 상의 데이터를 내려 받거나 사용자 기기의 데이터를 네트워크 스토리지 서버에 올려 두는 역할을 수행한다. 이러한 동작은 상시 사용되는 개인 사용 기기에서는 매우 편리한 기능이지만, 공용 PC와 같이 개인 기기가 아닌 곳에서 사용할 경우에는 불법 데이터 유출과 같은 심각한 보안상의 위험에 노출될 수 있다.A method using a dedicated synchronization program is provided by most network storage services and is installed in a personal PC or a personal smart device to synchronize data in a network storage server with data in a user's device, Each service provides a separate program. The dedicated synchronization program is always active during the operation of the system and reacts immediately to changes in the data to download data on the network storage server or to upload data of the user device to the network storage server. This is a very convenient function for everyday personal use devices, but it can be exposed to serious security risks such as unauthorized data leakage when used in non-personal devices such as public PCs.

또한, 사용자가 전용 동기화 프로그램을 사용하여 다수의 데이터를 네트워크스토리지 서버로부터 받으려고 하는 경우, 전용 동기화 프로그램에서는 네트워크 스토리지 서비스에 저장되어 있는 데이터가 사용자의 로컬 PC에 존재하는지 여부를 확인 하게 되고, 해당 데이터가 존재하지 않는 경우에는 네트워크 스토리지 서버와 로컬 PC 간의 동기화를 맞추기 위해 데이터를 내려 받아 저장하게 된다. 이 때, 발생할 수 있는 문제점은 데이터를 내려 받는 시간이다. 동기화 해야 될 데이터가 적은 경우 위 과정은 문제가 되지 않는다. 하지만, 데이터의 용량이 수십MB ~ 수GB가 될 경우, 동기화에 소요되는 시간이 엄청나게 증가하게 된다.In addition, when the user intends to receive a large amount of data from the network storage server using the dedicated synchronization program, the dedicated synchronization program checks whether the data stored in the network storage service exists in the user's local PC, The data is downloaded and stored in order to synchronize the network storage server with the local PC. At this time, the problem that may occur is the time to download the data. If there is not enough data to synchronize, this is not a problem. However, if the capacity of the data is several tens of megabytes to several gigabytes, the time required for the synchronization is greatly increased.

또한, 앞서 소개한 웹을 이용한 방법과 마찬가지로 해당 데이터가 로컬 PC에 저장되므로, 공용 PC와 같이 개인 기기가 아닌 곳에서 사용할 경우 불법 데이터 유출 방지를 위해 자리를 비우기 전에 데이터를 삭제해야 한다.In addition, since the data is stored in the local PC as in the web-based method described above, when used in a non-personal device such as a public PC, data must be deleted before leaving the place to prevent illegal data leakage.

네트워크 스토리지 서버의 데이터를 이용하는 또다른 방법은 응용 프로그램에 내장된 기능을 사용하는 것이다. 이 방법은 웹에 접속하여, 데이터를 일일이 내려 받는 것과 같은 번거로움이나 데이터 동기화 프로그램을 사용할 때 발생할 수 있는 위와 같은 문제들은 줄어 들겠지만, 대용량 데이터를 내려 받아야 하는 문제점과 특정 프로그램에서만 사용 가능하다는 문제점을 가지고 있다.
Another way to use the data on the network storage server is to use the functionality built into the application. This method is troublesome to connect to the web and download data one by one, but the above problems that may occur when using the data synchronization program will be reduced, but the problem of downloading large data and the problem that it can be used only in a specific program Lt; / RTI >

따라서, 본 발명이 이루고자 하는 기술적인 과제는 상술한 종래 기술의 제문제를 해결하고자 하는 것으로서, 클라우드 서비스와 같은 네트워크 스토리지 서비스와 연동되어 사용자에게 대용량의 저장공간을 제공할 수 있는 대용량 가상저장공간을 제공하는 이동식 저장장치를 제공하는 것이다.SUMMARY OF THE INVENTION Accordingly, the present invention has been made keeping in mind the above problems occurring in the prior art, and it is an object of the present invention to provide a large-capacity virtual storage space capable of providing a large storage space to a user in cooperation with a network storage service such as a cloud service To provide a removable storage device.

또한, 별도의 전용 프로그램이나 구동 드라이버를 설치를 요구하지 않으며, 마치 이동식 저장장치(예를 들면, USB 메모리)를 이용하는 것과 같은 사용자 경험을 제공하면서도, 로컬 PC에 데이터를 저장하는 경우에 발생할 수 있는 데이터 불법 유출에 대한 문제점도 함께 해결할 수 있는 대용량 가상저장공간을 제공하는 이동식 저장장치를 제공하는 것이다.
In addition, it does not require installation of a separate dedicated program or drive driver, and can be used to store data on a local PC while providing a user experience such as using a removable storage device (e.g., USB memory) And to provide a portable storage device that provides a large-capacity virtual storage space that can solve the problem of illegal data leakage.

본 발명의 일 측면에 따르면, 호스트 컴퓨터에 연결되어, 대용량 가상저장공간을 제공하는 이동식 저장장치로서, 적어도 하나의 네트워크 스토리지 서버로부터, 상기 적어도 하나의 네트워크 스토리지 서버에 저장된 원격파일 정보를 수신하는 네트워킹모듈, 수신한 상기 원격파일 정보에 기초하여, 상기 원격파일의 데이터와 가상저장공간에 포함된 복수의 가상단위공간 중 적어도 하나간의 대응관계를 설정하는 매핑모듈, 수신한 상기 원격파일 정보 및 상기 대응관계에 기초하여, 상기 가상저장공간에 대한 파일 시스템 정보를 생성하는 파일시스템모듈-여기서, 상기 파일 시스템 정보는, 상기 호스트 컴퓨터에 설치된 운영체제에서 지원하는 호스트 파일 시스템의 형식으로 구성됨, 상기 호스트 컴퓨터로부터 입력되는 상기 가상저장공간에 포함된 독출대상 가상단위공간에 상응하는 데이터의 독출요청에 응답하여, 상기 대응관계에 의해 상기 독출대상 가상단위공간에 대응되는 수신대상 네트워크 스토리지 서버를 판단하는 판단모듈 및 상기 수신대상 네트워크 스토리지 서버로부터 상기 독출대상 가상단위공간에 상응하는 원격파일 데이터를 수신하여, 상기 호스트 컴퓨터로 제공하는 데이터입출력모듈을 포함하는 대용량 가상저장공간을 제공하는 이동식 저장장치가 제공된다.According to an aspect of the present invention there is provided a removable storage device coupled to a host computer for providing a large amount of virtual storage space, the removable storage device comprising: at least one network storage server; networking for receiving remote file information stored in the at least one network storage server; A mapping module for setting a correspondence relation between at least one of the data of the remote file and the plurality of virtual unit spaces included in the virtual storage space based on the received remote file information, Wherein the file system information is configured in the form of a host file system supported by an operating system installed in the host computer, wherein the file system information is generated from the host computer The virtual storage space A determination module for determining a reception target network storage server corresponding to the read target virtual unit space by the corresponding relationship in response to a read request of data corresponding to the read target virtual unit space, There is provided a portable storage device for receiving a remote file data corresponding to a target virtual unit space and providing a large-capacity virtual storage space including a data input / output module for providing the remote file data to the host computer.

일 실시예에서, 상기 파일시스템모듈에 의해 생성되는 상기 파일 시스템 정보는, 상기 원격파일에 대한 정보 및 상기 원격파일과의 대응관계가 설정되어 있는 가상단위공간에 대한 정보를 포함할 수 있다.In one embodiment, the file system information generated by the file system module may include information on the remote file and information on a virtual unit space in which a correspondence relationship with the remote file is set.

일 실시예에서, 상기 매핑모듈은, 상기 호스트 컴퓨터로부터 입력되는 상기 가상저장공간에 포함된 적어도 하나의 기록대상 가상단위공간에 소정의 기록대상 파일을 저장하라는 저장요청에 응답하여, 상기 적어도 하나의 기록대상 가상단위공간 각각과 상기 적어도 하나의 네트워크 스토리지 서버와의 대응 관계를 설정하고 상기 데이터입출력모듈은, 상기 적어도 하나의 기록대상 가상단위공간 각각에 대하여, 상기 기록대상 파일에 포함된 데이터 중 상기 기록대상 가상단위공간에 상응하는 데이터를 상기 기록대상 가상단위공간에 대응되는 전송대상 네트워크 스토리지 서버에 전송하여, 상기 전송대상 네트워크 스토리지 서버에 저장할 수 있다.In one embodiment, in response to a storage request to store a predetermined recording object file in at least one recording target virtual unit space included in the virtual storage space input from the host computer, The data input / output module sets a correspondence relationship between each of the recording target virtual unit spaces and the at least one network storage server, and the data input / output module sets, for each of the at least one recording target virtual unit space, Data corresponding to the recording target virtual unit space may be transmitted to the transmission target network storage server corresponding to the recording target virtual unit space and stored in the transmission target network storage server.

일 실시예에서, 상기 매핑모듈은, 상기 기록대상 파일의 속성에 기초하여, 상기 적어도 하나의 기록대상 가상단위공간 각각과 상기 적어도 하나의 네트워크 스토리지 서버와의 대응관계를 설정할 수 있다.In one embodiment, the mapping module can set a correspondence relationship between each of the at least one recording target virtual unit space and the at least one network storage server, based on the attribute of the recording object file.

일 실시예에서, 상기 기록대상 파일의 속성은 파일 타입을 포함하고, 상기 매핑모듈은, 상기 적어도 하나의 기록대상 가상단위공간이 상기 기록대상 파일의 타입에 상응하는 네트워크 스토리지 서버와 대응관계를 가지도록 설정할 수 있다.In one embodiment, the attribute of the recording object file includes a file type, and the mapping module has a correspondence relationship with the network storage server corresponding to the type of the recording object file, .

일 실시예에서, 상기 대용량 가상저장공간을 제공하는 이동식 저장장치는, 상기 기록대상 파일을 저장하라는 저장요청에 응답하여, 상기 기록대상 파일을 상기 이동식 저장장치의 내부 메모리 장치에 저장하는 캐싱모듈을 더 포함하되, 상기 판단모듈은, 상기 독출대상 가상단위공간에 상응하는 데이터의 독출요청에 응답하여, 상기 독출대상 가상단위공간에 상응하는 캐시파일이 상기 내부 메모리 장치에 저장되어 있는지 판단하고, 상기 데이터입출력모듈은, 상기 판단모듈의 판단결과, 저장되어 있는 경우, 상기 캐시파일에 포함된 데이터를 상기 호스트 컴퓨터로 제공할 수 있다.In one embodiment, the removable storage device providing the large-capacity virtual storage space includes a caching module that stores the file to be recorded in the internal memory device of the removable storage device in response to a storage request to store the file to be recorded Wherein the determination module determines whether a cache file corresponding to the read target virtual unit space is stored in the internal memory device in response to a data read request corresponding to the read target virtual unit space, The data input / output module may provide data included in the cache file to the host computer as a result of the determination by the determination module.

일 실시예에서, 상기 대용량 가상저장공간을 제공하는 이동식 저장장치는, USB(Universal Serial Bus) 인터페이스를 통해 상기 호스트 컴퓨터와 연결되는 것을 특징할 수 있다.In one embodiment, the portable storage device providing the large-capacity virtual storage space may be connected to the host computer through a universal serial bus (USB) interface.

일 실시예에서, 상기 네트워킹모듈은, 무선 네트워크를 통해 상기 적어도 하나의 네트워크 스토리지 서버와의 연결 및 데이터 통신을 수행하는 것을 특징으로 할 수 있다.In one embodiment, the networking module may perform connection and data communication with the at least one network storage server through a wireless network.

본 발명의 다른 일 측면에 따르면, 호스트 컴퓨터에 연결되어, 대용량 가상저장공간을 제공하는 이동식 저장장치로서, 네트워크 스토리지 서비스를 제공하는 적어도 하나의 네트워크 스토리지 서버와의 네트워크 연결 및 데이터 통신을 수행하는 네트워킹모듈, 복수의 가상단위공간을 포함하는 가상저장공간에 대한 파일 시스템 정보를 상기 호스트 컴퓨터에 제공하는 파일시스템모듈-여기서, 상기 가상저장공간에 대한 파일시스템 정보는, 상기 호스트 컴퓨터에 설치된 운영체제에서 지원하는 파일 시스템의 형식으로 구성됨, 상기 호스트 컴퓨터로부터 입력되는 상기 가상저장공간에 포함된 적어도 하나의 기록대상 가상단위공간에 소정의 기록대상 파일을 저장하라는 저장요청에 응답하여, 상기 적어도 하나의 기록대상 가상단위공간 각각과 상기 적어도 하나의 네트워크 스토리지 서버와의 대응 관계를 설정하는 매핑모듈 및 상기 적어도 하나의 기록대상 가상단위공간 각각에 대하여, 상기 기록대상 파일에 포함된 데이터 중 상기 기록대상 가상단위공간에 상응하는 데이터를 상기 기록대상 가상단위공간에 대응되는 전송대상 네트워크 스토리지 서버에 전송하여, 상기 전송대상 네트워크 스토리지 서버에 저장하는 데이터입출력모듈을 포함하는 대용량 가상저장공간을 제공하는 이동식 저장장치가 제공된다.According to another aspect of the present invention, there is provided a portable storage device connected to a host computer for providing a large-capacity virtual storage space, the network storage device including at least one network storage server for providing a network storage service, And a file system module for providing file system information on a virtual storage space including a plurality of virtual unit spaces to the host computer, wherein the file system information on the virtual storage space includes information In response to a storage request to store a predetermined recording object file in at least one recording target virtual unit space included in the virtual storage space input from the host computer, Each of the virtual unit spaces and the above- A mapping module for setting a correspondence relationship with at least one network storage server and data corresponding to the recording target virtual unit space among data included in the recording object file for each of the at least one recording target virtual unit space, And a data input / output module for transmitting the virtual storage space to a transmission target network storage server corresponding to the recording target virtual unit space and storing the virtual storage space in the transmission target network storage server.

일 실시예에서, 상기 대용량 가상저장공간을 제공하는 이동식 저장장치는, 상기 호스트 컴퓨터로부터 입력되는 상기 가상저장공간에 포함된 독출대상 가상단위공간에 상응하는 데이터의 독출요청에 응답하여, 상기 독출대상 가상단위공간에 상응하는 수신대상 네트워크 스토리지 서버를 결정하는 판단모듈을 더 포함하고, 상기 데이터입출력모듈은, 상기 수신대상 네트워크 스토리지 서버로부터 상기 독출대상 가상단위공간에 상응하는 데이터를 수신하여, 상기 호스트 컴퓨터로 제공할 수 있다.In one embodiment, the removable storage device providing the large-capacity virtual storage space may include a storage unit for storing the virtual storage space in response to a read request of data corresponding to a read target virtual unit space included in the virtual storage space input from the host computer, And a determination module that determines a reception target network storage server corresponding to the virtual unit space, wherein the data input / output module receives data corresponding to the read target virtual unit space from the reception target network storage server, And can be provided by a computer.

본 발명의 다른 일 측면에 따르면, 호스트 컴퓨터에 연결되어, 대용량 가상저장공간을 제공하는 이동식 저장장치제공방법으로서, (a) 이동식 저장장치가, 적어도 하나의 네트워크 스토리지 서버로부터, 상기 적어도 하나의 네트워크 스토리지 서버에 저장된 원격파일 정보를 수신하는 단계, (b) 상기 이동식 저장장치가, 수신한 상기 원격파일 정보에 기초하여, 상기 원격파일의 데이터와 가상저장공간에 포함된 복수의 가상단위공간 중 적어도 하나간의 대응관계를 설정하는 단계, (c) 상기 이동식 저장장치가, 수신한 상기 원격파일 정보 및 상기 대응관계에 기초하여, 상기 가상저장공간에 대한 파일 시스템 정보를 생성하는 단계-여기서, 상기 파일 시스템 정보는, 상기 호스트 컴퓨터에 설치된 운영체제에서 지원하는 호스트 파일 시스템의 형식으로 구성됨, (d) 상기 이동식 저장장치가, 상기 호스트 컴퓨터로부터 입력되는 상기 가상저장공간에 포함된 독출대상 가상단위공간에 상응하는 데이터의 독출요청에 응답하여, 상기 대응관계에 의해 상기 독출대상 가상단위공간에 대응되는 수신대상 네트워크 스토리지 서버를 판단하는 단계 및 (e) 상기 이동식 저장장치가, 상기 수신대상 네트워크 스토리지 서버로부터 상기 독출대상 가상단위공간에 상응하는 원격파일 데이터를 수신하여, 상기 호스트 컴퓨터로 제공하는 단계를 포함하는 대용량 가상저장공간을 제공하는 이동식 저장장치 제공방법이 제공된다.According to another aspect of the present invention there is provided a method of providing a removable storage device coupled to a host computer to provide a large amount of virtual storage space, the method comprising: (a) transferring, from at least one network storage server, Receiving, by the portable storage device, remote file information stored in a storage server; and (b) receiving, by the portable storage device, data of the remote file and at least one of a plurality of virtual unit spaces included in the virtual storage space (C) generating, by the removable storage device, file system information for the virtual storage space based on the received remote file information and the corresponding relationship, The system information is stored in a form of a host file system supported by an operating system installed in the host computer (D) in response to a read request of data corresponding to a read target virtual unit space included in the virtual storage space input from the host computer, the portable storage device stores the read target virtual unit (E) receiving, by the portable storage device, remote file data corresponding to the read target virtual unit space from the receiving target network storage server and transmitting the remote file data to the host computer There is provided a method of providing a removable storage device that provides a large-capacity virtual storage space including a step of providing a large-capacity virtual storage space.

일 실시예에서, 상기 대용량 가상저장공간을 제공하는 이동식 저장장치 제공방법은, (f) 상기 호스트 컴퓨터로부터 입력되는 상기 가상저장공간에 포함된 적어도 하나의 기록대상 가상단위공간에 소정의 기록대상 파일을 저장하라는 저장요청에 응답하여, 상기 적어도 하나의 기록대상 가상단위공간 각각과 상기 적어도 하나의 네트워크 스토리지 서버와의 대응 관계를 설정하는 단계 및 (g) 상기 적어도 하나의 기록대상 가상단위공간 각각에 대하여, 상기 기록대상 파일에 포함된 데이터 중 상기 기록대상 가상단위공간에 상응하는 데이터를 상기 기록대상 가상단위공간에 대응되는 전송대상 네트워크 스토리지 서버에 전송하여, 상기 전송대상 네트워크 스토리지 서버에 저장하는 단계를 더 포함할 수 있다.According to an embodiment of the present invention, there is provided a method of providing a removable storage device that provides a large-capacity virtual storage space, comprising the steps of: (f) storing, in at least one recording target virtual unit space included in the virtual storage space input from the host computer, Setting a correspondence relationship between each of the at least one recording target virtual unit space and the at least one network storage server in response to a storage request for storing the at least one recording target virtual unit space, A step of transmitting data corresponding to the recording target virtual unit space among the data included in the recording object file to the transmission target network storage server corresponding to the recording target virtual unit space and storing the data in the transmission target network storage server As shown in FIG.

일 실시예에서, 상기 (f) 단계는, 상기 기록대상 파일의 속성에 기초하여, 상기 적어도 하나의 기록대상 가상단위공간 각각과 상기 적어도 하나의 네트워크 스토리지 서버와의 대응관계를 설정할 수 있다.In one embodiment, the step (f) may set a correspondence relationship between each of the at least one recording target virtual unit space and the at least one network storage server, based on the attribute of the recording object file.

일 실시예에서, 상기 대용량 가상저장공간을 제공하는 이동식 저장장치 제공방법은, 상기 기록대상 파일을 저장하라는 저장요청에 응답하여, 상기 기록대상 파일을 상기 이동식 저장장치의 내부 메모리 장치에 저장하는 단계, 상기 독출대상 가상단위공간에 상응하는 데이터의 독출요청에 응답하여, 상기 독출대상 가상단위공간에 상응하는 캐시파일이 상기 내부 메모리 장치에 저장되어 있는지 판단하는 단계 및 판단결과 저장되어 있는 경우, 상기 캐시파일에 포함된 데이터를 상기 호스트 컴퓨터로 제공하는 단계를 더 포함할 수 있다.In one embodiment, the method for providing a removable storage device providing the large-capacity virtual storage space includes storing the file to be recorded in the internal memory device of the removable storage device in response to a storage request to save the file to be recorded Determining whether a cache file corresponding to the read target virtual unit space is stored in the internal memory device in response to a read request of data corresponding to the read target virtual unit space, And providing the data included in the cache file to the host computer.

본 발명의 다른 일 측면에 따르면, 호스트 컴퓨터에 연결되어, 대용량 가상저장공간을 제공하는 이동식 저장장치제공방법으로서, (a) 이동식 저장장치가, 네트워크 스토리지 서비스를 제공하는 적어도 하나의 네트워크 스토리지 서버와의 네트워크 연결 및 데이터 통신을 수행하는 단계, (b) 상기 이동식 저장장치가, 복수의 가상단위공간을 포함하는 가상저장공간에 대한 파일 시스템 정보를 상기 호스트 컴퓨터에 제공하는 단계-여기서, 상기 가상저장공간에 대한 파일시스템 정보는, 상기 호스트 컴퓨터에 설치된 운영체제에서 지원하는 파일 시스템의 형식으로 구성됨, (c) 상기 이동식 저장장치가, 상기 호스트 컴퓨터로부터 입력되는 상기 가상저장공간에 포함된 적어도 하나의 기록대상 가상단위공간에 소정의 기록대상 파일을 저장하라는 저장요청에 응답하여, 상기 적어도 하나의 기록대상 가상단위공간 각각과 상기 적어도 하나의 네트워크 스토리지 서버와의 대응 관계를 설정하는 단계 및 (d) 상기 이동식 저장장치가, 상기 적어도 하나의 기록대상 가상단위공간 각각에 대하여, 상기 기록대상 파일에 포함된 데이터 중 상기 기록대상 가상단위공간에 상응하는 데이터를 상기 기록대상 가상단위공간에 대응되는 대상 네트워크 스토리지 서버에 전송하여, 상기 대상 네트워크 스토리지 서버에 저장하는 단계를 포함하는 대용량 가상저장공간을 제공하는 이동식 저장장치 제공방법이 제공된다.According to another aspect of the present invention, there is provided a method of providing a removable storage device connected to a host computer to provide a large capacity virtual storage space, the method comprising the steps of: (a) providing a removable storage device with at least one network storage server (B) providing the host computer with file system information for a virtual storage space including a plurality of virtual unit spaces, wherein the virtual storage unit Wherein the file system information on the space is configured in the form of a file system supported by an operating system installed in the host computer, (c) the removable storage device has at least one record included in the virtual storage space input from the host computer Store a predetermined recording target file in the target virtual unit space Setting a correspondence relationship between each of the at least one recording target virtual unit space and the at least one network storage server in response to the at least one recording target virtual unit space; and (d) To the target network storage server corresponding to the recording target virtual unit space and storing the data corresponding to the recording target virtual unit space among the data included in the recording object file in the target network storage server There is provided a method of providing a removable storage device that provides a large-capacity virtual storage space.

일 실시예에서, 상기 대용량 가상저장공간을 제공하는 이동식 저장장치 제공방법은, 상기 호스트 컴퓨터로부터 입력되는 상기 가상저장공간에 포함된 독출대상 가상단위공간에 상응하는 데이터의 독출요청에 응답하여, 저장된 상기 대응 관계에 기초하여 상기 독출대상 가상단위공간에 상응하는 수신대상 네트워크 스토리지 서버를 결정하는 단계 및 상기 수신대상 네트워크 스토리지 서버로부터 상기 독출대상 가상단위공간에 상응하는 데이터를 수신하여, 상기 호스트 컴퓨터로 제공하는 단계를 더 포함할 수 있다.In one embodiment, the portable storage device providing method for providing the large-capacity virtual storage space includes storing the virtual storage space in response to a read request of data corresponding to a read target virtual unit space included in the virtual storage space input from the host computer Determining a receiving target network storage server corresponding to the read target virtual unit space based on the correspondence relationship, receiving data corresponding to the read target virtual unit space from the receiving target network storage server, And a second step of providing the second step.

본 발명의 다른 일 측면에 따르면, 상술한 방법을 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체가 제공된다.According to another aspect of the present invention, there is provided a computer-readable recording medium recording a program for performing the above-described method.

본 발명의 다른 일 측면에 따르면, 대용량 가상저장공간을 제공하는 이동식 저장장치로서, 프로세서 및 상기 프로세서에 의하여 실행되는 컴퓨터 프로그램을 저장하는 메모리를 포함하며, 상기 컴퓨터 프로그램은, 상기 프로세서에 의해 실행되는 경우, 상기 대용량 가상저장공간을 제공하는 이동식 저장장치가 상술한 방법을 수행하도록 하는 대용량 가상저장공간을 제공하는 이동식 저장장치가 제공된다.
According to another aspect of the present invention there is provided a portable storage device providing a large virtual storage space, the storage device comprising a processor and a memory for storing a computer program executed by the processor, There is provided a portable storage device providing a large-capacity virtual storage space for allowing a portable storage device providing the large-capacity virtual storage space to perform the above-described method.

본 발명의 기술적 사상에 따르면 클라우드 서비스와 같은 네트워크 스토리지 서비스와 연동되어 사용자에게 대용량의 저장공간을 제공할 수 있는 대용량 가상저장공간을 제공하는 이동식 저장장치를 제공할 수 있다.According to the technical idea of the present invention, it is possible to provide a portable storage device that provides a large-capacity virtual storage space capable of providing a large-capacity storage space to a user in cooperation with a network storage service such as a cloud service.

또한, 본 발명의 기술적 사상에 의하면, 사용자의 호스트 컴퓨터는 통상적인 호스트 파일 시스템을 통해 파일을 액세스할 수 있으므로 사용자는 운영체제에서 제공하는 UI 혹은 커맨드(예를 들면, Windowsㄾ 운영체제의 탐색기)를 이용하여 네트워크 스토리지 서버에 저장된 파일을 액세스할 수 있다. 따라서, 사용자가 별도의 전용 프로그램을 설치해야 하는 불편을 없앨 수 있으며, 통상적인 이동식 저장장치(예를 들면, USB 메모리)를 이용하는 것과 같은 사용자 경험을 제공할 수 있는 효과가 있다.In addition, according to the technical idea of the present invention, a user's host computer can access a file through a conventional host file system, so that a user can use a UI or a command provided by an operating system (for example, a search engine of a Windows operating system) To access files stored on a network storage server. Therefore, it is possible to eliminate the inconvenience that the user needs to install a separate dedicated program, and it is possible to provide a user experience such as using a conventional portable storage device (for example, a USB memory).

또한, 사용자가 실수로 로컬 PC에 데이터를 남길 여지를 사전에 방지할 수 있으므로 데이터 불법 유출을 막을 수 있는 효과가 있다. In addition, since it is possible to prevent a user from accidentally leaving room for data on the local PC in advance, illegal data leakage can be prevented.

또한, 사용자가 최근에 사용하거나, 즐겨 사용하는 데이터를 내부 메모리에 캐싱함으로써 사용자가 빠르게 해당 데이터에 액세스할 수 있도록 하는 효과가 있다.
In addition, there is an effect that a user can quickly access the data by caching the data that the user has recently used or enjoyed in the internal memory.

본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 실시 예에 따른 대용량 가상저장공간을 제공하는 이동식 저장장치의 사용환경을 설명하기 위한 도면이다.
도 2는 본 발명의 실시 예에 따른 이동식 저장장치(100)의 개략적인 구성을 나타내는 블록도이다.
도 3a는 네트워크 스토리지 서버에 저장된 원격파일의 일 예를 도시한 도면이다.
도 3b는 원격파일 및 가상저장공간의 대응관계의 일 예를 도시한 도면이다.
도 3c는 파일 시스템 정보의 일 예를 도시한 도면이다.
도 4a는 도 3a 내지 3c의 상황에서 호스트 컴퓨터가 파일을 기록한 경우의 원격파일 및 가상저장공간의 대응관계의 일 예를 도시한 도면이다.
도 4b는 도 3a 내지 3c의 상황에서 호스트 컴퓨터가 파일을 기록한 경우의 네트워크 스토리지 서버의 상태를 도시한 도면이다.
도 4c는 도 3a 내지 3c의 상황에서 호스트 컴퓨터가 파일을 기록하여 파일 시스템 정보가 변경된 예를 도시한 도면이다.
BRIEF DESCRIPTION OF THE DRAWINGS A brief description of each drawing is provided to more fully understand the drawings recited in the description of the invention.
1 is a view for explaining a use environment of a mobile storage device providing a large-capacity virtual storage space according to an embodiment of the present invention.
2 is a block diagram showing a schematic configuration of a mobile storage device 100 according to an embodiment of the present invention.
3A is a diagram illustrating an example of a remote file stored in a network storage server.
3B is a diagram showing an example of a correspondence relationship between a remote file and a virtual storage space.
3C is a diagram showing an example of file system information.
4A is a diagram showing an example of a correspondence relationship between a remote file and a virtual storage space when a host computer records a file in the situation of FIGS. 3A to 3C. FIG.
4B is a diagram illustrating a state of a network storage server when a host computer records a file in the situation of FIGS. 3A to 3C.
FIG. 4C is a diagram showing an example in which the host computer records files and the file system information is changed in the situations of FIGS. 3A to 3C. FIG.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.BRIEF DESCRIPTION OF THE DRAWINGS The present invention is capable of various modifications and various embodiments, and specific embodiments are illustrated in the drawings and described in detail in the detailed description. It is to be understood, however, that the invention is not to be limited to the specific embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise.

본 명세서에 있어서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In this specification, the terms "comprises" or "having" and the like refer to the presence of stated features, integers, steps, operations, elements, components, or combinations thereof, But do not preclude the presence or addition of features, numbers, steps, operations, components, parts, or combinations thereof.

또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다. 반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.Also, in this specification, when any one element 'transmits' data to another element, the element may transmit the data directly to the other element, or may be transmitted through at least one other element And may transmit the data to the other component. Conversely, when one element 'directly transmits' data to another element, it means that the data is transmitted to the other element without passing through another element in the element.

이하, 첨부된 도면들을 참조하여 본 발명의 실시예들을 중심으로 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.Hereinafter, the present invention will be described in detail with reference to the embodiments of the present invention with reference to the accompanying drawings. Like reference symbols in the drawings denote like elements.

도 1은 본 발명의 실시 예에 따른 대용량 가상저장공간을 제공하는 이동식 저장장치(이하, '이동식 저장장치'라고 함)의 사용환경을 설명하기 위한 도면이다.FIG. 1 is a view for explaining a usage environment of a mobile storage device (hereinafter referred to as a 'mobile storage device') that provides a large-capacity virtual storage space according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 실시 예에 따른 이동식 저장장치(100)는 소정의 호스트 컴퓨터(200)와 연결될 수 있다. 상기 이동식 저장장치(100)는 호스트 컴퓨터(200)에 연결되는 경우, 상기 호스트 컴퓨터(10)가 연결을 인지할 수 있는 모든 형태의 데이터 저장매체를 포함하는 의미로 정의될 수 있다.Referring to FIG. 1, a portable storage device 100 according to an embodiment of the present invention may be connected to a predetermined host computer 200. The portable storage device 100 may be defined to include any type of data storage medium in which the host computer 10 can recognize a connection when the host computer 200 is connected to the host computer 200. [

상기 이동식 저장장치(100)는 USB(Universal Serial Bus) 인터페이스와 같은 접속 인터페이스(101 및 201)를 통해 상기 호스트 컴퓨터(200)와 연결될 수 있다. 본 명세서에서는 설명의 편의를 위해 상기 이동식 저장장치(100)가 USB를 통해 상기 호스트 컴퓨터(200)와 연결되는 경우를 일 예로 설명하기로 하지만, 본 발명의 권리범위가 이에 한정되는 것은 아니며, 다양한 유/무선 접속 인터페이스를 통해 이동식 저장장치(100)와 호스트 컴퓨터(200)가 연결될 수 있다.The portable storage device 100 may be connected to the host computer 200 through connection interfaces 101 and 201, such as a universal serial bus (USB) interface. For convenience of description, the portable storage device 100 is connected to the host computer 200 via USB. However, the scope of the present invention is not limited thereto. The portable storage device 100 and the host computer 200 can be connected through a wired / wireless connection interface.

상기 호스트 컴퓨터(200)는 상기 이동식 저장장치(100)가 연결되면, 상기 이동식 저장장치(100)가 연결되었음을 인지할 수 있다. 이동식 저장장치(100)가 연결되었는지 여부의 인지는 상기 호스트 컴퓨터(200)에 구비된 USB 인터페이스(201) 및 상기 인터페이스를 구동하는 소프트웨어에 의해 수행될 수 있다. 상기 소프트웨어는 상기 USB 인터페이스를 구동하기 위한 디바이스 드라이버일 수 있다.When the portable storage device 100 is connected to the host computer 200, the host computer 200 may recognize that the portable storage device 100 is connected. The recognition of whether or not the portable storage device 100 is connected can be performed by the USB interface 201 provided in the host computer 200 and software for driving the interface. The software may be a device driver for driving the USB interface.

상기 호스트 컴퓨터(200)는 이동식 저장장치(100)가 연결될 수 있는 모든 형태의 데이터 프로세싱 장치를 포함하는 의미로 정의될 수 있다. 상기 호스트 컴퓨터(200)는, 예를 들어, 사용자의 데스크탑, 노트북, 타블렛 PC나 스마트폰 등의 모바일 단말기일 수 있다.The host computer 200 may be defined to include any type of data processing apparatus to which the portable storage device 100 may be connected. The host computer 200 may be, for example, a mobile terminal such as a user's desktop, a notebook, a tablet PC, or a smart phone.

한편, 상기 이동식 저장장치(100)는 유/무선 네트워크를 통해 복수의 네트워크 스토리지 서버(400-1 내지 400-N))와 연결되어 본 발명의 기술적 사상을 구현하는데 필요한 각종 정보 및 데이터를 송수신할 수 있다.Meanwhile, the mobile storage device 100 is connected to a plurality of network storage servers 400-1 to 400-N via a wired / wireless network to transmit / receive various information and data necessary for implementing the technical idea of the present invention .

특히, 상기 이동식 저장장치(100)는 Wi-fi와 같은 무선 네트워크를 통해 상기 복수의 네트워크 스토리지 서버(400-1 내지 400-N))와 연결될 수 있으며, 이 경우, 상기 이동식 저장장치(100)는 Wi-fi 모듈과 같은 무선 NIC(Network Interface Controller)를 구비할 수 있다. 또한 상기 이동식 저장장치(100)는 인터넷에 연결된 무선 공유기 또는 무선 액세스 포인트(300)를 통해 상기 복수의 네트워크 스토리지 서버(400-1 내지 400-N))에 접속하여, 데이터를 송수신할 수 있다.In particular, the removable storage device 100 may be connected to the plurality of network storage servers 400-1 to 400-N via a wireless network such as Wi-fi. In this case, May include a wireless NIC (Network Interface Controller) such as a Wi-fi module. The mobile storage device 100 may access the plurality of network storage servers 400-1 to 400-N via a wireless router or a wireless access point 300 connected to the Internet to transmit and receive data.

상기 복수의 네트워크 스토리지 서버(400-1 내지 400-N) 각각은 데이터를 저장할 수 있는 네트워크 저장공간을 제공하는 서버일 수 있다. 즉, 사용자는 자신의 로컬 PC에 저장되어 있는 데이터를 네트워크를 통해 상기 복수의 네트워크 스토리지 서버(400-1 내지 400-N)에 전송하여 상기 복수의 네트워크 스토리지 서버(400-1 내지 400-N) 저장할 수 있으며, 필요한 경우 저장된 데이터를 네트워크를 통해 자신의 로컬 PC로 내려 받아 이용할 수 있다. 각 네트워크 스토리지 서버(400-1 내지 400-N)가 제공하는 저장공간의 크기는 모두 상이할 수 있다. 예를 들어, 네트워크 스토리지 서버(400-1)은 5GB 크기의 저장공간을 제공할 수 있으며, 네트워크 스토리지 서버(400-2)는 10GB 크기의 저장공간을 제공할 수 있다.Each of the plurality of network storage servers 400-1 to 400-N may be a server for providing a network storage space for storing data. That is, the user transmits data stored in his / her local PC to the plurality of network storage servers 400-1 to 400-N via the network, If necessary, the stored data can be downloaded to the local PC via the network and used. The size of the storage space provided by each of the network storage servers 400-1 to 400-N may be all different. For example, the network storage server 400-1 may provide a storage space of 5 GB, and the network storage server 400-2 may provide a storage space of 10 GB.

한편, 상기 이동식 저장장치(100)는 상기 복수의 네트워크 스토리지 서버(400-1 내지 400-N) 각각에 접속/로그인하기 위해, 각 네트워크 스토리지 서버(400-1 내지 400-N) 각각의 로그인 정보(예를 들면, 접속 ID 및 접속 암호)를 저장할 수 있다. 각 서버에 로그인하기 위한 로그인 정보는 상기 이동식 저장장치(100)가 상기 복수의 네트워크 스토리지 서버(400-1 내지 400-N)에 접속하기 전에 사용자에 의해 미리 설정되어 있을 수 있다.In order to access / log into each of the plurality of network storage servers 400-1 to 400-N, the mobile storage device 100 transmits login information of each of the network storage servers 400-1 to 400- (E.g., a connection ID and a connection password). The login information for logging in each server may be preset by the user before the portable storage device 100 connects to the plurality of network storage servers 400-1 to 400-N.

후술하는 바와 같은 본 발명의 기술적 사상에 따르면, 상기 이동식 저장장치(100)는 상기 복수의 네트워크 스토리지 서버(400-1 내지 400-N)이 제공하는 네트워크 스토리지의 크기의 총합에 해당하거나 그 보다 약간 작을 수 있는 크기의 가상저장공간을 호스트 컴퓨터(200)에 제공할 수 있다. 예를 들어, 상기 복수의 네트워크 스토리지 서버(400-1 내지 400-N)의 개수가 10개이며 각 네트워크 스토리지 서버가 10GB씩의 용량을 제공하여, 상기 상기 복수의 네트워크 스토리지 서버(400-1 내지 400-N)가 총 100GB의 네트워크 스토리지를 제공한다고 하면, 상기 이동식 저장장치(100)는 100GB 크기의 가상저장공간을 호스트 컴퓨터(200)에 제공할 수 있다. 따라서, 상기 상기 이동식 저장장치(100)가 상기 호스트 컴퓨터(200)에 연결되는 경우, 상기 호스트 컴퓨터(200)는 상기 이동식 저장장치(100)를 100GB의 용량을 가지는 이동식 저장장치로 인식할 수 있다.According to the technical idea of the present invention as described below, the portable storage device 100 may store a plurality of network storage servers 400-1 to 400-N that correspond to the sum of sizes of network storage provided by the plurality of network storage servers 400-1 to 400- It is possible to provide the host computer 200 with a virtual storage space of a small size. For example, the number of the plurality of network storage servers 400-1 to 400-N is 10, each network storage server provides a capacity of 10GB, and the plurality of network storage servers 400-1 to 400- 400-N provide a total of 100 GB of network storage, the portable storage device 100 can provide a virtual storage space of 100 GB size to the host computer 200. Accordingly, when the portable storage device 100 is connected to the host computer 200, the host computer 200 can recognize the portable storage device 100 as a portable storage device having a capacity of 100 GB .

따라서, 상기 이동식 저장장치(100)가 가상저장공간을 제공한다고 함은, 사용자가 상기 이동식 저장장치(100)를 통해 상기 가상저장공간의 크기만큼의 데이터를 저장할 수 있도록 하지만, 상기 이동식 저장장치(100)가 상기 가상저장공간과 동일한 크기의 물리적인 저장매체를 구비하고 있지는 않음을 의미할 수 있다.The provision of the virtual storage space by the portable storage device 100 allows the user to store data of the size of the virtual storage space through the portable storage device 100, 100 may not have a physical storage medium of the same size as the virtual storage space.

한편, 상기 이동식 저장장치(100)는 호스트 컴퓨터(200)에 설치된 운영체제에서 지원하는 파일 시스템에 의해 상기 가상저장공간을 관리함으로써, 사용자가 마치 일반적인 USB 메모리 장치를 이용하는 것과 같은 사용자 경험을 제공할 수 있다. 즉, 사용자는 본 발명의 기술적 사상에 따른 이동식 저장장치(100)가 제공하는 가상저장공간을 일반적인 USB 메모리 장치를 탐색하는 방법(예를 들어, Windowsㄾ 운영체제의 탐색기 프로그램을 이용하는 방법)을 통해 상기 가상저장공간을 탐색할 수 있다.Meanwhile, the portable storage device 100 manages the virtual storage space by a file system supported by an operating system installed in the host computer 200, so that a user can provide a user experience such as using a general USB memory device have. That is, the user can access the virtual storage space provided by the portable storage device 100 according to the technical idea of the present invention through a method of searching a general USB memory device (for example, a method using a browser program of a Windows operating system) You can explore the virtual storage space.

상기 파일 시스템의 형태는, 호스트 컴퓨터(200)에 설치된 운영체제에 의해 결정될 수 있다. 예를 들어, 호스트 컴퓨터(200)에 설치된 운영체제가 Windowsㄾ 운영체제인 경우, 상기 파일 시스템은 FAT16, FAT32, exFAT, NTFS 등 일 수 있다.The type of the file system can be determined by an operating system installed in the host computer 200. [ For example, if the operating system installed in the host computer 200 is a Windows operating system, the file system may be FAT16, FAT32, exFAT, NTFS, or the like.

이하에서는 도 2 내지 도 4를 참조하여, 보다 구체적으로 본 발명의 기술적 사상을 설명하기로 한다.Hereinafter, the technical idea of the present invention will be described in more detail with reference to FIG. 2 to FIG.

도 2는 본 발명의 실시 예에 따른 이동식 저장장치(100)의 개략적인 구성을 나타내는 블록도이다.2 is a block diagram showing a schematic configuration of a mobile storage device 100 according to an embodiment of the present invention.

도 2에 도시된 바와 같이, 상기 이동식 저장장치(100)는 네트워킹모듈(110), 매핑모듈(120), 파일시스템모듈(130), 판단모듈(140), 데이터입출력모듈(150), 캐싱모듈(160) 및 내부메모리장치(170)를 포함할 수 있다. 본 발명의 실시예에 따라서는, 상술한 구성요소들 중 일부 구성요소는 반드시 본 발명의 구현에 필수적으로 필요한 구성요소에 해당하지 않을 수도 있으며, 또한 실시예에 따라 상기 이동식 저장장치(100)는 이보다 더 많은 구성요소를 포함할 수도 있음은 물론이다. 예를 들어, 상기 이동식 저장장치(100)는 상기 이동식 저장장치(100)에 포함된 다른 구성들(예를 들면, 네트워킹모듈(110), 매핑모듈(120), 파일시스템모듈(130), 판단모듈(140), 데이터입출력모듈(150) 및/또는 캐싱모듈(160) 등)의 기능 및/또는 리소스를 제어할 수 있는 제어모듈(미도시)을 더 포함할 수 있다.2, the portable storage device 100 includes a networking module 110, a mapping module 120, a file system module 130, a determination module 140, a data input / output module 150, a caching module 150, (160) and an internal memory device (170). According to an embodiment of the present invention, some of the above-mentioned components may not necessarily correspond to the components necessary for the implementation of the present invention, It goes without saying that more components may be included. For example, the removable storage device 100 may include other components included in the removable storage device 100 (e.g., networking module 110, mapping module 120, file system module 130, (Not shown) that can control the functions and / or resources of the data processing module 140, the data input / output module 150 and / or the caching module 160, and the like.

상기 이동식 저장장치(100)는 본 발명의 기술적 사상을 구현하기 위해 필요한 하드웨어 리소스(resource) 및/또는 소프트웨어를 구비할 수 있으며, 반드시 하나의 물리적인 구성요소를 의미하거나 하나의 장치를 의미하는 것은 아니다. 즉, 상기 이동식 저장장치 (100)는 본 발명의 기술적 사상을 구현하기 위해 구비되는 하드웨어 및/또는 소프트웨어의 논리적인 결합을 의미할 수 있으며, 필요한 경우에는 서로 이격된 장치에 설치되어 각각의 기능을 수행함으로써 본 발명의 기술적 사상을 구현하기 위한 논리적인 구성들의 집합으로 구현될 수도 있다. 또한, 상기 이동식 저장장치는 본 발명의 기술적 사상을 구현하기 위한 각각의 기능 또는 역할별로 별도로 구현되는 구성들의 집합을 의미할 수도 있다. 예를 들면, 상기 네트워킹모듈(110), 매핑모듈(120), 파일시스템모듈(130), 판단모듈(140), 데이터입출력모듈(150) 및/또는 캐싱모듈(160)은 서로 다른 물리적 장치에 위치할 수도 있고, 동일한 물리적 장치에 위치할 수도 있다. 또한, 구현 예에 따라서는 상기 네트워킹모듈(110), 매핑모듈(120), 파일시스템모듈(130), 판단모듈(140), 데이터입출력모듈(150) 및/또는 캐싱모듈(160) 등 각각의 개별 모듈을 구성하는 요소들 역시 서로 다른 물리적 장치에 위치하고, 서로 다른 물리적 장치에 위치한 요소들이 서로 유기적으로 결합되어 각각의 개별 모듈이 수행하는 기능을 실현할 수도 있다.The portable storage device 100 may include hardware resources and / or software necessary for implementing the technical idea of the present invention, and the term " device " no. That is, the portable storage device 100 may mean a logical combination of hardware and / or software provided to implement the technical idea of the present invention. If necessary, the portable storage device 100 may be installed in a separate device, The present invention may be embodied as a set of logical structures for realizing the technical idea of the present invention. In addition, the portable storage device may mean a set of configurations separately implemented for each function or role for implementing the technical idea of the present invention. For example, the networking module 110, the mapping module 120, the file system module 130, the determination module 140, the data input / output module 150, and / or the caching module 160 may be connected to different physical devices Or may be located in the same physical device. Also, depending on the implementation, each of the networking module 110, the mapping module 120, the file system module 130, the determination module 140, the data input / output module 150 and / or the caching module 160 Elements constituting individual modules may also be located in different physical devices, and elements located in different physical devices may be organically coupled to each other to realize the functions performed by the respective individual modules.

또한, 본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예를 들면, 상기 모듈은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.In this specification, a module may mean a functional and structural combination of hardware for carrying out the technical idea of the present invention and software for driving the hardware. For example, the module may refer to a logical unit of a predetermined code and a hardware resource for executing the predetermined code, and it does not necessarily mean a physically connected code or a kind of hardware But can be easily deduced to the average expert in the field of the present invention.

도 2를 참조하면, 상기 네트워킹모듈(110)은 네트워크 스토리지 서버(400-1 내지 400-N)에 유/무선 네트워크를 통해 접속하고, 필요한 정보를 송수신할 수 있다. 예를 들어, 상기 네트워킹모듈(110)은 미리 설정된 로그인 정보를 통해 상기 네트워크 스토리지 서버(400-1 내지 400-N)에 로그인할 수 있으며, 상기 네트워크 스토리지 서버(400-1 내지 400-N)에 저장된 각각의 원격파일의 정보를 수신할 수 있다.2, the networking module 110 may access the network storage servers 400-1 to 400-N via a wired / wireless network and transmit / receive necessary information. For example, the networking module 110 can log into the network storage servers 400-1 to 400-N through preset login information, and the network storage servers 400-1 to 400-N Information of each stored remote file can be received.

원격파일의 정보는 상기 원격파일 상기 네트워크 스토리지 서버 내에서의 위치 정보(예를 들면, 디렉토리 정보) 및 파일이름을 포함할 수 있다. 이 외에도 원격파일의 정보는 상기 원격파일을 식별하기 위한 각종 정보일 수 있다. 또한, 상기 원격파일 정보는 상기 원격파일의 크기정보, 파일속성(읽기/쓰기 속성, 숨김속성 등), 생성시간/변경시간 정보 등을 더 포함할 수 있다.The information of the remote file may include location information (e.g., directory information) and file name in the network storage server. In addition, the information of the remote file may be various information for identifying the remote file. The remote file information may further include size information of the remote file, file attributes (read / write attributes, hidden attributes, etc.), creation time / modification time information, and the like.

상기 네트워킹모듈(110)은 로그인 또는 데이터/정보의 송수신을 상기 네트워크 스토리지 서버(400-1 내지 400-N)에서 제공하는 Open API(Application Programming Interface)를 통해 수행할 수 있다.The networking module 110 may perform login or transmission / reception of data / information through an Open API (Application Programming Interface) provided by the network storage servers 400-1 to 400-N.

한편, 상기 매핑모듈(120)은 상기 네트워킹모듈(110)이 수신한 상기 원격파일 정보에 기초하여, 상기 원격파일의 데이터와 상기 이동식 저장장치(100)가 제공하는 가상저장공간에 포함된 복수의 가상단위공간 중 적어도 하나간의 대응관계를 설정할 수 있다.The mapping module 120 may store the remote file information received from the networking module 110 and the plurality of pieces of data included in the virtual storage space provided by the portable storage device 100, And a virtual unit space.

상기 이동식 저장장치(100)가 제공하는 가상저장공간은 복수의 가상단위 공간으로 구성될 수 있으며, 상기 가상단위공간은, 예를 들어, 상기 가상단위공간은 섹터(sector) 혹은 클러스터(cluster)일 수 있지만 이에 한정되는 것은 아니며, 상기 가상단위공간의 크기 및/또는 형태는 상기 호스트 컴퓨터(200)에 설치된 운영체제에서 지원하는 호스트 파일 시스템에 의존적일 수 있지만, 이하에서는 이해의 편의를 위하여, 가상단위공간이 클러스터 단위로 구성되어 있는 예에 대하여 설명하기로 한다.The virtual storage space provided by the mobile storage device 100 may include a plurality of virtual unit spaces. For example, the virtual unit space may be a sector or a cluster. The size and / or the shape of the virtual unit space may depend on the host file system supported by the operating system installed in the host computer 200. Hereinafter, for the convenience of understanding, An example where the space is configured in a cluster unit will be described.

도 3a는 3 개의 네트워크 스토리지 서버(NSS1 내지 NSS3)에 저장되어 있는 원격파일들을 도시한 도면이며, 도 3b는 네트워크 스토리지 서버(NSS1 내지 NSS3)에 도 3a와 같이 원격파일들이 저장된 경우, 이로부터 상기 매핑모듈(120)이 생성한 상기 원격파일들과 가상단위공간 간의 대응관계를 도시한 도면이다.3A shows remote files stored in three network storage servers NSS1 to NSS3. FIG. 3B shows a case where remote files are stored in the network storage servers NSS1 to NSS3 as shown in FIG. 3A, FIG. 5 is a diagram illustrating a correspondence relationship between the remote files generated by the mapping module 120 and a virtual unit space. FIG.

즉, 3 개의 네트워크 스토리지 서버(NSS1 내지 NSS3)에 도 3a와 같이 원격파일들이 저장된 경우, 상기 매핑모듈(120)은 도 3b와 같은 대응관계 정보를 생성할 수 있다. 한편, 도 3b는 대응관계를 나타내는 정보의 일 예일 뿐이며, 상기 매핑모듈(120)은 도 3b와 동일한 형태로 대응관계 정보를 생성하는 것은 아니다. 상기 매핑모듈(120) 도 3b에 도시된 바와 같은 대응관계를 도출할 수 있는 임의의 형식으로 대응관계 정보를 생성할 수 있다.That is, when remote files are stored in the three network storage servers NSS1 to NSS3 as shown in FIG. 3A, the mapping module 120 can generate corresponding relationship information as shown in FIG. 3B. On the other hand, FIG. 3B is only an example of information indicating a corresponding relationship, and the mapping module 120 does not generate corresponding relationship information in the same manner as FIG. 3B. The mapping module 120 may generate the mapping relationship information in any format capable of deriving a mapping relationship as shown in FIG. 3B.

먼저 도 3a를 참조하면, 상기 3 개의 네트워크 스토리지 서버(NSS1 내지 NSS 3)는 다수의 원격 파일을 저장할 수 있으며, 디렉토리 구조에 따라 각 원격 파일을 구분하여 저장할 수 있다. 예를 들어, 네트워크 스토리지 서버 1(NSS1)은 movie 디렉토리 및 music 디렉토리를 포함하고 있으며, movie 디렉토리에 165KB의 크기를 가지는 A.avi 및 158KB의 크기를 가지는 B.mp4를 저장하고 있고, music 디렉토리에 95KB의 크기를 가지는 C.mp3 및 90KB의 크기를 가지는 D.wav를 저장하고 있다.Referring to FIG. 3A, the three network storage servers NSS1 to NSS3 may store a plurality of remote files, and may store the remote files in accordance with the directory structure. For example, the network storage server 1 (NSS1) includes a movie directory and a music directory, and stores B.avi files having a size of 165KB and B.mp4 having a size of 158KB in a movie directory, C.mp3 having a size of 95 KB and D.wav having a size of 90 KB are stored.

한편, 상기 가상저장공간을 구성하는 각 단위저장공간(즉, 클러스터)의 크기가 32KB라고 하면, 165KB의 크기를 가지는 A.avi는 32 KB의 크기를 가지는 5개의 단위 데이터(a1 내지 a5) 및 5KB의 크기를 가지는 1개의 단위 데이터(a6)로 구성될 수 있으며, 단위 데이터(a1 내지 a6) 각각은 하나의 클러스터에 대응될 수 있다.Assuming that the size of each unit storage space (i.e., cluster) constituting the virtual storage space is 32 KB, A.avi having a size of 165 KB has 5 pieces of unit data a 1 to a 5 having a size of 32 KB, And one piece of unit data a6 having a size of 5 KB, and each unit data a1 to a6 may correspond to one cluster.

따라서, 상기 매핑모듈(120)은 원격 파일을 구성하는 각 단위 데이터를 하나의 클러스터와 대응시킬 수 있으며, 이에 따른 대응관계 정보를 도 3b와 같은 형태로 생성할 수 있다. 한편, 상기 매핑모듈(120)은 생성한 대응관계 정보를 상기 이동식 저장장치(100)의 내부 메모리(170)에 저장하여 다른 모듈이 상기 대응관계 정보를 이용할 수 있도록 할 수 있다.Therefore, the mapping module 120 can associate each unit data constituting the remote file with one cluster, and can generate corresponding relationship information in the form of FIG. 3B. Meanwhile, the mapping module 120 may store the generated corresponding relationship information in the internal memory 170 of the portable storage device 100 so that other modules can use the corresponding relationship information.

예를 들어, 상기 매핑모듈(120)은 A.avi에 대한 크기 정보(165KB) 및 클러스터 크기(32KB)에 기초하여, A.avi가 32KB의 크기인 단위 데이터 5개(a1 내지 a5) 및 크기가 5KB인 단위 데이터(a6)로 구성되어 있음을 파악할 수 있다. 이후, 상기 매핑모듈(120)은 클러스터 2 내지 클러스터 7을 A.avi를 구성하는 각 단위데이터(a1 내지 a6)에 대응시킬 수 있다.For example, based on the size information (165 KB) and the cluster size (32 KB) for A.avi, the mapping module 120 calculates five pieces of unit data (a 1 to a 5) and a size And the unit data a6 of 5 KB. Then, the mapping module 120 can correspond to the unit data a1 to a6 constituting A.

상기 매핑모듈(120)은 원격 파일을 연속된 클러스터에 대응시킬 수도 있지만, 원격 파일을 구성하는 단위 데이터가 모두 연속된 클러스터에 대응되는 것은 아니다. 예를 들어, 도 3b의 예시에서, 상기 매핑모듈(120)이 네트워크 스토리지 서버 1(NSS1)의 movie/B.mp4 파일을 클러스터 8, 클러스터 11, 클러스터 13, 클러스터 14, 클러스터 16과 같이 불연속적인 클러스터에 저장할 수도 있다.The mapping module 120 may associate remote files with successive clusters, but not all of the unit data constituting the remote files correspond to successive clusters. For example, in the example of FIG. 3B, the mapping module 120 stores the movie / B.mp4 file of the network storage server 1 (NSS1) in a discontinuous manner such as cluster 8, cluster 11, cluster 13, cluster 14, It can also be stored in a cluster.

상기 매핑모듈(120)이 원격 파일을 구성하는 각 단위데이터를 클러스터와 대응시키는 방법은 다양할 수 있다. 예를 들어, 상기 매핑모듈은 현재 비어 있는 상태의 클러스터 중 가장 앞에 있는 클러스터에 단위데이터를 대응시킬 수 있다.There are various ways in which the mapping module 120 associates each unit data constituting the remote file with the cluster. For example, the mapping module may map the unit data to the cluster in the frontmost of the currently empty clusters.

다시 도 2를 참조하면, 상기 파일시스템모듈(130)은 상기 네트워킹모듈(110)이 수신한 상기 원격파일 정보 및 상기 매핑모듈(120)이 설정한 상기 대응관계에 기초하여, 상기 가상저장공간에 대한 파일 시스템 정보를 생성할 수 있다. 한편, 상기 파일시스템모듈(130) 은 생성한 파일시스템 정보를 상기 이동식 저장장치(100)의 내부에 저장하여 다른 모듈 및 상기 호스트 컴퓨터(200)가 이를 이용할 수 있도록 할 수 있다.Referring again to FIG. 2, the file system module 130 determines whether or not the remote file information received by the networking module 110 and the mapping relationship established by the mapping module 120 are identical to each other Can generate file system information about the file system. Meanwhile, the file system module 130 may store the generated file system information in the portable storage device 100 so that other modules and the host computer 200 can use the file system information.

상기 파일시스템모듈(130)에 의해 생성되는 상기 파일 시스템 정보는 원격파일에 대한 정보 및 상기 원격파일과의 대응관계가 설정되어 있는 가상단위공간에 대한 정보를 포함할 수 있다. 원격파일 및 대응관계가 도 3a 및 도 3b의 예시와 같은 경우, 상기 파일시스템모듈(130)은 도 3c에 도시된 바와 같은 파일시스템 정보를 생성할 수 있다. 예를 들어, 상기 파일시스템모듈(130)이 생성하는 정보는 NSS1/movie/A.avi을 읽기 위해서는 클러스터 2, 3, 4, 5, 6, 7에 저장된 단위 데이터를 읽으면 된다는 정보를 포함할 수 있다. 다만, 상기 파일시스템모듈(130)이 도 3c와 동일한 형태로 파일 시스템 정보를 생성하는 것은 아니며, 상기 파일시스템모듈(130)은 호스트 컴퓨터(200)가 도 3c에 도시된 바와 같은 정보를 도출해낼 수 있는 형태로 파일 시스템 정보를 생성할 수 있다.The file system information generated by the file system module 130 may include information on a remote file and information on a virtual unit space in which a correspondence relationship with the remote file is set. In the case where the remote file and the correspondence correspond to the example of FIG. 3A and FIG. 3B, the file system module 130 may generate file system information as shown in FIG. 3C. For example, the information generated by the file system module 130 may include information indicating that unit data stored in the clusters 2, 3, 4, 5, 6, and 7 are read in order to read NSS1 / movie / have. However, the file system module 130 does not generate the file system information in the same manner as in FIG. 3C, and the file system module 130 determines that the host computer 200 can obtain the information as shown in FIG. 3C The file system information can be generated in a form in which the file system information can be generated.

한편, 상기 파일시스템모듈(130)은 상기 파일 시스템 정보를 상기 호스트 컴퓨터(200)에 설치된 운영체제에서 지원하는 호스트 파일 시스템의 형식으로 구성할 수 있다. 예를 들어, 호스트 파일 시스템이 FAT16인 경우, 상기 파일시스템모듈(130)은 상기 가상저장공간에 대한 파일 시스템 정보로서, 각각의 원격파일에 대한 정보 및 상기 원격파일과 대응관계가 설정되어 있는 가상단위공간에 대한 정보를 포함하는 파일 할당 테이블(File Allocation Table)을 생성할 수 있다.Meanwhile, the file system module 130 may configure the file system information in the form of a host file system supported by an operating system installed in the host computer 200. For example, when the host file system is FAT16, the file system module 130 stores, as file system information on the virtual storage space, information about each remote file and virtual A file allocation table including information on a unit space can be generated.

이와 같이, 상기 파일시스템모듈(130)은 파일 시스템 정보를 상기 호스트 컴퓨터(200)에 설치된 운영체제에서 지원하는 호스트 파일 시스템의 형식으로 구성하므로 상기 호스트 컴퓨터(200)는 로컬 저장장치(예를 들면 하드 디스크 드라이브) 또는 통상적인 USB 이동식 저장장치에 접근하는 방식과 동일한 방식으로 원격 파일에 액세스할 수 있다. 예를 들어, 상기 호스트 컴퓨터(200)는 NSS1/music/C.mp3 파일을 읽기 위해, 파일 시스템 정보로부터 상기 C.mp3 파일의 데이터가 클러스터 9, 10, 15에 저장되어 있다고 판단할 수 있으며, 클러스터 9, 10, 15에 저장되어 있는 데이터를 읽고자 할 수 있다. 하지만, 상기 이동식 저장장치(100) 내부에는 C.mp3 파일이 저장되어 있지 않으며, C.mp3 파일은 네트워크 스토리지 서버 1(NSS1)에 저장되어 있으므로 상기 이동식 저장장치(100)는 네트워크 스토리지 서버 1(NSS1)로부터 C.mp3 파일을 수신하여 상기 호스트 컴퓨터(200)에 제공해 주어야 한다.Since the file system module 130 configures the file system information in the form of a host file system supported by the operating system installed in the host computer 200, the host computer 200 can access the local storage device Disk drive) or a conventional USB removable storage device. For example, the host computer 200 may determine that the data of the C.mp3 file is stored in the clusters 9, 10, and 15 from the file system information in order to read the NSS1 / music / C.mp3 file, You may want to read the data stored in clusters 9, 10, and 15. However, since the C.mp3 file is not stored in the portable storage device 100 and the C.mp3 file is stored in the network storage server 1 (NSS1), the portable storage device 100 can access the network storage server 1 NSS1, and provide the C.mp3 file to the host computer 200. [

이를 위해, 상기 판단모듈(140)은 상기 호스트 컴퓨터로부터 입력되는 상기 가상저장공간에 포함된 독출대상 가상단위공간에 상응하는 데이터의 독출요청에 응답하여, 상기 대응관계에 의해 상기 독출대상 가상단위공간에 대응되는 수신대상 네트워크 스토리지 서버를 판단할 수 있으며, 상기 데이터입출력모듈(150)은 수신대상 네트워크 스토리지 서버로부터 상기 독출대상 가상단위공간에 상응하는 원격파일 데이터를 수신하여, 상기 호스트 컴퓨터로 제공할 수 있다.In response to the read request for data corresponding to the read target virtual unit space included in the virtual storage space input from the host computer, the determination module 140 determines the read target virtual unit space The data input / output module 150 may receive the remote file data corresponding to the read target virtual unit space from the reception target network storage server and provide the received remote file data to the host computer .

예를 들어, 상기 호스트 컴퓨터(200)가 NSS1/music/C.mp3 파일을 읽기 위해, C.mp3을 구성하는 첫 번째 단위 데이터가 클러스터 9에 위치하고 있다는 것을 판단하고, 상기 이동식 저장장치(100)로 독출대상 가상단위공간(즉, 클러스터 9)에 위치한 데이터의 독출을 요청하는 경우, 상기 판단모듈(140)은 도 3(b)에 도시된 바와 같은 대응관계에 기초하여, 클러스터 9에 대응되는 데이터가 NSS1/movie/C.mp3의 첫번째 단위 데이터(c1)임을 판단할 수 있다. 따라서, 상기 판단모듈(140)은 수신대상 네트워크 스토리지 서버를 네트워크 스토리지 서버 1(NSS1)로 판단할 수 있다.For example, when the host computer 200 reads NSS1 / music / C.mp3 file, it determines that the first unit data constituting C.mp3 is located in the cluster 9, 3 (b), the determination module 140 determines whether or not the data corresponding to the cluster 9 corresponding to the cluster 9 is to be read based on the correspondence relationship as shown in FIG. 3 (b) It can be determined that the data is the first unit data c1 of NSS1 / movie / C.mp3. Therefore, the determination module 140 may determine the reception target network storage server as the network storage server 1 (NSS1).

그러면, 상기 데이터입출력모듈(150)은 수신대상 네트워크 스토리지 서버인 네트워크 스토리지 서버 1(NSS1)로부터 movie/C.mp3를 수신하고, 이 중 첫번째 단위 데이터(c1)을 상기 호스트 컴퓨터(200)로 제공할 수 있다.The data input / output module 150 receives the movie / C.mp3 from the network storage server 1 (NSS1), which is the receiving network storage server, and provides the first unit data c1 to the host computer 200 can do.

이후, 상기 호스트 컴퓨터(200)가 C.mp3을 구성하는 두 번째 단위 데이터가 클러스터 10에 위치하고 있다는 것을 판단하고, 상기 이동식 저장장치(100)로 독출대상 가상단위공간(즉, 클러스터 10)에 위치한 데이터의 독출을 요청하는 경우, 상기 데이터입출력모듈(150)은 이미 수신한 C.mp3 중 두 번째 단위 데이터(c2)를 상기 호스트 컴퓨터(200)로 제공할 수 있다.Then, the host computer 200 judges that the second unit data constituting the C.mp3 is located in the cluster 10, and judges whether the second unit data is located in the virtual unit space (i.e., the cluster 10) to be read by the portable storage device 100 The data input / output module 150 may provide the second unit data c2 of the already received C.mp3 to the host computer 200. In this case,

한편, 상기 이동식 저장장치(100)는 호스트 컴퓨터(200)의 로컬 저장공간(예를 들면, 하드 디스크 드라이브)에 저장되어 있는 데이터를 네트워크 스토리지 서버에 저장하기 위한 방법을 제공할 수 있으며, 이 경우에도 상기 호스트 컴퓨터(200)의 사용자는 마치 USB 메모리 장치에 데이터를 저장하는 것과 같은 사용자 경험을 받을 수 있다.Meanwhile, the portable storage device 100 may provide a method for storing data stored in a local storage space (for example, a hard disk drive) of the host computer 200 in a network storage server. In this case, The user of the host computer 200 may receive a user experience such as storing data in the USB memory device.

이를 위해, 상기 매핑모듈(120)은 호스트 컴퓨터(200)로부터 입력되는 상기 가상저장공간에 포함된 적어도 하나의 기록대상 가상단위공간에 소정의 기록대상 파일을 저장하라는 저장요청에 응답하여, 상기 적어도 하나의 기록대상 가상단위공간 각각과 상기 네트워크 스토리지 서버(400-1 내지 400-N)와의 대응 관계를 설정할 수 있다.In response to the storage request to store a predetermined recording object file in at least one recording target virtual unit space included in the virtual storage space input from the host computer 200, It is possible to set a correspondence relationship between each of the recording target virtual unit spaces and the network storage servers 400-1 to 400-N.

예를 들어, 도 3a 내지 도 3c와 같은 상태에서, 호스트 컴퓨터가 121KB 크기의 L.avi를 저장하고자 하는 경우, 상기 호스트 컴퓨터(200)는 비어 있는 4 개의 클러스터인 클러스터 36 내지 클러스터 39에 L.avi를 구성하는 각각의 단위 데이터를 기록하라는 기록요청을 상기 이동식 저장장치(100)로 입력할 수 있다. 그러면, 상기 매핑모듈(120)은 이러한 기록요청에 응답하여, 먼저, 기록대상 파일이 저장될 기록대상 가상단위공간(즉, 클러스터 36 내지 클러스터 39) 각각과 상기 네트워크 스토리지 서버(NSS 1 내지 NSS 3)와의 대응관계를 설정할 수 있다.For example, in the state as shown in FIGS. 3A to 3C, when the host computer desires to store L.avi having a size of 121 KB, the host computer 200 stores L.avi in the clusters 36 to 39, which are four empty clusters. the user can input a write request to the removable storage device 100 to record each unit data constituting avi. Then, in response to this write request, the mapping module 120 firstly writes the write target virtual unit space (i.e., cluster 36 to cluster 39) and the network storage servers NSS 1 to NSS 3 ) Can be set.

상기 매핑모듈(120)이 기록요청에 대한 응답으로 대응관계를 설정하는 방법은 다양할 수 있다. 일 실시예에서, 상기 매핑모듈(120)은 가장 비어있는 공간이 큰 네트워크 스토리지 서버와 기록대상 가상단위공간(즉, 클러스터 36 내지 클러스터 39) 각각을 매핑할 수도 있고, 미리 정해진 순서 중 가장 우선 순위가 높으며 상기 기록대상 파일(즉, L1.avi)을 저장할만한 남은 저장공간을 가지고 있는 네트워크 스토리지 서버를 기록대상 가상단위공간(즉, 클러스터 36 내지 클러스터 39) 각각과 매핑할 수도 있다.The manner in which the mapping module 120 establishes a correspondence relationship in response to a write request may vary. In one embodiment, the mapping module 120 may map each of the network storage servers having the largest free space and the recording target virtual unit space (i.e., the clusters 36 to 39) And the network storage server having the remaining storage space for storing the recording object file (i.e., L1.avi) may be mapped to each of the recording target virtual unit spaces (i.e., the clusters 36 to 39).

한편, 상기 매핑모듈(120)은 미리 설정된 정책에 의해 대응관계를 설정할 수도 있다. 예를 들어, 상기 매핑모듈(120)은 파일의 속성(예를 들면, 파일 타입 혹은 파일 크기)에 따라 대응관계를 결정할 수 있다. 예를 들면, 상기 매핑모듈(120)은 동영상 데이터 및 음악 데이터를 하나의 네트워크 스토리지 서버에 모으기 위하여, 기록 대상 파일이 동영상 혹은 음악인 경우 미리 지정된 네트워크 스토리지 서버와 상기 기록 대상 파일을 구성하는 각 단위 데이터간의 대응관계를 설정할 수 있다. 이와 같은 방식으로 L.avi가 저장된 예가 도 4a 내지 도 4c에 도시되어 있다.Meanwhile, the mapping module 120 may set a corresponding relationship according to a preset policy. For example, the mapping module 120 may determine a correspondence relationship according to attributes (e.g., file type or file size) of a file. For example, if the recording target file is a moving image or a music file, the mapping module 120 collects the moving image data and the music data in one network storage server, Can be set. An example of storing L.avi in this manner is shown in Figs. 4A to 4C.

상기 호스트 컴퓨터(200)가 기록대상 파일인 L.avi를 기록대상 단위저장공간(즉, 클러스터 36 내지 클러스터 39)에 기록하라는 기록요청을 하는 경우, 상기 매핑모듈(120)은 상기 기록대상 파일의 타입이 동영상인 것을 판단하고, 네트워크 스토리지 서버 1(NSS1)을 전송대상 네트워크 스토리지 서버로 판단할 수 있다. 이후, 상기 매핑모듈(120)은 기록대상 단위저장공간(즉, 클러스터 36 내지 클러스터 39)과 상기 전송대상 네트워크 스토리지 서버(NSS1)와 대응관계를 설정할 수 있다. 즉, 도 4a에 도시된 바와 같이, 상기 매핑모듈(120)은 클러스터 36 내지 클러스터 39와 매핑된 데이터가 네트워크 스토리지 서버 1(NSS1)에 저장된 L.avi의 각 단위 데이터임을 나타내는 정보를 생성할 수 있다.When the host computer 200 makes a recording request to write L.avi, which is a recording object file, in the recording target unit storage space (that is, the cluster 36 to the cluster 39), the mapping module 120 stores Type is a moving image and judges the network storage server 1 (NSS1) as a transmission target network storage server. Then, the mapping module 120 can establish a correspondence relationship with the recording target unit storage space (i.e., the cluster 36 to the cluster 39) and the transmission target network storage server NSS1. That is, as shown in FIG. 4A, the mapping module 120 can generate information indicating that the data mapped to the cluster 36 to the cluster 39 is each unit data of L.avi stored in the network storage server 1 (NSS1) have.

그러면, 상기 데이터입출력모듈(150)은 기록대상 파일인 L.avi을 상기 전송대상 네트워크 스토리지 서버인 네트워크 스토리지 서버 1(NSS1)에 전송할 수 있으며, 상기 네트워크 스토리지 서버 1은 L.avi를 저장할 수 있으며, 저장된 결과가 도 4b에 도시되어 있다.Then, the data input / output module 150 can transmit the L.avi, which is a recording object file, to the network storage server 1 (NSS1), which is the transmission target network storage server, and the network storage server 1 can store L.avi , And the stored results are shown in FIG. 4B.

이후, 상기 호스트 컴퓨터(200)는 기록대상 파일인 L.avi이 기록대상 단위저장공간(즉, 클러스터 36 내지 클러스터 39)에 기록된 것으로 판단하고, 그 결과를 파일 시스템 정보에 반영하여 도 4c와 같이 상기 파일 시스템 정보를 변경할 수 있다.Thereafter, the host computer 200 determines that the recording object file L.avi is recorded in the recording target unit storage space (i.e., the cluster 36 to the cluster 39), reflects the result in the file system information, The file system information can be changed as well.

상술한 바와 같이, 본 발명의 기술적 사상에 따른 이동식 저장장치(100)는 클라우드 서비스와 같은 네트워크 스토리지 서비스와 연동되어 사용자에게 대용량의 저장공간을 제공할 수 있다. 또한, 상기 이동식 저장장치(100)를 이용하는 사용자의 호스트 컴퓨터(200)는 자신에 설치된 운영체제에서 지원하는 통상적인 호스트 파일 시스템을 통해 파일을 액세스할 수 있으므로 사용자는 운영체제에서 제공하는 UI 혹은 커맨드(예를 들면, Windows 운영체제의 탐색기)를 이용하여 네트워크 스토리지 서버에 저장된 파일을 액세스할 수 있다. 따라서, 사용자가 별도의 전용 프로그램을 설치해야 하는 불편을 없앨 수 있으며, 통상적인 이동식 저장장치(예를 들면, USB 메모리)를 이용하는 것과 같은 사용자 경험을 제공할 수 있는 효과가 있다.As described above, the portable storage device 100 according to the technical idea of the present invention can provide a large storage space to a user by interlocking with a network storage service such as a cloud service. Also, since the host computer 200 of the user using the portable storage device 100 can access the file through the normal host file system supported by the operating system installed in the user, the user can access the UI or command For example, a Windows operating system explorer) can be used to access files stored on a network storage server. Therefore, it is possible to eliminate the inconvenience that the user needs to install a separate dedicated program, and it is possible to provide a user experience such as using a conventional portable storage device (for example, a USB memory).

또한, 사용자가 실수로 로컬 PC에 데이터를 남길 여지를 사전에 방지할 수 있으므로 데이터 불법 유출을 막을 수 있는 효과가 있다. In addition, since it is possible to prevent a user from accidentally leaving room for data on the local PC in advance, illegal data leakage can be prevented.

한편, 상기 캐싱모듈(160)은 기록대상 파일을 상기 이동식 저장장치(100)가 구비하고 있는 내부 메모리 장치(170)에 캐싱함으로써 불필요한 통신을 줄이고, 네트워크가 연결되지 않은 상태에서도 상기 호스트 컴퓨터(200)가 상기 기록대상 파일에 액세스할 수 있도록 할 수 있다. 이를 위해, 상기 캐싱모듈(160)은 상기 기록대상 파일을 저장하라는 호스트 컴퓨터의 저장요청에 응답하여, 상기 기록대상 파일을 상기 이동식 저장장치(100)의 내부 메모리 장치(170)에 저장할 수 있으며, 상기 상기 기록대상 파일이 캐시파일로서 상기 내부 메모리 장치(170)에 캐싱되어 있음을 나타내는 정보를 저장할 수 있다.Meanwhile, the caching module 160 caches unnecessary communication by caching the file to be recorded in the internal memory device 170 provided in the removable storage device 100, so that the host computer 200 ) Can access the recording object file. To this end, the caching module 160 may store the file to be recorded in the internal memory device 170 of the removable storage device 100 in response to a storage request of the host computer to store the file to be recorded, And may store information indicating that the file to be recorded is cached in the internal memory device 170 as a cache file.

상기 내부 메모리 장치(170)의 저장용량은 상대적으로 작을 수 있다. 따라서, 상기 캐싱모듈(160)은 모든 기록대상 파일을 상기 내부 메모리 장치에 캐싱하는 것이 아니라, 일정한 캐싱 정책에 따라 기록대상 파일을 캐싱할 수 있다. 예를 들어, 상기 캐싱모듈(160)은 일정한 크기 이하인 파일만을 캐싱할 수 있으며, 내부 메모리 장치에 빈 공간이 없을 경우, 가장 일찍 캐싱된 파일 혹은 가장 액세스 빈도수가 작은 파일을 삭제하여 빈 공간을 확보한 후 기록대상 파일을 캐싱할 수 있다.The storage capacity of the internal memory device 170 may be relatively small. Accordingly, the caching module 160 can cache all files to be recorded in the internal memory device, but can cache the files in accordance with a certain caching policy. For example, the caching module 160 can cache only files having a certain size or less. If there is no empty space in the internal memory device, the caching module 160 deletes the earliest cached file or the file having the smallest access frequency, After that, the file to be recorded can be cached.

이후, 상기 호스트 컴퓨터(200)로부터 독출대상 가상단위공간에 상응하는 데이터의 독출요청이 입력되는 경우, 상기 판단모듈(140)은 상기 독출대상 가상단위공간에 상응하는 캐시파일이 상기 내부 메모리 장치(170)에 저장되어 있는지 여부를 판단할 수 있으며, 그러한 경우 상기 데이터입출력모듈(150)은 네트워크 스토리지 서버로부터 독출대상 파일을 수신하는 대신, 상기 캐시파일에 포함된 데이터를 상기 호스트 컴퓨터(200)로 제공할 수 있다.When a read request for data corresponding to a read target virtual unit space is input from the host computer 200, the determination module 140 determines that the cache file corresponding to the read target virtual unit space is stored in the internal memory device The data input / output module 150 may transmit the data included in the cache file to the host computer 200, instead of receiving the file to be read from the network storage server. .

따라서, 본 발명의 일 실시예에 따르면, 사용자가 최근에 사용하거나, 즐겨 사용하는 데이터를 내부 메모리에 캐싱함으로써 사용자가 빠르게 해당 데이터에 액세스할 수 있도록 하는 효과가 있다.Therefore, according to an embodiment of the present invention, there is an effect that a user can access the data quickly by caching data recently used or enjoyed by the user in the internal memory.

상기 이동식 저장장치(100)는 모든 형태의 모바일 저장매체일 수 있다. 구현 예에 따라서는, 상기 이동식 저장장치(100)는 특정 호스트에 사용되도록 하기 위한 고유의 하드웨어 칩을 포함할 수도 있다. 상기 하드웨어 칩은 상기 이동식 저장장치(100)가 상기 특정 호스트에 사용될 수 있음을 인증하는 역할을 수행하는 칩일 수 있다. 물론, 구현 예에 따라서는 상기 하드웨어 칩을 포함하는 소정의 커넥터를 통해 상기 이동식 저장장치(100)가 소정의 호스트에 연결될 수도 있다.The mobile storage device 100 may be any type of mobile storage medium. In some implementations, the removable storage device 100 may include a unique hardware chip for use with a particular host. The hardware chip may be a chip that plays a role of authenticating that the portable storage device 100 can be used for the specific host. Of course, depending on the embodiment, the portable storage device 100 may be connected to a predetermined host through a predetermined connector including the hardware chip.

한편, 구현 예에 따라서, 상기 대용량 가상저장공간을 제공하는 이동식 저장장치(100)는 프로세서 및 상기 프로세서에 의해 실행되는 프로그램을 저장하는 메모리를 포함할 수 있다. 상기 프로세서는 싱글 코어 CPU혹은 멀티 코어 CPU를 포함할 수 있다. 메모리는 고속 랜덤 액세스 메모리를 포함할 수 있고 하나 이상의 자기 디스크 저장 장치, 플래시 메모리 장치, 또는 기타 비휘발성 고체상태 메모리 장치와 같은 비휘발성 메모리를 포함할 수도 있다. 프로세서 및 기타 구성 요소에 의한 메모리로의 액세스는 메모리 컨트롤러에 의해 제어될 수 있다. 여기서, 상기 프로그램은, 프로세서에 의해 실행되는 경우, 본 실시예에 따른 이동식 저장장치(100)로 하여금, 상술한 대용량 가상저장공간을 제공하는 이동식 저장장치 제공방법을 수행하도록 할 수 있다.Meanwhile, according to an embodiment, the portable storage device 100 providing the large-capacity virtual storage space may include a processor and a memory for storing a program executed by the processor. The processor may include a single-core CPU or a multi-core CPU. The memory may include high speed random access memory and may include non-volatile memory such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid state memory devices. Access to the memory by the processor and other components can be controlled by the memory controller. Here, when the program is executed by a processor, the program may cause the removable storage device 100 according to the present embodiment to perform a method of providing a removable storage device that provides the above-described large-capacity virtual storage space.

본 발명의 실시 예에 따른 대용량 가상저장공간을 제공하는 이동식 저장장치 제공방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.The portable storage device providing method for providing a large-capacity virtual storage space according to an embodiment of the present invention can be implemented as a computer-readable code on a computer-readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored.

컴퓨터로 읽을 수 있는 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 상술한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.Examples of the computer-readable recording medium include magnetic media such as a hard disk, a floppy disk and a magnetic tape, optical media such as CD-ROM and DVD, a floptical disk, And hardware devices that are specially configured to store and execute program instructions such as magneto-optical media and ROM, RAM, flash memory, and the like. The above-mentioned medium may also be a transmission medium such as a light or metal wire, wave guide, etc., including a carrier wave for transmitting a signal designating a program command, a data structure and the like. The computer readable recording medium may also be distributed over a networked computer system so that computer readable code can be stored and executed in a distributed manner.

프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 전자적으로 정보를 처리하는 장치, 예를 들어, 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.Examples of program instructions include machine language code such as those produced by a compiler, as well as devices for processing information electronically using an interpreter or the like, for example, a high-level language code that can be executed by a computer.

상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성요소들도 결합된 형태로 실시될 수 있다.It will be understood by those skilled in the art that the foregoing description of the present invention is for illustrative purposes only and that those of ordinary skill in the art can readily understand that various changes and modifications may be made without departing from the spirit or essential characteristics of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single entity may be distributed and implemented, and components described as being distributed may also be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타나며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.It is intended that the present invention covers the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents. .

Claims (7)

호스트 컴퓨터에 연결되어, 대용량 가상저장공간을 제공하는 이동식 저장장치로서,
적어도 하나의 네트워크 스토리지 서버로부터, 상기 적어도 하나의 네트워크 스토리지 서버에 저장된 원격파일 정보를 수신하는 네트워킹모듈;
수신한 상기 원격파일 정보에 기초하여, 상기 원격파일의 데이터와 가상저장공간에 포함된 복수의 가상단위공간 중 적어도 하나간의 대응관계를 설정하는 매핑모듈;
수신한 상기 원격파일 정보 및 상기 대응관계에 기초하여, 상기 가상저장공간에 대한 파일 시스템 정보를 생성하는 파일시스템모듈-여기서, 상기 파일 시스템 정보는, 상기 호스트 컴퓨터에 설치된 운영체제에서 지원하는 호스트 파일 시스템의 형식으로 구성됨;
상기 호스트 컴퓨터로부터 입력되는 상기 가상저장공간에 포함된 독출대상 가상단위공간에 상응하는 데이터의 독출요청에 응답하여, 상기 대응관계에 의해 상기 독출대상 가상단위공간에 대응되는 수신대상 네트워크 스토리지 서버를 판단하는 판단모듈; 및
상기 수신대상 네트워크 스토리지 서버로부터 상기 독출대상 가상단위공간에 상응하는 원격파일 데이터를 수신하여, 상기 호스트 컴퓨터로 제공하는 데이터입출력모듈을 포함하는 대용량 가상저장공간을 제공하는 이동식 저장장치.
A portable storage device coupled to a host computer for providing a large amount of virtual storage space,
A networking module for receiving, from at least one network storage server, remote file information stored in the at least one network storage server;
A mapping module for setting a correspondence relation between at least one of data of the remote file and a plurality of virtual unit spaces included in the virtual storage space based on the received remote file information;
A file system module for generating file system information for the virtual storage space based on the received remote file information and the corresponding relationship, wherein the file system information includes at least one of a host file system supported by an operating system installed in the host computer, In the form of;
In response to a read request of data corresponding to a read target virtual unit space included in the virtual storage space input from the host computer, judges a receiving target network storage server corresponding to the read target virtual unit space by the corresponding relationship ; And
And a data input / output module for receiving remote file data corresponding to the read target virtual unit space from the reception target network storage server and providing the remote file data to the host computer.
제1항에 있어서, 상기 대용량 가상저장공간을 제공하는 이동식 저장장치는,
USB(Universal Serial Bus) 인터페이스를 통해 상기 호스트 컴퓨터와 연결되는 것을 특징으로 하는 대용량 가상저장공간을 제공하는 이동식 저장장치.
The portable storage device according to claim 1, wherein the portable storage device providing the large-
And is connected to the host computer through a universal serial bus (USB) interface.
호스트 컴퓨터에 연결되어, 대용량 가상저장공간을 제공하는 이동식 저장장치로서,
네트워크 스토리지 서비스를 제공하는 적어도 하나의 네트워크 스토리지 서버와의 네트워크 연결 및 데이터 통신을 수행하는 네트워킹모듈;
복수의 가상단위공간을 포함하는 가상저장공간에 대한 파일 시스템 정보를 상기 호스트 컴퓨터에 제공하는 파일시스템모듈-여기서, 상기 가상저장공간에 대한 파일시스템 정보는, 상기 호스트 컴퓨터에 설치된 운영체제에서 지원하는 파일 시스템의 형식으로 구성됨;
상기 호스트 컴퓨터로부터 입력되는 상기 가상저장공간에 포함된 적어도 하나의 기록대상 가상단위공간에 소정의 기록대상 파일을 저장하라는 저장요청에 응답하여, 상기 적어도 하나의 기록대상 가상단위공간 각각과 상기 적어도 하나의 네트워크 스토리지 서버와의 대응 관계를 설정하는 매핑모듈; 및
상기 적어도 하나의 기록대상 가상단위공간 각각에 대하여, 상기 기록대상 파일에 포함된 데이터 중 상기 기록대상 가상단위공간에 상응하는 데이터를 상기 기록대상 가상단위공간에 대응되는 전송대상 네트워크 스토리지 서버에 전송하여, 상기 전송대상 네트워크 스토리지 서버에 저장하는 데이터입출력모듈을 포함하는 대용량 가상저장공간을 제공하는 이동식 저장장치.
A portable storage device coupled to a host computer for providing a large amount of virtual storage space,
A networking module for performing network connection and data communication with at least one network storage server providing network storage service;
A file system module for providing file system information for a virtual storage space including a plurality of virtual unit spaces to the host computer, wherein the file system information for the virtual storage space includes at least one of files supported by the operating system installed in the host computer Consists of the format of the system;
In response to a storage request to store a predetermined recording object file in at least one recording target virtual unit space included in the virtual storage space input from the host computer, each of the at least one recording target virtual unit space and the at least one A mapping module for establishing a correspondence relationship with a network storage server of the network; And
For each of the at least one recording target virtual unit space, data corresponding to the recording target virtual unit space among the data included in the recording target file is transmitted to the transmission target network storage server corresponding to the recording target virtual unit space And a data input / output module for storing the data in the transmission target network storage server.
호스트 컴퓨터에 연결되어, 대용량 가상저장공간을 제공하는 이동식 저장장치제공방법으로서,
(a) 이동식 저장장치가, 적어도 하나의 네트워크 스토리지 서버로부터, 상기 적어도 하나의 네트워크 스토리지 서버에 저장된 원격파일 정보를 수신하는 단계;
(b) 상기 이동식 저장장치가, 수신한 상기 원격파일 정보에 기초하여, 상기 원격파일의 데이터와 가상저장공간에 포함된 복수의 가상단위공간 중 적어도 하나간의 대응관계를 설정하는 단계;
(c) 상기 이동식 저장장치가, 수신한 상기 원격파일 정보 및 상기 대응관계에 기초하여, 상기 가상저장공간에 대한 파일 시스템 정보를 생성하는 단계-여기서, 상기 파일 시스템 정보는, 상기 호스트 컴퓨터에 설치된 운영체제에서 지원하는 호스트 파일 시스템의 형식으로 구성됨;
(d) 상기 이동식 저장장치가, 상기 호스트 컴퓨터로부터 입력되는 상기 가상저장공간에 포함된 독출대상 가상단위공간에 상응하는 데이터의 독출요청에 응답하여, 상기 대응관계에 의해 상기 독출대상 가상단위공간에 대응되는 수신대상 네트워크 스토리지 서버를 판단하는 단계; 및
(e) 상기 이동식 저장장치가, 상기 수신대상 네트워크 스토리지 서버로부터 상기 독출대상 가상단위공간에 상응하는 원격파일 데이터를 수신하여, 상기 호스트 컴퓨터로 제공하는 단계를 포함하는 대용량 가상저장공간을 제공하는 이동식 저장장치 제공방법.
A method of providing a removable storage device connected to a host computer to provide a large-capacity virtual storage space,
(a) receiving a remote file information stored in the at least one network storage server from at least one network storage server;
(b) setting a correspondence between at least one of data of the remote file and a plurality of virtual unit spaces included in the virtual storage space, based on the remote file information received by the mobile storage device;
(c) generating, by the removable storage device, file system information for the virtual storage space based on the received remote file information and the corresponding relationship, wherein the file system information is stored in the host computer Consists of a host file system format supported by the operating system;
(d) in response to a read request of data corresponding to a read target virtual unit space included in the virtual storage space input from the host computer, the portable storage device stores, in the read target virtual unit space Determining a corresponding receiving target network storage server; And
(e) receiving, from the receiving network storage server, remote file data corresponding to the read target virtual unit space and providing the received remote file data to the host computer; and (e) / RTI >
호스트 컴퓨터에 연결되어, 대용량 가상저장공간을 제공하는 이동식 저장장치제공방법으로서,
(a) 이동식 저장장치가, 네트워크 스토리지 서비스를 제공하는 적어도 하나의 네트워크 스토리지 서버와의 네트워크 연결 및 데이터 통신을 수행하는 단계;
(b) 상기 이동식 저장장치가, 복수의 가상단위공간을 포함하는 가상저장공간에 대한 파일 시스템 정보를 상기 호스트 컴퓨터에 제공하는 단계-여기서, 상기 가상저장공간에 대한 파일시스템 정보는, 상기 호스트 컴퓨터에 설치된 운영체제에서 지원하는 파일 시스템의 형식으로 구성됨;
(c) 상기 이동식 저장장치가, 상기 호스트 컴퓨터로부터 입력되는 상기 가상저장공간에 포함된 적어도 하나의 기록대상 가상단위공간에 소정의 기록대상 파일을 저장하라는 저장요청에 응답하여, 상기 적어도 하나의 기록대상 가상단위공간 각각과 상기 적어도 하나의 네트워크 스토리지 서버와의 대응 관계를 설정하는 단계; 및
(d) 상기 이동식 저장장치가, 상기 적어도 하나의 기록대상 가상단위공간 각각에 대하여, 상기 기록대상 파일에 포함된 데이터 중 상기 기록대상 가상단위공간에 상응하는 데이터를 상기 기록대상 가상단위공간에 대응되는 대상 네트워크 스토리지 서버에 전송하여, 상기 대상 네트워크 스토리지 서버에 저장하는 단계를 포함하는 대용량 가상저장공간을 제공하는 이동식 저장장치 제공방법.
A method of providing a removable storage device connected to a host computer to provide a large-capacity virtual storage space,
(a) performing a network connection and data communication with the at least one network storage server providing a network storage service;
(b) the portable storage device providing file system information for a virtual storage space including a plurality of virtual unit spaces to the host computer, wherein the file system information for the virtual storage space is stored in the host computer In the form of a file system supported by the operating system installed in the computer;
(c) in response to a storage request to store a predetermined recording object file in at least one recording target virtual unit space included in the virtual storage space input from the host computer, Setting a correspondence relationship between each of the target virtual unit spaces and the at least one network storage server; And
(d) for each of the at least one recording target virtual unit space, data corresponding to the recording target virtual unit space among the data included in the recording object file is corresponded to the recording target virtual unit space To the target network storage server, and storing the virtual storage space in the target network storage server.
제4항 또는 제5항에 기재된 방법을 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체.
A computer-readable recording medium recording a program for performing the method according to claim 4 or 5.
대용량 가상저장공간을 제공하는 이동식 저장장치로서,
프로세서; 및
상기 프로세서에 의하여 실행되는 컴퓨터 프로그램을 저장하는 메모리를 포함하며,
상기 컴퓨터 프로그램은, 상기 프로세서에 의해 실행되는 경우, 상기 대용량 가상저장공간을 제공하는 이동식 저장장치가 제4항 또는 제5항에 기재된 방법을 수행하도록 하는 대용량 가상저장공간을 제공하는 이동식 저장장치.
A portable storage device providing a large-capacity virtual storage space,
A processor; And
A memory for storing a computer program executed by the processor,
The computer program, when executed by the processor, provides a large-capacity virtual storage space for allowing the removable storage device providing the large-capacity virtual storage space to perform the method according to claim 4 or claim 5.
KR1020150034427A 2015-03-12 2015-03-12 Mobile storage device providing mass virtual storage space and providing method thereof KR20150073136A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150034427A KR20150073136A (en) 2015-03-12 2015-03-12 Mobile storage device providing mass virtual storage space and providing method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150034427A KR20150073136A (en) 2015-03-12 2015-03-12 Mobile storage device providing mass virtual storage space and providing method thereof

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020130159010A Division KR101533427B1 (en) 2013-12-19 2013-12-19 Mobile storage device providing mass virtual storage space and providing method thereof

Publications (1)

Publication Number Publication Date
KR20150073136A true KR20150073136A (en) 2015-06-30

Family

ID=53518885

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150034427A KR20150073136A (en) 2015-03-12 2015-03-12 Mobile storage device providing mass virtual storage space and providing method thereof

Country Status (1)

Country Link
KR (1) KR20150073136A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017213473A1 (en) * 2016-06-10 2017-12-14 Gaeasoft Co., Ltd. Method for managing files and apparatus using the same
CN111858511A (en) * 2020-07-17 2020-10-30 武汉理工大学 File storage and use method and file storage system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017213473A1 (en) * 2016-06-10 2017-12-14 Gaeasoft Co., Ltd. Method for managing files and apparatus using the same
US10417179B2 (en) 2016-06-10 2019-09-17 Gaeasoft Co., Ltd. Method for managing files and apparatus using the same
CN111858511A (en) * 2020-07-17 2020-10-30 武汉理工大学 File storage and use method and file storage system
CN111858511B (en) * 2020-07-17 2024-04-09 武汉理工大学 File storage and use method and file storage system

Similar Documents

Publication Publication Date Title
KR101533427B1 (en) Mobile storage device providing mass virtual storage space and providing method thereof
US8527719B2 (en) Concurrent access to a memory pool shared between a block access device and a graph access device
US8832161B2 (en) Interface for extending functionality of memory cards
EP3555771B1 (en) Systems and methods for list retrieval in a storage device
EP2249254A2 (en) Storage device having direct user access
US8732355B1 (en) Dynamic data prefetching
JP4241485B2 (en) Information processing apparatus, information processing method, program, and recording medium
CN109451079B (en) Cloud USB flash disk and storage method and storage system thereof
KR20150073136A (en) Mobile storage device providing mass virtual storage space and providing method thereof
US9332059B2 (en) Method of file sharing
JP2016515258A (en) File aggregation for optimized file operation
KR101899970B1 (en) Mobile terminal and cloud server for mobile cloud computing environment and method of mobile cloud computing using the same
CN117112219A (en) Method and device for accessing memory data of host
US9800658B2 (en) Servers and methods for controlling a server
CN101599063B (en) Wireless virtual storage device and method for acquiring remote file
KR100952599B1 (en) User computer using local disk as caching device, method for using the same and hybrid network storage system
JP2009070359A (en) Wide area communication network start system for improving start efficiency of hard disk-less type computer
KR20130128835A (en) System and method for cloud service by contacting with removable hard disk drive to set for user
KR20060108420A (en) Remote memory system for mobile phones
TW202407566A (en) Accessing method for device, data exchange method, device, networked device and storage medium
KR20130104110A (en) Method for sharing data in nas and nas capable of sharing data
JP2009070360A (en) Hard disk-less type computer system for improving start efficiency
KR20160061593A (en) Mobile device and communication system thereof

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application