핵심 요약
- 인텔이 16비트 및 32비트 레거시 OS 지원을 제거하는 순수 64비트 아키텍처 'X86S' 지원 코드를 리눅스 6.9 커널에 추가 반영했습니다.
- 링 0 호환 모드 제거에 맞춰 보조 CPU 부팅 코드(trampoline_start64)를 재작업해 호환 모드를 거치지 않고 롱 모드로 진입하도록 개선했습니다.
- 기존 'X86-S'에서 공식 명칭이 'X86S'로 확정되었으며 차세대 인텔 FRED 기능과 함께 미래 프로세서를 위한 준비 작업이 진행 중입니다.
요약 인텔이 과거 레거시 유산이었던 16비트 및 32비트 운영체제 지원을 완전히 걷어내고 순수 64비트 전용 아키텍처로 전환하기 위해 발표했던 'X86S' 규격의 리눅스 커널 지원 작업이 본격적으로 이어지고 있습니다. 인텔은 약 1년 전 X86-S(현재 공식 명칭 X86S로 변경) 사양을 공개하며 아키텍처 간소화와 5단계 페이징 개선 등 x86_64 현대화를 추진해 왔습니다.
최근 리눅스 6.9 커널 머지 윈도우에 포함된 x86 부팅 개선 패치에는 코어 커널 전체를 위치 독립적 코드(-fPIC)로 빌드할 수 있도록 초기 시작 코드를 개선하는 작업과 함께, 링 0(Ring 0) 호환 모드 제거에 맞춘 X86S 대비 수정 사항이 대거 반영되었습니다.
특히 인텔 리눅스 엔지니어 키릴 슈테모프(Kirill Shutemov)에 따르면, 보조 CPU가 부팅될 때 사용하는 'trampoline_start64' 코드가 재작업되어 페이징 모드를 바꿀 필요가 없을 경우 호환 모드를 거치지 않고 바로 롱 모드로 진입하도록 변경되었습니다. 이를 통해 CPU가 올바른 페이징 모드에 머물러 있는 한 X86S 머신에서도 보조 CPU 부팅이 원활해지며, 향후에는 페이징을 비활성화하지 않고 모드를 전환하는 메커니즘도 추가될 예정입니다. 또한 리눅스 6.9에는 미래 프로세서 혁신의 또 다른 축인 인텔 FRED 지원도 함께 병합되는 등 차세대 아키텍처를 향한 밑작업이 차근차근 진행 중입니다.
Sponsored · 광고