Обычно все проверки доступа к странице отключены в режиме супервизора, и ядро может читать или записывать любую страницу независимо от того, доступна ли она только для чтения или помечена как страница супервизора или пользователя. Однако, если Защита доступа в режиме супервизора включена (CR4.SMAP = 1), то флаг A C определяет, может ли ядро читать или записывать страницы пользовательского режима. Если EFLAGS.A C равен 0, то чтение или запись на страницы пользовательского режима вызовут исключение сбоя страницы. Если EFLAGS.A C равен 1, то ядру разрешено читать и записывать страницы пользовательского режима.
Изобретены инструкции STA C и CLA C, чтобы обеспечить быструю и простую смену A C флаг в коде, как в вашем примере. При настройке EFLAGS.A C команде REP MOVSB разрешен доступ к страницам пользовательского режима. После очистки EFLAGS.A C в конце ядро снова защищается от случайного доступа в пользовательском режиме, который может быть использован вредоносным кодом.