KR101157171B1 - 스마트카드를 위한 저장 시스템 및 그 저장시스템에서 파일생성관리방법 - Google Patents

스마트카드를 위한 저장 시스템 및 그 저장시스템에서 파일생성관리방법 Download PDF

Info

Publication number
KR101157171B1
KR101157171B1 KR1020087025862A KR20087025862A KR101157171B1 KR 101157171 B1 KR101157171 B1 KR 101157171B1 KR 1020087025862 A KR1020087025862 A KR 1020087025862A KR 20087025862 A KR20087025862 A KR 20087025862A KR 101157171 B1 KR101157171 B1 KR 101157171B1
Authority
KR
South Korea
Prior art keywords
file
data block
allocation table
table item
item
Prior art date
Application number
KR1020087025862A
Other languages
English (en)
Other versions
KR20090007357A (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 베이징 워치데이터 시스템 컴퍼니, 엘티디.
Publication of KR20090007357A publication Critical patent/KR20090007357A/ko
Application granted granted Critical
Publication of KR101157171B1 publication Critical patent/KR101157171B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • 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
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • 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/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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/08Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 저장부 및 제어부를 포함하는 일종 스마트카드저장시스템 및 그 파일관리방법을 제공한다. 상기 저장부는 파일할당테이블 저장부 및 파일내용을 저장하는 데이터저장부를 포함하며 상기 파일할당테이블 저장부는 다수개의 파일할당테이블 아이템을 포함하고 상기 데이터저장부는 다수개의 데이터 블록을 포함하며 파일할당테이블 아이템 각각은 하나의 데이터 블록에 대응된다. 상기 제어부는 파일할당테이블 저장부의 파일할당테이블 아이템을 검색하고 파일할당테이블 아이템과 데이터 블록의 대응관계에 따라 데이터 블록내의 파일에 대하여 생성, 업데이트, 독출 삭제, 공간수정(축소/확대) 등 조작을 제어한다.
본 발명의 파일시스템에서 FAT테이블 아이템과 데이터블록은 일대일 대응되므로 우리는 FAT테이블 아이템을 통하여 매 파일이 점용한 매 데이터블록에 대하여 뚜렷하게 포지션하고 검색할 수 있다.
스마트카드저장시스템, 파일할당테이블 저장부, 데이터 저장부, 파일할당테이블 아이템, 데이터 블록

Description

스마트카드를 위한 저장 시스템 및 그 저장시스템에서 파일생성관리방법{A STORAGE SYSTEM FOR A SMART CARD AND A METHOD OF MANAGING FILE CREATION IN THE STORAGE SYSTEM}
본 발명은 삽입식 기술분야에 관한것으로서, 특히는 스마트카드 및 USB TOKEN 기술분야에서의 스마트카드저장시스템 및 해당 스마트카드저장시스템 중 파일생성관리방법에 관한것이다.
스마트 카드 사용이 부단히 추진되고 보급됨에 따라 스마트 카드의 기능에 대한 요구가 더욱더 다양화되고 풍부하고 다채로운 응용에 대한 수요가 스마트카드의 하드웨어 세공 수준도 나날이 향상시키고있다.
CPU비트를 보면 최초의 8비트CPU로부터 현재 널리 사용중인 16비트 CPU, 점차 널리 사용되고있는 32비트 CPU에 이르기까지; 메모리유형을 보면 최초의 ROM,RAM,EEPROM로부터 현재의 NOR FLASH로, 더 나아가서는 NOR FLASH와 NAND FLASH의 새로운 결합기술에 이르기까지; 전송인터페이스를 보면, ISO7816 단일 인터페이스로부터 MMC, USB 등 쾌속인터페이를 결합한 멀티채널에 이르기까지; 특히는 저장용량분야에 있어서 수량급상의 부단한 변화가 발생하고있고 최초의 바이트(byte)급으로부터 현재의 K급 및 점차 출시되고있는 M급과 G급의 대용량에 이르기까지의 발전을 가져오고 있다.
스마트카드의 모든 응용 및 데이터는 파일형식으로 저장되고 스마트카드중의 파일류형 또한 ISO7816스펙 중의 정의대로 목록파일 DF와 기본파일 EF로 분류되어있다. 그중 EF파일은 또 바이너리파일, 고정길이 레코드 파일(fixed length record file), 가변길이 레코드 파일(variable length record file), 순환파일 등 여러가지 유형으로 분류될수 있다. 외부에서 스마트카드상의 데이터에 대한 억세스는 결론적으로 스마트카드 메모리중 특정파일 내용에 대한 억세스인 것이다. 전통적인 스마트카드 칩셋은 저장용량이 아주 작아 수행할 수 있는 기능이 매우 제한되어있다. 이러한 경우에 카드의 파일시스템에 대한 관리는 상대적으로 간편하므로 통상적으로 파일공간을 순서적으로 할당하는 방식을 이용하여 파일에 대한 영활한 생성, 삭제 및 공간회수이용을 지지하지 않는다.
우리가 흔히 사용하는 핸드폰 SIM카드를 예로 들면 하나의 카드가 100개 단문메세지공간과 50개 전화번호공간을 지지할 경우, 만약 사용자가 단문메세지사용에는 크게 관심이 없고 전화번호공간이 부족하다고 느껴질때 기존의 핸드폰 SIM카드는 파일공간의 상호전환을 지지하지 않으므로 남은 단문메세지의 공간을 부족한 전화번호부의 공간으로 보충할 수 없게 된다. 그 이유는 기존의 스마트카드는 공간을 순서적으로 할당한는 방법을 사용하기때문이다.
도1은 스마트카드상 파일구조의 일 예시도이다. 도2는 해당 파일구조가 기존 스마트카드에서의 저장할당방법이다.
매개 파일은 파일목록항과 파일본체공간 2개 부분으로 조성되어있으며 그중 파일목록항에는 해당 파일의 기본정보, 예를 들면 파일명, 파일크기 등이 기록되어있 다. 도2를 참조하면, 기존 스마트카드의 파일관리는 파일에 대한 순서적할당 방법을 사용하는데 MF의 경우 생성시에 카드의 최대공간을 자동적으로 할당한다. 기타 파일은 생성되는 순서와 크기에 따라 할당하는데 순서가 할당공간을 결정한다. 예를 들면 해당 목록파일에 서브파일을 생성할 경우, 우선 해당 목록하에 남은 공간이 생성할 서브파일 크기보다 더 큰지를 체크하고 만약 남은 공간이 충분히 크면 남은 공간의 첫 어드레스부터 시작하여 서브파일을 순서적으로 생성하고 만약 남은 공간이 부족하면 서브파일을 생성할 수 없다.
이러한 순서적으로 파일을 할당하는 방식은 하기와 같은 폐단들이 존재한다.
(1)시스템은 파일생성시에 지정한 크기에 따라 공간을 할당하는데 어드레스 공간순서에 따라 할당하므로 일단 할당이 성공하면 파일 위치는 고정된다.
(2)파일생성시에 파일 크기를 미리 지정하므로 파일이 일단 생성되면 파일 크기를 다시 개변할 수 없고 사용과정중 파일크기는 시종 고정치이기에 공간이 부족하거나 공간 낭비인 경우가 존재할 수 있다.
(3)사용과정중 하나의 파일에 할당할 공간이 부족하고 다른 하나의 파일에 할당할 공간이 과잉일 경우 두 파일의 공간을 상호 보충할 수 있는 효과적인 메커니즘을 제공할 수 없다.
(4)파일을 삭제할 수 있지만 삭제후의 공간은 회수이용할 수 없다. 모든 새로 생성되는 파일은 기존에 이미 할당된 어드레스 공간의 기초상에서 계속하여 순서적인 할당을 하기때문이다. 그러므로 카드의 메모리공간의 대량적인 낭비를 초래하게 된다.
스마트카드의 응용이 부단히 다양화되고 스마트카드 메모리용량이 부단히 증가됨에 따라 이러한 기존의 파일관리방법은 이미 더욱더 응용의 수요를 만족시킬수 없게 되였다.
(해결하고자 하는 과제)
본 발명의 목적은 스마트카드 저장시스템 및 해당 스마트카드 저장시스템의 파일 생성관리 방법 즉 생성파일에 대한 저장, 독출, 업데이트, 삭제 및 파일점용공간의 수정에 관련하여 해당 스마트카드 저장시스템이 파일할당테이블(File Allocation Table,FAT로 칭하기로 함)과 기존 스마트카드저장시스템을 결합하는 새로운 파일생성관리방법을 제시함으로써 기존 기술이 파일의 원활한 생성, 삭제와 공간회수이용을 지지하지 못하는 문제점을 해결하려는 것이다.
(과제 해결 수단)
본 발명은 저장부 및 제어부를 포함하는 일종 스마트카드저장시스템을 제공한다. 상기 저장부는 다수의 파일할당테이블아이템을 포함하는 파일할당테이블저장부 및 파일내용을 저장하고 다수의 데이터블록을 포함하는 데이터저장부를 포함한다. 하나의 상기 파일할당테이블아이템은 하나의 상기 데이터블록에 대응된다. 상기 제어부는 파일할당테이블저장부의 파일할당테이블아이템을 검색하고 파일할당테이블아이템과 데이터블록의 대응관계에 근거하여 데이터블록 내의 파일을 제어한다.
상기 데이터저장부는 파일목록 아이템을 저장하는 파일목록아이템저장부와 파일본체공간을 저장하는 파일본체공간저장부를 포함하며 상기 파일목록아이템저장부와 파일본체공간저장부는 부동한 데이터 블록내에 위치하여있다.
상기 파일할당테이블 아이템에 기록된 내용은 해당 파일이 점용하는 그다음 데이터 블록 번호이며 만약 해당 파일의 그다음 데이터 블록이 없으면 파일할당테이블 아이템의 값은 종료를 표시하는 특정치이고 만약 데이터 블록이 점용되지 않았으면 대응되는 파일할당테이블 아이템의 값은 점용되지 않았음을 표시하는 특정치이다.
본 발명은 스마트카드 저장시스템에 대한 파일생성관리방법을 제공한다. 하나의 새로운 파일 생성하는 방법은 하기와 같은 단계를 포함한다.
A, 제어부가 해당 파일할당저장부를 검색하여 파일할당테이블중 점용되는 않은 파일할당테이블 아이템을 검색하고 파일할당테이블 아이템과 데이터 블록의 대응관계에 근거하여 점용되지 않은 데이터 블록을 검색한다.
B, 제어부가 검색해낸 점용되지 않은 데이터 블록을 생성할 파일의 파일목록 아이템에 할당하고 파일정보를 써넣어 해당 데이터 블록에 대응하는 파일할당테이블 아이템의 값을 점용되어있음을 표시하는 특정치로 수정한다.
C, 단계 A를 계속하여 진행하여 또다시 점용되지 않은 데이터 블록을 검색하고 이를 통하여 찾아낸 다수개의 데이터 블록을 생성할 파일의 파일본체공간에 할당하고 데이터 블록에 대응하는 파일할당테이블 아이템의 값을 점용되었음을 표시하는 특정치로 수정하여 파일할당테이블 아이템 링크드리스트를 형성하며 첫번째 데이터 블록의 블록번호를 단계 B에서 확정된 파일목록 아이템에 기록하고 파일이 점용한 마지막 데이터 블록에 대응하는 파일할당테이블 아이템을 종료치로 수정한다.
단계 B에서 써넣은 파일정보는 파일크기, 파일시작데이터블록의 블록번호 중 적어도 하나이다.
단계 A전에 제어부가 해당 목록의 남은 공간을 판단하는 단계를 더 포함한다. 만약 해당 목록의 남은 공간이 생성할 파일에 필요한 공간보다 크거나 같으면 제어부는 단계 A를 수행한다.
만약 생성할 파일이 목록파일이면 단계 C에서 파일목록 아이템중의 파일시작데이터블록의 블록번호에 기록되는 것은 해당 목록파일에 생성된 첫번째 서브파일의 파일목록아이템이 점용하는 데이터블록의 블록번호이고 첫번째 서브파일의 파일목록 아이템이 점용한 데이터블록에 대응하는 파일할당테이블 아이템에 기록되는 것은 해당 아이템파일에 생성된 그다음 서브파일의 파일목록 아이템이 점용하는 데이터블록의 블록번호이다. 여기서 알수 있다싶이 모든 데이터블록이 링크되어 해당 목록파일의 파일본체공간의 파일할당테이블 아이템 링크드 리스트를 형성한다.
만약 생성된 파일이 기본파일이면 단계 C에서 파일목록아이템의 파일시작데이터블록의 블록번호에 기록되는 것은 해당 기본파일의 파일본체공간이 점용하는 첫번째 데이터블록의 블록번호이고 해당 시작데이터블록에 대응하는 파일할당테이블 아이템에 기록되는 것은 해당 기본파일의 파일본체공간이 점용하는 두번째 데이터블록의 블록번호이다.
단계 C전에 제어부가 상기 기본파일의 파일본체공간의 데이터블록개수에 대하여 카운트하는 단계를 더 포함한다. 즉 단계 C에서 제어부가 파일할당테이블에서 상응 개수의 점용되지 않은 파일할당테이블 아이템을 찾아내고 그 파일할당테이블 아이템들을 링크되도록 한후 또다시 그 데이터블록들을 기본파일의 파일본체공간에 할당시킨다.
파일내용저장을 진행할때 하기와 같은 단계를 포함한다.
D: 제어부는 생성한 파일의 목록아이템에 근거하여 파일본체공간의 저장데이터의 시작데이터블록의 블록번호를 얻는다.
E: 제어부는 파일의 시작데이터블록의 블록번호로부터 데이터블록에 대응하는 파일할당테이블 아이템을 획득함으로써 저장할 파일이 점용하는 데이터블록의 파일할당테이블 링크드리스트를 얻어내고 다시 파일할당테이블 링크드리스트에 근거하여 파일내용이 저장완료되기까지 파일내용의 저장을 진행한다.
생성된 혹은 저장된 파일에 대하여
할때 하기와 같은 단계를 포함한다.
F: 제어부는 업데이트할 파일의 식별자 혹은 파일이름에 근거하여 해당되는 파일목록 아이템을 찾아내고 파일목록 아이템으로부터 파일본체공간 저장데이터의 시작데이터블록의 블록번호를 얻는다.
G: 제어부는 파일의 시작데이터블록의 블록번호로부터 데이터블록에 대응하는 파일할당테이블 아이템을 획득함으로써 업데이트할 파일이 점용할 데이터블록의 파일할당테이블 링크드리스트를 획득하고 다시 단계 F로부터 얻어낸 시작데이터블록의 데이터블록 블록번호 및 업데이트할 시작어드레스가 파일본체공간 시작어드레스에 대한 상대적 오프셋에 근거하여 링크드리스트에서 업데이트할 시작 어드레스가 위치한 데이터블록번호를 찾아내고 지정된 길이의 파일내용이 업데이트완료될때까지 데이터블록의 업데이트를 진행한다.
생성 혹은 저장할 파일을 독출할때 하기와 같은 단계를 포함한다.
H: 제어부는 독출할 파일의 식별자 혹은 파일이름에 근거하여 해당되는 파일목록항을 찾아내고 파일목록 아이템으로부터 파일본체공간 저장데이터의 시작데이터블록의 블록번호를 얻는다.
I: 제어부는 파일시작데이터블록의 블록번호로부터 시작데이터블록에 대응하는 파일할당테이블아이템을 얻고 해당 파일할당테이블 아이템으로부터 독출할 파일의 점용데이터블록의 파일할당테이블 링크드리스트를 얻어내고 다시 단계 H로부터 얻어낸 시작데이터블록의 블록번호 및 독출할 시작어드레스가 파일본체공간의 시작어드레스에 대한 상대적인 오프셋에 근거하여 링크드리스트에서 독출할 시작 어드레스가 위치한 데이터블록 번호를 찾아내여 지정된 길이의 파일내용이 독출완료되기까지 데이터블록의 독출을 진행한다.
생성 혹은 저장할 파일에 대해 삭제를 진행할때 하기와 같은 단계를 포함한다.
J: 제어부는 삭제할 파일의 식별자 혹은 파일이름에 근거하여 해당하는 파일목록 아이템을 찾아내고 파일목록 아이템으로부터 파일본체공간 저장데이터의 시작데이터 블록의 블록번호를 얻는다.
K: 제어부는 단계 J에서 얻은 파일시작데이터블록의 블록번호에 근거하여 그와 대응되는 파일할당테이블 아이템을 얻어 해당 파일할당테이블 아이템으로부터 삭제할 파일이 점용한 데이터블록의 파일할당테이블 아이템 링크드 리스트를 획득하여 해당 링크드 리스트에 따라 매 데이터블록의 파일내용삭제를 진행하고 해당 파일의 마지막 데이터블록의 파일내용이 삭제될때까지 진행한다. 동시에 매 삭제하는 파일내용의 데이터블록에 대응하는 파일할당테이블 아이템의 값을 점용되지 않은 상태를 표시하는 테이블 아이템 값으로 설정한다.
L: 제어부는 삭제할 파일의 목록 아이템이 점용한 데이터블록을 삭제하고 그에 대응하는 파일할당테이블 아이템값을 점용되지 않은 상태를 표시하는 테이블 아이템 값으로 설정한다.
생성 혹은 저장한 파일에 대해 점용공간 수정을 진행할때 하기와 같은 단계를 포함한다.
M: 제어부는 수정할 파일의 식별자 혹은 파일이름에 근거하여 해당하는 파일목록 아이템을 찾아내고 파일목록 아이템으로부터 파일주체공간 저장데이터의 시작데이터블록의 블록번호를 얻는다.
N: 제어부는 단계 M으로부터 얻은 시작데이터블록의 블록번호에 근거하여 해당 데이터블록에 대응하는 파일할당테이블 아이템을 찾아내고 해당 수정할 파일이 점용한 데이터블록의 파일할당테이블 아이템 링크드 리스트를 획득하여 그 링크드 리스트에 따라 해당 파일의 마지막 데이터블록에 대응하는 파일할당테이블 아이템을 찾아낸다.
O: 제어부는 수정할 파일이 점용할 공간의 크기에 근거하여 파일할당테이블 아이템의 설정을 진행한다.
P: 제어부는 수정할 파일의 파일목록아이템중 파일공간크기의 값을 수정한다.
파일점용공간의 축소를 진행할 경우, 단계 N에서 제어부는 매 파일할당테이블 아이템에 대응하는 데이터블록의 사용상태에 대하여 체크가 더 필요하다.
단계 O에서 하기와 같은 단계를 더 포함한다.
O1: 제어부는 파일공간 축소후의 파일의 크기에 근거하여 해당 파일이 점용하지 않은 데이터블록들중 하나 혹은 다수개의 데이터블록에 대응하는 파일할당테이블 아이템값을 점용되지 않은 상태를 표시하는 테이블아이템값으로 수정하고 동시에 해당 파일이 점용한 마지막 데이터블록에 대응하는 파일할당테이블 아이템값을 파일할당테이블 아이템의 종료치로 수정한다.
파일이 점용한 공간의 확대를 진행할 경우, 단계 O는 하기와 같은 단계를 포함한다.
O1': 제어부는 파일할당테이블에서 점용되지 않은 파일할당테이블 아이템을 검색하고 파일의 확대할 크기에 따라 점용되지 않은 파일할당테이블 아이템에 대응하는 데이터블록을 해당 파일에 할당하고 해당 파일이 점용한 마지막 데이터블록에 대응하는 파일할당테이블 아이템을 종료치로 수정하고 해당 파일이 점용한 원 파일할당테이블 아이템과 새로 할당된 파일할당테이블 아이템을 링크시켜 해당 파일의 새로운 파일할당테이블 아이템 링크드 리스트를 생성한다.
(효과)
본 발명의 파일시스템에서 FAT테이블 아이템과 데이터블록은 일대일 대응되므로 우리는 FAT테이블 아이템을 통하여 매 파일이 점용한 매 데이터블록에 대하여 뚜렷하게 포지션하고 검색할 수 있다.
본 발명의 파일시스템의 모든 빈 데이터블록은 FAT테이블에 의해 관리하므로 하나의 파일에 공간을 할당할때 더는 기존의 순서배분방식을 채용하지 않고 FAT테이블에서 점용되지 않은 데이터블록의 블록번호를 검색할 수 있고 검색된 대응하는 점용되지 않은 데이터블록을 새로 생성한 파일에 할당함으로써 파일생성의 영활성을 대대적으로 높이고 공간조각들을 충분히 이용할 수 있다.
파일삭제시에도 같은바 상응한 FAT테이블 아이템을 해방하기만 하면 파일 점용하는 공간은 완전회수할 수 있다.
하나의 파일에 할당한 공간은 너무 크고 다른 하나의 파일에 할당한 공간은 너무 작을 경우 내용을 아직 써넣지 않은 일부분 큰 파일의 데이터블록에 대응하는 FAT테이블 아이템을 해방하고 그러한 FAT테이블 아이템들을 공간점용이 작은 파일에 할당시킴과 동시에 두 파일목록아이템중의 파일크기정보를 수정하기만 하면 아주 용이하게 파일크기의 호상보충을 실현할 수 있고 파일크기의 수요에 따른 사용과 영활한 배치를 실현할 수 있다.
도1은 예시적인 파일구조도이고,
도2는 파일구조가 기존 스마트카드에서의 파일할당방법의 예시도이고,
도3은 본 발명의 파일 a의 저장구조예시도이고,
도4는 파일공간의 재할당예시도(재할당전)이고,
도5는 파일공간의 재할당예시도(재할당후)이다.
본 발명은 스마트카드저장시스템 및 그 시스템에서의 파일생성방법을 제시한것으로써 본 발명의 스마트카드저장시스템은 저장부 및 제어부를 포함하며 상기 저장부는 파일할당테이블(FAT)저장부 및 파일내용을 저장하는 데이터저장부를 포함하고 상기 FAT테이블저장부는 다수개의 FAT테이블 아이템을 포함하고 상기 데이터저장부는 다수개의 데이터블록을 저장하고 매 FAT테이블 아이템은 하나의 데이터블록에 대응된다. 그중, 상기 제어부는 FAT테이블저장부의 FAT테이블 아이템을 검색하고 FAT테이블 아이템과 데이터블록의 대응관계에 따라 데이터블록내의 파일에 대해 제어를 한다.
본 발명의 시스템에서 상기 데이터저장부는 파일목록아이템을 저장하는 파일목록아이템저장부와 파일본체공간을 저장하는 파일본체공간저장부를 포함하고 상기 파일목록아이템저장부와 파일본체공간저장부는 서로 다른 데이터블록에 위치하여있다. 그 중, 파일목록아이템저장부에 저장된 것은 파일의 이름, 크기, 유형, 억세스제어권한, 파일시작데이터블록 블록번호 및 파일식별자 등 기본정보이고 파일본체공간저장부는 목록파일 DF와 기본파일 EF에 대하여 서로 다르다. 목록 파일 DF는 일종 특수한 파일이고 그 파일본체공간에 저장되는 것은 그아래의 모든 서브파일의 집합이고, 기본 파일 EF의 파일본체공간에 저장되는 것은 실제 파일내용이다. 하나의 파일에 저장공간을 할당할 경우 해당 파일의 목록아이템과 본체공간은 저장부에서 서로 다른 데이터블록을 할당한다. 본발명의 시스템에서 상기 파일할당테이블 아이템에 기록된 내용은 해당 파일이 점용한 그다음 데이터블록의 블록번호이고 만약 해당 파일에 그다음 데이터블록이 없으면 파일할당테이블 아이템중의 값은 종료를 표시하는 특정치이고 만약 데이터블록이 점용되지 않았으면 대응하는 파일할당테이블 아이템의 값은 점용되지 않았음을 표시하는 특정치이다.
본 시스템에서 상기 FAT테이블아이템저장부는 여러개의 FAT테이블아이템을 포함하고 매 FAT테이블아이템은 하나의 데이터블록에 대응되며 데이터저장부가 몇개 블록으로 나뉘여졌으면 상응 개수의 FAT테이블아이템이 수요된다. FAT파일시스템엔 FAT12, FAT16, FAT32 세가지 분류가 있으며 이들은 각각 데이터블록의 FAT테이블아이템의 비트수를 기록하는데 쓰임 즉 12비트, 16비트 혹은 32비트를 표시한다. FAT16을 예로 들면 매 데이터블록이 FAT테이블에서 2개 바이트(16비트)를 차지한다.
상기 데이터부분은 여러개의 크기가 같은 데이터블록으로 나뉘여져있고 생성된 파일을 저장한다. 데이터블록은 1부터 시작하여 번호를 다는데 각각 제1블록, 제2블록, 제3블록......이며 각각 FAT테이블부분의 제1 FAT테이블아이템, 제2FAT테이블아이템, 제3FAT테이블아이템......에 대응, 즉 FAT테이블부분의 FAT테이블아이템과 데이터부분의 데이터블록은 1대1 대응된다.
본발명의 실시예에서 상기 스마트카드저장시스템의 파일처리에 대하여 하기와 같이 상세히 설명하고 동시에 FAT16으로 설명을 진행한다.
본 발명은 상기 스마트카드저장시스템에 대하여 파일생성관리를 진행하는 방 법을 제시, 즉 하나의 새로운 파일을 생성할때 하기와 같은 단계를 포함한다.
A, 제어부가 해당 파일할당저장부를 검색하여 파일할당테이블중 점용되는 않은 파일할당테이블 아이템을 검색하고 파일할당테이블 아이템과 데이터 블록의 대응관계에 근거하여 점용되지 않은 데이터 블록을 검색한다.
B, 제어부가 검색해낸 점용되지 않은 데이터 블록을 생성할 파일의 파일목록 아이템에 할당하고 파일정보를 써넣어 해당 데이터 블록에 대응하는 파일할당테이블 아이템의 값을 점용되어있음을 표시하는 특정치로 수정한다.
C, 단계 A를 계속하여 진행하여 또다시 점용되지 않은 데이터 블록을 검색하고 이를 통하여 찾아낸 다수개의 데이터 블록을 생성할 파일의 파일본체공간에 할당하고 데이터 블록에 대응하는 파일할당테이블 아이템의 값을 점용되었음을 표시하는 특정치로 수정하여 파일할당테이블 아이템 링크드리스트를 형성하며 첫번째 데이터 블록의 블록번호를 단계 B에서 확정된 파일목록 아이템에 기록하고 파일이 점용한 마지막 데이터 블록에 대응하는 파일할당테이블 아이템을 종료치로 수정한다.
만약 공백인 스마트카드에 파일을 저장하는게 아니라면 단계 A전에 제어부가 현재 목록에 남은 공간을 판단하는 단계를 더 포함하고 현재 목록에 남은 공간크기가 생성할 파일이 필요한 공간보다 크거나 같을 경우 제어부는 단계 A를 수행한다.
파일생성시에 처리방법은 저장파일의 유형이 서로 다름에 따라 구별점이 존재한다.
생성한 파일이 목록파일일 경우 목록파일의 파일본체공간은 모든 서스파일의 집합으로 형성되였기에 그 파일본체공간의 할당은 그 아래에 서브파일생성시에 단계 B와 단계 C에 의하여 할당되고 목록파일의 생성을 위하여 단독적으로 단계 C를 수행할 필요가 없다. 다시말하면 그 서브파일에 목록파일이 포함되면 단계 C를 재수행한다. 목록파일의 생성과정은 DF가 목록파일이고 그 아래에 서브파일을 생성할 수 있기에 그의 파일본체공간의 그 아래 여러개의 서브파일의 집합이다. 그러므로, 생성시에 DF파일의 목록 아이템을 위하여 빈 데이터블록 공간을 검색하고 할당시키고 DF의 파일본체공간은 그 아래에 서브파일생성시에 할당하면 된다. 즉 DF 아래에 서브파일을 생성하는 과정은 바로 DF의 본체공간에 저장블록을 할당하는 과정이다. DF 아래에 서브파일을 생성할때 우선 DF하의 남은 공간크기를 계속해야 한다. 즉 DF아래 남은 공간의 크기= DF의 본체공간크기 - DF아래의 현재 서브파일의 공간총합. 만약 계산을 통해 얻은 DF하의 남은 공간크기가 생성할 파일크기 (파일목록아이템 크기 + 파일본체공간크기)보다 작으면 DF아래에 소정 크기의 파일을 생성하기에 충분한 공간이 없음을 설명하고 시스템은 생성실패의 메세지를 어플리케이션쪽으로 보내며 만약 남은 공간이 충분히 크면 파일생성을 허락한다.
생성할 파일이 기본파일이면 단계 C전에 제어부가 기본파일의 파일본체공간의 데이터블록개수를 카운트하는 단계를 더 포함하고 단계 C에서 제어부가 FAT테이블에서 상응개수의 점용되지 않은 FAT테이블 아이템을 찾아내고 그 FAT테이블 아이템들을 링크시킨후 그 데이터블록들을 다시 기본파일의 파일본체공간에 할당하고 해당 파일이 점용하는 마지막 데이터블록에 대응하는 FAT테이블 아이템값을 파일할당테이블아이템의 종료치로 수정한다.
FAT테이블 아이템을 링크시킬때 목록파일은 그 파일본체공간이 아래의 모든 서브파일로 구성되기에 목록파일의 파일목록아이템의 파일시작데이터블록 블록번호로 기록된것은 해당 목록파일아래 생성한 첫번째 서브파일의 파일목록 아이템이 점용한 데이터블록 블록번호이고 첫번째 서브파일의 파일목록아이템이 점용한 데이터블록에 대응하는 파일할당테이블아이템에 기록한것은 해당 목록파일아래에 생성된 두번째 서브파일의 파일목록아이템이 점용한 데이터블록 블록번호이고 두번째 서브파일의 파일목록아이템이 점용한 데이터블록에 대응하는 파일할당테이블아이템에 기록한것은 해당 목록파일아래에 생성된 세번째 서브파일의 파일목록아이템이 점용한 데이터블록 블록번호이다. 여기서 알수 있다싶이 해당 목록파일의 파일할당테이블 아이템 링크드 리스트는 이렇게 형성된다.
기본파일은 그 파일본체공간이 그 실제 파일내용으로 구성되였기에 기본파일의 파일목록아이템의 파일시작데이터블록 블록번호에 기록된것은 해당 기본파일의 본체공간이 점용한 첫 데이터블록의 블록번호이고 해당 시작데이터블록에 대응하는 파일할당테이블아이템에 기록된것은 해당 기본파일의 파일본체공간이 점용한 두번째 데이터블록의 블록번호이다. 여기서 알수 있다싶이 해당 기본파일의 파일할당테이블아이템 링크드 리스트는 이렇게 형성된다.
파일생성후 파일내용을 저장할때 하기와 같은 단계를 포함한다.
D: 제어부는 생성된 파일의 목록아이템으로부터 파일본체공간 저장데이터의 시작데이터블록의 블록번호를 얻는다.
E: 제어부는 파일의 시작데이터블록의 블록번호로부터 데이터블록에 대응하 는 파일할당테이블 아이템을 얻음으로써 저장할 파일이 점용하는 데이터블록의 파일할당테이블 링크드리스트를 얻어내고 다시 파일할당테이블 링크드리스트에 근거하여 파일내용이 저장완료되기까지 파일내용의 저장을 진행한다.
본 발명의 파일시스템은 FAT테이블에 의해 통일적으로 모든 데이터블록을 관리하므로 하나의 파일을 저장할때 파일을 연속적으로 저장시키지 않고 FAT테이블 아이템을 통하여 파일이 점용하는 데이터블록의 링크드 리스트를 기록하기만 하면 바로 파일에 대하여 정상적인 억세스를 진행할 수 있다.
본 발명의 파일저장의 최우수 실시방안에 따르면 FAT테이블아이템값이 0일때 대응하는 데이터블록이 점용되지 않았음을 표시하고 FAT테이블아이템값이 FFFF일때 다음 링크된 데이터블록이 없음을 표시하도록 정의를 내릴수 있다. 1~FFFF사이의 FAT테이블아이템값이 기록한것은 소정 파일의 다음 데이터블록의 블록번호이다. 제어부는 저장할 파일의 목록아이템과 파일본체공간을 위해 서로 다른 데이터블록을 할당한다. 그중, 파일목록아이템이 점용한 데이터블록에 있어서 그와 대응하는 FAT테이블아이템에 기록한것은 그 형제파일의 목록아이템이 위치한 데이터블록의 블록번호이고 만약 해당 파일에 현재 형제파일이 없으면 FAT테이블아이템의 값은 종료치이고 그 일 예로 FFFF가 될수 있다. 파일본체공간에 있어서 매 데이터블록에 대응하는 FAT테이블아이템에 기록된것은 모두 해당 파일에 할당한 그다음 데이터블록의 블록번호이고 만약 그다음 데이터블록이 없으면 FAT테이블아이템값은 종료치이다.
본 발명의 이러한 저장방법에 의하면 FAT파일관리의 영활성을 잃지 않음과 동시에 파일읽기쓰기의 억세스속도를 높인다.
이하 파일 a의 저장을 예로 하여 도3의 파일저장에 대하여 상세한 설명을 한다.
파일 a는 하나의 EF파일이고 파일저장을 진행함에 있어서,
(1)해당 파일목록하의 남은 공간의 충분여부를 판단하고 부족하면 새로운 파일의 생성을 허락하지 않는다.
(2)FAT테이블에서 점용되지 않은 데이터블록을 검색하고 생성할 파일의 목록아이템에 할당시킨다. 도4에서 볼수 있다싶이 데이터블록 1을 파일 a의 목록아이템에 할당시킨다.
(3)EF파일본체공에 필요한 데이터블록개수를 카운트하고 FAT테이블에서 상응개수의 점용되지않은 FAT테이블아이템을 검색하여 이 FAT테이블아이템들을 링크시킨다. 즉 이전의 FAT테이블아이템의 값은 해당 파일의 그다음 FAT테이블아이템의 블록번호이다. 도4의 실시예에 따르면 파일 a의 본체공간에 6개의 데이터블록을 할당시켰고 제어부는 검색해낸 점용되지 않은 FAT테이블 아이템은5, 6, 7, 11, 12, 13이다. 이 데이터블록들을 파일 a의 본체공간에 할당함과 동시에 FAT테이블아이템 5의 값을 6으로 설정하고 FAT테이블아이템 6의 값을 7로 설정하고 FAT테이블아이템 7의 값을 11로 설정하고 ...... 제 13블록은 파일 a의 마지막 데이터블록이므로 FAT테이블아이템 13의 값을 FFFF로 설정하여 해당 파일에 그다음 FAT테이블아이템이 없음을 표시하며 파일내용을 이 데이터블록들에 저장하여 파일의 저장을 완성한다.
이로부터 알수 있다싶이 본 발명의 시스템을 사용할 경우 하나의 파일을 위해 연속적인 공간의 데이터블록을 할당할 필요가 없고 할당과 동시에 FAT테이블아이템으로 해당 파일의 데이터블록의 링크를 기록하기만 하면 바로 파일에 대해 완전한 검색과 읽고쓰기를 진행할 수 있다.
이하 본 발명에 따른 생성 혹은 저장된 파일의 업데이트방법에 대하여 설명하는 것으로써 구체적으로 하기와 같은 단계를 포함한다.
F: 제어부는 업데이트할 파일의 식별자 혹은 파일이름에 근거하여 해당되는 파일목록 아이템을 찾아내고 파일목록 아이템으로부터 파일본체공간 저장데이터의 시작데이터블록의 블록번호를 얻는다.
G: 제어부는 파일의 시작데이터블록의 블록번호로부터 데이터블록에 대응하는 파일할당테이블 아이템을 얻음으로써 업데이트할 파일이 점용할 데이터블록의 파일할당테이블 링크드리스트를 획득하고 다시 단계 F로부터 얻어낸 시작데이터블록의 데이터블록 블록번호 및 업데이트할 시작어드레스가 파일본체공간 시작어드레스에 대한 상대적 오프셋에 근거하여 링크드리스트에서 업데이트할 시작 어드레스가 위치한 데이터블록번호를 찾아내고 지정된 길이의 파일내용이 업데이트완료될때까지 데이터블록의 업데이트를 진행한다.
도 3을 결합하여 업데이트과정에 대해 설명을 하면 제어부는 우선 업데이트할 오프셋 (해당 오프셋은 업데이트 혹은 독출하는 파일의 위치와 파일시작위치사이의 차감을 말함)과 데이터블록길이에 근거하여 업데이트할 시작어드레스가 몇번째 데이터블록에 있는지를 계산한다. 이하 업데이트할 시작어드레스가 첫 데이터블 록에 있을 경우를 예로 설명을 진행하면 제어부는 파일 a의 파일목록아이템을 검색하고 다시 파일 a의 파일목록아이템에 기록된 시작데이터블록의 블록번호에 근거하여 파일 a의 첫 데이터블록을 검색해낸다. 즉 5번 데이터블록의 파일내용을 업데이트하고 5번 데이터블록의 FAT테이블아이템값은 6이므로 파일 a의 다음 데이터블록은 6번 데이터블록임을 알수 있다. 6번데이터블록의 FAT테이블 아이템값은 7이므로 파일 a의 그다음 데이터블록은 7번데이터블록임을 알수 있다. 7번 데이터블록의 FAT테이블아이템값은 11이므로 파일 a의 그다음 데이터블록은 11번 데이터블록임을 알수 있다. 이렇게 모든 데이터블록의 파일내용에 대해 업데이트를 진행하여 지정된 길이의 파일내용이 업데이트완료되기까지 진행한다.
이하 본 발명에 따른 상기 시스템의 파일에 대한 독출방법으로써 하기와 같은 단계를 포함한다.
H: 제어부는 독출할 파일의 식별자 혹은 파일이름에 근거하여 해당되는 파일목록항을 찾아내고 파일목록 아이템으로부터 파일본체공간 저장데이터의 시작데이터블록의 블록번호를 얻는다.
I: 제어부는 파일시작데이터블록의 블록번호로부터 시작데이터블록에 대응하는 파일할당테이블아이템을 얻고 해당 파일할당테이블 아이템으로부터 독출할 파일의 점용데이터블록의 파일할당테이블 링크드리스트를 얻어내고 다시 단계 H로부터 얻어낸 시작데이터블록의 블록번호 및 독출할 시작어드레스가 파일본체공간의 시작어드레스에 대한 상대적인 오프셋에 근거하여 링크드리스트에서 독출할 시작 어드레스가 위치한 데이터블록 번호를 찾아내여 지정된 길이의 파일내용이 독출완료되 기까지 데이터블록의 독출을 진행한다.
이하 도3의 파일 a에 대한 독출을 예로 설명을 진행하면 우선 제어부는 파일 a의 목록아이템을 찾아내고 파일 a의 목록아이템에 기록된 시작데이터블록의 블록번호에 근거하여 파일 a의 첫 데이터블록을 찾아낸다. 즉 5번 데이터블록의 내용을 독출하고 5번 데이터블록의 FAT테이블 아이템값은 6이므로 파일 a의 다음 데이터브록은 6번 데이터블록임을 알수 있고 6번 데이터블록의 FAT테이블 아이템값은 7이므로 파일 a의 그다음 데이터블록은 7번데이터블록임을 알수 있다. 7번 데이터블록의 FAT테이블아이템값은 11이므로 파일 a의 그다음 데이터블록은 11번 데이터블록임을 알수 있다. 이렇게 파일내용독출을 진행하여 13번 데이터블록의 FAT테이블 아이템값이 FFFF이기에 그다음 데이터블록이 없고 파일 a는 여기까지 종료임을 알수 있어 파일 a를 완정하게 독출할 수 있다.
본 발명은 상기 스마트카드저장시스템의 파일에 대한 삭제방법도 제시한바 파일 삭제시 하기와 같은 단계를 포함한다.
J: 제어부는 삭제할 파일의 식별자 혹은 파일이름에 근거하여 해당하는 파일목록 아이템을 찾아내고 파일목록 아이템으로부터 파일본체공간 저장데이터의 시작데이터 블록의 블록번호를 얻는다.
K: 제어부는 단계 J에서 얻은 파일시작데이터블록의 블록번호에 근거하여 그와 대응되는 파일할당테이블 아이템을 얻어 해당 파일할당테이블 아이템으로부터 삭제할 파일이 점용한 데이터블록의 파일할당테이블 아이템 링크드 리스트를 획득하여 해당 링크드 리스트에 따라 매 데이터블록의 파일내용삭제를 진행하고 해당 파일의 마지막 데이터블록의 파일내용이 삭제될때까지 진행한다. 동시에 매 삭제하는 파일내용의 데이터블록에 대응하는 파일할당테이블 아이템의 값을 점용되지 않은 상태를 표시하는 테이블 아이템 값으로 설정한다.
L: 제어부는 삭제할 파일의 목록 아이템이 점용한 데이터블록을 삭제하고 그에 대응하는 파일할당테이블 아이템값을 점용되지 않은 상태를 표시하는 테이블 아이템 값으로 설정한다.
다시 도 3을 결부하여 삭제과정에 대해 설명을 진행하면 우선 제어부는 파일 a의 목록아이템을 찾아내고 파일 a의 목록아이템에 기록한 시작데이터블록의 블록번호에 근거하여 파일 a의 첫 데이터 블록을 찾아낸다. 즉 5번 데이터블록의 파일내용을 삭제하고 5번 데이터블록의 FAT테이블 아이템값은 6이므로 파일 a의 다음 데이터브록은 6번 데이터블록임을 알수 있고 6번 데이터블록의 FAT테이블 아이템값은 7이므로 파일 a의 그다음 데이터블록은 7번데이터블록임을 알수 있다. 7번 데이터블록의 FAT테이블아이템값은 11이므로 파일 a의 그다음 데이터블록은 11번 데이터블록임을 알수 있다. 이렇게 이 데이터블록들의 파일내용을 삭제함과 동시에 해당 데이트블록에 대응하는 FAT테이블 아이템을 0으로 설정함으로써 해당 데이터블록이 점용되지 않았음을 표시하여 시스템이 기타 생성할 파일에 할당할 수 있도록 한다. 해당 파일의 마지막 데이터블록이 삭제되기까지 진행하여 파일의 본체공간이 삭제된후 동시에 파일목록아이템이 점용한 데이터블록을 삭제하고 그에 대응하는 FAT테이블아이템을 0으로 설정하여 파일 a의 삭제를 완성한다.
본 발명은 상기 스마트카드저장시스템의 파일점용공간의 수정방법도 제시한 바 저장된 파일에 대해 점용공간을 수정할때 하기와 같은 단계를 포함한다.
M: 제어부는 수정할 파일의 식별자 혹은 파일이름에 근거하여 해당하는 파일목록 아이템을 찾아내고 파일목록 아이템으로부터 파일주체공간 저장데이터의 시작데이터블록의 블록번호를 얻는다.
N: 제어부는 단계 M으로부터 얻은 시작데이터블록의 블록번호에 근거하여 해당 데이터블록에 대응하는 파일할당테이블 아이템을 찾아내고 해당 수정할 파일이 점용한 데이터블록의 파일할당테이블 아이템 링크드 리스트를 획득하여 그 링크드 리스트에 따라 해당 파일의 마지막 데이터블록에 대응하는 파일할당테이블 아이템을 찾아낸다.
O: 제어부는 수정할 파일이 점용할 공간의 크기에 근거하여 파일할당테이블 아이템의 설정을 진행한다.
P: 제어부는 수정할 파일의 파일목록아이템중 파일공간크기의 값을 수정한다.
파일점용공간의 축소를 진행할 경우, 단계 N에서 제어부는 매 파일할당테이블 아이템에 대응하는 데이터블록의 사용상태에 대하여 체크가 더 필요하다.
단계 O에서 하기와 같은 단계를 더 포함한다.
O1: 제어부는 파일공간 축소후의 파일의 크기에 근거하여 해당 파일이 점용하지 않은 데이터블록들중 하나 혹은 다수개의 데이터블록에 대응하는 파일할당테이블 아이템값을 점용되지 않은 상태를 표시하는 테이블아이템값으로 수정하고 동시에 해당 파일이 점용한 마지막 데이터블록에 대응하는 파일할당테이블 아이템값 을 파일할당테이블 아이템의 종료치로 수정한다.
파일이 점용한 공간의 확대를 진행할 경우, 단계 O는 하기와 같은 단계를 포함한다.
O1' 제어부는 파일할당테이블에서 점용되지 않은 파일할당테이블 아이템을 검색하고 파일의 확대할 크기에 따라 점용되지 않은 파일할당테이블 아이템에 대응하는 데이터블록을 해당 파일에 할당하고 해당 파일이 점용한 마지막 데이터블록에 대응하는 파일할당테이블 아이템을 종료치로 수정하고 해당 파일이 점용한 원 파일할당테이블 아이템과 새로 할당된 파일할당테이블 아이템을 링크시켜 해당 파일의 새로운 파일할당테이블 아이템 링크드 리스트를 생성한다.
이하 도4와 도5의 내용에 결부하여 설명을 진행한다.
도4는 재할당전의 파일공간예시도로써 볼수 있다싶이 파일 a는 5,6,7,11,12,13 여섯개의 데이터블록을 점용하였고 파일 b는 8,9,10 세개 데이터블록을 점용하였다. 현재 파일 a가 오직 4개 데이터블록을 사용하였다면 즉 12,13 두개의 어두운 그늘로 표기된 데이터블록은 아직 사용되지 않았다고 가정한다.
사용자가 파일 a의 공간을 축소하는 동시에 b의 공간을 확대하고자 할 경우 파일 a의 아직 사용되지 않은 공간 (12, 13번 데이터블록)을 파일 b에 이전할 수 있다. 즉 파일 a는 5,6,7,11 네개의 데이터블록을 점용하고 파일 b는 8,9,10,12,13 다섯개의 데이터블록을 점용하는 것이다.
상기 기능을 실현하기 위하여 파일 b의 원 마지막 데이터블록- 10번 데이터블록에 대응하는 FAT테이블 아이템을 12로 수정하여 새로 할당된 12번 데이터블록 을 지향하도록 한다. 그와 동시에 파일 a의 마지막 데이터블록- 11번 데이터블록의 FAT테이블아이템을 FFFF로 수정하여 그 다음 데이터블록이 없을 표시하도록 한다. 수정후의 파일 a와 파일 b의 공간예시도는 도5와 같다.
FAT테이블아이템을 수정하는 동시에 파일 a와 파일 b의 목록아이템의 “파일크기”를 수정하여 업데이트후의 파일크기와 같도록 해야 한다.
본 발명의 이러한 파일공간수정의 방법은 파일크기를 재할당할 수 있어 하나의 파일공간이 너무 커서 낭비를 초래하고 다른 하나의 파일공간이 부족해 사용불가능일 경우 큰 파일의 사용되지 않은 파일공간을 작은 파일에 이전하여 사용할 수 있기에 사용자로 하여금 저장공간을 영활하게 이용할 수 있게 한다.
상기 묘사에서 알수 있다싶이 본 발명에 따른 스마트카드파일시스템 및 그 관리방법은 기존기술에 존재하는 부족점을 극복할 수 있어 파일의 영활한 생성,삭제와 공간회수이용을 실현할 수 있다.
본 기술분야의 당업자라면 본 발명의 기술사상을 일탈하지 아니하는 범위하에서 본 발명에 대한 다양한 변경과 수정이 가능함을 알수 있을 것이다. 따라서 본 발명의 이러한 수정과 변경이 본 발명의 청구항 및 그와 균등한 기술 범위내에 있으며 본 발명의 의도도 이러한 수정과 변경을 포함할 것이다.
상술한 본 발명의 스마트카드저장시스템 및 해당 스마트카드저장시스템의 파일생성관리방법은 파일할당테이블과 기존 스마트카드저장시스템을 결합하는 새로운 파일생성관리방법을 제시함으로써 기존 기술이 파일의 원활한 생성, 삭제와 공간회 수이용을 지지하는 것이 가능하다.

Claims (16)

  1. 저장부와 제어부를 포함하는 스마트카드에 있어서,
    상기 저장부는 다수의 파일할당테이블아이템을 포함하는 파일할당테이블저장부 및 파일내용을 저장하고 다수의 데이터블록을 포함하는 데이터저장부를 포함하고, 하나의 상기 파일할당테이블아이템은 하나의 상기 데이터블록에 대응되며,
    상기 제어부는 상기 파일할당테이블저장부의 상기 파일할당테이블아이템을 검색하고 상기 파일할당테이블아이템과 상기 데이터블록의 대응관계에 근거하여 상기 데이터블록 내의 파일을 제어하는 것을 특징으로 하는 스마트카드저장시스템.
  2. 제1항에 있어서,
    상기 데이터저장부는 파일목록아이템을 저장하는 파일목록아이템저장부와 파일본체공간을 저장하는 파일본체공간저장부를 포함하고,
    상기 파일목록아이템저장부와 파일본체공간저장부는 서로 다른 데이터블록에 위치하여 있는 것을 특징으로 하는 스마트카드저장시스템.
  3. 제1항에 있어서,
    상기 파일할당테이블 아이템에 기록된 내용은 해당 파일이 점용한 그다음 데이터블록의 블록번호이고, 해당 파일의 다음 데이터블록이 없으면 파일할당테이블 아이템의 값은 종료를 표시하는 특정치이고, 해당 파일의 다음 데이터블록이 점용되지 않았으면 대응하는 파일할당테이블아이템의 값은 점용되지 않았음을 표시하는 특정치인 것을 특징으로 하는 스마트카드저장시스템.
  4. 새로운 파일을 생성함에 있어서,
    A, 제어부가 해당 파일할당저장부를 검색하여 파일할당테이블중 점용되지 않은 파일할당테이블 아이템을 검색하고 파일할당테이블 아이템과 데이터 블록의 대응관계에 근거하여 점용되지 않은 데이터 블록을 검색하는 단계;
    B, 제어부가 검색해낸 점용되지 않은 데이터 블록을 생성할 파일의 파일목록 아이템에 할당하고 파일정보를 기입하여 해당 데이터 블록에 대응하는 파일할당테이블 아이템의 값을 점용되어있음을 표시하는 특정치로 수정하는 단계; 및
    C, 단계 A를 계속하여 진행하여 또다시 점용되지 않은 데이터 블록을 검색하고 이를 통하여 찾아낸 다수개의 데이터 블록을 생성할 파일의 파일본체공간에 할당하고 데이터 블록에 대응하는 파일할당테이블 아이템의 값을 점용되었음을 표시하는 특정치로 수정하여 파일할당테이블 아이템 링크드리스트를 형성하며 첫번째 데이터 블록의 블록번호를 단계 B에서 확정된 파일목록 아이템에 기록하고 파일이 점용한 마지막 데이터 블록에 대응하는 파일할당테이블 아이템을 종료치로 수정하는 단계를 포함하는 것을 특징으로 하는 청구항 1에 따른 스마트카드저장시스템의 파일생성관리방법.
  5. 제4항에 있어서,
    단계 B에서 기입한 파일정보는 파일크기, 파일시작데이터블록 블록번호 중 적어도 하나인 것을 특징으로 하는 스마트카드저장시스템의 파일생성관리방법.
  6. 제4항에 있어서,
    단계 A전에 제어부가 해당 목록의 남은 공간을 판단하는 단계를 더 포함하고 해당 목록의 남은 공간이 생성할 파일에 필요한 공간보다 크거나 같으면 제어부는 단계 A를 수행하는 것을 특징으로 하는 스마트카드저장시스템의 파일생성관리방법.
  7. 제4항 내지 제6항 중 어느 한 항에 있어서,
    생성할 파일이 목록파일이면 단계 C에서 파일목록 아이템중의 파일시작데이터블록의 블록번호에 기록되는 것은 해당 목록파일에 생성된 첫번째 서브파일의 파일목록아이템이 점용하는 데이터블록의 블록번호이고, 첫번째 서브파일의 파일목록 아이템이 점용한 데이터블록에 대응하는 파일할당테이블 아이템에 기록되는 것은 해당 아이템파일에 생성된 그다음 서브파일의 파일목록 아이템이 점용하는 데이터블록의 블록번호이고, 모든 데이터블록이 링크되어 해당 목록파일의 파일본체공간의 파일할당테이블 아이템 링크드 리스트를 형성하는 것을 특징으로 하는 스마트카드저장시스템의 파일생성관리방법.
  8. 제4항 내지 제6항 중 어느 한 항에 있어서,
    생성된 파일이 기본파일이면 단계 C에서 파일목록아이템의 파일시작데이터블록의 블록번호에 기록되는 것은 해당 기본파일의 파일본체공간이 점용하는 첫번째 데이터블록의 블록번호이고 해당 시작데이터블록에 대응하는 파일할당테이블 아이템에 기록되는 것은 해당 기본파일의 파일본체공간이 점용하는 두번째 데이터블록의 블록번호인 것을 특징으로 하는 스마트카드저장시스템의 파일생성관리방법.
  9. 제8항에 있어서,
    단계 C전에 제어부가 상기 기본파일의 파일본체공간의 데이터블록개수에 대하여 카운트하는 단계를 더 포함하고,
    단계 C에서 제어부가 파일할당테이블에서 상응 개수의 점용되지 않은 파일할당테이블 아이템을 찾아내여 그 파일할당테이블 아이템들을 링크되도록 한 후 다시 그 데이터블록들을 기본파일의 파일본체공간에 할당시키는 것을 특징으로 하는 스마트카드저장시스템의 파일생성관리방법.
  10. 제4항에 있어서,
    파일내용을 저장함에 있어서,
    D: 제어부는 생성한 파일의 목록아이템에 근거하여 파일본체공간의 저장데이터의 시작데이터블록의 블록번호를 얻는 단계; 및
    E: 제어부는 파일의 시작데이터블록의 블록번호로부터 데이터블록에 대응하는 파일할당테이블 아이템을 획득함으로서 저장할 파일이 점용하는 데이터블록의 파일할당테이블 링크드리스트를 얻어내고 파일할당테이블 링크드리스트에 근거하여 파일내용이 저장완료되기까지 파일내용의 저장을 진행하는 단계를 포함하는 것을 특징으로 하는 스마트카드저장시스템의 파일생성관리방법.
  11. 제4항 또는 제10항에 있어서,
    생성 혹은 저장된 파일을 업데이트함에 있어서,
    F: 제어부는 업데이트할 파일의 식별자 혹은 파일이름에 근거하여 해당되는 파일목록 아이템을 찾아내고 파일목록 아이템으로부터 파일본체공간 저장데이터의 시작데이터블록의 블록번호를 얻는 단계;
    G: 제어부는 파일의 시작데이터블록의 블록번호로부터 데이터블록에 대응하는 파일할당테이블 아이템을 획득함으로서 업데이트할 파일이 점용할 데이터블록의 파일할당테이블 링크드리스트를 획득하고 다시 단계 F로부터 얻어낸 시작데이터블록의 데이터블록 블록번호 및 업데이트할 시작어드레스가 파일본체공간 시작어드레스에 대한 상대적 오프셋에 근거하여 링크드리스트에서 업데이트할 시작 어드레스가 위치한 데이터블록번호를 찾아내고 지정된 길이의 파일내용이 업데이트 완료될때까지 데이터블록의 업데이트를 진행하는 단계를 포함하는 것을 특징으로 하는 스마트카드저장시스템의 파일생성관리방법.
  12. 제4항 또는 제10항에 있어서,
    생성 혹은 저장된 파일을 독출함에 있어서,
    H: 제어부는 독출할 파일의 식별자 혹은 파일이름에 근거하여 해당되는 파일목록항을 찾아내고 파일목록 아이템으로부터 파일본체공간 저장데이터의 시작데이터블록의 블록번호를 얻는 단계; 및
    I: 제어부는 파일시작데이터블록의 블록번호로부터 시작데이터블록에 대응하는 파일할당테이블아이템을 얻고 해당 파일할당테이블 아이템으로부터 독출할 파일의 점용데이터블록의 파일할당테이블 링크드리스트를 얻어내고 다시 단계 H로부터 얻어낸 시작데이터블록의 블록번호 및 독출할 시작어드레스가 파일본체공간의 시작어드레스에 대한 상대적인 오프셋에 근거하여 링크드리스트에서 독출할 시작 어드레스가 위치한 데이터블록 번호를 찾아내여 지정된 길이의 파일내용이 독출완료되기까지 데이터블록의 독출을 진행하는 단계를 포함하는 것을 특징으로 하는 스마트카드저장시스템의 파일생성관리방법.
  13. 제4항 또는 제10항에 있어서,
    생성 혹은 저장된 파일을 삭제함에 있어서,
    J: 제어부는 삭제할 파일의 식별자 혹은 파일이름에 근거하여 해당하는 파일목록 아이템을 찾아내고 파일목록 아이템으로부터 파일본체공간 저장데이터의 시작데이터 블록의 블록번호를 얻는 단계;
    K: 제어부는 단계 J에서 얻은 파일시작데이터블록의 블록번호에 근거하여 그와 대응되는 파일할당테이블 아이템을 얻어 해당 파일할당테이블 아이템으로부터 삭제할 파일이 점용한 데이터블록의 파일할당테이블 아이템 링크드 리스트를 획득하여 해당 링크드 리스트에 따라 매 데이터블록의 파일내용삭제를 진행하고 해당 파일의 마지막 데이터블록의 파일내용이 삭제될때까지 진행함과 동시에 매 삭제하는 파일내용의 데이터블록에 대응하는 파일할당테이블 아이템의 값을 점용되지 않은 상태를 표시하는 테이블 아이템 값으로 설정하는 단계; 및
    L: 제어부는 삭제할 파일의 목록 아이템이 점용한 데이터블록을 삭제하고 그에 대응하는 파일할당테이블 아이템값을 점용되지 않은 상태를 표시하는 테이블 아이템 값으로 설정하는 단계를 포함하는 것을 특징으로 하는 스마트카드저장시스템의 파일생성관리방법.
  14. 제4항 또는 제10항에 있어서,
    생성 혹은 저장된 파일에 대해 점용공간수정을 진행함에 있어서,
    M: 제어부는 수정할 파일의 식별자 혹은 파일이름에 근거하여 해당하는 파일목록 아이템을 찾아내고 파일목록 아이템으로부터 파일주체공간 저장데이터의 시작데이터블록의 블록번호를 얻는 단계;
    N: 제어부는 단계 M으로부터 얻은 시작데이터블록의 블록번호에 근거하여 해당 데이터블록에 대응하는 파일할당테이블 아이템을 찾아내고 해당 수정할 파일이 점용한 데이터블록의 파일할당테이블 아이템 링크드 리스트를 획득하여 그 링크드 리스트에 따라 해당 파일의 마지막 데이터블록에 대응하는 파일할당테이블 아이템을 찾아내는 단계;
    O: 제어부는 수정할 파일이 점용할 공간의 크기에 근거하여 파일할당테이블 아이템의 설정을 진행하는 단계; 및
    P: 제어부는 수정할 파일의 파일목록아이템중 파일공간크기의 값을 수정하는 단계를 포함하는 것을 특징으로 하는 스마트카드저장시스템의 파일생성관리방법.
  15. 제14항에 있어서,
    파일점용공간의 축소를 진행할 경우, 단계 N에서 제어부는 매 파일할당테이블 아이템에 대응하는 데이터블록의 사용상태에 대하여 체크가 더 필요하고 단계 O에서 O1: 제어부는 파일공간 축소후의 파일의 크기에 근거하여 해당 파일이 점용하지 않은 데이터블록들중 하나 혹은 다수개의 데이터블록에 대응하는 파일할당테이블 아이템값을 점용되지 않은 상태를 표시하는 테이블아이템값으로 수정하고 동시에 해당 파일이 점용한 마지막 데이터블록에 대응하는 파일할당테이블 아이템값을 파일할당테이블 아이템의 종료치로 수정하는 단계를 더 포함하는 것을 특징으로 하는 스마트카드저장시스템의 파일생성관리방법.
  16. 제14항에 있어서,
    파일점용공간의 확대를 진행함에 있어서 단계 O는 O1' 제어부는 파일할당테이블에서 점용되지 않은 파일할당테이블 아이템을 검색하고 파일의 확대할 크기에 따라 점용되지 않은 파일할당테이블 아이템에 대응하는 데이터블록을 해당 파일에 할당하고 해당 파일이 점용한 마지막 데이터블록에 대응하는 파일할당테이블 아이템을 종료치로 수정하고 해당 파일이 점용한 원 파일할당테이블 아이템과 새로 할당된 파일할당테이블 아이템을 링크시켜 해당 파일의 새로운 파일할당테이블 아이템 링크드 리스트를 생성하는 단계를 포함하는 것을 특징으로 하는 스마트카드저장시스템의 파일생성관리방법.
KR1020087025862A 2006-03-23 2007-02-07 스마트카드를 위한 저장 시스템 및 그 저장시스템에서 파일생성관리방법 KR101157171B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CNB2006100651582A CN100485681C (zh) 2006-03-23 2006-03-23 智能卡存储系统及该系统中文件创建管理的方法
CN200610065158.2 2006-03-23
PCT/CN2007/000427 WO2007107073A1 (fr) 2006-03-23 2007-02-07 Système de mémoire sur carte à puce, et son procédé de gestion de fichier

Publications (2)

Publication Number Publication Date
KR20090007357A KR20090007357A (ko) 2009-01-16
KR101157171B1 true KR101157171B1 (ko) 2012-06-20

Family

ID=38522020

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087025862A KR101157171B1 (ko) 2006-03-23 2007-02-07 스마트카드를 위한 저장 시스템 및 그 저장시스템에서 파일생성관리방법

Country Status (5)

Country Link
US (1) US20090307291A1 (ko)
EP (1) EP2006774A4 (ko)
KR (1) KR101157171B1 (ko)
CN (1) CN100485681C (ko)
WO (1) WO2007107073A1 (ko)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101221581B (zh) * 2008-01-24 2010-06-02 北京中星微电子有限公司 一种数据文件生成方法及装置
KR100965147B1 (ko) 2008-09-29 2010-06-23 에스케이씨앤씨 주식회사 이동통신 단말기용 유심의 엘레멘트 파일들을 효율적으로 확장시키는 방법 및 이를 위한 저장장치
CN101510332B (zh) * 2008-12-25 2013-04-24 北京握奇数据系统有限公司 一种智能卡中存储空间的管理方法和装置
CN101446984B (zh) * 2009-01-09 2011-04-13 成都市华为赛门铁克科技有限公司 一种文件存储方法、装置及文件删除方法和装置
JP2011090436A (ja) * 2009-10-21 2011-05-06 Sony Corp 情報処理装置、通信装置、及びプログラム
CN102103596B (zh) * 2009-12-18 2014-10-29 康佳集团股份有限公司 在嵌入式系统中实现文件系统的方法
CN102004700A (zh) * 2010-11-26 2011-04-06 华为终端有限公司 闪存的存储空间分配方法及装置
CN102073558B (zh) * 2010-12-30 2012-11-28 东方口岸科技有限公司 实现智能卡中文件安全完整的方法
CN102929884B (zh) * 2011-08-10 2016-05-04 阿里巴巴集团控股有限公司 一种收缩虚拟磁盘镜像文件的方法及装置
CN102279805A (zh) * 2011-09-06 2011-12-14 四川九洲电器集团有限责任公司 一种存储器数据存放及读取方法
CN102298645B (zh) * 2011-09-21 2013-06-26 深圳万兴信息科技股份有限公司 一种构建文件目录结构的方法及其系统
CN102508782B (zh) * 2011-09-29 2014-09-10 北京星网锐捷网络技术有限公司 数据读写方法、装置、存储体及网络设备
FR2983622B1 (fr) * 2011-12-02 2014-01-24 Morpho Ecriture de donnees dans une memoire non volatile de carte a puce
US10048884B2 (en) 2011-12-29 2018-08-14 Memory Technologies Llc Method for erasing data entity in memory module
CN102855327B (zh) * 2012-09-18 2015-12-02 中国石油天然气股份有限公司 一种小型嵌入式文件存储管理系统
CN102968652B (zh) * 2012-11-20 2015-10-07 北京海泰方圆科技有限公司 智能卡的访问方法及访问装置
CN103051977A (zh) * 2013-01-11 2013-04-17 乐视网信息技术(北京)股份有限公司 一种处理p2p缓存数据的方法
CN103646063B (zh) * 2013-11-27 2016-08-17 中国航天科技集团公司第五研究院第五一三研究所 一种星载高速文件管理系统
CN104050251B (zh) * 2014-06-11 2017-03-08 深圳市茁壮网络股份有限公司 一种文件管理方法及管理系统
CN104573571B (zh) * 2015-02-04 2017-09-19 郑州信大捷安信息技术股份有限公司 一种智能卡安全文件系统的生成方法
US10482065B1 (en) * 2015-03-31 2019-11-19 EMC IP Holding Company LLC Managing deletion of replicas of files
CN105159608B (zh) * 2015-08-28 2019-02-22 北京奇艺世纪科技有限公司 一种用于读写p2p数据的方法及装置
CN105468304B (zh) * 2015-11-26 2018-05-11 恒宝股份有限公司 一种Native存储卡及其管理方法
CN106326384A (zh) * 2016-08-16 2017-01-11 中国科学院长春光学精密机械与物理研究所 基于fpga的适用于高速海量存储的文件存储方法
CN107479834A (zh) * 2017-08-28 2017-12-15 北京智芯微电子科技有限公司 一种基于cos的文件存储方法及装置
CN109697019B (zh) * 2017-10-20 2022-12-27 北京京东尚科信息技术有限公司 基于fat文件系统的数据写入的方法和系统
CN107918527B (zh) * 2017-11-01 2021-04-23 北京小米移动软件有限公司 存储空间分配方法及装置以及文件存储方法及装置
WO2019148497A1 (zh) * 2018-02-05 2019-08-08 华为技术有限公司 一种数据查询方法及装置
US20190320008A1 (en) * 2018-04-16 2019-10-17 Qbic Technology Co., Ltd. Data transfer system and method thereof
CN112241393B (zh) * 2019-07-18 2024-04-19 国民技术股份有限公司 文件存储方法、终端和计算机可读存储介质
CN111159114A (zh) * 2019-12-30 2020-05-15 中国科学院寒区旱区环境与工程研究所 文件存储方法、装置及服务器
CN111290707B (zh) * 2020-01-17 2023-06-27 深圳市芯智科技有限公司 一种在小系统行车记录仪上实现特定存储的方法
CN111782605A (zh) * 2020-07-06 2020-10-16 东信和平科技股份有限公司 一种芯片卡文件管理方法、装置、终端及存储介质
CN112732198B (zh) * 2021-01-15 2023-11-14 广州Tcl互联网小额贷款有限公司 文件管理方法、装置、设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050050108A1 (en) 2003-08-21 2005-03-03 Texas Instruments Incorporated File system for digital processing systems with limited resources
US20060020745A1 (en) * 2004-07-21 2006-01-26 Conley Kevin M Fat analysis for optimized sequential cluster management
US20060041709A1 (en) 2004-08-23 2006-02-23 Sony Corporation Memory card and reproducing apparatus

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US288710A (en) * 1883-11-20 Automatically releasing safety-valve weights
US256470A (en) * 1882-04-18 Oeoege
GB2251324B (en) * 1990-12-31 1995-05-10 Intel Corp File structure for a non-volatile semiconductor memory
JP2734391B2 (ja) * 1995-01-18 1998-03-30 日本電気株式会社 不揮発性メモリのファイル管理装置
US5832525A (en) * 1996-06-24 1998-11-03 Sun Microsystems, Inc. Disk fragmentation reduction using file allocation tables
US6208999B1 (en) * 1996-12-12 2001-03-27 Network Associates, Inc. Recoverable computer file system with a signature area containing file integrity information located in the storage blocks
US6564995B1 (en) * 1997-09-19 2003-05-20 Schlumberger Malco, Inc. Smart card application-selection
KR100704998B1 (ko) * 1999-02-26 2007-04-09 소니 가부시끼 가이샤 기록방법, 관리방법 및 기록장치
JP4281185B2 (ja) * 1999-03-25 2009-06-17 ソニー株式会社 編集装置および方法
KR100330164B1 (ko) * 1999-04-27 2002-03-28 윤종용 무효 블록들을 가지는 복수의 플래시 메모리들을 동시에 프로그램하는 방법
CN1118025C (zh) * 2000-10-23 2003-08-13 大唐电信科技股份有限公司微电子分公司 采用逻辑区间链表寻址的智能卡嵌入式软件系统实现方法
US7660902B2 (en) * 2000-11-20 2010-02-09 Rsa Security, Inc. Dynamic file access control and management
US6970891B1 (en) * 2000-11-27 2005-11-29 Microsoft Corporation Smart card with volatile memory file subsystem
US6823417B2 (en) * 2001-10-01 2004-11-23 Hewlett-Packard Development Company, L.P. Memory controller for memory card manages file allocation table
JP2003288258A (ja) * 2002-03-28 2003-10-10 Toppan Printing Co Ltd Icカード及びicカードのメモリ管理方法
EP1435576B1 (en) * 2003-01-03 2013-03-20 Austria Card Plastikkarten und Ausweissysteme GmbH Method and apparatus for block-oriented memory management provided in smart card controllers
JP2004280752A (ja) * 2003-03-19 2004-10-07 Sony Corp データ記憶装置、およびデータ記憶装置における管理情報更新方法、並びにコンピュータ・プログラム
JP2005141335A (ja) * 2003-11-04 2005-06-02 Sony Corp 情報記録再生装置とそのファイルアクセス方法
WO2005071549A1 (ja) * 2004-01-26 2005-08-04 Matsushita Electric Industrial Co., Ltd. 半導体メモリ装置及びその制御方法
KR100617775B1 (ko) * 2004-11-08 2006-08-28 삼성전자주식회사 멀티미디어 메시징 서비스에서 중복된 도달 통지 메시지에대한 관리 방법
CN1277213C (zh) * 2004-12-31 2006-09-27 大唐微电子技术有限公司 一种闪存文件系统管理方法
US7315917B2 (en) * 2005-01-20 2008-01-01 Sandisk Corporation Scheduling of housekeeping operations in flash memory systems
US7877539B2 (en) * 2005-02-16 2011-01-25 Sandisk Corporation Direct data file storage in flash memories
US20060184718A1 (en) * 2005-02-16 2006-08-17 Sinclair Alan W Direct file data programming and deletion in flash memories
US20060184719A1 (en) * 2005-02-16 2006-08-17 Sinclair Alan W Direct data file storage implementation techniques in flash memories
US7669003B2 (en) * 2005-08-03 2010-02-23 Sandisk Corporation Reprogrammable non-volatile memory systems with indexing of directly stored data files
US7409489B2 (en) * 2005-08-03 2008-08-05 Sandisk Corporation Scheduling of reclaim operations in non-volatile memory
US7350049B1 (en) * 2005-09-13 2008-03-25 Vimicro Corporation Method and apparatus for managing access to a file allocation table
CN100419756C (zh) * 2005-09-13 2008-09-17 北京中星微电子有限公司 文件分配表文件系统读写方法及装置
US20080189554A1 (en) * 2007-02-05 2008-08-07 Asad Ali Method and system for securing communication between a host computer and a secure portable device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050050108A1 (en) 2003-08-21 2005-03-03 Texas Instruments Incorporated File system for digital processing systems with limited resources
US20060020745A1 (en) * 2004-07-21 2006-01-26 Conley Kevin M Fat analysis for optimized sequential cluster management
US20060041709A1 (en) 2004-08-23 2006-02-23 Sony Corporation Memory card and reproducing apparatus

Also Published As

Publication number Publication date
KR20090007357A (ko) 2009-01-16
EP2006774A1 (en) 2008-12-24
CN100485681C (zh) 2009-05-06
CN101042696A (zh) 2007-09-26
US20090307291A1 (en) 2009-12-10
WO2007107073A1 (fr) 2007-09-27
EP2006774A4 (en) 2010-10-20

Similar Documents

Publication Publication Date Title
KR101157171B1 (ko) 스마트카드를 위한 저장 시스템 및 그 저장시스템에서 파일생성관리방법
US7966355B2 (en) Interface for extending functionality of memory cards
CN102193872B (zh) 存储系统
CN107239526B (zh) 文件系统实现方法、碎片整理方法、操作位置定位方法
EP3518112A1 (en) Memory device and host device
CN111522507B (zh) 一种低延迟的文件系统地址空间管理方法、系统及介质
US20190026317A1 (en) Memory use in a distributed index and query system
US10649967B2 (en) Memory object pool use in a distributed index and query system
KR20150071500A (ko) 데이터 관리 방법 및 장치
CN102541969B (zh) 基于fat文件系统的文件保护方法、系统及存储器
CN108664577B (zh) 一种基于flash空闲区的文件管理方法及系统
EP4336336A1 (en) Data compression method and apparatus
CN100544471C (zh) 扩展移动终端的存储空间的方法和系统
CN105630410B (zh) 使用非易失随机读写存储芯片动态管理文件存储区的方法
CN108647278B (zh) 一种文件管理方法及系统
CN108628762B (zh) 一种固态存储设备及其处理io命令的方法
JP2006072441A (ja) メモリ装置および不揮発性メモリの制御方法
CN109727629B (zh) 使用利用多间隙进度字段的磨损均衡的方法和系统
CN106537321B (zh) 存取文件的方法、装置和存储系统
US8200936B2 (en) Systems and methods for recording information to a memory card
US9990278B2 (en) Overlaid erase block mapping
CN108664578B (zh) 一种文件循环存储方法及系统
CN106033454B (zh) 虚拟文件系统的格式化方法、处理方法和装置
US20100274828A1 (en) Electronic Device, Storage Area Allocation Method for File System, and Computer Product
CN116483740B (zh) 内存数据的迁移方法、装置、存储介质及电子装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee