JP2009266026A - データ処理装置、記憶装置、及びコンピュータプログラム - Google Patents

データ処理装置、記憶装置、及びコンピュータプログラム Download PDF

Info

Publication number
JP2009266026A
JP2009266026A JP2008116082A JP2008116082A JP2009266026A JP 2009266026 A JP2009266026 A JP 2009266026A JP 2008116082 A JP2008116082 A JP 2008116082A JP 2008116082 A JP2008116082 A JP 2008116082A JP 2009266026 A JP2009266026 A JP 2009266026A
Authority
JP
Japan
Prior art keywords
data
cluster
area
recorded
recording
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.)
Pending
Application number
JP2008116082A
Other languages
English (en)
Inventor
Yoshinori Nakahira
好則 中平
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP2008116082A priority Critical patent/JP2009266026A/ja
Publication of JP2009266026A publication Critical patent/JP2009266026A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】記憶部のデータ領域に空き領域が生じるのが抑制され、記憶部の容量を有効に活用することができ、データを記録させるクラスタの数を抑制することができるデータ処理装置、記憶装置、及びコンピュータプログラムを提供する。
【解決手段】記憶部のファイルシステムは、書き込みデータを管理するシステム領域と、データを格納するデータ領域とに分けられる。データ領域は、クラスタの容量が4KBであり、量が小さいファイルのデータを格納する記録領域1と、クラスタの容量が512KBであり、量が大きいファイルのデータを格納する記録領域2とを有する。システム領域は、記録領域1、及び記録領域2それぞれに対応して、クラスタの使用状況が記録されるFAT1、及びFAT2を有する。ディレクトリエントリには、ファイルのファイル名、属性、サイズ、更新日時、開始のクラスタ番号、及びFATの番号が記録される。
【選択図】図3

Description

