리눅스 6.17, 1993년의 오래된 커널 제한 문제 해결을 목표로 하다

전문: https://www.phoronix.com/news/Linux-6.17-Execve

원저자: Michael Larabel | 작성일: 2025-07-27 00:34
사이트 내 게시일: 2025-07-27 10:21
리눅스 6.17은 1993년으로 거슬러 올라가는 커널의 오랜 제한 사항, 특히 프로그램 헤더에 대한 ELF_MIN_ALIGN 제약을 해결하는 것을 목표로 하고 있습니다. 이 제한은 ARM64 플랫폼에서 ELF 파일을 로드할 때 영향을 미치며, 특히 4K 페이지 크기를 사용할 때 문제가 발생합니다. 현재의 제한은 최대 74개의 프로그램 헤더를 허용하며, 이 수를 초과하는 ELF 파일을 로드할 때 실패할 수 있습니다. 반면, 64K 페이지 크기를 사용할 경우 ELF_MIN_ALIGN 제한이 크게 완화되어 1,184개 이상의 프로그램 헤더를 허용하므로 더 큰 ELF 파일을 성공적으로 로드할 수 있습니다.

이 문제는 커널 개발자 Kees Cook에 의해 발견되었으며, 그는 이 제한이 리눅스 0.99.15f 버전에서 명확한 이유 없이 도입되었다고 언급했습니다. ELF 사양 자체는 이러한 제한을 두고 있지 않으며, 현재 커널의 프로그램 헤더 처리 방식이 불필요하게 제한적임을 나타냅니다. ELF_MIN_ALIGN 제한을 제거함으로써 리눅스 6.17은 ELF 사양과 더 밀접하게 일치하게 되어, 더 큰 ELF 파일에 의존하는 애플리케이션의 호환성과 성능을 개선할 수 있는 가능성이 있습니다.

이 변경 사항은 광범위한 프로그램 헤더를 사용하는 현대 애플리케이션에 특히 중요하며, 이전의 제한이 성능과 기능을 저해할 수 있었습니다. 이 업데이트의 의미는 ARM64 플랫폼에서 작업하는 개발자들에게 상당히 중요하며, ELF 파일을 관리하는 데 있어 더 큰 유연성과 효율성을 허용하여 리눅스 환경에서 이진 프로그램을 실행하는 데 필수적인 ELF 파일을 다루는 데 도움을 줄 것입니다.

* 이 글은 phoronix.com의 기사를 요약한 것입니다. 전체 기사의 내용은 이곳에서 확인하실 수 있습니다.
카테고리: Software
태그: Linux (1813) kernel (314) Programming (83) ARM64 (43) ELF (1)

댓글

댓글을 쓰기 위해서는 로그인을 해 주세요.