A system and method dynamically allocate memory to a RAM disk. Upon a file
transfer to the RAM disk, a device driver determines an amount of memory
required by the RAM disk then requests the required amount of memory from
a memory manager. As files are deleted from the RAM disk, the memory is
released from the RAM disk by informing the memory manager of the
addresses of the memory to be released. Sector freelists tracks each
cluster of memory allocated to the RAM disk. When a sector becomes
inactive, a corresponding bit in a sector freelist indicates the inactive
status of the sector. When all of the sectors in a cluster are inactive,
the cluster is released for the RAM disk.
Um sistema e um método alocam dinâmicamente a memória a um disco de RAM. Em cima de transferência de lima ao disco de RAM, um excitador de dispositivo determina uma quantidade de memória requerida pelo disco de RAM pede então a quantidade requerida de memória de um gerente da memória. Enquanto as limas são suprimidas do disco de RAM, a memória está liberada do disco de RAM informando o gerente da memória dos endereços da memória a ser liberada. Os freelists do setor seguem cada conjunto da memória alocado ao disco de RAM. Quando um setor se torna inativo, um bocado correspondente em um freelist do setor indica o status inativo do setor. Quando todos os setores em um conjunto são inativos, o conjunto está liberado para o disco de RAM.