MicrosoftDrive Optimizer (formerly Disk Defragmenter) is a utility in Microsoft Windows designed to increase data access speed by rearranging files stored on a disk to occupy contiguous storage locations, a technique called defragmentation. Microsoft Drive Optimizer was first officially shipped with Windows XP.
Defragmenting a disk minimizes head travel, which reduces the time it takes to read files from and write files to the disk.[1] As a result of the decreased read and write times, Microsoft Drive Optimizer decreases system startup times for systems starting from magnetic storage devices such as a hard drive. However, defragmentation is not helpful on storage devices such as solid state drives, USB drives or SD cards that use flash memory to increase speeds, as these drives do not use a head. Doing so may decrease lifespan for these types of devices.
As early as the end of 1982, the IBM PC DOS operating system that shipped with early IBM Personal Computers included a Disk Volume Organization Optimizer to defragment the 5-inch floppy disks that those machines used. At this time, Microsoft's MS-DOS did not defragment hard disks. Several third party software developers marketed defragmenters to fill this gap. MS-DOS 6.0 introduced Microsoft Defrag.[2] Windows NT, however, did not offer a Defrag utility, and Symantec was suggested by others as a possible alternative for the utility.[3]
Initial releases of Windows NT lacked a defragmentation tool. Versions through Windows NT 3.51 did not have an application programming interface for moving data clusters on hard disks.[4] Executive Software, later renamed Diskeeper Corporation, released Diskeeper defragmentation software for Windows NT 3.51,[4] which shipped with a customized version of the NT kernel and file system drivers that could move clusters.
Microsoft included file system control (FSCTL) commands to move clusters in the Windows NT 4.0 kernel,[4] which worked for both NTFS and FAT partitions. However, Windows NT 4.0 did not provide a graphical or command-line user interface.[4]
Disk Defragmenter first shipped as part of Windows 95 and later shipped with Windows 98 and Windows Me, licensed from Symantec Corporation. It could be scheduled using a Maintenance Wizard and supported command line switches.[5] In the version of Disk Defragmenter included with Windows 95 and 98, if the contents of the drive changed during defragmentation, the program paused, rescanned the entire drive, and then resumed the process from where it had left off.[6] This quirk was removed in the Windows Me version of Disk Defragmenter.
Windows Disk Defragmenter was updated to alleviate some restrictions.[9] It no longer relies on the Windows NT Cache Manager, which prevented the defragmenter from moving pieces of a file that cross a 256KB boundary within the file. NTFS metadata files can also be defragmented. A command-line tool, defrag.exe, has been included,[10] providing access to the defragmenter from cmd.exe and Task Scheduler. In Windows XP, if the Master File Table (MFT) is spread into multiple fragments, defrag.exe and the GUI version can combine the MFT fragments during defragmentation.[11] Windows XP and later has introduced Boot Files Defragment function, this function is enabled by default and can be disabled in Registry.[12]
In Windows Vista, Disk Defragmenter includes an option to automatically run at scheduled times using Task Scheduler and uses low CPU priority and the newly introduced low priority I/O algorithm so that it can continue to defrag using reduced resources (less CPU and disk read/write activity) when the computer is in use. The user interface has been simplified, with the color graph, progress indicator, disk analysis and fragmentation information being removed entirely.
If the fragments of a file are over 64 MB in size, the file is not defragmented if using the GUI; Microsoft has stated that this is because there is no discernible performance benefit since the time seeking such large chunks of data is negligible compared to the time required to read them.[13] The result, however, is that Disk Defragmenter does not require a certain amount of free space in order to successfully defrag a volume, unlike performing a full defragmentation which requires at least 15% of free space on the volume. The command line utility, Defrag.exe, offers more control over the defragmentation process, such as performing a full defragmentation by consolidating all file fragments regardless of size.[14] This utility can be used to defragment specific volumes or to just analyze volumes as the defragmenter would in Windows XP.
Disk Defragmenter is maintained by Microsoft's Core File Services. The Windows Vista version has been updated in Windows Vista SP1 to include the improvements made in Windows Server 2008. The most notable of these improvements is that the ability to select which volumes are to be defragmented has been added back.[15]Notably, the Windows Vista defragmenter is much more effective than the version included with XP.[16]
According to Scott Hanselman of Microsoft, Windows 7[verification needed] and later do defragment a solid-state disk (SSD) but in a completely different way. There is less incentive for defragmentation of SSDs because file fragmentation has less performance impact on them and they handle a finite number of storage cycles before their lifespan expires. However, file systems cannot support infinite file fragmentation as they reach their metadata limit. In addition, Microsoft Drive Optimizer is also responsible for performing the TRIM command on SSDs.[17]
I was wondering this because I've noticed that my computer in the morning is auto-defragmented by SD, and about 1200 files are defragmented, then in the evening SD autodefrags again my drive and about 500 files are defragmented.
In case that Windows Defragmenter is not FULLY disabled by SD, then this turns into a big issue, because the drive first is optimized / defragmented by SD, then windows defragmenter undo what SD achieved and then again SD optimizes and defrags the drive again. This results in an excessive and unnecessary drive wear (if that's what really happens).
"Replace Windows Disk Defragmenter"does not mean " disable windows defragmenter". If you ticked this item, it means that you will run SD to defragment your PC when you right click a disk to defrag. Please refers to the attachment to see what I meant.
Volumes the file system marked as dirty, indicating possible corruption.
You must run chkdsk before you can defragment this volume or drive. You can determine if a volume is dirty by using the fsutil dirty command.
To perform this procedure, you must be a member of the Administrators group on the local computer, or you must have been delegated the appropriate authority. If the computer is joined to a domain, members of the Domain Admins group might be able to perform this procedure. As a security best practice, consider using Run As to perform this procedure.
A volume must have at least 15% free space for defrag to completely and adequately defragment it. defrag uses this space as a sorting area for file fragments. If a volume has less than 15% free space, defrag will only partially defragment it. To increase the free space on a volume, delete unneeded files or move them to another disk.
While defrag is analyzing and defragmenting a volume, it displays a blinking cursor. When defrag is finished analyzing and defragmenting the volume, it displays the analysis report, the defragmentation report, or both reports, and then exits to the command prompt.
Running the defrag command and Disk defragmenter are mutually exclusive. If you're using Disk defragmenter to defragment a volume and you run the defrag command at a command-line, the defrag command fails. Conversely, if you run the defrag command and open Disk defragmenter, the defragmentation options in Disk defragmenter are unavailable.
The defragmentation process runs scheduled task as a maintenance task, which typically runs every week. As an Administrator, you can change how often the task runs by using the Optimize Drives app.
Traditional optimization processes. Includes traditional defragmentation, for example moving files to make them reasonably contiguous and retrim. This is done once per month. However, if both traditional defragmentation and retrim are skipped, then analysis isn't run. Changing the frequency of the scheduled task doesn't affect the once per month cadence for the SSDs.
"He was told by a VMWare engineer that if you run Windows defragmenation on the virtual server while also are using de-duplication on the storage, it can cause corruption of data on the virtual server and/or the VMDK"
Yes....great data there. I've seen reallocate really help as well (the most dramatic example was a bunch of Groupwise servers on FC disk where reallocate cut latencies more than in half). I'm still wrestling between when it makes sense to use "reallocate" vs. "reallocate -p" (if there are any difference in how long it takes to run, how it impacts speed, exactly how much -p helps with snapshot deltas, etc.).
I'd add to your list interaction with VSM. Data transferred after reallocate will be defragmented; but after reallocate -p - not (at least if I correctly understand how it works). This may need to be taken in account if destination is often used for tasks like backup verification.
I noticed that data updates are written to free blocks, meaning the original block is not updated, but kept, since referenced by snapshots earlier made. So, may I conclude fragmentation is inherent to Netapp? May I conclude windows defrag might cause volumes running out of space? May I conclude that (in case we would have enough free space in the volume) the chance that less physical IO is initiated after defrag is negligible or even that in some cases the number of physical IO's might increase? May I conclude Windows will initiate less IO's since it thinks data is sequentialized, but the consequential number of IO's on Netapp is unpredicatable? May I conclude that the sql command "set statistics io on" does not tell me the truth about the number of physical reads executed on Netapp (or any other disk virtualisation/SAN system), only the number of physical IO windows or SQL thinks that have to be done?
3a8082e126