Функция RtlCopyMemoryNonTemporal (wdm.h)

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

Синтаксис

NTSYSAPI VOID RtlCopyMemoryNonTemporal(
  VOID       *Destination,
  const VOID *Source,
  SIZE_T     Length
);

Параметры

Destination

Указатель на целевой блок памяти, в который копируются байты.

Source

Указатель на исходный блок памяти для копирования байтов.

Length

Число байтов для копирования из источника в место назначения.

Возвращаемое значение

Нет.

Remarks

RtlCopyMemoryNonTemporal выполняет не темпоральное копирование только для систем на базе x64 и только в том случае, если параметр Length равен 8 байтам или больше. В противном случае эта функция эквивалентна RtlCopyMemory.

Вызывающие элементы RtlCopyMemoryNonTemporal могут выполняться в любом irQL, если исходный и целевой блоки памяти находятся в системной памяти без загрузки. В противном случае вызывающий объект должен выполняться в irQL <= APC_LEVEL.

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows 2003 и более поздних версиях.
Целевая платформа Универсальное
Верхняя часть wdm.h
DLL NtDll.lib (пользовательский режим); NtosKrnl.lib (режим ядра)
IRQL Любой уровень (см. раздел "Примечания")

См. также раздел

RtlCopyMemory