Компонент кэширования диска Microsoft Windows
ReadyBoost (кодовое название EMD [1] ) — программный компонент кэширования диска , разработанный Microsoft для Windows Vista и включенный в более поздние версии Windows . ReadyBoost позволяет использовать устройства массового хранения данных NAND CompactFlash , SD-карты и USB-флеш-накопители в качестве кэша между жестким диском и оперативной памятью в целях повышения производительности вычислений. ReadyBoost использует SuperFetch и также настраивает свой кэш на основе активности пользователя. ReadyDrive для гибридных дисков реализован аналогично ReadyBoost. [2]
Обзор
Использование флэш-памяти с поддержкой ReadyBoost ( устройств памяти NAND ) для кэширования позволяет Windows Vista и более поздним версиям обслуживать произвольные чтения с диска с более высокой производительностью, чем без кэширования. Это кэширование применяется ко всему содержимому диска, а не только к файлу подкачки или системным DLL. USB-устройства флэш-памяти обычно быстрее механических жестких дисков для произвольного доступа и медленнее механических жестких дисков для последовательного доступа. Получение преимущества кэширования подразумевает, что ReadyBoost будет обращаться к флэш-памяти для случайных битов данных. Соответственно, ReadyBoost включает логику, которая распознает большие последовательные запросы на чтение и заставляет жесткий диск обслуживать эти запросы вместо этого. [3]
При подключении совместимого устройства диалоговое окно Windows AutoPlay предлагает дополнительную возможность использовать флэш-накопитель для ускорения работы системы; в диалоговое окно свойств накопителя добавляется дополнительная вкладка ReadyBoost , где можно настроить объем используемого пространства. [4] Минимальный размер кэша составляет 250 МБ. В Vista или при форматировании накопителя в FAT32 максимальный размер составляет 4 ГБ. В Windows 7 или более поздних версиях с форматированием в NTFS или exFAT максимальный размер кэша составляет 32 ГБ на устройство. Windows Vista позволяет использовать только одно устройство, тогда как Windows 7 позволяет использовать несколько кэшей, по одному на устройство, общим объемом до 256 ГБ. [5]
ReadyBoost сжимает и шифрует все данные, которые размещаются на флэш-устройстве, с помощью AES-128 ; Microsoft заявила, что типичным является коэффициент сжатия 2:1, поэтому кэш объемом 4 ГБ обычно содержит 8 ГБ данных. [6]
Требования
Чтобы устройство было совместимым и полезным, оно должно соответствовать следующим требованиям:
- Емкость съемного носителя должна быть не менее 256 МБ [7] (250 МБ после форматирования, Windows 7 сообщает в своем журнале событий о требуемом минимуме в 235 МБ).
- Windows 7 позволяет использовать до восьми устройств с максимальным объемом дополнительной памяти 256 ГБ [8] и до 32 ГБ на одном устройстве хранения данных [9] .
- Время доступа устройства должно быть не более 1 мс.
- Устройство должно обеспечивать скорость чтения 2,5 МБ/с для случайных операций чтения объемом 4 КБ, равномерно распределенных по всему устройству, и скорость записи 1,75 МБ/с для случайных операций записи объемом 512 КБ, равномерно распределенных по всему устройству. [10]
- Группа Microsoft Windows Client Performance рекомендует соотношение флэш-памяти к системной оперативной памяти от 1:1 до 2,5:1. [3]
Другие соображения:
- ReadyBoost в Vista поддерживает NTFS , FAT16 и FAT32, начиная с SP1. Windows 7 также поддерживает более новую файловую систему exFAT . Поскольку кэш ReadyBoost хранится в виде файла, флэш-накопитель должен быть отформатирован как FAT32, NTFS или exFAT, чтобы размер кэша превышал ограничение FAT16 в 2 ГБ; если желаемый размер кэша составляет 4 ГБ (ограничение FAT32) или больше, диск должен быть отформатирован как NTFS или exFAT. Различия в производительности между этими файловыми системами незначительны с ReadyBoost.
- Первоначальный выпуск ReadyBoost для Windows Vista поддерживал одно устройство. Windows 7 поддерживает несколько флэш-накопителей для ReadyBoost, поэтому можно ожидать улучшения производительности, аналогичного RAID 0 .
- Алгоритм ReadyBoost был улучшен в Windows 7, что привело к повышению производительности. Один эксперимент показал, что чтение флэш-памяти в 5–10 раз быстрее, чем в Windows Vista, из-за более высокой скорости попадания. [ необходима цитата ]
- Поскольку ReadyBoost хранит свой кэш в виде файла в корневом каталоге диска, а не использует флэш-память без файловой системы, файловая система должна быть смонтирована . Кэш ReadyBoost создается в корневом каталоге диска.
- Если системный диск (основной диск с системными файлами Windows) является твердотельным диском (SSD), ReadyBoost отключается, поскольку чтение с этого диска будет по крайней мере таким же быстрым, как чтение с диска ReadyBoost. [7]
- ReadyBoost кэширует все данные по мере их записи на локальный жесткий диск: «драйвер устройства Ecache.sys перехватывает все операции чтения и записи на локальные тома жесткого диска (например, C:\) и копирует все записываемые данные в файл кэширования, созданный службой». [6] SuperFetch предварительно заполняет часто считываемые данные в кэш ReadyBoost, поэтому SuperFetch необходим для хорошей работы ReadyBoost. [11]
- ReadyBoost несовместим с портативными медиаустройствами, такими как мобильные телефоны или камеры , а также другими устройствами с эмулированным хранилищем.
ReadyBoost недоступен в Windows Server 2008. [ 12] Начиная с версии 22H2, Microsoft удалила ReadyBoost из Windows 11. [ 13]
Производительность
Система с 512 МБ ОЗУ (минимальное требование для Windows Vista) может увидеть значительный прирост от ReadyBoost. [14] [15] В одном тестовом случае добавление 1 ГБ памяти ReadyBoost ускорило операцию с 11,7 секунд до 2 секунд. Однако увеличение физической памяти (ОЗУ) с 512 МБ до 1 ГБ (без ReadyBoost) сократило ее до 0,8 секунд. [16] Производительность системы с ReadyBoost можно отслеживать с помощью Windows Performance Monitor. [17] По мере снижения стоимости ОЗУ и установки большего количества ОЗУ на компьютерах, смягчение последствий, предоставляемое ReadyBoost для систем с недостаточным объемом памяти, уменьшалось.
Основная идея ReadyBoost заключается в том, что флэш-память (например, USB-флеш-накопитель или SSD ) имеет гораздо более быстрое время поиска, чем типичный магнитный жесткий диск (менее 1 мс), что позволяет ей удовлетворять запросы быстрее, чем чтение файлов с жесткого диска. Она также использует неотъемлемое преимущество двух параллельных источников, из которых можно считывать данные, в то время как Windows 7 позволяет использовать до восьми флэш-накопителей одновременно, допуская до девяти параллельных источников. Флеш-накопители USB 2.0 медленнее для последовательного чтения и записи, чем современные настольные жесткие диски. Настольные жесткие диски могут поддерживать скорость передачи данных в 2–10 раз выше, чем USB 2.0 флэш-накопители, но равны или медленнее, чем USB 3.0 и Firewire (IEEE 1394) для последовательных данных. USB 2.0 и более быстрые флэш-накопители имеют более быстрое время случайного доступа : обычно около 1 мс по сравнению с 12 мс для обычных настольных жестких дисков. [18]
На ноутбуках производительность больше смещается в пользу флэш-памяти, когда память ноутбука дороже памяти настольного компьютера; многие ноутбуки также оснащены относительно медленными жесткими дисками со скоростью вращения 4200 об/мин и 5400 об/мин.
В оригинальном выпуске Windows Vista ReadyBoost не распознавал данные кэша при выходе из спящего режима и перезапускал процесс кэширования, делая ReadyBoost неэффективным на машинах, подвергающихся частым циклам сна/пробуждения. Эта проблема была исправлена в Vista SP1. [19]
Ограничения
Поскольку флэш-накопители изнашиваются после конечного (хотя и очень большого) количества записей, ReadyBoost в конечном итоге изнашивает используемый им диск. По данным группы Microsoft Windows Client Performance, диск должен работать не менее десяти лет. [3]
Смотрите также
Ссылки
- ^ Moulster, Ian (6 апреля 2006 г.). «SuperFetch, ReadyBoost и ReadyDrive: некоторые новые названия функций для вас». Блоги MSDN . Microsoft . Получено 11 июля 2015 г. .
- ^ Руссинович, Марк (2007). «Изменения ядра Windows Vista». Microsoft. Архивировано из оригинала (PPTX) 12 сентября 2007 г. Получено 12 июля 2015 г.
- ^ abc Арчер, Том; Айерс, Мэтт (2006-06-02). "ReadyBoost Q&A". Блог Тома Арчера . Блоги MSDN . Архивировано из оригинала 25-12-2006 . Получено 17-04-2023 .
- ^ Том Арчер (14 апреля 2006 г.). "ReadyBoost - Использование USB-ключа для ускорения работы Windows Vista". Блог Тома Арчера . Microsoft . Получено 21 мая 2006 г.
- ^ Мариус Оиага (12 октября 2009 г.). «Windows 7 RTM ReadyBoost 256 ГБ поддержки кэш-памяти». SOFTPEDIA . SoftNews NET SRL . Получено 09.01.2013 .
- ^ ab Марк Руссинович (март 2007 г.). "Внутри ядра Windows Vista: часть 2". TechNet Magazine . Microsoft . Получено 2007-03-01 .
- ^ ab "Понять ReadyBoost и ускорить ли он вашу систему". TechNet Magazine . Microsoft . Получено 2012-12-14 .
- ^ Microsoft Windows. "Функции Windows 7 - ReadyBoost - Microsoft Windows" . Получено 22.09.2009 .
- ^ Microsoft Windows. "Использование памяти в вашем устройстве хранения данных для ускорения работы компьютера" . Получено 2012-01-04 .
- ^ Эд Ботт, ZDNet. «Достаточно ли быстр ваш флэш-накопитель для Vista's ReadyBoost?». ZDNet . Получено 04.01.2012 .
- ^ "ReadyBoost - Robbie's Benchmark". 14 апреля 2012 г. Получено 17 октября 2014 г.
- ^ Руссинович, Марк (март 2008 г.). «Изменения ядра в Windows Server 2008 изнутри». Microsoft . Получено 10 мая 2009 г.
- ^ «Вкладка Readyboost отсутствует после обновления 22h2 — Сообщество Microsoft».
- ^ Смит, Райан. «Руководство по производительности Windows Vista». www.anandtech.com . Получено 13.03.2019 .
- ^ Шмид, Патрик. «Анализ SuperFetch и ReadyBoost в Windows Vista: заключение». Toms Hardware. 31.01.2007.
- ^ AnandTech: Руководство по производительности Windows Vista
- ^ Шульц, Грег. «Следите за ReadyBoost с помощью монитора производительности Windows 7». Архивировано 26 сентября 2013 г. на Wayback Machine TechRepublic. 24 марта 2010 г.
- ^ "WD Scorpio Blue Mobile: Характеристики накопителя". Western Digital . Июнь 2010. Архивировано из оригинала 5 января 2011. Получено 15 января 2011 .
- ^ Чжэн, Лонг (2007-07-09). "Vista SP1 исправит критическую ошибку производительности ReadyBoost". istartedsomething . Получено 2019-03-13 .
Внешние ссылки
- Узнайте, что такое ReadyBoost и ускорит ли он вашу систему
- Патент Microsoft на программное обеспечение ReadyBoost
- AnandTech: Руководство по производительности Windows Vista — ReadyBoost, анализ производительности ReadyBoost, а также производительность жесткого диска и ReadyBoost