Greg Kurtzer, Linux 없이 Linux 사용자 공간을 돌리는 커널 Ginux 공개
Greg Kurtzer's Ginux is now a userspace kernel
Ginux는 UEFI로 직접 부팅하는 Rust 기반 x86-64 커널·OS 프로토타입이다. 자체 메모리 관리, 스케줄러, VFS, 네트워킹, Linux ABI를 갖추고, ring 3에서 도는 내장 컨트롤러로 여러 도메인을 관리한다. 수정하지 않은 Alpine musl/BusyBox 프로그램과 Rocky Linux glibc 프로그램을 실행하고 Rocky Linux 10 systemd가 multi-user.target까지 도달한다. 다만 실험 단계로, Linux ABI 375개 시스템 콜 중 완전 구현은 82개뿐이며 프로덕션용이 아니다.
이름은 Linux와 같은 계열의 농담이다. Ginux는 Linux, GPT, Greg를 합친 것이고, 저자의 자아를 설정된 자원 한도 안에 묶어두기 위해 G는 공식적으로 GPT를 뜻한다.
HN 토론
74- qalmakka
이런 유저스페이스 커널들을 볼 때마다 항상 드는 의문은, Linux in Userspace가 이미 존재한다는 거다. 이미 root를 유저스페이스에 둔 채로 Linux를 부팅할 수 있다. 처음부터 새 커널을 작성하는 대신, 이미 전체 Linux API를 제공한다는 이점이 있는 usermode Linux를 고치거나 개선하는 건 어떨까?
- acd
Ginux는 User mode Linux와 어떻게 다른가?
- asdfsa32
linux namespaces가 존재하고 rootless namespaces가 전 영역에 걸쳐 접근 중인 상황에서 이건 좀 잘못된 접근 방식이다.
- ajasmin
그래서 리프 유저 프로세스들을 위해 여러 개의 격리된 주소 공간을 정확히 어떻게 제어할 수 있으며, syscall은 어떻게 처리하는가? 호스트 커널에 일반 유저 프로세스가 그렇게 할 수 있는 기능이 있는가?
- TnS-hun
어제 올라온 글: