JP4881469B1 - 情報処理装置、及び情報処理方法 - Google Patents

情報処理装置、及び情報処理方法 Download PDF

Info

Publication number
JP4881469B1
JP4881469B1 JP2010212571A JP2010212571A JP4881469B1 JP 4881469 B1 JP4881469 B1 JP 4881469B1 JP 2010212571 A JP2010212571 A JP 2010212571A JP 2010212571 A JP2010212571 A JP 2010212571A JP 4881469 B1 JP4881469 B1 JP 4881469B1
Authority
JP
Japan
Prior art keywords
data
memory
address
file system
area
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2010212571A
Other languages
English (en)
Other versions
JP2012068853A (ja
Inventor
卓也 大谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2010212571A priority Critical patent/JP4881469B1/ja
Priority to US13/099,811 priority patent/US20120072473A1/en
Application granted granted Critical
Publication of JP4881469B1 publication Critical patent/JP4881469B1/ja
Publication of JP2012068853A publication Critical patent/JP2012068853A/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/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/061Improving I/O performance
    • 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/064Management of blocks
    • 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]

Landscapes

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

Abstract

【課題】データの読み出し処理速度が向上するように情報記録媒体へデータ書き込ませることの可能な情報処理装置、及び情報処理方法を実現する。
【解決手段】情報処理装置は、情報記憶媒体の記憶領域にデータを書き込むとき、書き込み対象のデータが拡張性の高いデータであるか、拡張性の低いデータであるかを判別する判別手段と、書き込み対象のデータが前記拡張の高いデータである場合には、前記拡張性の低いデータである場合よりも、前記データを書き込むアドレスに、前記記憶領域内のデータをアラインできるアドレスを優先して割り当てる割り当て手段と、を具備する。
【選択図】図11

Description

