One embodiment of the present invention provides a system that supports
resizing of file system partitions. The system includes one or more
storage devices that are divided into a plurality of partitions, wherein
each partition includes a different file system. The system operates by
receiving a request to allocate storage within a partition. In response to
the request, the system adds a request size to a current partition size to
produce a predicted size for the partition. Next, the system compares the
predicted size for the partition with a size limit for the partition. If
the predicted size exceeds the size limit, the system signals an error
condition. If the predicted size does not exceed the size limit, the
system allocates the requested storage for the partition in the
nonvolatile random access memory. The system also makes the current
partition size equal to the predicted partition size. In a variation on
the above embodiment, the system receives a request to deallocate storage
from the partition. In response to the request, the system deallocates the
storage, and decreases the current partition size to reflect the
deallocated storage.
Un mode de réalisation de la présente invention fournit un système qui soutient remettre à la côte des cloisons de système de fichiers. Le système inclut un ou plusieurs dispositifs de stockage qui sont divisés en pluralité de cloisons, où chaque cloison inclut un système de fichiers différent. Le système fonctionne en recevant une demande d'assigner le stockage dans une cloison. En réponse à la demande, le système ajoute une taille de demande à une taille courante de cloison pour produire une taille prévue pour la cloison. Après, le système compare la taille prévue pour la cloison à une limite de taille pour la cloison. Si la taille prévue dépasse la limite de taille, le système signale une condition d'erreur. Si la taille prévue ne dépasse pas la limite de taille, le système assigne le stockage demandé pour la cloison dans la mémoire à accès sélective non-volatile. Le système rend également la taille courante de cloison égale à la taille prévue de cloison. Dans une variation sur l'incorporation ci-dessus, le système reçoit une demande de désaffecter le stockage de la cloison. En réponse à la demande, le système désaffecte le stockage, et diminue la taille courante de cloison pour refléter le stockage désaffecté.