플랫 메모리 vs 세그먼트 메모리: 재귀적 문제
Flat vs. segmented memory – it's recursive
x86 아키텍처에서 세그먼트 메모리 보호 기능이 64비트 전환과 빠른 시스템 콜 도입으로 약화된 과정을 돌아보며, Unix의 평면 주소 공간 선호가 그 원인이라고 분석한다. 저자는 메모리 분할이 재귀적 현상임을 강조하며, 하드웨어가 비재귀적 구조를 가진 한계를 지적한다. CHERI가 기능 기반 접근으로 이 문제를 해결하려는 시도를 소개하고, liballocs 프로젝트가 소프트웨어가 만드는 재귀적 구조를 포착하는 방식을 설명한다.
하드웨어는 비재귀적이지만 소프트웨어는 재귀적이라면, 이 차이를 어떻게 조화시킬 수 있을까?