本発明は、無駄な空き領域が生じるのが抑制され、容量を有効に活用することができる記憶部を備えるデータ処理装置、記憶装置、及びコンピュータプログラムに関する。
原稿の画像を走査して該画像を複写する複写機能、パーソナルコンピュータ(PC)等の外部の装置から画像データを受信して画像を出力するネットワークプリンタの機能、及びファクシミリ通信を用いて外部のファクシミリ装置との間で画像データを送受信するファクシミリ機能等の複数の機能を一台に備えた種々の画像処理装置が実用化されている。 このような画像処理装置は、処理すべき画像データを一時的に記憶するハードディスクドライブ(以下、HDDという)等の記憶装置を内部に備えている。また、PC又はサーバ装置等の装置も、情報を記憶するためのHDD等の記憶装置を内部に備えている。このような画像処理装置、PC又はサーバ装置等のデータ処理装置は、情報の処理を行うCPU等の制御部を備えており、記憶装置は、該制御部の指示に従って入力された情報を記憶するように構成されている。
図12は、従来のHDD60を示す模式的一部斜視図である。
HDD60は、アルミニウム製、若しくはガラス製のハードディスクに、磁性体を塗布し、又は蒸着してなる複数のプラッタ61,61,…と、先端部に磁気ヘッドが設けられた複数のアーム62,62,…と、アーム62,62,…を駆動させるアクチュエータ63とを備えている。
HDD60においては、プラッタ61をモータ(図示せず)で高速に回転させた状態で、アーム62を駆動させて磁気ヘッドをプラッタ61に近づけ、磁気ヘッドで瞬間的に指定した位置の磁性体を磁化させてデータを記録するように構成されている。
図13は、従来のHDD60のファイルシステムの構造を示す概念図である。
ファイルシステムは、書き込みデータを管理するシステム領域と、実際にデータを格納するデータ領域とに分けられる。
データ領域は、n個のクラスタに分割しており、データはクラスタ単位で記録される。
システム領域は、フォーマット情報部、FAT、及びディレクトリエントリの3つから構成される。
フォーマット情報部には、クラスタ数、クラスタサイズ等が記述される。
FATには、クラスタ単位に分割されたデータ領域の使用状況、すなわち、どのクラスタにどのデータが格納されているかという情報が記述される。例えば、FAT32の場合、2の32乗(=略42億)個のクラスタの管理情報が記録されており、最大容量は2TBである。また、FAT16の場合、2の16乗(=65536)個のクラスタの管理情報が記録されており、最大容量は2GBである。
ディレクトリエントリには、ファイルのファイル名、read only/hidden等の属性、サイズ、更新日時、開始のクラスタ番号(データの先頭位置)が記述される。
図14は、従来のHDD60のファイルシステムの内容例を示す概念図である。
図14(a)はディレクトリエントリの内容例を示し、図14(b)はFATの内容例を示し、図14(c)はデータ領域の内容例を示している。
図14(a)のディレクトリエントリにおいて、番号1,2の領域には、ファイル1(ファイル名「aaa.txt」),ファイル2(ファイル名「bbb.jpg」)の上述した情報が記録されている。
FATは、データ領域の0、1、2…のクラスタの番号に対応させて番号が付された複数の領域を有し、該領域に対応するクラスタの使用状況が記述されている(図14(b))。クラスタが未使用である場合、「0」と記録され、リンクする(データの続きが記録される)クラスタがある場合、そのクラスタの番号が記録され、終端データが記録された最後のクラスタである場合、「FF」と記録される。
データ領域の1クラスタのサイズ(容量)は512KBである。
ファイル1のサイズは4KBであるので、クラスタを1つ使用する。ファイル2のサイズは1MBであるので、クラスタを2つ使用する。
図14(b)及び(c)に示すように、番号0のクラスタにファイル1のデータが記録され、FATの番号0の領域に終端データを意味する「FF」が記録されている。また、ファイル2のデータは、番号1及び2のクラスタに跨って記録され、FATの番号1の領域にリンク先のクラスタの番号2が記録され、番号2の領域に終端データを意味する「FF」が記録されている。
以下に、ファイル1,2のデータの記録処理について詳述する。
ファイル1のデータを保存する場合、HDD60の制御部(図示せず)は、まず、ディレクトリエントリの空き領域を検索して、空き領域の番号1を取得する。
そして、FATの未使用領域を検索して、未使用領域の番号0を取得する。
次に、制御部は、ディレクトリエントリの番号1の領域に、ファイル名、属性、サイズ、更新日時、及び開始クラスタ番号等の情報を書き込む(図14(a)参照)。
そして、データ領域の番号0のクラスタに実際のデータを書き込む(図14(c)参照)。
データのサイズが4KBであり、上述したように1クラスタ内に収まるので、制御部は、FATの番号0の領域に、終端データを意味する「FF」を書き込み(図14(b)参照)、処理を終了する。
ファイル2のデータを保存する場合、制御部は、まず、ディレクトリエントリの空き領域を検索し、空き領域の番号2を取得する。
そして、FATの未使用領域を検索して、未使用領域の番号1を取得する。
次に、制御部は、ディレクトリエントリの番号2の領域に、ファイル名、属性、サイズ、更新日時、及び開始クラスタ番号等の情報を書き込む(図14(a)参照)。
そして、データ領域の番号1のクラスタに実際のデータを書き込む(図14(c)参照)。
データのサイズが1MBであり、1クラスタでは収まらないので、制御部は、FATの未使用領域を再度検索し、未使用のデータ領域の番号2を取得する。
次に、FATの番号1の領域に、リンク先のクラスタの番号である「2」を書き込む(図14(b)参照)。
そして、制御部は、データ領域の番号2のクラスタに実際のデータを書き込む(図14(c)参照)。
全データの書き込みが終了したので、FATの番号2の領域に、終端データを意味する「FF」を書き込む(図14(b)参照)。
また、特許文献1には、所定のクラスタ毎にデータが記録される記憶媒体に対して、各クラスタからのリンク先となるクラスタを特定する情報が登録されたリンク情報を用いてクラスタ毎に電子情報に順次アクセスする際に、電子情報の先頭のデータから所定の間隔毎に各データが記録されているクラスタを特定する情報を登録したインデックスデータベースを用いて電子情報にアクセスすることで、記憶媒体に保存されている電子情報に対する高速アクセスを可能とした電子情報管理システムの発明が開示されている。
特許文献2には、メモリ領域を分割した複数のクラスタを有するHDDと、該クラスタを集合して複数のスーパークラスタを作成し、該スーパークラスタ毎にクラスタの使用済み又はその未使用を示すエントリ値を取得して管理するCPUとを備え、スーパークラスタ毎に取得されたエントリ値を参照してHDDのメモリ領域にビデオデータを記録する情報記録管理装置の発明が開示されている。この情報記録制御部においては、情報書込み時に、未使用クラスタのスーパークラスタを優先して割り付け、使用済みクラスタが多いスーパークラスタの割付けを控えるように、情報書込み領域をスーパークラスタ単位に高速に割り付け処理することで、情報書込み領域を高速に割り付け処理できるようにし、管理用のメモリ容量を低減できるようにしている。
特開2005−321940号公報 特開2003−296156号公報
例えばFAT16、及びFAT32においては、各々データが書込まれるクラスタはFAT16、及びFAT32毎に定められた容量となっているため、容量が小さいデータを記憶させた場合であっても、1つのクラスタが使用され、そのクラスタに他のデータを記憶させることができないので、1つのクラスタに大きな空き領域ができるという問題が生じていた。
上述のHDD60においても、1つのクラスタには1つのデータしか記憶させることができないため、1クラスタのサイズが512KBである場合、1クラスタにファイル1の4KBのデータを記憶させたときには508KBが空き領域となり、他のデータの記憶を記憶させることはできず、ハードディスクの容量を有効に活用することができなかった。
この問題は、上述の特許文献1及び2の装置においても同様に生じていた。
上述の無駄な記憶領域が生じるのを防止するために、1クラスタのサイズを小さくした場合、画像データのように大きいデータを記憶させるときには多数のクラスタに跨って記録されることになり、管理が複雑になる上に、データの記憶速度、及び読み出しの速度が低下するという問題が生じていた。
本発明は、斯かる事情に鑑みてなされたものであり、記憶部にクラスタの容量が異なる複数の記録領域を有し、データの量に対応させて記録領域を選択するように構成することにより、記録領域に空き領域が生じるのが抑制され、記憶部の容量を有効に活用することができるとともに、データを記録させるクラスタの数を抑制することができるので、データの管理が容易になり、データの記憶速度、及び読み出しの速度が良好になるデータ処理装置、記憶装置、及びコンピュータプログラムを提供することを目的とする。
本発明に係るデータ処理装置は、データがファイル毎に記録されるデータ領域、及び該データ領域の使用状況に係る情報が記録されるFAT(ファイルアロケーションテーブル)を有する記憶部と、前記データを処理するデータ処理部とを備えるデータ処理装置において、前記データ領域は、クラスタの容量が異なる複数の記録領域からなり、前記FATは、各記録領域に対応して複数設けられていることを特徴とする。
本発明に係るデータ処理装置は、前記FATには、前記クラスタに対応させて前記情報が記録されるように構成されていることを特徴とする。
本発明に係るデータ処理装置は、データは、該データの量に対応する容量のクラスタを有する記録領域へ記録されるように構成されていることを特徴とする。
本発明に係るデータ処理装置は、前記ファイルは、階層構造のディレクトリにより管理されており、クラスタの容量が小さい記録領域へは、データの管理情報、又は前記ファイルが属するサブディレクトリの情報が記録され、クラスタの容量が大きい記録領域へは、データが記録されるように構成されていることを特徴とする。
本発明に係るデータ処理装置は、前記データは画像データであることを特徴とする。
本発明に係るデータ処理装置は、印刷機能、ファクシミリ機能、及びスキャナ機能のうちの少なくとも2つの機能を有することを特徴とする。
本発明に係る記憶装置は、データがファイル毎に記録されるデータ領域、及び該データ領域の使用状況に係る情報が記録されるFATを有する記憶部と、該記憶部に接続され、前記記憶部に対する情報の入出力を制御する記憶制御部とを備える記憶装置において、前記データ領域は、クラスタの容量が異なる複数の記録領域からなり、前記FATは、各記録領域に対応して複数設けられていることを特徴とする。
本発明に係る記憶装置は、前記記憶制御部は、データを入力する手段と、前記データの量の大小を判定する手段と、該手段により判定した前記量の大小に基づき、FATを選択する手段と、該FATの前記情報に基づき、クラスタを選択する手段と、前記クラスタに前記データを記録する手段と、前記FATに前記クラスタを使用したことを記録する手段とを備えることを特徴とする。
本発明に係る記憶装置は、前記ファイルは、階層構造のディレクトリにより管理されており、前記記憶制御部は、データを入力する手段と、クラスタの容量が小さい記録領域に対応するFATの前記情報に基づき、クラスタを選択する手段と、前記クラスタに、前記ファイルが属するサブディレクトリの情報を記録する手段と、前記FATに、前記クラスタを使用したことを記録する手段と、クラスタの容量が大きい記録領域に対応するFATの前記情報に基づき、クラスタを選択する手段と、前記クラスタに前記データを記録する手段と、前記FATに前記クラスタを使用したことを記録する手段とを備えることを特徴とする。
本発明に係るコンピュータプログラムは、データがファイル毎に記録され、クラスタの容量が異なる複数の記録領域、及び各記録領域の使用状況に係る情報が記録される複数のFATを有する記憶装置が接続され、又は該記憶装置を備えるコンピュータに、前記記憶装置に対する情報の入出力を制御させるコンピュータプログラムであって、コンピュータに、データの量の大小を判定させるステップと、コンピュータに、前記ステップにより判定した前記量の大小に基づき、FATを選択させるステップと、コンピュータに、前記FATの前記情報に基づき、クラスタを選択させるステップとを有することを特徴とする。
本発明に係るコンピュータプログラムは、データがファイル毎に記録され、クラスタの容量が異なる複数の記録領域、及び各記録領域の使用状況に係る情報が記録される複数のFATを有し、前記ファイルは、階層構造のディレクトリにより管理されている記憶装置が接続され、又は該記憶装置を備えるコンピュータに、前記記憶装置に対する情報の入出力を制御させるコンピュータプログラムであって、コンピュータに、クラスタの容量が小さい記録領域に対応するFATの前記情報に基づき、クラスタを選択させるステップと、コンピュータに、前記クラスタに、前記ファイルが属するサブディレクトリの情報を記録させるステップと、コンピュータに、クラスタの容量が大きい記録領域に対応するFATの前記情報に基づき、クラスタを選択させるステップとを有することを特徴とする。
本発明においては、記憶部がクラスタの容量が異なる複数の記録領域を有するので、データの量に対応するクラスタを有する記録領域を選択して、該記録領域のクラスタにデータを記録することができ、記録領域に空き領域が生じるのが良好に抑制される。
そして、画像データのように大きいデータを記憶させる場合には、容量が大きいクラスタを有する記録領域にデータを記録するので、該データを記録させるクラスタの数を抑制することができ、データの管理が容易になり、データの記憶速度、及び読み出しの速度も良好になる。
また、一又は複数の記録領域に、消去しない保存データを記録することもできる。
さらに、容量が小さいクラスタを有する記録領域には、データの管理情報、又はサブディレクトリの情報を記録することもできる。
本発明によれば、記憶部にクラスタの容量が異なる複数の記録領域を有し、データの量に対応するクラスタを有する記録領域を選択して、該記録領域のクラスタにデータを記録するので、記録領域に空き領域が生じるのが抑制され、記憶部の容量を有効に活用することができる。
そして、画像データのように大きいデータを記憶させる場合には、容量が大きいクラスタを有する記録領域にデータを記録するので、該データを記録させるクラスタの数を抑制することができ、データの管理が容易になり、データの記憶速度、及び読み出しの速度も良好になる。
以下、本発明をその実施の形態を示す図面に基づき具体的に説明する。
実施の形態1.
図1は、本発明のデータ処理装置としての画像処理装置100の内部構成例を示すブロック図である。
画像処理装置100は、データの処理を行うCPU3(データ処理部)を備え、CPU3には、CPU3に対するデータの入出力を行うシステムコントローラ31が接続されている。システムコントローラ31には、CPU3が行う処理に伴うデータを一時的に記憶するRAM32、及びバスBが接続されている。バスBには、バスBに対するデータの入出力を行うI/Oコントローラ41、及びイメージコントローラ51が接続されている。イメージコントローラ51には、原稿に記録された画像を読み取る画像読み取り部55と、画像データをページ単位で記憶するページメモリ52と、画像データを処理する画像処理部53と、画像データから画像を形成して出力する画像形成部54とが接続されている。
I/Oコントローラ41には、画像処理装置100の外部の装置との間でデータを入出力する外部インタフェース42と、データを記憶するハードディスク(記憶部、記憶装置)2が接続されている。また、I/Oコントローラ41には、ハードディスク2とバスBとの間のデータの入出力を制御するハードディスクコントローラ(記憶制御部)1が備えられている。
画像処理装置100は、印刷機能と、スキャナ機能とを有する複合機である。
以上のような画像処理装置100において、CPU3は、必要なデータをハードディスク2に記憶させ、ハードディスク2が記憶するデータを読み出して、画像処理等のデータ処理を行う。
図2は、画像処理装置100が備えるHDD10(記憶装置)の機能構成を示す機能ブロック図である。
HDD10は、上述のハードディスクコントローラ1と、ハードディスク2とを有する。
ハードディスクコントローラ1は、CPU等を用いた制御部11と、制御部11に接続されたメモリ12とを備えている。メモリ12は、フラッシュメモリ等の不揮発性のメモリであり、本発明のプログラム13を記憶している。制御部11には、ハードディスク2が接続されており、さらにシステムコントローラ31を介してCPU3が接続されている。制御部11がプログラム13に従って、ハードディスク2に対する情報の入出力を制御する処理を行うことで、ハードディスクコントローラ1は本発明の記憶制御部として機能する。ハードディスク2のデータ領域21には、ハードディスクコントローラ1を介してCPU3から入力されたデータが記録され、FAT22には、データ領域21のクラスタの使用状況が記録されている。
図3は、HDD10のファイルシステムの構造を示す概念図である。
ファイルシステムは、書き込みデータを管理するシステム領域と、実際にデータを格納するデータ領域とに分けられる。
データ領域は、容量が4KBであるクラスタをn個有し、量が小さいファイルのデータを格納する記録領域1と、容量が512KBであるクラスタをn個有し、量が大きいファイルのデータを格納する記録領域2とを備えている。
システム領域は、記録領域1、及び記録領域2それぞれに対応して、クラスタの使用状況が記録されるFAT1、及びFAT2を有する。
ディレクトリエントリには、ファイルのファイル名、属性、サイズ、更新日時、開始のクラスタ番号、及びデータが管理されるFATの番号が記録される。
図4は、ファイルシステムの内容例を示す概念図である。
図4(a)はディレクトリエントリの内容例を示し、図4(b)はFAT1,2の内容例を示し、図4(c)は記録領域1,2の内容例を示している。図4(c)において、枡目の大きさが異なる部分があるが、記録領域1,2それぞれにおいては、クラスタの容量は同一である。
図4(a)のディレクトリエントリにおいて、番号1,2の領域には、ファイル1(ファイル名「aaa.txt」),ファイル2(ファイル名「bbb.jpg」)の上述した情報が記録されている。
ファイル1のサイズは4KBであるので、記録領域1のクラスタに記録され、開始のクラスタ番号は「0」であり、FAT1に使用状況が記録されている。
ファイル2のサイズは1MBであるので、記録領域2のクラスタに記録され、開始のクラスタ番号は「0」であり、FAT2に使用状況が記録されていることが分かる。
FAT1,2は、それぞれ記録領域1,2の0、1、2…、nのクラスタの番号に対応させて番号が付された複数の領域を有し、該領域の番号に対応するクラスタの使用状況が記述されている。クラスタが未使用である場合、「0」と記録され、リンクするクラスタがある場合、そのクラスタの番号が記録され、終端データが記録された最後のクラスタである場合、「FF」と記録される。
図4(b)及び(c)に示すように、記録領域1の番号0のクラスタにファイル1のデータが記録され、1つのクラスタにデータが収納されるので、FAT1の番号0の領域に終端データが記録されたクラスタであることを示す「FF」が記録されている。
また、ファイル2のデータは、記録領域2の番号0及び1のクラスタに跨って記録され、FAT2の番号1の領域に、リンク先のクラスタの番号である「1」が記録され、番号1の領域に、終端データを意味する「FF」が記録されている。
以下に、制御部11が行うデータの記録処理について詳述する。
図5乃至図7は、制御部11が行うデータの記録処理の手順を示すフローチャートである。
制御部11は、まず、書き込み要求があったか否かを判定する(S1)。書き込み要求がないと判定した場合(S1:NO)、書き込み要求があるまで待機する。
制御部11は、書き込み要求があったと判定した場合(S1:YES)、データを入力する(S2)。
そして、制御部11は、ディレクトリエントリの空き領域を検索し、空き領域の番号Mを取得する(S3)。
そして、制御部11は、ファイルのデータのサイズ(量)が小であるか否かを判定する(S4)。具体的には、データの量が4KB以下であるか否かを判定する。
ファイルのデータが小であると判定した場合(S4:YES)、FAT1の未使用領域を検索し、未使用領域の番号Nを取得する(S5)。
そして、制御部11は、ディレクトリエントリの番号Mの領域に、ファイル名、属性、サイズ、更新日時、開始クラスタ番号、FATの番号(ここでは1)を書き込む(S6)。例えば、図4(a)の番号1の領域に示すような情報を記録する。
そして、制御部11は、記録領域1の番号Nのクラスタにデータを書き込む(S7)。
次に、制御部11は、n=0とし(S8)、残存データがあるか否かを判定する(S9)。
制御部11は、残存データがあると判定した場合(S9:YES)、インクリメントし(S10)、FAT1の番号(N+n)の領域が未使用領域であるか否かを判定する(S11)。番号(N+n)の領域が未使用領域でないと判定した場合(S11:NO)、処理をステップS10へ戻す。
そして、番号(N+n)の領域が未使用領域であると判定した場合(S11:YES)、FAT1の番号Nの領域に、リンク先のクラスタの番号である(N+n)を書き込む(S12)。
制御部11は、記録領域1の番号(N+n)のクラスタにデータを書き込み(S13)、処理をステップS9へ戻す。
ステップS9において、制御部11が残存データがないと判定した場合(S9:NO)、FAT1の番号(N+n)の領域に、「FF」を書き込み(S14)、処理を終了する。
図4に示したファイル1の場合、M=1、N=0であり、1つのクラスタにデータが収まるので、記録領域1の番号0のクラスタにデータを記録した後(S7)、ステップS9において、残存データがないと判定され(S9:NO)、FAT1の番号0の領域に、「FF」を書き込んで(S14)、処理を終了する。
ステップS4において、制御部11がデータのサイズが大である、すなわち、データのサイズが4KBを超えると判定した場合(S4:NO)、FAT2の未使用領域を検索し、未使用領域の番号Pを取得する(S15)。
そして、制御部11は、ディレクトリエントリの番号Mの領域に、ファイル名、属性、サイズ、更新日時、開始クラスタ番号、FATの番号(ここでは2)を書き込む(S16)。例えば、図4(a)の番号2の領域に示すような情報を記録する。
そして、制御部11は、記録領域2の番号Pのクラスタにデータを書き込む(S17)。
次に、制御部11は、n=0とし(S18)、残存データがあるか否かを判定する(S19)。
制御部11は、残存データがあると判定した場合(S19:YES)、インクリメントし(S20)、FAT2の番号(P+n)の領域が未使用領域であるか否かを判定する(S21)。番号(P+n)の領域が未使用領域でないと判定した場合(S21:NO)、処理をステップS20へ戻す。
そして、番号(P+n)の領域が未使用領域であると判定した場合(S21:YES)、FAT2の番号Pの領域に、リンク先のクラスタの番号である(P+n)を書き込む(S22)。
制御部11は、記録領域2の番号(P+n)のクラスタにデータを書き込み(S23)、処理をステップS19へ戻す。
ステップS19において、制御部11が残存データがないと判定した場合(S19:NO)、FAT2の番号(P+n)の領域に、「FF」を書き込み(S24)、処理を終了する。
図4に示したファイル2の場合、M=2、P=0であり、1つのクラスタにデータが収まらないので、記録領域2の番号0のクラスタにデータを記録した後(S17)、ステップS19において、残存データがあると判定される(S19:YES)。そして、FAT2の番号0の領域に、リンク先のクラスタの番号である「1」が記録され(S22)、記録領域2の番号1のクラスタにデータを記録した後(S23)、残存データがないと判定され(S19:NO)、FAT2の番号1の領域に「FF」を書き込んで(S24)、処理を終了する。
本実施の形態においては、ハードディスク2がクラスタの容量が異なる2つの記録領域1,2を有し、データの量に対応するクラスタを有する記録領域を選択して、該記録領域のクラスタにデータを記録するので、記録領域に空き領域が生じるのが抑制されており、ハードディスク2を有効に活用することができる。
そして、大きい画像データを記憶させる場合には、容量が大きいクラスタを有する記録領域2にデータを記録するので、該データを記録させるクラスタの数を抑制することができ、データの管理が容易になり、データの記憶速度、及び読み出しの速度も良好になる。 また、この記録領域2には、消去しない保存データを記録することもできる。
実施の形態2.
実施の形態2に係る画像処理装置は、実施の形態1に係る画像処理装置100と同一の構成を有し、記録領域1に記録する情報、及び制御部11の処理が実施の形態1に係る画像処理装置100と異なる。
実施の形態2に係る画像処理装置においては、ディレクトリの直下にサブディレクトリが作成されており、記録領域1には、データを記録することに加えて、サブディレクトリエントリを作成するように構成されている。
図8は、実施の形態2に係る画像処理装置のファイルシステムの内容例を示す概念図である。
図8(a)はディレクトリエントリの内容例、図8(b)はサブディレクトリエントリの内容例、図8(c)はFAT1,2の内容例、図8(d)は記録領域1,2の内容例を示している。図8(d)において、枡目の大きさが異なる部分があるが、記録領域1,2それぞれにおいては、クラスタの容量は同一である。
図8(a)のディレクトリエントリにおいて、サブディレクトリのサブディレクトリ名「user<dir>」、属性、サイズ、更新日時、開始のクラスタ番号、及びデータが管理されるFATの番号1が記録される。
図8(c)に示すように、FAT1,2は、それぞれ記録領域1,2の0、1、2…、nのクラスタの番号に対応させて番号が付された複数の領域を有し、該領域に対応するクラスタの使用状況が記述されている。クラスタが未使用である場合、「0」と記録され、リンクするクラスタがある場合、そのクラスタの番号が記録され、終端データが記録されたクラスタである場合、「FF」と記録される。
記録領域1の番号0のクラスタに、サブディレクトリ「user<dir>」の情報を管理するサブディレクトリエントリが作成され(図8(b)及び(d))、FAT1の番号0の領域に終端データであることを示す「FF」が記録されている(図8(c))。サブディレクトリエントリには、サブディレクトリに属するファイルのファイル名、属性、サイズ、更新日時、開始のクラスタ番号、及びデータが管理されるFATの番号が記録される。
ここでは、サブディレクトリに属するファイル(ファイル名「ccc.jpg」)が、記録領域2の番号0及び1のクラスタに跨って記録されており(図8(d))、FAT2の番号0の領域にリンク先のクラスタの番号である「1」が記録され、番号1の領域に終端データであることを示す「FF」が記録されている(図8(c))。
以下に、制御部11が行うデータの記録処理について詳述する。
図9乃至図11は、制御部11が行うデータの記録処理の手順を示すフローチャートである。
制御部11は、まず、ディレクトリエントリの空き領域を検索し、空き領域の番号Mを取得する(S31)。
そして、制御部11は、FAT1の未使用領域を検索し、未使用領域の番号Nを取得する(S32)。
次に、制御部11は、番号Mの領域に、所定のサブディレクトリ名(一例として「user<dir>」)を有するサブディレクトリの情報を書き込み(S33)、記録領域1の番号Nのクラスタに、サブディレクトリエントリを作成する(S34)。
制御部11は、FAT1の番号Nの領域に終端データであることを意味する「FF」を書き込む(S35)。
そして、制御部11は、書き込み要求があったか否かを判定する(S36)。書き込み要求がないと判定した場合(S36:NO)、書き込み要求があるまで待機する。
制御部11は、書き込み要求があったと判定した場合(S36:YES)、データを入力する(S37)。
そして、制御部11は、ディレクトリエントリから前記サブディレクトリ名を検索し、番号Mの領域に記録された、FAT番号1、及び開始クラスタ番号Nを取得する(S38)。
制御部11は、FAT番号1、及び開始クラスタ番号Nのデータを読み出し、前記ディレクトリ名のサブディレクトリエントリを取得する(S39)。
制御部11は、前記サブディレクトリエントリの空き領域を検索し、空き領域の番号Qを取得する(S40)。
そして、制御部11は、ファイルのデータのサイズ(量)が小であるか否かを判定する(S41)。具体的には、データの量が4KB以下であるか否かを判定する。
ファイルのデータが小であると判定した場合(S41:YES)、FAT1の未使用領域を検索し、未使用領域の番号Rを取得する(S42)。
そして、制御部11は、サブディレクトリエントリの番号Qの領域に、ファイル名、属性、サイズ、更新日時、開始クラスタ番号、FATの番号(ここでは1)を書き込む(S43)。
そして、制御部11は、記録領域1の番号Rのクラスタにデータを書き込む(S44)。
次に、制御部11は、n=0とし(S45)、残存データがあるか否かを判定する(S46)。
制御部11は、残存データがあると判定した場合(S46:YES)、インクリメントし(S47)、FAT1の番号(R+n)の領域が未使用領域であるか否かを判定する(S48)。番号(R+n)の領域が未使用領域でないと判定した場合(S48:NO)、処理をステップS47へ戻す。
そして、番号(R+n)の領域が未使用領域であると判定した場合(S48:YES)、FAT1の番号Rの領域に、リンク先のクラスタの番号である(R+n)を書き込む(S49)。
制御部11は、記録領域1の番号(R+n)のクラスタにデータを書き込み(S50)、処理をステップS46へ戻す。
ステップS46において、制御部11が、残存データがないと判定した場合(S46:NO)、FAT1の番号(R+n)の領域に、「FF」を書き込み(S51)、処理を終了する。
ステップS41において、制御部11が、データのサイズが大である、すなわち、データのサイズが4KBを超えると判定した場合(S41:NO)、FAT2の未使用領域を検索し、未使用領域の番号Pを取得する(S52)。
そして、制御部11は、サブディレクトリエントリの番号Qの領域に、ファイル名、属性、サイズ、更新日時、開始クラスタ番号、FATの番号(ここでは2)を書き込む(S53)。図8(b)に一例を示す(ここではQ=1)。
そして、制御部11は、記録領域2の番号Pのクラスタに実際のデータを書き込む(S54)。
次に、制御部11は、n=0とし(S55)、残存データがあるか否かを判定する(S56)。
制御部11は、残存データがあると判定した場合(S56:YES)、インクリメントし(S57)、FAT2の番号(P+n)の領域が未使用領域であるか否かを判定する(S58)。番号(P+n)の領域が未使用領域でないと判定した場合(S58:NO)、処理をステップS57へ戻す。
そして、番号(P+n)の領域が未使用領域であると判定した場合(S58:YES)、FAT2の番号Pの領域に、リンク先のクラスタの番号である(P+n)を書き込む(S59)。
制御部11は、記録領域2の番号(P+n)のクラスタにデータを書き込み(S60)、処理をステップS56へ戻す。
ステップS56において、制御部11が、残存データがないと判定した場合(S56:NO)、FAT2の番号(P+n)の領域に、「FF」を書き込み(S61)、処理を終了する。
図8に示したファイルの場合、Q=1、P=0であり、1つのクラスタにデータが収まらないので、記録領域2の番号0のクラスタにデータを記録した後(S54)、ステップS56において、残存データがあると判定される(S56:YES)。そして、FAT2の番号0の領域に、リンク先のクラスタの番号である「1」が記録され(S59)、記録領域2の番号1のクラスタにデータを記録した後(S60)、残存データがないと判定され(S56:NO)、FAT2の番号1の領域に「FF」を書き込んで(S61)、処理を終了する。
本実施の形態においては、ディレクトリが階層構造を有する場合に、サブディレクトリエントリをクラスタの容量が小さい記録領域1に作成するので、記録領域1を有効に使用することができる。
なお、本実施の形態においては、記録領域1にサブディレクトリエントリを作成し、又はデータを記録する場合につき説明しているがこれに限定されるものではなく、データの管理情報を記録することにしてもよい。また、記録領域1には、データの管理情報、又はサブディレクトリの情報を記録することにしてもよい。
なお、前記実施の形態1及び2においては、データ領域が2つの記録領域1,2を備える場合につき説明しているがこれに限定されるものではなく、クラスタの容量も限定されない。本発明の記憶部は、3以上の異なるクラスタ容量を有する記録領域を備えるものであってもよい。この場合、データの量により適した記録領域を選択することができ、記録領域に空き領域が生じるのがより良好に抑制される。
また、前記実施の形態1及び2においては、データ処理装置としての画像処理装置が印刷機能、及びスキャナ機能を有する複合機である場合につき説明しているがこれに限定されるものではない。画像処理装置は、印刷機能、ファクシミリ機能、及びスキャナ機能のうちのいずれかの機能を有するものであってもよく、少なくとも2つの機能を有する複合機であってもよい。
さらに、データ処理装置は画像処理装置に限定されるものではなく、PC(パーソナルコンピュータ)等であってもよい。
本発明の実施の形態1に係る画像処理装置の内部構成例を示すブロック図である。 本発明の実施の形態1に係る画像処理装置が備えるHDDの機能構成を示す機能ブロック図である。 本発明の実施の形態1に係るHDDのファイルシステムの構造を示す概念図である。 本発明の実施の形態1に係るファイルシステムの内容例を示す概念図である。 本発明の実施の形態1に係る制御部が行うデータの記録処理の手順を示すフローチャートである。 本発明の実施の形態1に係る制御部が行うデータの記録処理の手順を示すフローチャートである。 本発明の実施の形態1に係る制御部が行うデータの記録処理の手順を示すフローチャートである。 本発明の実施の形態2に係る画像処理装置のファイルシステムの内容例を示す概念図である。 本発明の実施の形態2に係る制御部が行うデータの記録処理の手順を示すフローチャートである。 本発明の実施の形態2に係る制御部が行うデータの記録処理の手順を示すフローチャートである。 本発明の実施の形態2に係る制御部が行うデータの記録処理の手順を示すフローチャートである。 従来のHDDを示す模式的一部斜視図である。 従来のHDDのファイルシステムの構造を示す概念図である。 従来のHDDのファイルシステムの内容例を示す概念図である。
符号の説明
1 ハードディスクコントローラ(記憶制御部)
10 HDD(記憶装置)
11 制御部
12 メモリ
13 プログラム
2 ハードディスク(記憶部、記憶装置)
21 データ領域
22 FAT
3 CPU(データ処理部)
31 システムコントローラ
32 RAM
41 I/Oコントローラ
51 イメージコントローラ
52 ページメモリ
53 画像処理部
54 画像形成部
55 画像読み取り部
100 画像処理装置

