Я не глибокий у дефрагментації, але хотів би поділитися деякою інформацією щодо вашого питання. У першій частині вашого запитання MSDN згадує про алгоритми дефрагментації у своєму блозі:
У Windows XP будь-який файл, розбитий на кілька частин, вважається фрагментарним. Не так у Windows Vista, якщо фрагменти досить великі - алгоритм дефрагментації був змінений (з Windows XP), щоб ігнорувати фрагменти файлу, розміром яких більше 64 Мб. Як результат, defrag у XP та defrag у Vista повідомлять про різну кількість фрагментації на об’єм. Отже, який з них правильний? Ну, перш ніж відповісти на питання, ми повинні зрозуміти, чому дефрагмент у Vista змінився. У Vista ми проаналізували вплив дефрагментації та визначили, що найбільш значні показники підвищення продуктивності від дефрагментації - це коли файли об'єднуються у досить великі шматки, так що вплив затримки пошуку диска не має значного відносно затримки, пов'язаної з послідовним читанням файл.є момент, після якого комбінування фрагментованих фрагментів файлів не має відчутної користі .
Ви можете прочитати всю статтю тут: Інженерія Windows 7 - Дефрагментація диска.
На другу частину вашого запитання Piriform Docs має відповідь:
Дефрагментатор має два різних режими дефрагментації: звичайну дефрагментацію та швидку дефрагмацію. Швидка дефрагментація швидша, але результати не такі оптимальні, як при звичайній дефрагментації.
Швидкий Defrag працює швидше, пропускаючи файли, які мають певні властивості. Вони вказані на вкладці "Швидка дефрагментація" діалогового вікна "Параметри".
За замовчуванням правило швидкої дефрагмації - пропускати файли з фрагментами більше 50 Мб.
Для кращого розуміння дефрагментації у Вікіпедії є хороша сторінка .