저는 현재 운영 체제에서 메모리 관리 작업을 하고 있습니다.
할당 단위는 운영 체제가 프로세스에 할당하는 가장 작은 메모리 단위입니다.
내가 읽고이 페이지"커널 내 메모리 할당" 섹션에서 페이지는 운영 체제가 프로세스에 할당하는 가장 작은 단위입니다.
하지만이 페이지, "할당된 메모리" 섹션에는 운영 체제가 이를 더 작은 청크(예: 6바이트)로 나누어 요청 시 애플리케이션에 제공할 수 있다고 나와 있습니다.
두 링크가 모두 동일한 내용을 말하는지는 잘 모르겠지만 제 질문은 다음과 같습니다. 가상 메모리와 페이징이 있는 운영 체제의 공통 할당 단위는 무엇입니까?
답변1
두 번째 참조에서는 다음과 같이 말합니다.
메모리 할당자는 큰 메모리 청크(예: 4페이지 또는 4 * 4 KiB)를 가져와 더 작은 청크로 나눕니다.
"메모리 할당자"는 커널이 아니라 malloc과 같은 libc 루틴입니다.
커널은 메모리를 할당합니다프로세스에페이지 크기의 청크로 구성됩니다. 애플리케이션이 이러한 페이지를 요청하고 해제하면 malloc은 이러한 페이지의 사용된 부분과 사용되지 않은 부분을 추적합니다.