Поведение синхронизации данных для файловых систем в Windows

Можно настроить поле окон для разрешения почтового реле от ubunto поля, а не файлов дампа в smtp папку

4
задан 19 May 2013 в 15:57
1 ответ

Я могу сразу сказать вам, что вы не сможете настроить стандартный драйвер хранилища Microsoft с с большой степенью детализации.

Это сложный вопрос, потому что диспетчер памяти и Cache Manager и дисковая система в Windows постоянно развиваются. Совет, который вы получите для Windows 2000, может не иметь отношения к Windows 2003, что может не иметь отношения к Windows 2008 и т. Д. Кроме того, у вас также есть такие приложения, как SQL Server с собственными комплексными диспетчерами кеширования, на которые могут совершенно не влиять непредсказуемо реагировать на любые изменения, которые вы вносите в кеш файловой системы ОС. Вдобавок ко всему, это тот вид функциональности, который будет передан стороннему драйверу хранилища, если вы его используете. Вы можете предположить, что предоставленный Microsoft является более общим и, следовательно, менее настраиваемым, чем драйвер, который вы можете получить от Intel или HP, который специализируется на их оборудовании. Многие драйверы производителей требуют, чтобы кеширование записи Windows было отключено, чтобы включить их собственное кэширование записи и т. Д.

С учетом всего сказанного, я могу вам помочь. Поскольку вы не указали, какая версия Windows, и, как я уже сказал, такие вещи, как пути, значения и функции реестра могут и действительно полностью изменяются между версиями Windows, я просто предполагаю 2008R2 / Win7.

Из этого Статья MS :

По умолчанию Windows кэширует данные файлов, которые считываются с дисков и Многие драйверы производителей требуют, чтобы кеширование записи Windows было отключено, чтобы включить их собственное кэширование записи и т. Д.

С учетом всего сказанного, я могу вам помочь. Поскольку вы не указали, какая версия Windows, и, как я уже сказал, такие вещи, как пути, значения и функции реестра могут и действительно полностью изменяются между версиями Windows, я просто предполагаю 2008R2 / Win7.

Из этого Статья MS :

По умолчанию Windows кэширует данные файлов, которые считываются с дисков и Многие драйверы производителей требуют, чтобы кеширование записи Windows было отключено, чтобы включить их собственное кэширование записи и т. Д.

С учетом всего сказанного, я могу вам помочь. Поскольку вы не указали, какая версия Windows, и, как я уже сказал, такие вещи, как пути, значения и функции реестра могут и действительно полностью изменяются между версиями Windows, я просто предполагаю 2008R2 / Win7.

Из этого Статья MS :

По умолчанию Windows кэширует данные файлов, которые считываются с дисков и записано на диски. Это означает, что операции чтения читают данные файла. из области в системной памяти, известной как системный файловый кеш, а чем с физического диска. Соответственно операции записи write данные файла в системный файловый кеш, а не на диск, и это Тип кеша называется кешем с обратной записью. Кеширование управляется для каждого файлового объекта.

Кэширование выполняется под управлением диспетчера кеша, который работает непрерывно во время работы Windows.

Когда я устанавливаю эти флажки в диспетчере устройств Windows на «Включить кэширование записи на устройстве» и «Отключить очистку буфера кэша записи Windows», эти изменения отражаются в значениях реестра в HKLM \ SYSTEM \ CurrentControlSet \ Enum \ \ \ \ Device Parameters \ Disk \ CacheIsPowerProtected = 1 и т. Д. Значения, которые я поместил в скобки, являются переменными.

Но я отвлекся. Вы хотите изменить поведение файлового кеша. Например, заставить его сбрасывать более или менее часто.

Вы сказали, что вас интересуют вызовы API, и это хорошо, потому что я думаю, что вас заинтересует Microsoft Windows Dynamic Cache Service . Думаю, это написал этот парень . Пример исходного кода прилагается. Операционные системы R2 были обновлены для решения многих проблем кеширования файлов. проблемы, обнаруженные в предыдущих версиях Windows. Есть только определенные уникальные ситуации, когда нужно реализовать эту услугу на компьютерах которые работают под управлением Windows 7 или Windows Server 2008 R2.

По сути, вы будете использовать функцию SetSystemFileCacheSize () Win32 API. Проверьте это:

MinimumFileCacheSize [in]

Минимальный размер файлового кеша в байтов. Диспетчер виртуальной памяти пытается сохранить хотя бы это количество резидентная память в системном файловом кэше.

Чтобы очистить кеш, укажите (SIZE_T) -1.

Это означает, что вы можете очистить кеш по своему желанию и по любому графику, который вам нравится.

Удачи!

4
ответ дан 3 December 2019 в 03:31

Теги

Похожие вопросы