/** * Membebaskan blok * @param position pointer yang dibebaskan */ void POI::freeBlock(Block position) { if (position == EMPTY_BLOCK) { return; } while (position != END_BLOCK) { Block temp = nextBlock[position]; setNextBlock(position, EMPTY_BLOCK); position = temp; available--; } writeVolumeInformation(); }
/** mendapatkan first Empty yang berikutnya */ ptr_block CCFS::allocateBlock() { ptr_block result = firstEmpty; setNextBlock(result, END_BLOCK); while (nextBlock[firstEmpty] != 0x0000) { firstEmpty++; } available--; writeVolumeInformation(); return result; }