Когда следует использовать Kernel-Mode KTM

Вы можете использовать KTM в режиме ядра с компонентом режима ядра для поддержки транзакций в режиме ядра или для координации транзакций между компонентом режима ядра, использующим KTM в режиме ядра и компонентом пользовательского режима, использующим KTM в пользовательском режиме.

Например, можно использовать KTM в следующих ситуациях:

  • Драйвер в режиме ядра должен открыть файл, изменить содержимое файла и сохранить измененный файл, и он должен предотвратить повреждение файла, если операция записи завершается ошибкой. Если драйвер выполняет эти операции в рамках транзакции, драйвер не должен копировать и переименовать старый файл, изменять новую копию, удалять старый файл, а затем переименовать новую копию.

  • Вы разрабатываете новую систему хранения данных, которая хранит сведения в одной или нескольких базах данных. Компоненты системы будут получать доступ к базам данных в режиме ядра или, возможно, в пользовательском режиме и в режиме ядра. Транзакционные клиенты вашей системы инкапсулируют свои операции базы данных в транзакциях, чтобы все изменения всех баз данных либо проходили успешно, либо завершались неудачей как единое целое.