저는 메모리 장벽이 정확히 무엇인지 이해하려고합니다. 메모리 장벽 (예 : mfence
)은 메모리 장벽의 전후에서 후방으로 지침 순서를 변경하지 못하도록 방지하는 데 사용됩니다.메모리 장벽은 CPU가 실행하는 명령어입니까, 아니면 단지 마커입니까?
이 사용중인 메모리 장벽의 예입니다
instruction 1
instruction 2
instruction 3
mfence
instruction 4
instruction 5
instruction 6
이제 내 질문은 다음 mfence
명령은 명령을 실행하기 위해 어떤 순서로 CPU를 말하는 단지 마커인가? 또는 다른 명령 (예 : mov
)을 실행하는 것처럼 CPU가 실제로 실행하는 명령입니까?
CPU가 실행하는 명령입니다. 다른 종류의 명령은 없습니다. –