하드코어 Rust: 동적 메모리 할당 없는 광선 추적기

2025-01-30

이 글에서는 최소한의 인위적으로 제한된 API(동적 메모리 할당 없음)만 사용하여 Rust 애플리케이션을 작성하는 사례 연구를 설명합니다. 저자는 RAII(Resource Acquisition Is Initialization)가 지저분한 리소스 관리로 이어진다고 비판하며, "하드코어 모드"를 제안합니다. 이는 프로그램을 `std` 바이너리와 `#![no_std] no_alloc` 라이브러리로 분할하여 바이너리만 OS에서 직접 리소스를 요청하도록 허용하는 것입니다. 장난감 광선 추적기를 예로 사용하여 저자는 이 "하드코어 모드"에서 픽셀 버퍼, 병렬 처리, 메모리 할당기, 장면 파싱을 처리하는 방법을 자세히 설명하고, 궁극적으로 동적 메모리 할당 없이 광선 추적기를 구현합니다.

개발