本発明の実施形態は、情報処理装置、及び情報処理方法に関する。
近年、例えばSDカードのようなメモリカード等やHDD(Hard Disk Drive)等の情報記録機器の記憶容量が増大している。
このような情報記録機器の記憶容量の増大に伴い、情報記録機器へのデータの読み出し/書き込み処理を制御するファイルシステムが重要視され、高速なデータの読み出し/書き込み処理が求められている。
特開2007−293917号公報
本発明は上記要求に鑑みて提案されたものであって、データの読み出し処理速度が向上するように情報記録媒体へデータ書き込ませることの可能な情報処理装置、及び情報処理方法を実現することを課題としている。
本実施形態における情報処理装置は、情報記憶媒体の記憶領域に書き込まれる対象の書込データが、FATファイルシステムにおけるディレクトリ情報である場合に拡張性の低いデータであると判別し、前記ディレクトリ情報でない場合に拡張性の高いデータであると判別する判別手段と、前記書込データが前記拡張性の高いデータであると判別された場合には、前記記憶領域内への書き込み処理のキャッシュのサイズに依存する、データをアラインできるアドレスを、前記書込データの書き込み先のアドレスとして、前記拡張性の低いデータであると判別される場合よりも、優先して割り当てる割り当て手段と、を具備する。
実施形態におけるPCの主要部と、このPCの管理対象となるメモリカード200の主要部の一例を示すブロック図。 実施形態におけるFATファイルシステムにより論理フォーマット化された、メモリのメモリ空間の一例を示す概念図。 実施形態におけるFAT及びファイルエントリの一例を示す概念図。 実施形態におけるファイルシステムによって論理フォーマット化された、メモリのメモリ空間の一例を示す概念図。 実施形態における論理フォーマット化されているメモリへのデータの書き込み/読み出し処理の一例を示すフロー図。 実施形態におけるアラインされていないデータを読み出す際の読み出し処理の一例を示す概念図。 実施形態における本実施形態におけるアラインされているデータを読み出す際の読み出し処理の一例を示す概念図。 実施形態におけるデータをアラインせずに書き込む際の書き込み処理の一例を示す概念図。 実施形態における本実施形態におけるアラインさせてデータを書き込む際の書き込み処理の一例を示す概念図。 実施形態におけるデータ書き込み処理が行われたメモリの状態を示す概念図。 実施形態における本実施形態における特徴的な書き込み処理の一例を示すフロー図。 実施形態におけるPCの基本構成の一例を示すブロック構成図。
以下、実施の形態について図面を参照して詳細に説明する。
この実施の形態では、PC(Personal Computer)にこの発明を適用した例について説明するが、例えばデジタルテレビジョン放送受信装置や光ディスクレコーダ等、管理対象となる情報記録媒体に記録されるデータを管理するためのファイルシステムを備えるファイルシステム搭載機器であれば、同様に適用することができる。
図1は、この実施の形態で説明するPC100の主要部と、このPC100の管理対象となるメモリカード200の主要部とを、それぞれ機能ブロックとして概略的に示している。各機能ブロックは、ハードウエアやコンピュータソフトウエアのいずれかまたは両者の組み合わせとして実現することができる。このため、各ブロックは、これらのいずれでもあることが明確となるように、概してそれらの機能の観点から説明される。
このような機能が、ハードウエアとして実行されるか、または、ソフトウエアとして実行されるかは、具体的な実施態様またはシステム全体に課される設計制約に依存する。当業者は、具体的な実施態様毎に、種々の方法でこれらの機能を実現し得るが、そのような実現を決定することは、この発明の範疇に含まれるものである。
図1に示すように、PC100は、自己に挿入され接続されたメモリカード200に対してアクセスを行なうためのハードウエア及びソフトウエア(システム)を備えている。まず、PC100は、アプリケーション、オペレーティングシステム等のソフトウエア101を備えている。
このソフトウエア101は、メモリカード200へのデータの書き込みや、メモリカード200からのデータの読み出し等の処理が、ユーザの操作によって指示されると、CPU(Central Processing Unit)にその処理を実行させるものである。ソフトウエア101を実行したCPUは、ファイルシステム102を介して、メモリカード200に対してデータの書き込みまたは読み出しを指示する。
このファイルシステム102は、管理対象となる情報記録媒体(メモリカード200)に記録されているファイルを管理するための仕組みである。このファイルシステム102は、情報記録媒体の記録領域内に管理情報を記録し、この管理情報を用いてファイルを管理している。
すなわち、このファイルシステム102では、情報記録媒体におけるファイルやフォルダ等のディレクトリ情報の作成方法、ファイルやフォルダ等の移動方法や削除方法、データの記録方式、管理情報が記録されている場所やその利用方法等が定められている。このファイルシステム102は、FAT(File Allocation Table)ファイルシステムを基礎としており、この実施の形態で以下に説明する動作を実行可能に構成されている。具体的な動作に関しては、適宜順を追って説明する。
また、上記PC100は、メモリカードインターフェース103を備えている。このメモリカードインターフェース103は、PC100とメモリカード200のコントローラ201との間のインターフェース処理を行なうのに必要なハードウエアやソフトウエア等から構成されている。そして、PC100は、メモリカードインターフェース103を介してメモリカード200との通信を実行する。
この場合、メモリカードインターフェース103は、PC100とメモリカード200とが通信を行なうのに必要な各種の取り決めを規定している。すなわち、メモリカードインターフェース103は、メモリカード200のコントローラ201を構成している後述するメモリカードインターフェース201aと相互に認識可能な各種のコマンドの組を備えている。また、このメモリカードインターフェース103は、メモリカード200のメモリカードインターフェース201aと接続可能なハードウエア上の構成(ピンの配置、数等)も含んでいる。
さらに、PC100はワークメモリ104を備えている。ワークメモリ104は例えばRAM(Random Access Memory)のようなPC100が情報処理を実行する際に作業エリアとして使用される一時記憶領域である。また、PC100はメモリカード200よりデータを読み出した際には、メモリカード200より読み出したデータをワークメモリ104に格納する。さらに、PC100は、メモリカード200にデータを書き込む際には、書き込み対象のデータをワークメモリ104からメモリカード200に出力し、書き込み処理を実行する。
上記メモリカード200は、電源がオン状態のPC100に接続されたとき、または、電源がオフ状態のPC100に接続された状態でPC100の電源がオンされたときに、PC100からの電力供給を受けて初期化動作を行なった後、PC100からのアクセスに対応した処理を実行する。
このメモリカード200は、NAND型フラッシュメモリ等のメモリ202や、そのメモリ202を制御するための上記コントローラ201を備えている。このうち、メモリ202は、データを不揮発に記録するもので、複数のメモリセルからなるページと称される単位でデータの書き込みや読み出しを実行する。ページには、各ページに固有の物理アドレスが割り当てられている。また、メモリ202は、複数のページからなる物理ブロックと称される単位でデータの消去を実行する。なお、物理ブロック単位で物理アドレスが割り当てられていることもある。
また、上記コントローラ201は、メモリ202におけるデータの記録状態を管理している。この記録状態の管理とは、どの物理アドレスのページ(または物理ブロック)が、PC100により割り当てられたどの論理アドレスのデータを保持しているかを示す対応関係や、どの物理アドレスのページ(または物理ブロック)が消去状態(何も書き込まれていない状態、または、無効なデータを保持している状態)であるか等を管理することである。
この場合、上記コントローラ201は、上記メモリカードインターフェース201a、MPU(Micro Processing Unit)201b、ROM(Read Only Memory)201c、RAM(Random Access Memory)201d、NANDインターフェース201e等を備えている。
このうち、メモリカードインターフェース201aは、PC100とコントローラ201との間のインターフェース処理を行なうのに必要なハードウエアやソフトウエア等から構成されている。そして、メモリカード200は、メモリカードインターフェース201aを介してPC100との通信を実行する。
このメモリカードインターフェース201aは、PC100のメモリカードインターフェース103と同様に、メモリカード200とPC100との通信を可能とする取り決めを規定し、各種のコマンドの組を備え、ハードウエア上の構成(ピンの配置、数等)も含んでいる。また、メモリカードインターフェース201aは、レジスタ201fを備えている。
上記MPU201bは、メモリカード200全体の動作を総括的に制御している。すなわち、MPU201bは、例えば、メモリカード200が電力供給を受けた際に、ROM201c内に格納されているファームウエア(制御プログラム)をRAM201d上に読み出して処理を実行する。
また、上記MPU201bは、制御プログラムに基づいて、後述する各種のテーブルをRAM201d上で作成したり、PC100から書き込みコマンド、読み出しコマンド、消去コマンド等を受けて、メモリ202に対する所定の処理を実行したりしている。
さらに、上記ROM201cは、前述したように、MPU201bが実行する制御プロ
グラム等を格納している。
また、上記RAM201dは、MPU201bに作業エリアを提供しており、制御プログラムや各種のテーブルを記録している。このようなテーブルとしては、PC100のファイルシステム102によってデータに割り当てられた論理アドレスと、その論理アドレスを有するデータを実際に記録しているページの物理アドレスとを対応させた変換テーブル(論物テーブル)が含まれる。
さらに、RAM201dは、PC100がメモリ202にデータを書き込み/読み出しをする際には、この一部が一時記憶領域であるキャッシュ201eとして使用される。例えば、PC100がメモリ202にデータを書き込もうとするとき、コントローラ201は書き込み対象のデータを一度RAM201内のキャッシュ201eに記憶し、キャッシュ領域に記憶したデータをメモリ202に書き込む。また、例えば、PC100がメモリ202にデータを読み出そうとするとき、コントローラ201は読み出し対象のデータを一度RAM201内のキャッシュ領域に記憶し、キャッシュ201eに記憶したデータをPC100に送信する。
キャッシュ201eはRAM201dの中に4MB(メガバイト)分確保されている。キャッシュ201eの容量がメモリ202からコントローラ201がデータを一度に書き込み/読み出しをすることの可能な最大のデータ量となるため、本実施形態においては、コントローラ201はメモリ202に対して、一度に最大4MBのデータの書き込み/読み出し処理を実行することができる。
本実施形態では、データの書き込み/読み出しを実行する際に使用する一時記憶領域をRAM201d内の所定の領域であるキャッシュ201eとして例示しているがこれに限定されず、このデータ書き込み/読み出し用のキャッシュはRAM201dとは別に設けられているものとしてもよい。
上記NANDインターフェース201eは、コントローラ201とメモリ202との間のインターフェース処理を行なっている。
ここで、上記メモリ202内の記録領域は、保存されるデータの種類に対応して複数の領域に区分けされている。この複数の領域としては、システムデータ領域202a、機密データ領域202b、ユーザデータ領域202cが含まれる。
このうち、システムデータ領域202aは、コントローラ201が、その動作に必要なデータを保存するためにメモリ202内に確保しておく領域である。すなわち、このシステムデータ領域202aは、主にメモリカード200に関する管理情報を格納しており、メモリカード200のセキュリティ情報やメディアID(identification)等のカード情報を格納している。
また、機密データ領域202bは、暗号化に用いる鍵情報や認証時に使用する機密データ等を保存しておく領域である。この機密データ領域202bについては、PC100はアクセスできないようになされている。
さらに、ユーザデータ領域202cは、PC100が自由にアクセスして使用することが可能な領域である。このユーザデータ領域202cには、例えばAV(Audio Visual)コンテンツファイルや映像データ等のユーザデータが格納される。以下の説明では、メモリ202の記録領域と言えば、このユーザデータ領域202cを指すものとする。
なお、上記したコントローラ201は、ユーザデータ領域202cの一部を確保しており、自己の動作に必要な制御データ(論物テーブル)を保存させている。このユーザデータ領域202cは、PC100から別のボリュームとして論理フォーマットされ、ファイル管理されている。
次に、上記メモリ202の論理フォーマットについて説明する。メモリ202は、以下の形式で論理フォーマット化される。このメモリ202の論理フォーマット化は、上記PC100内のファイルシステム102によって行われる。
ここで、上記ファイルシステム102によるメモリ201の論理フォーマット化の説明に先立ち、このファイルシステム102が基礎としているFATファイルシステムの概要について、図2及び図3を用いて説明しておくことにする。
図2は、FATファイルシステムにより論理フォーマット化された、メモリ202のメモリ空間30を示している。このメモリ空間30には、以下に示す管理データが書き込まれている。なお、ここでいうメモリ空間30は、FATファイルシステムが自由にアクセスできるメモリ領域であり、図1のメモリ202においては、ユーザデータ領域202cに対応するものである。
図2に示すように、FATファイルシステムは、管理対象となるメモリ空間30を所定の大きさ(例えば16kバイト)のクラスタに分割して管理している。このメモリ空間30には、その最下位から所定のクラスタ番号で示される範囲までの領域に、管理データが割り当てられている。以下、管理データを記録する領域を、管理データブロック31と称する。
なお、管理データブロック31より高位のクラスタ番号で示される領域は、ファイルを構成する複数のファイルデータを書き込むためのデータ記録領域となっている。以下、このデータ記録領域をファイルデータブロック32と称する。
そして、上記管理データブロック31は、パーティションテーブルに割り当てられるパーティションテーブル領域33、ブートセクタに割り当てられるブートセクタ領域34、FAT1に割り当てられるFAT1領域35、FAT2に割り当てられるFAT2領域36、ルートディレクトリエントリに割り当てられるルートディレクトリエントリ領域37に分けられている。
このうち、パーティションテーブル領域33は、各パーティションのファイルシステムタイプやその先頭セクタ等の情報を格納している。また、ブートセクタ領域34は、パーティションテーブルが示す先頭セクタに位置し、BPB[BIOS(Basic Input/Output System)Parameter Block]を格納している。
このBPBは、ファイルシステムが使用する、メモリ202の様々なパラメータを示している。FATファイルシステムでは、メモリ202を論理フォーマット化するとき、このパラメータを書き込んでいる。また、FATファイルシステムは、起動時にBPBを読み込むことにより、ファイルフォーマットのパラメータを認識する。
さらに、FAT1領域35は、メモリに書き込まれ、クラスタの大きさに分割されたファイルデータの一部(以下、単にファイルデータと称する)がどのクラスタに記録されているかを示す情報や、ファイルデータを復元するためのクラスタのつながりを示す情報を格納している。また、FAT2領域36は、FAT1のバックアップ領域であり、FAT1領域35と同じ内容を格納している。
1つのファイルを構成する各ファイルデータは、連続するクラスタに割り当てられることが好ましいので、FATファイルシステムでは、空いているクラスタを、クラスタ番号の順にしたがってファイルデータに割り当てている。そして、FAT1及びFAT2は、ファイルデータを格納しているクラスタの接続関係を示す情報を格納している。これにより、FAT1及びFAT2(以下、単にFATと記載する)に格納されている情報に基づいてクラスタからデータを読み出すことによって、元のファイルが復元される。
また、ルートディレクトリエントリ領域37は、ルートディレクトリに属する各ファイルのファイルエントリを記録している。このファイルエントリには、ファイル名またはフォルダ名、ファイルサイズ、属性及びファイルの更新日時情報、どのクラスタがファイルの先頭クラスタであるかを示すフラグ等が含まれる。なお、FATフォーマット形式のバージョン[例えば、FAT16、FAT32、ex(extended)FAT等]によっては、ルートディレクトリエントリをFATの後の任意のアドレスに置くことができる。
あるファイルが、ルートディレクトリに属するサブディレクトリに属する場合、ルートディレクトリエントリ領域37には、ルートディレクトリに属するサブディレクトリのエントリ(サブディレクトリエントリ)に割り当てられているクラスタの番号が記載されている。
そして、サブディレクトリエントリは、自己に属する各ファイルのファイルエントリを保持している。このサブディレクトリエントリは、図2に示すように、FATファイルシステムによって、ファイルデータブロック32内の任意のクラスタ38に書き込まれる。このサブディレクトリエントリも管理データに属しており、頻繁に書き換えられることが多いものである。
図3は、FAT及びファイルエントリの一例を示している。図3に示すように、ルートディレクトリエントリは、ファイルエントリとして各ファイル「FILE1.TXT」、「FILE2.TXT」、「FAILE3.TXT」の先頭のクラスタの位置情報を格納している。「FILE1.TXT」、「FILE2.TXT」、「FILE3.TXT」の先頭クラスタは、それぞれクラスタ番号が0002、0005、0007である。
FATには、各クラスタの次に接続されるべきクラスタの番号が記載されている。例えば、「FILE1.TXT」の場合、先頭のクラスタ(クラスタ番号0002)のデータに続くデータを格納するクラスタはクラスタ番号が0003で、そのクラスタ(クラスタ番号0003)のデータに続くデータを格納するクラスタはクラスタ番号が0004であることが分かる。
そして、各クラスタ(クラスタ番号0002、0003、0004)のデータを接続することにより、「FILE1.TXT」のファイルが復元される。なお、ファイルデータの最後の部分を格納するクラスタには、「FFFF」が書き込まれている。
次に、図4を用いて、FATファイルシステムを基礎とする上記ファイルシステム102について説明する。このファイルシステム102は、以下に示すようにメモリ202を論理フォーマット化している。つまり、ファイルシステム102によって、メモリ202は論理フォーマット化されている。
図4は、このファイルシステム102によって論理フォーマット化された、メモリ202のメモリ空間50を示している。図4に示すメモリ空間50は、フォーマット対象であるメモリ202の記録領域のうち、ファイルシステム102が使用可能なユーザデータ領域202cに対応している。
図4に示すように、ファイルシステム102は、それがファイルデータを管理するために用いる管理データを割り当てる記録領域を、ユーザデータ領域202cの最下位から所定のクラスタ番号(または論理アドレス)で示される範囲までの領域に限定している。すなわち、管理データは、この所定の範囲内のクラスタ番号(または論理アドレス)の記録領域に割り当てられ記録される。
ここで、管理データとしては、FATファイルシステムで用いられるものと同じ、パーティションテーブル、ブートセクタ、FAT1、FAT2、ルートディレクトリエントリ、サブディレクトリエントリが含まれている。
そして、管理データを格納するブロック(管理データブロック51)には、パーティションテーブルに割り当てられるパーティションテーブル領域53、ブートセクタに割り当てられるブートセクタ領域54、FAT1に割り当てられるFAT1領域55、FAT2に割り当てられるFAT2領域56、ルートディレクトリエントリに割り当てられるルートディレクトリエントリ領域57、サブディレクトリエントリに割り当てられるサブディレクトリエントリ領域58が含まれる。これらのパーティションテーブル領域53乃至サブディレクトリエントリ領域58が格納するデータは、前述したFATファイルシステムにおいて定義されているものと同じである。
メモリ空間50の、管理データブロック51を除く部分は、ファイルデータの書き込み専用のファイルデータブロック52である。管理データブロック51の容量は、メモリ空間50の大きさと、確保されることが求められるファイルデータブロック52の大きさとを考慮して決定される。
例えば、パーティションテーブル領域53の容量は121.5kバイト、ブートセクタ領域54の容量は0.5kバイト、FAT1領域55の容量は123kバイト、FAT2領域56の容量は123kバイト、ルートディレクトリエントリ領域57の容量は16kバイト、サブディレクトリエントリ領域58の容量は64kバイトである。
なお、ファイルシステム102は、FATファイルシステム(FAT16,32、exFAT等の違いを問わない)を基礎としている。さらに、FATファイルシステムに限らず、FATの拡張を含む類似のファイルシステムを利用することもできる。例えば、管理データを用いてファイルデータを管理し、管理データが頻繁に書き換えられるようなファイルシステムが該当する。
上記メモリカード200は、ファイルシステム102によって論理フォーマット化されている。したがって、メモリ202は、図4に示したように論理フォーマット化されていることになる。
次に、図5を用いて、図4のように論理フォーマット化されているメモリ202へのデータの書き込み/読み出し処理について説明する。
まず、PC100が起動されると(ステップS601)、ファイルシステム102は、メモリカードインターフェース103にメモリカード200が接続されるのを待つ待機状態(ステップS602:No)となる。
そして、メモリカードインターフェース103にメモリカード200が接続されると(ステップS602:Yes)、ファイルシステム102は、メモリ202のユーザデータ領域202cにアクセスし、ユーザデータ領域202c内のパーティションテーブル領域53からパーティションテーブルの読み込みを実行する(ステップS603)。
次に、ファイルシステム102は、読み込んだパーティションテーブルから、ユーザデータ領域202c内の領域のうちFAT1及びFAT2が書き込まれたFAT1領域55及びFAT2領域56のクラスタ番号(または論理アドレス)を特定するとともに(ステップS604)、当該読み込んだパーティションテーブルが示す先頭セクタに位置するブートセクタ領域54の解析処理を実行する(ステップS605)。
具体的には、ファイルシステム102は、ブートセクタ領域54の解析処理を実行することにより、ユーザデータ領域202c内の領域のうち、ファイルデータブロック52のクラスタ番号やサイズ、ルートディレクトリやサブディレクトリが書き込まれたルートディレクトリエントリ領域57及びサブディレクトリエントリ領域58のクラスタ番号やサイズ等、メモリ202の様々なパラメータを示すBPBの読み込みを実行する。
さらに、ファイルシステム102は、ブートセクタ領域54の解析処理により読み込んだクラスタ番号やサイズが示すように、ファイルデータブロック52を複数の管理領域に分割するとともに、各管理領域の最下位(または最上位)のクラスタのクラスタ番号を分割情報として記録する(ステップS606)。
また、ファイルシステム102は、ファイルデータブロック52を、ファイルデータの書き込みを高速化することができるサイズ(例えば512kバイト)で割り切れるサイズの管理領域1〜4に分割し、残りの領域は雑多な領域として確保するものとする。
その後、ファイルシステム102は、メモリカードインターフェース103からメモリカード200が取り外されたか否かを監視するとともに(ステップS607)、ソフトウエア(アプリケーション)101からのファイルデータの書き込み要求、およびファイルデータの読み出し要求を待つ待機状態(ステップS608、ステップS611)となる。
メモリカードインターフェース103からメモリカード200が取り外されず(ステップS607:No)、ソフトウエア101からのファイルデータの書き込み要求が有った場合(ステップS608:Yes)、ファイルシステム102は、書き込み要求が有ったファイルデータを書き込むクラスタの割り当てを行ない、割り当てたクラスタにまとめられた論理ブロックの論理アドレス及び書き込み要求が有ったファイルデータを、コントローラ201に出力する(ステップS609)。
コントローラ201はファイルシステム102より出力されたファイルデータが入力されると、RAM201d内のキャッシュ201eにファイルデータを一時的に格納し、メモリ202にこのファイルデータの書き込みを行う(ステップS610)。
ステップS608において、ソフトウエア101からのファイルデータの書き込み要求がなく(ステップS608:No)、ファイルデータの読み出し要求があった場合(ステップS611:Yes)、ファイルシステム102は、読み出し要求が有ったファイルデータの書き込まれている論理アドレスを特定し(ステップS612)、コントローラ201に当該ファイルデータの読み出し要求を出力する。
コントローラ201はファイルシステム102よりファイルデータの読み出し要求が入力されると、メモリ202からキャッシュ201eにこのファイルデータを読み出し、キャッシュ201eに読み出したデータをPC100に対して出力する(ステップS613)。
ステップS610終了後、ステップS611において読み出し要求がない場合(ステップS611:No)、またはステップS613の終了後、処理はステップS607に戻る。
ステップS607において、メモリカードインターフェース103からメモリカード200が取り外された場合(ステップS607:Yes)、ファイルシステム102は、記録している分割情報をクリア(ステップS614)し、一連の処理は終了となる。
ファイルシステム102はメモリカード200のメモリ202へのデータ書き込み/読み出し処理を制御する。次に、メモリ202へのデータの書き込み/読み出し処理について、さらに詳細に説明を行う。
上述のとおり、メモリ202から一度にデータの書き込み/読み出しを行えるデータ量はキャッシュ201eの容量に依存する。また、コントローラ201はメモリ202を先頭のアドレスからキャッシュのサイズ毎に管理する。つまり、本実施形態ではデータの書き込み/読み出しを実行するとき、コントローラ201が書き込み/読み出しを行う先頭のアドレスは4M(メガ)の整数倍のアドレスとなる。メモリ202に格納されているデータが4Mの整数倍のアドレスをまたぐような場合には、コントローラ201はこのデータの読み出しを複数回行うこととなる。
つまり、メモリ202の先頭アドレスから4Mの整数倍のアドレスを先頭として書き込まれたデータは、この4Mの整数倍の1つ手前のアドレスと、4Mの整数倍のアドレスとをまたいで存在する可能性が最も低くなる。さらに、データがどのようなサイズであっても、4Mの整数倍の1つ手前のアドレスと、4Mの整数倍のアドレスとをまたいでいる回数は最小となる。よって、4Mの整数倍のアドレスを先頭として書き込まれるデータは、異なるアドレスを先頭として書き込まれているデータと比較して、読み出し回数がもっとも少なくなる。以下ではデータが、メモリ202の先頭アドレスから4Mの整数倍のアドレスに書き込まれることを、データがアラインされて書き込まれると呼び、また書き込まれたデータをアラインされたデータと呼ぶ。さらに、このメモリ202の先頭アドレスから4Mの整数倍のアドレスのことを、データをアラインできるアドレスと呼ぶ。
データが、メモリ202のデータをアラインできるアドレスとその1つ手前のアドレスとにまたがって存在している場合には、書き込み/読み出し処理速度が低下し、さらにこれを繰り返すと性能の劣化が起こってしまう。この理由について以下にて説明を行う。
図6は本実施形態におけるアラインされていないデータを読み出す際の読み出し処理の一例を示す概念図である。図6には、メモリ202に格納されており、アラインされておらず、データをアラインできるアドレスとその1つ手前のアドレスをまたいでいるデータ71を読み出す場合の読み出し処理の流れが概念的に示されている。
データ71は、前半のデータであるデータ71aがデータをアラインできるアドレスより前のアドレスに、後半のデータであるデータ71bがデータをアラインできるアドレス以降のアドレスに格納されている。
ファイルシステム102がデータ71を読み出すとき、上述のようにコントローラ201はデータ71を一度に読み出さない。つまり、コントローラ201はまずデータをアラインできるアドレスより前に位置するデータ71aを読み出してキャッシュ201eに格納する。
次にコントローラ201はキャッシュ201eに格納したデータ71aをPC100に対して出力する。コントローラ201よりこの出力を受けたファイルシステム102はワークメモリ104にデータ71aを格納する。
コントローラ201は、次に、データをアラインできるアドレス以降に位置するデータ71bを読み出してキャッシュ201eに格納する。コントローラ201はキャッシュ201eに格納したデータ71bをPC100に対して出力し、ファイルシステム101はデータ71aとデータ71bとが連続となるようにワークメモリ104に格納する。
以上の処理によってファイルシステム102はデータ71をメモリ202より読み出し、ワークメモリ104に格納することが出来る。
データをメモリ202より読み出すとき、データをアラインできるアドレスとその1つ手前のアドレスとにまたがって存在する場合には、コントローラ201はデータを一度に読み出すことが出来ず、上記のようにメモリ202からの読み出し処理を2度行うこととなる。
次にメモリ202に格納されて、アラインされており、データをアラインできるアドレスとその1つ手前のアドレスとにまたがって存在していないデータ81を読み出す場合の読み出し処理について説明する。
図7は本実施形態におけるアラインされているデータを読み出す際の読み出し処理の一例を示す概念図である。
データ81はアラインされているデータであり、次のデータをアラインできるアドレスとその1つ手前のアドレスとにまたがないサイズのデータである。
ファイルシステム102がデータ81を読み出すとき、コントローラ201は、ファイルシステム102からの要求に基づいて、データ81を読み出す。このときデータ81はデータをアラインできるアドレスとその1つ手前のアドレスとをまたいでいないため、コントローラ201はデータ81を一度の読み出しで読み出すことが出来る。コントローラ201は読み出したデータ81を一度、キャッシュ201eに格納する。
次にコントローラ201はデータ81をPC100に対して出力し、コントローラ201よりこの出力を受けたファイルシステム102はワークメモリ104にデータ81を格納する。
以上の処理によってファイルシステム102はデータ81をメモリ202より読み出し、ワークメモリ104に格納することが出来る。このように読み出し対象のデータが、データをアラインできるアドレスとその1つ手前のアドレスとをまたがない場合には、コントローラ201はデータを1度に読み出すことが可能である。つまり、データをアラインできるアドレスとその1つ手前のアドレスとをまたがないデータを読み出す場合には、またいでいるデータを読み出す場合より、読み出し処理が減少し、ファイルシステム102はメモリ202から高速にデータを読み出すことが可能となる。
次に、データの書き込み処理について説明する。
図8は本実施形態におけるデータをアラインせずにメモリ202に書き込む際の書き込み処理の一例を示す概念図である。図8には、メモリ202にアラインされておらず、データをアラインできるアドレスとその1つ手前のアドレスとをまたぐようにデータ91を書き込む場合の書き込み処理の流れが概念的に示されている。
メモリ202内のデータをアラインできるアドレスとその1つ手前のアドレスとをまたぐようにデータ91を書き込む場合、ファイルシステム102はワークメモリ104のデータ91を分割し、分割したデータ91a及びデータ91bをコントローラ201にそれぞれ出力する。
ファイルシステム102からメモリ202へのデータの書き込み要求を受けたコントローラ201は、メモリ202の書き込み対象となっている領域のデータを、キャッシュ201eへとデータを読み出す。ここではメモリ202の書き込み対象となっている領域にはデータをアラインできるアドレスとその1つ手前のアドレスとの境界が存在するため、データを2度に分けて読み出すこととなる。
次に、キャッシュ201eに読み出したデータに、ファイルシステム102からの出力を受けたデータ91a及びデータ91bを更新し、データ91a及びデータ91bが更新されたデータをメモリ202にそれぞれ書き込む。
以上の処理によってワークメモリ104上のデータをメモリ202に書き込むことが出来る。このようにデータをアラインできるアドレスとその1つ手前のアドレスとをまたいでデータを書き込む場合、コントローラ201はデータを一度に読み出し/書き込みすることが出来ず、メモリ202への読み出し/書き込み処理をそれぞれ2度行うこととなる。
次に、データ1001をアラインさせてメモリ202に書き込む場合のデータ書き込み処理について説明を行う。
図9は本実施形態におけるアラインさせてデータを書き込む際の書き込み処理の一例を示す概念図である。
ここではファイルシステム102は、メモリ202の先頭のアドレスから4Mの整数倍となる所定のアドレス(データをアラインできるアドレス)に、ワークメモリ104上のデータ1001をメモリ202に対して書き込む。ここでは簡単のため、データ1001は、先頭のアドレスから4Mの整数倍となる次のアドレスまでの長さを持たないデータであるものとする。
まず、ファイルシステム102はデータの書き込み要求及び書き込み先のアドレス情報をコントローラに出力する。データの書き込み要求を受けたコントローラ201はメモリ202の書き込み対象となっているアドレス(先頭のアドレスから4Mの整数倍となる所定のアドレス)から、キャッシュ201eへとデータを読み出す。
次にファイルシステム102はワークメモリ104のデータ1001をコントローラ201に出力する。出力を受けたコントローラ201はキャッシュ201eに読み出したデータに、ファイルシステム102からの出力を受けたデータ1001を更新し、更新されたデータをメモリ202上の4Mの整数倍となる所定のアドレスに書き込む。
以上の処理によってファイルシステム102はメモリ202に対して、データをアラインさせて書き込むこととなる。このようにデータをアラインできるアドレスとその1つ手前のアドレスとをまたがないようにデータを書き込む場合には、コントローラ201は1度で読み出し/書き込み処理を行うことができる。
つまり、メモリ202にデータをアラインさせて書き込む場合には、データがバイト境界をまたぐ回数が最小となるため、データの書き込み処理を想定しうる最短の時間で実行することが出来る。また、アラインされたデータをメモリ202より読み出す場合にも、読み出し回数が他の場合と比較して最小になるため、データの読み出し処理を想定しうる最短の時間で実行することが出来る。
上記を考慮した上で本実施形態におけるデータの書き込み処理について説明する。
図10は本実施形態におけるデータ書き込み処理が行われたメモリ202の状態を示す概念図である。図10には、データ111乃至データ115がメモリ202に書き込まれた(格納されている)状態が概念的に示されている。
データ111及びデータ113はデータサイズの膨らむ可能性が高い(拡張性が高い)第1のデータであり、データ112、データ114及びデータ115はデータサイズが膨らむ可能性が低い(拡張性が低い)第2のデータである。
ここでの、データサイズが膨らむ可能性が高い(拡張性が高い)第1のデータとは、例えばファイル内容情報のような実質的なデータを指し、また、データサイズが膨らむ可能が低い(拡張性が低い)第2のデータとは、例えばファイル・ディレクトリ情報のようなメタデータ等を指す。
本実施形態ではデータをメモリ202に書き込む際に、データサイズが膨らむ可能性が高い(拡張性が高い)第1のデータをアラインされるように優先的に書き込む。また、データサイズが膨らむ可能が低い(拡張性が低い)第2のデータはアラインされないように書き込み、先頭のアドレスから4Mの整数倍となるアドレス(データをアラインできるアドレス)を第1のデータのために温存する。
これにより、性能が重要となるデータサイズの大きなデータ(拡張性が高いデータ:第1のデータ)の書き込み/読み出し処理の速度が向上し、メモリ202は理想的な記録状態となる。
次に本実施形態における特徴的な書き込み処理の流れを説明する。
図11は、本実施形態における特徴的な書き込み処理の一例を示すフロー図である。
まず、ファイルシステム102はソフトウエア101からの書き込み処理の命令を待機する(ステップS121:No)。
ソフトウエア101からデータの書き込み命令を受けると(ステップS121:Yes)、ファイルシステム102は判別手段として、書き込み対象のデータがデータサイズの膨らむ可能が低い(拡張性が低い)第2のデータであるか否かを判別する(ステップS122)。
書き込み対象のデータがデータサイズの膨らむ可能が低い(拡張性が低い)第2のデータあると判別したとき(ステップS122:Yes)、ファイルシステム102は割り当て手段として、そのデータにアラインメントできるアドレスを割り当てずに(アラインせずに)、メモリ202に対して書き込む(ステップS123)。つまり、メモリ202の先頭のアドレスから4Mの整数倍となるアドレスを先頭とせずに書き込む。
ステップS122において、書き込み対象のデータがデータサイズの膨らむ可能が低い(拡張性が低い)第2のデータでないと判別したとき(ステップS122:Yes)、ファイルシステムはこのデータは第1のデータであると判別し、割り当て手段として、このデータにアラインメントできるアドレスを割り当てて(アラインして)、メモリ202に対して書き込む(ステップS124)。つまり、メモリ202の先頭のアドレスから4Mの整数倍となるアドレスを先頭として書き込む。
ステップS123及びステップS124の終了後、一連の処理フローは終了となる。
本実施形態においては、メモリカード200のメモリ202に、データサイズが膨らむ可能性が高い(拡張性が高い)第1のデータを優先的にアラインして書き込む(アラインできるアドレスを割り当てる)ため、メモリカード200の挿抜があった後でも、データ読み出し速度が速いという効果は保たれたままとなる。また、PC100とは異なる機器からメモリカード200内のデータを読み出す場合にもこれと同様である。
図12は実施形態におけるPCの基本構成の一例を示すブロック構成図である。このPC100は、その主要部であって各部を集中的に制御するCPU1201を備えている。このCPU1201には、BIOS等を記録した読み出し専用メモリであるROM等の不揮発性メモリ1205と、各種データを書き替え可能に記録するRAM等のワークメモリ104とが、バス1206で接続されている。
また、バス1206には、記録領域割り当てプログラム等の各種のプログラムを格納するハードディスク1204と、外付けのハードディスク1207をPC100に接続するためのUSB(universal serial bus)コネクタや、SDカード等のメモリカード200が挿入されるメモリカードインターフェース103等を備えたI/F1203とが、図示しないI/Oを介して接続されている。
上記不揮発性メモリ1205には、OS(operating system)や各種のプログラムが記録されている。CPU1201は、不揮発性メモリ1205に記録されているプログラムを読み出し、ハードディスク1204にインストールする。
なお、ファイルを記録する情報記録媒体としては、メモリカード200のみに限らず、例えば、DVD(digital versatile disk)等の各種の光ディスク、各種光磁気ディスク、フレキシブルディスク等の各種磁気ディスク、半導体メモリ等の各種方式のメディアを用いることができる。
また、図示しない通信制御装置を介してインターネット等のネットワークからプログラムをダウンロードし、ハードディスク1204にインストールするようにしても良いものである。この場合に、送信側のサーバでプログラムを記録している記録装置に対しても、この発明を適用することが可能となる。
なお、プログラムは、所定のOS上で動作するものであっても良いし、その場合に各種処理の一部をOSに肩代わりさせるものであっても良いし、所定のアプリケーションソフトやOS等を構成する群のプログラムファイルの部として含まれているものであっても良いものである。
このシステム全体の動作を制御するCPU1201は、このシステムの主記録装置として使用されるハードディスク1204上にロードされたプログラムに基づいて各種処理を実行する。
PC100で実行されるプログラムは、上述した各部(ソフトウエア101、ファイルシステム102、メモリカードインターフェース103)を含むモジュール構成となっている。実際のハードウエアとしては、CPU1201(プロセッサ)が上記記録媒体からプログラムを読み出して実行することにより、上記各部が主記録装置上にロードされ、ソフトウエア101、ファイルシステム102、メモリカードインターフェース103が主記録装置上に生成されるようになっている。
本実施形態におけるPC100は、メモリカード200にデータを書き込む場合、データの拡張性を判別し、この拡張性に基づいてデータをアラインして書き込むか、アラインせずに書き込むかを決定するため、メモリ202内の領域を有効に利用することができ、拡張性の高いデータの書き込み/読み出し処理の速度を向上させることが出来る。換言すれば、データをアラインできる貴重なアドレスを拡張性の高いデータに優先的に割り当てることによって、メモリ202内の領域を有効に利用可能である。また、これによってメモリ202全体としてのデータの書き込み/読み出し処理の回数も減少し、メモリカード200の長寿寿命化にも資する。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具現化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
100…PC、101…ソフトウエア、102…ファイルシステム、103…メモリカードインターフェース、104…ワークメモリ200…メモリカード、201…コントローラ、201a…メモリカードインターフェース、201b…MPU、201c…ROM、201d…RAM、201e…NANDインターフェース、201f…レジスタ、202…メモリ、202a…システムデータ領域、202b…機密データ領域、202c…ユーザデータ領域、1201…CPU、1203…I/F、1204…ハードディスク、1205…不揮発性メモリ、1206…バス、1207…ハードディスク。

Claims (3)

  1. 情報記憶媒体の記憶領域に書き込まれる対象の書込データが、FATファイルシステムにおけるディレクトリ情報である場合に拡張性の低いデータであると判別し、前記ディレクトリ情報でない場合に拡張性の高いデータであると判別する判別手段と、
    前記書込データが前記拡張性の高いデータであると判別された場合には、前記記憶領域内への書き込み処理のキャッシュのサイズに依存する、データをアラインできるアドレスを、前記書込データの書き込み先のアドレスとして、前記拡張性の低いデータであると判別される場合よりも、優先して割り当てる割り当て手段と、
    を具備する情報処理装置。
  2. 前記割り当て手段は、前記書込データが前記拡張性の低いデータであると判別された場合には、前記書込データの書き込み先のアドレスとして、データをアラインできないアドレスを優先的に割り当てる、
    請求項1記載の情報処理装置。
  3. 情報記憶媒体の記憶領域に書き込まれる対象の書込データが、FATファイルシステムにおけるディレクトリ情報である場合に拡張性の低いデータであると判別し、前記ディレクトリ情報でない場合に拡張性の高いデータであると判別するステップと、
    前記書込データが前記拡張性の高いデータであると判別された場合には、前記記憶領域内への書き込み処理のキャッシュのサイズに依存する、データをアラインできるアドレスを、前記書込データの書き込み先のアドレスとして、前記拡張性の低いデータであると判別される場合よりも、優先して割り当てるステップと、
    を有する情報処理方法。
