JP2009064417A - inodeの割り当て及び割り当て解除の方法及びコンピュータプログラム - Google Patents
inodeの割り当て及び割り当て解除の方法及びコンピュータプログラム Download PDFInfo
- Publication number
- JP2009064417A JP2009064417A JP2008163998A JP2008163998A JP2009064417A JP 2009064417 A JP2009064417 A JP 2009064417A JP 2008163998 A JP2008163998 A JP 2008163998A JP 2008163998 A JP2008163998 A JP 2008163998A JP 2009064417 A JP2009064417 A JP 2009064417A
- Authority
- JP
- Japan
- Prior art keywords
- inode
- inodes
- map
- computer program
- initialized
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【解決手段】第1のinodeテーブルのすべてのinodeが初期化済みであるか否かを判断する。第1のinodeテーブルのすべてのinodeが初期化済みであるとの判断に応答して、追加のinodeを割り当てるさらなるinodeテーブルを作成する。inodeテーブルのディスクブロックアドレスを指し示すinodeマップを作成する。
【選択図】図4
Description
IGET (inode_number) :inodeを返す
{
inode_chunk_number = inode_number / chunksize
alloc_map_number = inode_chunk_number / allocmapsize
if (alloc_map_numberに対応するalloc_mapが存在しない)
{
*サイズallocmapsizeの新しいalloc_mapを割り当てる
*alloc_mapのエントリーを適切に初期化する
*このalloc_mapを前のalloc_map及び次のalloc_mapにリンクする
}
if (inode_chunk_numberに対応するinode_chunkが存在しない)
{
*サイズchunksizeのinode_chunkを割り当てる
*alloc_mapの(inode_chunk_number % allocmapsize)番目のエントリーを、このinode_chunkの開始アドレスに初期化する
}
*オフセット(inode_chunk_number % allocmapsize)におけるalloc_mapからinode_chunkの開始アドレスを得る
*オフセット(inode_number % chunksize)におけるinode_chunkから、必要とされるinodeをフェッチし、このinodeを返す
}
T=Tca+Tci+Tsa+Taa+Tia+Tsic+Tai+Tii+Tsi
(式1)
式中、
Tca=alloc_map数を計算するための時間
Tci=inode_chunk数を計算するための時間
Tsa=必要とされるalloc_mapを検索してフェッチするための時間
Taa=新しいalloc_mapを割り当てるための時間
Tia=alloc_mapを初期化するための時間
Tsic=必要とされるinode_mapを検索してフェッチするための時間
Tai=新しいinode_chunkを割り当てるための時間
Tii=inode_chunkを初期化するための時間
Tsi=inode_chunkから、必要とされるinodeを検索してフェッチするための時間
T=(Tca+Tci)+(Tsic+Tsi)+(Taa+Tia+Tai+Tii)+Tsa
=K+n×Ksa(簡単にするためにすべての定数の合計をKによって置き換える)
となる。
O(T)=O(K)+O(n×Ksa)
近似値=O(n) (K及びKsaは定数であるので)
となる。
102・・・サーバ
104・・・クライアント
104a、104b・・・パーソナルコンピューティングデバイス
106・・・ネットワーク
108・・・ストレージデバイス
112a、112b・・・プロセッサ
114・・・システムバス
116・・・メモリコントローラ/キャッシュ
118・・・メモリ
120・・・グラフィックスアダプタ
122・・・ディスク
124・・・I/Oブリッジ
126・・・I/Oバス
128a〜128c・・・PCIバスブリッジ
130a〜130c・・・PCIバス
132・・・モデム
134・・・ネットワークアダプタ
502、508・・・alloc_map
504、506、510・・・inode_chunk
Claims (18)
- 第1のinodeテーブルを含むコンピューティングファイルシステムにおいてinodeを割り当てる方法であって、
前記第1のinodeテーブルのすべてのinodeが初期化済みであるか否かを判断するステップと、
前記第1のinodeテーブルのすべてのinodeが初期化済みであるとの判断に応答して、追加のinodeを割り当てるさらなるinodeテーブルを作成するステップと
を含む方法。 - 前記さらなるinodeテーブルのすべてのinodeが初期化済みであるときに、少なくとも1つの追加のinodeテーブルを作成するステップ
をさらに含む請求項1に記載の方法。 - 1つまたは2つ以上のinodeマップ(複数可)を提供するステップをさらに含み、
前記inodeマップ(複数可)は、選択され、割り当てられたinodeを含む前記inodeテーブルのディスクブロックアドレスを指し示す
請求項1に記載の方法。 - 各前記inodeテーブルにおけるinodeの個数は、ディスク空間の総量と、各前記inodeマップで参照されるinodeテーブルアドレスの個数との関数である
請求項3に記載の方法。 - ファイルシステムの作成中にinodeの個数を求めるステップをさらに含む
請求項4に記載の方法。 - 少なくとも第1のinodeテーブルとさらなるinodeテーブルを含むコンピューティングファイルシステムにおいてinodeを割り当て解除する方法であって、
前記さらなるinodeテーブルが、初期化されたinodeを含まないかを判断するステップと、
前記さらなるテーブルが初期化されたinodeを含まないとの判断に応答して、前記さらなるinodeテーブルを削除するステップと
を含む方法。 - 前記さらなるinodeテーブルに関連付けられているinodeマップにおける前記さらなるinodeテーブルの参照子を削除するステップをさらに含む
請求項6に記載の方法。 - 前記さらなるテーブルが前記inodeマップによって参照される唯一のテーブルであるとの判断に応答して、前記さらなるテーブルに関連付けられている前記inodeマップを削除するステップ
をさらに含む請求項7に記載の方法。 - 第1のinodeテーブルを含むコンピュータファイルシステムにおいてinodeを割り当てるコンピュータプログラムであって、コンピューティングシステムのコンピュータ可読媒体上で実施されると、
前記第1のinodeテーブルのすべてのinodeが初期化済みであるか否かを判断するステップと、
前記第1のinodeテーブルのすべてのinodeが初期化済みであるとの判断に応答して、追加のinodeを提供するさらなるinodeテーブルを作成するステップと
を前記コンピューティングシステムに実施させる少なくとも1つの命令を含むコンピュータプログラム。 - 前記さらなるinodeテーブルのすべてのinodeが初期化済みであるときに、少なくとも1つの追加のinodeテーブルを作成するステップをさらに実施するように構成されている
請求項9に記載のコンピュータプログラム。 - 前記コンピュータプログラムは、1つまたは2つ以上のinodeマップ(複数可)を提供するステップをさらに実施するように構成され、
前記inodeマップ(複数可)は、選択され、割り当てられたinodeを含む前記inodeテーブルのディスクブロックアドレスを指し示す
請求項9に記載のコンピュータプログラム。 - 各前記inodeテーブルにおけるinodeの個数は、ディスク空間の総量と、各前記inodeマップで参照されるinodeテーブルアドレスの個数との関数である
請求項11に記載のコンピュータプログラム。 - ファイルシステムの作成中にinodeの個数を求めるステップをさらに実施するように構成されている
請求項12に記載のコンピュータプログラム。 - 少なくとも第1のinodeテーブルとさらなるinodeテーブルを含むコンピュータファイルシステムにおいてinodeを割り当て解除するコンピュータプログラムであって、コンピューティングシステムのコンピュータ可読媒体上で実施されると、
前記さらなるinodeテーブルが初期化されたinodeを含まないかを判断するステップと、
前記さらなるinodeテーブルが初期化されたinodeを含まないとの判断に応答して、前記さらなるinodeテーブルを削除するステップと
を前記コンピューティングシステムに実施させる少なくとも1つの命令を含むコンピュータプログラム。 - 前記さらなるinodeテーブルに関連付けられているinodeマップにおける前記さらなるinodeテーブルの参照子を削除するステップをさらに実施するように構成されている
請求項14に記載のコンピュータプログラム。 - 前記さらなるテーブルが前記inodeマップによって参照される唯一のテーブルであるとの判断に応答して、前記さらなるテーブルに関連付けられている前記inodeマップを削除するステップをさらに実施するように構成されている
請求項15に記載のコンピュータプログラム。 - 請求項9に記載のコンピュータプログラムを記憶したコンピュータ可読媒体。
- 請求項14に記載のコンピュータプログラムを記憶したコンピュータ可読媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN1352CH2007 | 2007-06-25 | ||
IN1352/CHE/2007 | 2007-06-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009064417A true JP2009064417A (ja) | 2009-03-26 |
JP4907605B2 JP4907605B2 (ja) | 2012-04-04 |
Family
ID=40137611
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008163998A Expired - Fee Related JP4907605B2 (ja) | 2007-06-25 | 2008-06-24 | inodeの割り当て及び割り当て解除の方法及びコンピュータプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20080320052A1 (ja) |
JP (1) | JP4907605B2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8190655B2 (en) * | 2009-07-02 | 2012-05-29 | Quantum Corporation | Method for reliable and efficient filesystem metadata conversion |
US8433694B1 (en) | 2011-01-31 | 2013-04-30 | Symantec Corporation | File cache optimization using element de-prioritization |
US8510510B1 (en) | 2011-01-31 | 2013-08-13 | Symantec Corporation | File cache optimization using element prioritization |
US9495377B2 (en) | 2012-09-12 | 2016-11-15 | International Business Machines Corporation | Secure deletion operations in a wide area network |
US10127236B1 (en) * | 2013-06-27 | 2018-11-13 | EMC IP Holding Company | Filesystem storing file data in larger units than used for metadata |
US9323763B2 (en) | 2013-10-25 | 2016-04-26 | International Business Machines Corporation | Managing filesystem inodes |
US9594763B2 (en) * | 2014-04-28 | 2017-03-14 | Quantum Corporation | N-way Inode translation |
KR102342564B1 (ko) | 2015-03-03 | 2021-12-24 | 한국전자통신연구원 | 파일 시스템을 생성하고 삭제하는 장치 및 그의 구동 방법 |
CN105224607B (zh) * | 2015-09-06 | 2019-05-24 | 浪潮(北京)电子信息产业有限公司 | 一种模拟云存储设备的虚拟文件系统设计方法 |
US10942663B2 (en) * | 2019-01-29 | 2021-03-09 | EMC IP Holding Company LLC | Inlining data in inodes |
CN114327290B (zh) * | 2021-12-31 | 2022-12-02 | 科东(广州)软件科技有限公司 | 一种磁盘分区的结构、格式化方法和访问方法 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4887204A (en) * | 1987-02-13 | 1989-12-12 | International Business Machines Corporation | System and method for accessing remote files in a distributed networking environment |
US4897781A (en) * | 1987-02-13 | 1990-01-30 | International Business Machines Corporation | System and method for using cached data at a local node after re-opening a file at a remote node in a distributed networking environment |
US5175852A (en) * | 1987-02-13 | 1992-12-29 | International Business Machines Corporation | Distributed file access structure lock |
US5151989A (en) * | 1987-02-13 | 1992-09-29 | International Business Machines Corporation | Directory cache management in a distributed data processing system |
EP0681721B1 (en) * | 1993-02-01 | 2005-03-23 | Sun Microsystems, Inc. | Archiving file system for data servers in a distributed network environment |
EP1003103B1 (en) * | 1993-06-03 | 2008-10-01 | Network Appliance, Inc. | Write anywhere file-system layout method and apparatus |
US5713008A (en) * | 1995-06-08 | 1998-01-27 | Sun Microsystems | Determination of working sets by logging and simulating filesystem operations |
US5771379A (en) * | 1995-11-01 | 1998-06-23 | International Business Machines Corporation | File system and method for file system object customization which automatically invokes procedures in response to accessing an inode |
US5956507A (en) * | 1996-05-14 | 1999-09-21 | Shearer, Jr.; Bennie L. | Dynamic alteration of operating system kernel resource tables |
US5875444A (en) * | 1996-12-10 | 1999-02-23 | International Business Machines Corporation | Computer file system check and repair utility |
US6654772B1 (en) * | 1999-04-28 | 2003-11-25 | Emc Corporation | Multi-volume extent based file system |
US6556998B1 (en) * | 2000-05-04 | 2003-04-29 | Matsushita Electric Industrial Co., Ltd. | Real-time distributed file system |
US6530038B1 (en) * | 1999-09-16 | 2003-03-04 | International Business Machines Corporation | Streamlined initialization and refresh of file system directory limits |
US6782389B1 (en) * | 2000-09-12 | 2004-08-24 | Ibrix, Inc. | Distributing files across multiple, permissibly heterogeneous, storage devices |
US6868417B2 (en) * | 2000-12-18 | 2005-03-15 | Spinnaker Networks, Inc. | Mechanism for handling file level and block level remote file accesses using the same server |
US6643654B1 (en) * | 2001-06-25 | 2003-11-04 | Network Appliance, Inc. | System and method for representing named data streams within an on-disk structure of a file system |
US7225204B2 (en) * | 2002-03-19 | 2007-05-29 | Network Appliance, Inc. | System and method for asynchronous mirroring of snapshots at a destination using a purgatory directory and inode mapping |
US7313720B1 (en) * | 2004-02-12 | 2007-12-25 | Network Appliance, Inc. | Technique for increasing the number of persistent consistency point images in a file system |
US7293154B1 (en) * | 2004-11-18 | 2007-11-06 | Symantec Operating Corporation | System and method for optimizing storage operations by operating only on mapped blocks |
US20060206484A1 (en) * | 2005-03-14 | 2006-09-14 | Hitachi, Ltd. | Method for preserving consistency between worm file attributes and information in management servers |
US7865462B2 (en) * | 2006-01-03 | 2011-01-04 | Hitachi, Ltd. | Apparatus and method for replicating data in file system |
US7769719B2 (en) * | 2006-01-05 | 2010-08-03 | International Business Machines Corporation | File system dump/restore by node numbering |
US7930508B2 (en) * | 2006-03-07 | 2011-04-19 | Apple Inc. | File systems for data processing systems |
US8260831B2 (en) * | 2006-03-31 | 2012-09-04 | Netapp, Inc. | System and method for implementing a flexible storage manager with threshold control |
US7945726B2 (en) * | 2006-05-08 | 2011-05-17 | Emc Corporation | Pre-allocation and hierarchical mapping of data blocks distributed from a first processor to a second processor for use in a file system |
US20080183988A1 (en) * | 2007-01-30 | 2008-07-31 | Yanling Qi | Application Integrated Storage System Volume Copy and Remote Volume Mirror |
-
2008
- 2008-06-24 JP JP2008163998A patent/JP4907605B2/ja not_active Expired - Fee Related
- 2008-06-25 US US12/145,923 patent/US20080320052A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20080320052A1 (en) | 2008-12-25 |
JP4907605B2 (ja) | 2012-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4907605B2 (ja) | inodeの割り当て及び割り当て解除の方法及びコンピュータプログラム | |
US10175894B1 (en) | Method for populating a cache index on a deduplicated storage system | |
US8285967B1 (en) | Method for on-demand block map generation for direct mapped LUN | |
US9779023B1 (en) | Storing inline-compressed data in segments of contiguous physical blocks | |
US9697219B1 (en) | Managing log transactions in storage systems | |
US6401181B1 (en) | Dynamic allocation of physical memory space | |
US5261088A (en) | Managing locality in space reuse in a shadow written B-tree via interior node free space list | |
US7035881B2 (en) | Organization of read-write snapshot copies in a data storage system | |
US5899994A (en) | Flexible translation storage buffers for virtual address translation | |
US9727452B2 (en) | Distributing metadata across multiple different disruption regions within an asymmetric memory system | |
US8775751B1 (en) | Aggressive reclamation of tier-1 storage space in presence of copy-on-write-snapshots | |
CA2596434C (en) | File system having variable logical storage block size | |
JP4176857B2 (ja) | リファレンスされたオブジェクトを管理するための3状態リファレンスの使用 | |
US7496586B1 (en) | Method and apparatus for compressing data in a file system | |
US9501421B1 (en) | Memory sharing and page deduplication using indirect lines | |
US20050273570A1 (en) | Virtual space manager for computer having a physical address extension feature | |
US20140068211A1 (en) | Converting a first address mapping function for mapping addresses to storage locations to a second address mapping function | |
US8694563B1 (en) | Space recovery for thin-provisioned storage volumes | |
US6002866A (en) | Partitioning within a partition in a disk file storage system | |
US20100287356A1 (en) | Large memory pages for shared libraries | |
GB2265734A (en) | Free memory cell management system | |
US7152069B1 (en) | Zero copy writes through use of mbufs | |
US8904128B2 (en) | Processing a request to restore deduplicated data | |
US7177980B2 (en) | Cache storage system and method | |
US10528284B2 (en) | Method and apparatus for enabling larger memory capacity than physical memory size |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110301 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110526 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110617 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110914 |
|
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: 20111216 |
|
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: 20120111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150120 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
LAPS | Cancellation because of no payment of annual fees | ||
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |