特許
J-GLOBAL ID:200903054740836615

空きスペース検索方法

発明者:
出願人/特許権者:
代理人 (1件): 小川 勝男
公報種別:公開公報
出願番号(国際出願番号):特願平3-300227
公開番号(公開出願番号):特開平5-134909
出願日: 1991年11月15日
公開日(公表日): 1993年06月01日
要約:
【要約】【目的】ビットマップで管理されたランダムアクセス装置の空きスペースを高速に例外なく検出する事を目的とする。【構成】第一の変換表によりビットマップ上のビット '0’を検索し、第二の変換表によりビットマップ上のビット '1’を検索する。その際、ビット '0’よりも左側に位置するビット '1’を検出しないようにするため、マスクをかけてから第二の変換表によりビット '1’を検索する。これによりどのようなビットパターンに対しても本発明の方法で高速な空きスペース検索を実現できる。
請求項(抜粋):
ランダムアクセス装置の記憶域の使用状況を任意の単位ごとに '0'または'1'のビット値で表すビットマップを備えた処理装置に於いて、このビットマップからランダムアクセス装置の空きスペースを検索する方法であって、8ビットからなるビット列を最高位側から見た時、最初に現われる '0'のビット位置をビットパターンごとに示す第一の変換表と、8ビットからなるビット列を最高位側から見た時、最初に現われる '1'のビット位置をビットパターンごとに示す第二の変換表を設け、前記ビットマップの指定したアドレスのバイトのビットパターンに基づいて、前記第一の変換表から対応する値を読みだし、読みだした値が0の場合には、次のアドレスのバイトについて該処理を繰返し、読みだした値が0以外の場合は処理を停止し、当該バイトのアドレスを '0'を含むバイト列の先頭アドレスとして記憶し、また得られた変換値をバイト内の '0’ビット先頭位置として記憶すると共に、その位置が最下位ビット位置かどうかを知り、その位置が最下位ビット位置でない場合は、前記先頭バイト内の '0'のビット位置以前のビットを '0'にするマスクをかけた後に、当バイト位置から第二の変換表を適用した変換を行ない、そこで読みだした値が0の場合には、次のアドレスのバイトについて該処理を繰返し、読みだした値が0でない場合には処理を停止して、その時の当該バイトを連続する ’0’ビット列を終了させる '1’ビットをふくむバイトのアドレスとし、読みだした値を '1’ビットの位置として記憶し、その位置が最下位ビット位置の場合には、当バイト位置の次のバイト位置から第二の変換表を適用した変換を行ない、そこで読みだした値が0の場合には、次のアドレスのバイトについて該処理を繰返し、読みだした値が0でない場合には処理を停止して、その時の当該バイトを連続する ’0’ビット列を終了させる'1’ビットをふくむバイトのアドレスとし、読みだした値を '1’ビットの位置として記憶し、ここで得られた連続する ’0’ビット列を終了させる '1’ビットをふくむバイトのアドレスと、そのバイト内での '1’ビットの位置と、先に第一の変換表を使って得られている '0'を含むバイト列の先頭アドレスと、そのバイト内の ’0’ビット先頭位置から空き領域の位置及び大きさを知ることを特徴とする空きスペース検索方法。
IPC (2件):
G06F 12/00 501 ,  G06F 12/02 530

前のページに戻る