Utility spotlight pagedefrag

Огляд службових програм PageDefrag

Ленс Уїтні (Lance Whitney)

Завантажити вихідний код для цієї статті: PageDefrag (70KB)

Звичайна програма дефрагментації Windows ® дозволяє оптимізувати основну частину файлів, що знаходяться на жорсткому диску, але деякі з них не обробляються більшістю програм дефрагментації. Файли, відкриті і заблоковані для монопольного доступу, такі як файл підкачки Windows і гілки реєстру, зазвичай не обробляються програмою-дефрагментатором, що входять до складу ОС Windows, а також програмами сторонніх постачальників. Стандартні інтерфейси API Windows не підтримують дефрагментацію тих файлів, які знаходяться у використанні. На щастя, службова програма PageDefrag, створена Марком Русиновича для компанії Sysinternals, дозволяє заощадити багато часу, дефрагментіруя ті файли, які залишаються недоторканими іншими програмами.

Програма PageDefrag дозволяє дефрагментувати файл підкачки Windows, гілки реєстру, журнали подій і файл сплячого режиму (область диска, в якій зберігається вміст пам'яті при переході ноутбука в сплячий режим). Програма оптимізує ці файли в ході завантаження комп'ютера, перед початком їх використання.

Щоб запустити програму PageDefrag, досить двічі клацнути файл pagedfrg.exe. Програма відображає імена всіх файлів, які він може обробити при дефрагментації (див. Рис. 1). Файл підкачки - pagefile.sys. Гілки реєстру представлені у вигляді окремих файлів на кожну гілку - DEFAULT, SAM, SECURITY, SOFTWARE і SYSTEM. Журнали подій також відображаються у вигляді окремих файлів: наприклад, AppEvent.evt є журналом додатків, SecEvent.evt - журналом безпеки, журнал SysEvent.evt - системним журналом. І, нарешті, файл сплячого режиму -Hiberfil.sys.

Мал. 1 Програма PageDefrag відображає імена всіх файлів, які вона може обробити (Клацніть зображення, щоб збільшити його)

Поруч з ім'ям кожного файлу розташований стовпець кластерів (Clusters), який показує, скільки кластерів диска відведено для даного файлу, і стовпець фрагментів, який показує, скільки фрагментованих або непослідовних частин файлів розкидані по диску. Грунтуючись на цих даних, можна визначити, чи потребують файли в дефрагментації.

Є дві можливості: можна дефрагментувати файли при подальшій перезавантаженні або при кожному перезавантаженні. Якщо тільки файли не знаходяться в постійному використанні і ваш комп'ютер не є сервером або іншим пристроєм, який рідко перезавантажується, ви досягнете чудових результатів в дефрагментації при подальшій перезавантаженні. Крім того, існує затримка у вигляді зворотного відліку часу, так що у вас завжди є можливість перервати процес дефрагментації при запуску комп'ютера.

При подальшій перезавантаженні комп'ютера зазвичай буде запущена програма chkdsk, після чого стартує програма PageDefrag. Файли, розміщені у вигляді послідовних кластерів, не обробляються. Файли, розбиті на фрагменти, оптимізуються послідовно, один за іншим. Програма показує ім'я дефрагментіруемого елемента, повідомляє про те, чи успішно виконана дефрагментація, і перераховує кількість кластерів, зайнятих файлом до і після дефрагментації.

Програма PageDefrag може виявитися нездатною оптимізувати файли, якщо комп'ютер має недостатньо вільного простору на диску або це вільний простір саме сильно фрагментована. У цих випадках вам потрібно буде звільнити додатковий простір і спочатку запустити програму дефрагментації Windows, щоб оптимізувати вільний простір, а потім повторно запустити програму PageDefrag.

Програма PageDefrag зазвичай працює швидко, оскільки вона обробляє лише мала кількість файлів, однак якщо файли сильно фрагментовані, для дефрагментації знадобиться чимало часу, особливо в перший раз. Після того як програма PageDefrag завершить свою роботу, Windows запускається звичайним чином. Тепер можна запустити програму ще раз, щоб переконатися, що кожен файл тепер являє собою єдиний фрагмент.

Програму PageDefrag можна запустити неінтерактивному, за допомогою командного рядка або сценарію, використавши ключі -e для дефрагментації по завантаженню (Defrag boot), -o для одноразової дефрагментації (Defrag once), -n для відмови від дефрагментації (Never Defrag) і -t для вказівки часу затримки в секундах (Set countdown) перед запуском програми pagedfrg.exe.

Для отримання додаткових відомостей і завантаження копії програми відвідайте веб-сторінку microsoft.com/technet/sysinternals/FileAndDisk/PageDefrag.mspx.

Ленс Уїтні (Lance Whitney) - консультант з інформаційних технологій, викладач і розробник технічної документації. Незліченна кількість годин він проводить за налаштуванням робочих станцій і серверів Windows. Журналіст за професією, 15 років тому він зайнявся вивченням інформаційних технологій.