Claims (11)

  1. データがファイル毎に記録されるデータ領域、及び該データ領域の使用状況に係る情報が記録されるFAT(ファイルアロケーションテーブル)を有する記憶部と、前記データを処理するデータ処理部とを備えるデータ処理装置において、
    前記データ領域は、クラスタの容量が異なる複数の記録領域からなり、
    前記FATは、各記録領域に対応して複数設けられていることを特徴とするデータ処理装置。
  2. 前記FATには、前記クラスタに対応させて前記情報が記録されるように構成されている請求項1に記載のデータ処理装置。
  3. データは、該データの量に対応する容量のクラスタを有する記録領域へ記録されるように構成されている請求項2に記載のデータ処理装置。
  4. 前記ファイルは、階層構造のディレクトリにより管理されており、
    クラスタの容量が小さい記録領域へは、データの管理情報、又は前記ファイルが属するサブディレクトリの情報が記録され、
    クラスタの容量が大きい記録領域へは、データが記録されるように構成されている請求項2又は3に記載のデータ処理装置。
  5. 前記データは画像データである請求項1乃至4のいずれか一つに記載のデータ処理装置。
  6. 印刷機能、ファクシミリ機能、及びスキャナ機能のうちの少なくとも2つの機能を有する請求項5に記載のデータ処理装置。
  7. データがファイル毎に記録されるデータ領域、及び該データ領域の使用状況に係る情報が記録されるFATを有する記憶部と、該記憶部に接続され、前記記憶部に対する情報の入出力を制御する記憶制御部とを備える記憶装置において、
    前記データ領域は、クラスタの容量が異なる複数の記録領域からなり、
    前記FATは、各記録領域に対応して複数設けられていることを特徴とする記憶装置。
  8. 前記記憶制御部は、
    データを入力する手段と、
    前記データの量の大小を判定する手段と、
    該手段により判定した前記量の大小に基づき、FATを選択する手段と、
    該FATの前記情報に基づき、クラスタを選択する手段と、
    前記クラスタに前記データを記録する手段と、
    前記FATに前記クラスタを使用したことを記録する手段と
    を備える請求項7に記載の記憶装置。
  9. 前記ファイルは、階層構造のディレクトリにより管理されており、
    前記記憶制御部は、
    データを入力する手段と、
    クラスタの容量が小さい記録領域に対応するFATの前記情報に基づき、クラスタを選択する手段と、
    前記クラスタに、前記ファイルが属するサブディレクトリの情報を記録する手段と、
    前記FATに、前記クラスタを使用したことを記録する手段と、
    クラスタの容量が大きい記録領域に対応するFATの前記情報に基づき、クラスタを選択する手段と、
    前記クラスタに前記データを記録する手段と、
    前記FATに前記クラスタを使用したことを記録する手段と
    を備える請求項7に記載の記憶装置。
  10. データがファイル毎に記録され、クラスタの容量が異なる複数の記録領域、及び各記録領域の使用状況に係る情報が記録される複数のFATを有する記憶装置が接続され、又は該記憶装置を備えるコンピュータに、前記記憶装置に対する情報の入出力を制御させるコンピュータプログラムであって、
    コンピュータに、データの量の大小を判定させるステップと、
    コンピュータに、前記ステップにより判定した前記量の大小に基づき、FATを選択させるステップと、
    コンピュータに、前記FATの前記情報に基づき、クラスタを選択させるステップと
    を有することを特徴とするコンピュータプログラム。
  11. データがファイル毎に記録され、クラスタの容量が異なる複数の記録領域、及び各記録領域の使用状況に係る情報が記録される複数のFATを有し、前記ファイルは、階層構造のディレクトリにより管理されている記憶装置が接続され、又は該記憶装置を備えるコンピュータに、前記記憶装置に対する情報の入出力を制御させるコンピュータプログラムであって、
    コンピュータに、クラスタの容量が小さい記録領域に対応するFATの前記情報に基づき、クラスタを選択させるステップと、
    コンピュータに、前記クラスタに、前記ファイルが属するサブディレクトリの情報を記録させるステップと、
    コンピュータに、クラスタの容量が大きい記録領域に対応するFATの前記情報に基づき、クラスタを選択させるステップと
    を有することを特徴とするコンピュータプログラム。
