2026 개정판 · 1차 8월 8일 공개전체 커리큘럼 →
TECH 으로 돌아가기
TECH HACKER NEWS 오늘 7분 읽기 27 READS

GNU Hurd 2026년 2분기: 커널을 대체하지 않고 조금씩 나아가는 방식

GNU Hurd는 1990년 GNU 프로젝트가 자체 운영체제를 완성하기 위해 시작한 커널로, 하나의 거대한 커널 대신 마이크로커널(GNU Mach) 위에서 파일시스템·네트워크·장치 접근 같은 기능을 '트랜슬레이터(translator)'라 부르는 사용자 공간 서버로 분리해 구현한다는 독특한 설계를 갖고 있다. 리눅스가 사실상의 GNU 커널 자리를 차지한 이후에도 Hurd는 소수의 자원봉사자들이 유지해 온 프로젝트다. 2026년 2분기 소식(이른바 'Qoth')은 이 프로젝트가 어떤 속도와 방식으로 움직이는지를 잘 보여준다. 화려한 발표보다는 POSIX 준수, 포팅, 버그 수정 같은 실무적 작업이 대부분을 차지한다.

장치 관리와 파일시스템의 실질적 개선

이번 분기에서 실무적으로 가장 흥미로운 항목은 Mikhail Karpov가 진행 중인 storeio의 부트스트랩 편입 작업이다. 현재 Hurd는 /dev/ 아래 장치 항목을 정적으로 등록한다. 원문 작성자는 자신의 Hurd 머신이 스왑용 /dev/wd0s1과 루트 파일시스템용 /dev/wd0s5만 사용하지만 실제로는 wd0s1부터 wd0s16까지 존재한다고 설명한다. Mikhail의 작업이 끝나면 부팅 시점에 SATA 장치를 동적으로 채우게 되어, 장치마다 정적 트랜슬레이터를 손수 설정할 필요가 없어진다. 다만 아직 완결된 상태는 아니며, 프로젝트 리더인 Samuel Thibault는 새 /dev 항목의 명명 방식을 두고 커뮤니티 피드백을 구하는 단계다. 이름 규칙 같은 사소해 보이는 결정이 아직 열려 있다는 점은 이 작업의 성숙도를 가늠하게 한다.

파일시스템 쪽에서는 Milos Nikic이 libdiskfs 버그를 고치고 ext3/ext4 저널의 교착 상태(deadlock) 버그를 잡았다. 지난 분기에 언급됐던 ext3/ext4 바이너리 호환 저널 작업은 Samuel이 정식으로 커밋했다. 리눅스와 저널 포맷 호환성을 확보하는 일은 같은 디스크를 두 시스템에서 다루려는 실사용 시나리오에서 의미가 있다. Sergey Bugaev는 9P 프로토콜 파일시스템(9pfs)을 작업 중이며 읽기에 더해 쓰기 지원까지 추가했고, Etienne Brateau는 msync에 검증을 넣어 POSIX 동작에 한발 더 맞췄다.

포팅과 이식성, 그리고 언어 다양화

Hurd에 아직 없던 요소들을 채우는 포팅 작업도 두드러진다. Mike Kelly는 OpenBSD의 OpenNTPD를 이식 중인데, Hurd에는 현재 NTP 데몬이 없었던 만큼 시간 동기화라는 기본 기능을 메우는 작업이다. 이 과정에서 그는 glibc 수정도 필요했고, SIGSTOP/SIGCONT가 파일 일부를 중복 처리하던 문제를 바로잡는 패치를 커밋했다. 다만 일부 하스켈 패키지 빌드에는 여전히 문제가 남아 있다고 밝혔다. 그가 rump에서 발견한 메모리 오류에 '임시방편(brown-tape)' 해결책을 댄 뒤, 같은 코드를 쓰는 NetBSD 쪽과 연락해 근본 수정을 해야 한다고 언급한 대목은 코드 공유가 양쪽 프로젝트에 이득이 된다는 점을 보여준다.

언어 측면의 실험도 눈에 띈다. Almudena Garcia는 러스트로 trivfs 구현을 시도 중이며, 아직 완성은 아니지만 러스트로 Hurd 트랜슬레이터를 작성하는 것이 가능한 단계에 이르렀다. yelini라는 사용자는 D 언어 컴파일러를 이식하고 있고, Milos Nikic은 Neovim을 포팅했다. Joan Lledó의 dhcpcd 이식은 계속됐고, dhcpcd 메인테이너 Roy Maples가 직접 도움을 줬다. AArch64 지원은 Paulo Duarte가 Sergey의 기존 작업을 커밋하려는 RFC 패치 시리즈를 보내며 진전을 이어갔다.

도구와 인프라의 지속성

Damien Zammit는 개발 중인 CI를 손보고, AArch64 리눅스에서 Hurd 테스트 스위트를 돌릴 수 있도록 여러 버그를 고쳤다. 또한 qemu의 Hurd 지원을 상류 qemu의 CI에 통합해 지원이 방치되어 썩는(bitrot) 것을 막으려 하고 있다. 소수 인력으로 운영되는 프로젝트에서 이런 자동화 기반은 기여의 지속성을 좌우하는 요소다. 그 밖에도 Diego Nieto Cid가 권한 있는 사용자의 태스크 우선순위(nice) 설정을 glibc와 GNU Mach에 반영하고 adjtime 버그를 고쳐 OpenNTPD 이식을 도왔으며, Sophiel Zhou는 pfinet이 메모리 압박 상황에서 실패하지 않도록 손봤다. Bradley Morgan은 procfs가 숨김 파일을 보이게 하고, 그동안 조용히 무시되던 init의 '-s' 옵션이 실제로 동작하도록 고쳤다.

한국 실무자 입장에서 Hurd는 당장 프로덕션에 투입할 대상이라기보다, 마이크로커널 아키텍처와 사용자 공간 트랜슬레이터 모델이 실제 운영체제에서 어떻게 구현되는지를 관찰할 수 있는 살아 있는 사례다. 이번 분기 내용은 극적인 도약이 아니라 NTP 데몬 확보, 동적 장치 등록, 저널 호환성처럼 '보통의 운영체제라면 이미 있는 것'을 하나씩 메우는 과정에 가깝다. 러스트·D 같은 언어로 시스템 컴포넌트를 작성해 보려는 사람이나, 마이크로커널 설계를 코드 수준에서 들여다보려는 개발자에게는 참고 가치가 있지만, 아직 여러 기능이 진행 중(WIP)이고 임시방편에 의존하는 부분이 남아 있다는 한계도 분명하다. NVMe 지원처럼 rump로 가능하지만 아직 손대지 않은 영역이 남아 있다는 언급은 이 프로젝트가 여전히 기여자를 기다리는 상태임을 드러낸다.

SOURCE · HACKER NEWS
원문 전체 보기 → https://www.gnu.org/software/hurd/news/2026-q2.html
SHARE
NEXT · CHOOSE

변화를 읽었다면,
내가 만들 수익 구조를 고릅니다.

정보를 더 모으는 데서 멈추지 않고, 광고·외주·판매·중개·구독 중 내 상황에 맞는 출발점을 정해보세요.

21가지 수익 구조 살펴보기
처리 중...