Kernel-Mode KTM을 사용해야 하는 경우
커널 모드 구성 요소와 함께 커널 모드 KTM을 사용하여 커널 모드에서 트랜잭션된 작업을 지원하거나 커널 모드 KTM을 사용하는 커널 모드 구성 요소와 사용자 모드 KTM을 사용하는 사용자 모드 구성 요소 간에 트랜잭션된 작업을 조정할 수 있습니다.
예를 들어 다음과 같은 상황에서 KTM을 사용할 수 있습니다.
커널 모드 드라이버는 파일을 열고, 파일의 내용을 수정하고, 수정된 파일을 저장해야 하며, 쓰기 작업이 실패할 경우 파일이 손상되지 않도록 해야 합니다. 드라이버가 트랜잭션 내에서 이러한 작업을 수행하는 경우 드라이버는 이전 파일을 복사 및 이름을 바꾸고, 새 복사본을 수정하고, 이전 파일을 삭제한 다음, 새 복사본의 이름을 바꿀 필요가 없습니다.
하나 이상의 데이터베이스에 정보를 저장하는 새 데이터 스토리지 시스템을 디자인하고 있습니다. 시스템의 구성 요소는 커널 모드 또는 사용자 모드와 커널 모드 모두에서 데이터베이스에 액세스합니다. 시스템의 트랜잭션 클라이언트는 모든 데이터베이스에 대한 모든 수정이 하나의 단위로 성공하거나 실패하도록 트랜잭션 내에서 데이터베이스 작업을 캡슐화합니다.