
프로그래밍 언어 파스칼(Pascal)을 만든 니클라우스 비르트(Niklaus Wirth)라는 이름, 한 번쯤 들어보셨을 거예요. 2024년 초에 세상을 떠난 컴퓨터 과학의 거장인데요. 이분이 남긴 유산 중에 '프로젝트 오베론(Project Oberon)'이라는 조금 특별한 물건이 있어요. 프로그래밍 언어, 컴파일러, 운영체제, 그래픽 UI까지 전부를 단 두 사람이 바닥부터 만들어낸 완전한 컴퓨터 시스템이거든요. 그런데 최근 이 오베론 시스템이 요즘 가장 뜨거운 개방형 CPU 아키텍처인 RISC-V 위에서 돌아가도록 포팅됐다는 소식이 나왔어요.
프로젝트 오베론이 뭐길래
1980년대 후반, 스위스 취리히 연방공대(ETH)에서 비르트와 동료 유르크 구트크네히트는 좀 무모한 일을 벌여요. 남이 만든 OS 위에 뭘 얹는 게 아니라, 언어 설계부터 컴파일러, 운영체제, 문서 편집기, 화면 UI까지 전부 직접 만들기로 한 거예요. 그렇게 나온 게 오베론 언어와 오베론 시스템이고, 1992년에 나온 책 한 권에 이 시스템의 전체 소스 코드와 설계 설명이 통째로 실렸어요. 책 한 권에 OS와 컴파일러 소스가 다 들어간다는 건, 시스템 전체가 사람 한 명이 읽고 이해할 수 있는 크기라는 뜻이거든요. 수천만 줄짜리 리눅스 커널과 비교하면 얼마나 극단적인 미니멀리즘인지 감이 오실 거예요.
RISC-5와 RISC-V, 헷갈리는 이름의 사연
2013년, 은퇴한 비르트는 이 시스템을 현대에 되살리기로 해요. 그런데 마음에 드는 단순한 CPU가 없자 아예 CPU까지 직접 설계해버려요. FPGA라는, 회로를 소프트웨어처럼 다시 짤 수 있는 칩 위에 올린 이 자작 프로세서의 이름이 'RISC', 흔히 RISC5라고 불리는데요. 여기서 재미있는 이름 충돌이 생겨요. UC 버클리에서 시작된 개방형 명령어 집합 RISC-V(리스크 파이브)와 이름이 거의 똑같거든요. 둘은 완전히 별개예요. 비르트의 RISC5는 오베론을 위해 만든 소박한 교육용 CPU고, RISC-V는 지금 인텔·ARM의 대항마로 전 세계 반도체 업계가 밀고 있는 표준이죠. 이번 소식은 오베론 컴파일러를 오랫동안 연구해온 개발자 로쿠스 켈러(Rochus Keller)가 컴파일러의 백엔드, 그러니까 기계어를 뽑아내는 부분을 32비트 RISC-V(RV32) 명령어를 내보내도록 바꿔서, 오베론 시스템 전체가 '진짜' RISC-V 위에서 돌아가게 만들었다는 거예요.
이게 왜 의미가 있냐면
지금까지 오리지널 오베론 시스템을 돌려보려면 특정 FPGA 보드를 구해서 비르트의 자작 CPU를 올리거나 전용 에뮬레이터를 써야 했어요. 진입 장벽이 꽤 높았던 거죠. 그런데 RISC-V로 포팅되면서 이야기가 달라져요. RISC-V는 QEMU 같은 표준 에뮬레이터가 잘 갖춰져 있고, 몇 천 원짜리 개발 보드부터 서버용 칩까지 실물 하드웨어도 쏟아지고 있거든요. 살아 있는 생태계 위에 올라탄 덕분에, 30년 된 이 시스템을 오늘날의 개발 환경에서 훨씬 쉽게 만져볼 수 있게 된 거예요. 죽은 유물을 박물관에 두는 게 아니라, 현역 무대로 옮겨온 셈이죠.
업계 맥락: '이해 가능한 시스템'이라는 계보
오베론은 혼자가 아니에요. MIT가 교육용으로 만든 미니 유닉스 xv6처럼, 전체를 읽고 이해할 수 있는 작은 시스템으로 컴퓨터의 원리를 가르치려는 흐름이 꾸준히 있거든요. 그리고 오베론의 유전자는 의외로 가까운 곳에도 있어요. Go 언어를 만든 사람 중 한 명인 로버트 그리즈머가 비르트의 제자였고, Go의 패키지 구조나 단순함을 향한 집착에는 오베론의 영향이 짙게 배어 있다고 알려져 있어요. 우리가 매일 쓰는 도구의 뿌리를 거슬러 올라가면 이 작은 시스템이 나오는 거죠. 여기에 RISC-V 생태계의 성장까지 겹치면서, '단순한 소프트웨어 + 개방형 하드웨어'라는 조합이 하나의 완결된 학습 코스가 된 셈이에요.
한국 개발자에게 주는 시사점
솔직히 오베론을 실무에 쓸 일은 없을 거예요. 하지만 학습 재료로는 이만한 게 드물어요. 컴파일러는 어떻게 기계어를 만드는지, OS는 어떻게 메모리와 화면을 관리하는지, 언어에 내장된 가비지 컬렉션은 어떻게 도는지를 실제로 동작하는 전체 시스템 안에서 볼 수 있거든요. 책도 무료 PDF로 공개돼 있고요. 특히 요즘 국내에서도 RISC-V 기반 반도체와 임베디드 쪽 관심이 커지고 있는데, RISC-V 어셈블리와 시스템 구조를 공부할 겸 이 포팅 프로젝트의 소스를 읽어보는 건 꽤 좋은 코스예요. 거대한 추상화 위에서만 일하다 보면 바닥이 어떻게 생겼는지 잊기 쉬운데, 오베론은 그 바닥 전체를 한눈에 보여주는 드문 교재거든요.
정리하면, 한 사람이 전부 이해할 수 있는 완전한 컴퓨터 시스템이 현대의 개방형 CPU 위에서 다시 숨쉬게 됐다는 이야기예요. 여러분은 어느 쪽에서 더 많이 배우시나요? 바닥부터 전부 읽을 수 있는 작은 시스템일까요, 아니면 거대하지만 실전에서 검증된 시스템일까요?
🔗 출처: Hacker News