![]() |
UltraDefrag Engine Architecture - Reference Manual - Guides |
|
Functions | |
BOOLEAN | MoveTheFile (PFILENAME pfn, ULONGLONG target) |
Moves a file and updates the global statistics and map. | |
int | Defragment (char *volume_name) |
Performs a volume defragmentation. | |
NTSTATUS | MovePartOfFile (HANDLE hFile, ULONGLONG startVcn, ULONGLONG targetLcn, ULONGLONG n_clusters) |
Moves a range of clusters belonging to the file. | |
NTSTATUS | MoveBlocksOfFile (PFILENAME pfn, HANDLE hFile, ULONGLONG targetLcn) |
Moves a file entirely. | |
void | MovePartOfFileBlock (PFILENAME pfn, ULONGLONG startVcn, ULONGLONG targetLcn, ULONGLONG n_clusters) |
Moves a part of file. | |
void | DbgPrintBlocksOfFile (PBLOCKMAP blockmap) |
Prints sequently information about all blocks of the file. |
BOOLEAN MoveTheFile | ( | PFILENAME | pfn, | |
ULONGLONG | target | |||
) |
Moves a file and updates the global statistics and map.
[in] | pfn | pointer to the structure describing the file. |
[in] | target | the starting logical cluster number defining position of target space on the volume. |
Definition at line 324 of file defrag.c.
References DbgPrintBlocksOfFile(), DumpFile(), GetFileSpaceState(), MoveBlocksOfFile(), OpenTheFile(), ProcessFreedBlock(), RemarkBlock(), and TruncateFreeSpaceBlock().
Referenced by Defragment().
int Defragment | ( | char * | volume_name | ) |
Performs a volume defragmentation.
[in] | volume_name | the name of the volume. |
Definition at line 54 of file defrag.c.
References CheckForStopEvent(), IsFileLocked(), MoveTheFile(), and UpdateFragmentedFilesList().
Referenced by OptimizationRoutine(), and udefrag_kernel_start().
NTSTATUS MovePartOfFile | ( | HANDLE | hFile, | |
ULONGLONG | startVcn, | |||
ULONGLONG | targetLcn, | |||
ULONGLONG | n_clusters | |||
) |
Moves a range of clusters belonging to the file.
[in] | hFile | handle of the file. |
[in] | startVcn | the starting virtual cluster number defining position inside the file. |
[in] | targetLcn | the starting logical cluster number defining position of target space on the volume. |
[in] | n_clusters | the number of clusters to move. |
Definition at line 150 of file defrag.c.
References CheckForStopEvent().
Referenced by MoveBlocksOfFile(), and MovePartOfFileBlock().
NTSTATUS MoveBlocksOfFile | ( | PFILENAME | pfn, | |
HANDLE | hFile, | |||
ULONGLONG | targetLcn | |||
) |
Moves a file entirely.
[in] | pfn | pointer to the structure describing the file. |
[in] | hFile | handle of the file. |
[in] | targetLcn | the starting logical cluster number defining position of target space on the volume. |
Definition at line 200 of file defrag.c.
References MovePartOfFile().
Referenced by MoveTheFile(), and MoveTheUnfragmentedFile().
void MovePartOfFileBlock | ( | PFILENAME | pfn, | |
ULONGLONG | startVcn, | |||
ULONGLONG | targetLcn, | |||
ULONGLONG | n_clusters | |||
) |
Moves a part of file.
[in] | pfn | pointer to the structure describing the file. |
[in] | startVcn | the starting virtual cluster number defining position inside the file. |
[in] | targetLcn | the starting logical cluster number defining position of target space on the volume. |
[in] | n_clusters | the number of clusters to move. |
Definition at line 254 of file defrag.c.
References MovePartOfFile(), and OpenTheFile().
Referenced by DefragmentFreeSpaceLTR(), and DefragmentFreeSpaceRTL().
void DbgPrintBlocksOfFile | ( | PBLOCKMAP | blockmap | ) |
Prints sequently information about all blocks of the file.
[in] | blockmap | pointer to the list representing blocks of file. |
Definition at line 304 of file defrag.c.
Referenced by MoveTheFile().