A bit-parallel system and method for allocating storage space for data
objects using a bitmap. It is determined whether a suffix of free space
bits in a previous bitmap word can be used with a prefix of free space
bits in a current word that is contiguous to the previous word. If so,
this renders a string of free space bits spanning multiple words, and it
is determined whether the string represents a sufficiently large number of
contiguous blocks ("the target") to store the data object. If not, it is
determined whether sufficient contiguous free space bits in the current
word exist to fulfill the target. If the target still can't be achieved,
the longest suffix of free space bits in the current word is found for
possible use with the prefix of the next contiguous word, and the next
word is then retrieved and processed. The algorithm for finding the suffix
preferably is undertaken by considering bits in parallel.
Un sistema y un método bit-parallel para asignar el espacio de almacenaje para los objetos de los datos usando una BITMAP. Se determina si un sufijo de los pedacitos libres del espacio en una palabra a memoria de imagen anterior se puede utilizar con un prefijo de los pedacitos libres del espacio en una palabra actual que esté contigua a la palabra anterior. Si es así esto rinde una cadena de pedacitos libres del espacio que atraviesan palabras múltiples, y se determina si la secuencia representa un número suficientemente grande de los bloques contiguos ("la blanco") para almacenar el objeto de los datos. Si no, se determina si los suficientes pedacitos libres contiguos del espacio en la palabra actual existen para satisfacer la blanco. Si la blanco todavía no puede ser alcanzada, el sufijo más largo de los pedacitos libres del espacio en la palabra actual se encuentra para el uso posible con el prefijo de la palabra contigua siguiente, y la palabra siguiente después se recupera y se procesa. El algoritmo para encontrar el sufijo es emprendido preferiblemente considerando pedacitos en paralelo.