![Linux에도 페이지가 아닌 메모리가 있습니까?](https://linux55.com/image/179260/Linux%EC%97%90%EB%8F%84%20%ED%8E%98%EC%9D%B4%EC%A7%80%EA%B0%80%20%EC%95%84%EB%8B%8C%20%EB%A9%94%EB%AA%A8%EB%A6%AC%EA%B0%80%20%EC%9E%88%EC%8A%B5%EB%8B%88%EA%B9%8C%3F.png)
Windows에서는 커널과 드라이버가 사용하는 비페이징 메모리를 찾을 수 있습니다. (내 이해로는).
- Linux에도 페이지가 아닌 메모리가 있습니까?
- 제가 이해한 바에 따르면, 모든 메모리 바이트는 커널/사용자 공간에서 사용되기 전에 할당된 페이지에 있어야 합니다. 비페이징 메모리가 Windows에서 작동하는 이유는 무엇입니까? (또는 Linux의 경우에도)
답변1
Windows 세계의 "페이징"은구체적인 의미가 있다: 페이징된 메모리는 디스크에 페이징할 수 있는 메모리(Linux 용어로 스왑 아웃)이고, 비페이징 메모리는 디스크에 페이징할 수 없는 메모리입니다.
예, Linux에는 커널을 교체할 수 없다는 용어에 따라 비페이징 메모리도 있으며, 사용자 프로세스는 물리적 메모리에 "잠겨 있어" 교체할 수 없는 메모리를 할당할 수도 있습니다.
여기의 페이징은 매핑된 메모리 페이지가 아닙니다. Windows와 Linux 모두 페이지를 사용하여 메모리를 매핑하며, 메모리가 페이지에 매핑되지 않으면 메모리에 액세스할 수 없습니다(커널에서도).