2
리눅스 커널의 버디 시스템 할당 자와 관련하여 의심의 여지가 있습니다. 리눅스 커널의 버디 시스템 할당 자
버디 시스템은 할당 된 1백28킬로바이트의 RAM이 있다고 가정 : 이 예를 생각해 보자. kmalloc을 사용하여 32KB를 할당 한 경우, 내 이해는128KB는 1 단계에서 두 개의 64KB로 분할되고 첫 번째 64KB는 두 개의 32KB로 분할됩니다. 그러면 처음 32KB가 할당됩니다.
확실히 96KB의 연속 메모리를 사용할 수 있습니다.
지금이 단계에서 90KB를 할당하면 어떻게됩니까? kmalloc 실패 또는 버디 (또는 심지어 슬랩) 할당자가이 문제를 처리하고 요청 된 메모리를 성공적으로 할당합니까?