Google's C Binder Driver Removed With Rust Binder Ready For "Few Billion Devices"
수십억 대 기기를 앞두고 C Binder 드라이버를 제거하고 Rust 버전으로 전환
Linux 7.4의 char/misc 변경에서 Android Binder의 C 드라이버가 제거됩니다. 기능 완성도와 안정성을 갖춘 Rust 드라이버로 Google의 개발 초점이 옮겨가며, 일부 테스트에서는 C 버전보다 높은 성능을 보였다고 전합니다.
- 주제
에디터 노트
C Binder를 없애고 Rust 구현으로 개발을 모으는 근거는 기능 동등성과 안정성입니다. 기사에는 일부 테스트에서 성능이 앞섰다는 언급도 있지만 테스트 조건이나 수치는 제시하지 않습니다. 따라서 이 소식은 성능 우위를 입증한 사례라기보다 유지보수 부담이 커진 커널 드라이버를 Rust 버전으로 교체하는 단계로 읽는 편이 정확합니다. 댓글에서는 Android Binder를 OpenBinder와 구분하고, SteamOS에서 Binder가 필요한 이유를 Android 사용자 공간 실행과 연결해 설명합니다. 후자는 댓글 참여자의 설명이며 기사에서 검증한 내용은 아닙니다. 다만 Binder가 Android 사용자 공간을 지원하는 커널 기능이라는 점은 드라이버 교체가 Android 기기뿐 아니라 Linux에서 Android 앱을 실행하려는 환경과도 맞닿아 있음을 보여줍니다.
AI 요약
Android에서 프로세스 간 통신에 쓰이는 Binder 드라이버의 C 구현이 Linux 7.4 변경에서 제거됩니다. Rust 구현은 기존 드라이버와 기능 동등성을 갖췄고 안정화됐으며, 일부 테스트에서는 C 버전보다 성능이 높았다고 합니다. Google은 앞으로 Rust 버전에 개발을 집중할 계획입니다. Greg Kroah-Hartman은 char/misc pull request에서 Rust 버전이 안정적이며 수십억 대 기기에서 쓰일 예정이라고 밝혔습니다.
Reddit 반응
- @AiwendilH — 제목만으로는 어떤 Binder인지 알기 어렵다고 지적했습니다. 처음에는 OpenBinder와 혼동했지만, Google이 Android에서 사용하는 Binder를 가리킨다는 정정을 반영했습니다.
- @anh0516 — OpenBinder는 Be와 Palm이 개발한 IPC 시스템이며, Android Binder의 기반이 됐다고 설명했습니다. 이번 변경은 Android Binder에 관한 것이라고 덧붙였습니다.
- @get_homebrewed — SteamOS 베타에 Binder가 포함된 이유를 물었습니다.
- @UARTman — 일반적인 Linux 사용자 공간에서는 많이 쓰이지 않을 것이라며, SteamOS의 Android 호환 계층과 관련이 있을 것이라고 추측했습니다.
- @anh0516 — Waydroid와 Lepton은 Android 사용자 공간을 LXC 컨테이너에서 실행한다고 설명했습니다. Android 사용자 공간에는 Binder를 포함한 커널 기능이 필요하며, Binder가 활성화된 배포판에서는 x86_64용 Android 앱이나 아키텍처 독립 앱을 실행할 수 있다고 했습니다. ARM 게임 에뮬레이션은 별도 문제라고 덧붙였습니다.
원문: Phoronix / 번역·요약: Trawling