alloc_zeroed — 0으로 초기화해 메모리 할당하기

alloc_zeroed — 0으로 초기화해 메모리 할당하기

alloc_zeroed는 전역 할당자로 메모리를 할당하면서, 할당된 모든 바이트를 0으로 채워서 반환하는 함수예요. 기본적으로 alloc과 같은 동작을 하지만, 할당 직후 메모리가 0으로 초기화된다는 점이 달라요.

출처: Rust 공식 문서

본문

pub unsafe fn alloc_zeroed(layout: Layout) -> *mut u8

메모리 정렬(alignment) 요구사항은 layout을 그대로 따르며, 반환된 원시 포인터가 널인지 직접 확인해야 해요. 모든 바이트가 0으로 초기화되어 있으니, 안전하지 않은 코드에서 MaybeUninit 등을 다루기보다 즉시 사용 가능한 0 값으로 시작하고 싶을 때 유용해요.

Safety (안전성): GlobalAlloc::alloc_zeroed 의 안전 요구사항을 그대로 따라요. 반환된 메모리에 접근하기 전에 유효한 layout을 사용하고, 올바르게 해제해야 해요.

더 알아보기 (Learn more)

Rust 공식 문서