JP2010212571A 2010-09-22 2010-09-22 情報処理装置、及び情報処理方法 Expired - Fee Related JP4881469B1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010212571A JP4881469B1 (ja) 2010-09-22 2010-09-22 情報処理装置、及び情報処理方法
US13/099,811 US20120072473A1 (en) 2010-09-22 2011-05-03 Information Processing Apparatus and Information Processing Method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010212571A JP4881469B1 (ja) 2010-09-22 2010-09-22 情報処理装置、及び情報処理方法

Publications (2)

Publication Number Publication Date
JP4881469B1 true JP4881469B1 (ja) 2012-02-22
JP2012068853A JP2012068853A (ja) 2012-04-05

Family

ID=45818682

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010212571A Expired - Fee Related JP4881469B1 (ja) 2010-09-22 2010-09-22 情報処理装置、及び情報処理方法

Country Status (2)

Country Link
US (1) US20120072473A1 (ja)
JP (1) JP4881469B1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007293917A (ja) * 1997-08-08 2007-11-08 Toshiba Corp メモリシステムの制御方法
JP2008181381A (ja) * 2007-01-25 2008-08-07 Toshiba Corp 半導体メモリカード、半導体メモリカードのデータ管理方法、データベースエンジン、及び半導体メモリシステム
WO2009107393A1 (ja) * 2008-02-29 2009-09-03 パナソニック株式会社 アクセス装置、情報記録装置、コントローラ、及び情報記録システム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5832525A (en) * 1996-06-24 1998-11-03 Sun Microsystems, Inc. Disk fragmentation reduction using file allocation tables
US6768993B2 (en) * 2001-06-28 2004-07-27 International Business Machines Corporation System and method for file system cooperation in a multi-threaded environment
US7916421B1 (en) * 2005-05-05 2011-03-29 Seagate Technology Llc Methods and structure for recovery of write fault errors in a dynamically mapped mass storage device
US20070083482A1 (en) * 2005-10-08 2007-04-12 Unmesh Rathi Multiple quality of service file system
US8219785B1 (en) * 2006-09-25 2012-07-10 Altera Corporation Adapter allowing unaligned access to memory
WO2009122743A1 (ja) * 2008-04-04 2009-10-08 パナソニック株式会社 アクセス装置、情報記録装置、情報記録システム、ファイル管理方法、およびプログラム
US8171253B2 (en) * 2009-10-30 2012-05-01 Brocade Communications Systems, Inc. Virtual disk mapping

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007293917A (ja) * 1997-08-08 2007-11-08 Toshiba Corp メモリシステムの制御方法
JP2008181381A (ja) * 2007-01-25 2008-08-07 Toshiba Corp 半導体メモリカード、半導体メモリカードのデータ管理方法、データベースエンジン、及び半導体メモリシステム
WO2009107393A1 (ja) * 2008-02-29 2009-09-03 パナソニック株式会社 アクセス装置、情報記録装置、コントローラ、及び情報記録システム