JP2008116082A 2008-04-25 2008-04-25 データ処理装置、記憶装置、及びコンピュータプログラム Pending JP2009266026A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008116082A JP2009266026A (ja) 2008-04-25 2008-04-25 データ処理装置、記憶装置、及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008116082A JP2009266026A (ja) 2008-04-25 2008-04-25 データ処理装置、記憶装置、及びコンピュータプログラム

Publications (1)

Publication Number Publication Date
JP2009266026A true JP2009266026A (ja) 2009-11-12

Family

ID=41391783

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008116082A Pending JP2009266026A (ja) 2008-04-25 2008-04-25 データ処理装置、記憶装置、及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP2009266026A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102253985A (zh) * 2011-06-30 2011-11-23 深圳市江波龙电子有限公司 一种文件系统数据的管理方法及系统
CN111177070A (zh) * 2019-12-03 2020-05-19 贵州朗盛科技股份有限公司 文件分配方法和存储设备
JP7347094B2 (ja) 2019-10-04 2023-09-20 富士フイルムビジネスイノベーション株式会社 情報処理装置、及び情報処理プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102253985A (zh) * 2011-06-30 2011-11-23 深圳市江波龙电子有限公司 一种文件系统数据的管理方法及系统
JP7347094B2 (ja) 2019-10-04 2023-09-20 富士フイルムビジネスイノベーション株式会社 情報処理装置、及び情報処理プログラム
CN111177070A (zh) * 2019-12-03 2020-05-19 贵州朗盛科技股份有限公司 文件分配方法和存储设备

Similar Documents

Publication Publication Date Title
JP4053115B2 (ja) 文書画像データの記憶制御方式
JP5055853B2 (ja) ファイル管理装置及び電子機器
JP2008242503A (ja) メモリ管理装置及び方法、並びにプログラム
JP2002055995A (ja) 情報処理方法及び装置
JP2008070975A (ja) データ保存装置及びデータ保存方法
KR100694069B1 (ko) 상이한 크기를 가지는 복수 개의 데이터 블록들을포함하는 저장 장치 및 이를 이용한 파일 관리 방법 및이를 포함하는 인쇄 장치
US7831583B2 (en) Document retrieval system, document retrieval apparatus, document retrieval method, program, and storage medium
JP2011203977A (ja) ストレージ装置、及びストレージ装置におけるファイルシステムの生成方法
US8316008B1 (en) Fast file attribute search
JP4401863B2 (ja) ストレージシステム
JP2009211496A (ja) 画像形成装置及びアクセス制御方法
JP2009266026A (ja) データ処理装置、記憶装置、及びコンピュータプログラム
JP2001265628A (ja) ファイル記録管理システム
JP4448005B2 (ja) 記憶システム
JP2005327334A (ja) 画像処理装置
US8855463B2 (en) Image storing apparatus, control method for image storing apparatus, and control program for image storing apparatus
JP2005044345A (ja) ファイル管理装置、ファイル管理システムおよび画像形成装置
JP4197679B2 (ja) 印刷制御装置及び印刷制御方法
JP2013118510A (ja) 画像処理装置及び画像処理方法
JP2008181381A (ja) 半導体メモリカード、半導体メモリカードのデータ管理方法、データベースエンジン、及び半導体メモリシステム
JP2001030550A (ja) 画像形成装置およびその制御方法
JP2002091806A (ja) ファイルシステム
JP2006178633A (ja) 情報処理装置、情報処理方法、プログラム
JP4059469B2 (ja) データ管理制御装置、同制御方法及び、同制御処理を実行するためのプログラムを記録した記録媒体
JPH0797351B2 (ja) 画像データのファイル装置