Also Published As

Publication number Publication date
US20120072473A1 (en) 2012-03-22
JP2012068853A (ja) 2012-04-05

Similar Documents

Publication Publication Date Title
US11636032B2 (en) Memory system, data storage device, user device and data management method thereof
JP4991320B2 (ja) ホスト装置およびメモリシステム
US10055147B2 (en) Systems and methods for a mass data storage system having a file-based interface to a host and a non-file-based interface to secondary storage
US7472251B2 (en) Data storage apparatus detachably mounted to a host apparatus
US7039754B2 (en) Detachably mounted removable data storage device
US8307172B2 (en) Memory system including memory controller and separately formatted nonvolatile memory to avoid “copy-involving write” during updating file data in the memory
TWI420305B (zh) 記憶體儲存裝置、其記憶體控制器與自動產生填充檔案的方法
US20140059273A1 (en) Host apparatus and memory device
US8977802B2 (en) Access device, information recording device, controller, real time information recording system, access method, and program
JP2010026933A (ja) メモリシステム、ホスト装置
WO2005050453A1 (ja) ファイル記録装置
JPWO2005103903A1 (ja) 不揮発性記憶システム
US20100005226A1 (en) Nonvolatile memory device, access device, and nonvolatile memory system
JP4714291B2 (ja) 情報記録装置、情報記録方法及び情報記録用プログラム
JP4663577B2 (ja) データ記憶装置およびこの初期化方法
JP4599450B2 (ja) 電子機器、ファイルシステムの記憶領域割当法、および記憶領域割当プログラム
JP4881469B1 (ja) 情報処理装置、及び情報処理方法
JP5161989B2 (ja) 情報記録装置、情報記録方法及び情報記録用プログラム
JP2009205590A (ja) アクセスモジュール、情報記録モジュール、コントローラ、及び情報記録システム
KR101667760B1 (ko) 파일 할당 테이블 파일 시스템 및 파일 저장 방법
JP2011113129A (ja) 情報記録装置及び情報記録方法

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111108

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111202

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141209

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees