처리중입니다. 잠시만 기다려주세요.
TTJ 코딩클래스
정규반 단과 자료실 테크 뉴스 코딩 퀴즈
테크 뉴스
Hacker News 2026.04.28 20

FreeBSD 디바이스 드라이버 책이 GitHub에 공개됐어요 — 커널 개발 입문하기 좋은 자료

Hacker News 원문 보기
FreeBSD 디바이스 드라이버 책이 GitHub에 공개됐어요 — 커널 개발 입문하기 좋은 자료

무슨 일이 있었냐면요

오랫동안 운영체제 커널 쪽 공부를 해보고 싶었는데, 자료가 너무 흩어져 있어서 어디서부터 시작해야 할지 막막했던 분들 많으실 거예요. 이번에 GitHub에 공개된 ebrandi/FDD-book 저장소가 바로 그런 분들을 위한 좋은 입문서예요. 이름 그대로 "FreeBSD Device Drivers Book"인데요, FreeBSD라는 유닉스 계열 운영체제에서 디바이스 드라이버를 작성하는 방법을 다룬 책이 통째로 공개된 형태예요.

잠깐, 디바이스 드라이버가 뭐냐면요. 우리가 컴퓨터에 USB를 꽂으면 자동으로 인식되고, 마우스를 움직이면 화면 커서가 움직이잖아요. 이게 그냥 되는 게 아니라 "이 하드웨어를 운영체제가 어떻게 다뤄야 하는지" 알려주는 코드가 있어야 해요. 그게 디바이스 드라이버예요. 운영체제와 하드웨어 사이의 통역사 같은 존재라고 보시면 돼요.

책에서 다루는 내용

FreeBSD 디바이스 드라이버 책은 단순히 "이렇게 코드 짜세요"가 아니라 커널이 동작하는 원리부터 천천히 풀어가는 구성이에요. 캐릭터 디바이스(키보드처럼 한 글자씩 처리하는 장치)와 블록 디바이스(디스크처럼 덩어리 단위로 처리하는 장치)의 차이부터 시작해서, 인터럽트 처리, DMA(Direct Memory Access, CPU를 거치지 않고 하드웨어가 메모리에 직접 접근하는 방식), newbus 아키텍처 같은 FreeBSD 고유의 개념까지 다뤄요.

특히 newbus라는 게 흥미로운데요. FreeBSD는 다양한 하드웨어를 트리 구조로 관리해요. PCI 버스 아래에 USB 컨트롤러가 있고, 그 아래에 USB 장치들이 매달려 있는 식이죠. 이런 계층 구조를 코드로 어떻게 표현하고, 새로운 장치가 들어왔을 때 어떻게 매칭시키는지를 알려줘요. 리눅스에도 비슷한 device model이 있긴 한데, FreeBSD 쪽이 좀 더 구조가 깔끔하고 학습용으로는 더 명확하다고 평가받는 편이에요.

책이 GitHub에 마크다운이나 LaTeX 같은 형태로 올라와 있으면 좋은 점이 많아요. 첫째로 누구든 오타나 잘못된 설명을 발견하면 Pull Request로 고칠 수 있어요. 둘째로 FreeBSD 자체가 계속 업데이트되니까 책 내용도 최신 버전을 따라갈 수 있고요. 옛날 종이책 시절엔 한 번 인쇄하면 5년 뒤에 보면 예제 코드가 컴파일도 안 되는 경우가 흔했거든요.

리눅스 드라이버랑 비교하면

드라이버 공부 자료라고 하면 보통 리눅스 쪽이 압도적으로 많죠. "Linux Device Drivers" (LDD3)라는 유명한 책이 있고, 커널 문서도 방대해요. 그런데 리눅스는 워낙 거대해서 처음 보면 어디가 뭔지 길을 잃기 쉬워요. 반면 FreeBSD는 코드 베이스가 상대적으로 작고 일관성이 있어서 "커널이라는 게 이렇게 생겼구나"를 파악하기에 더 좋다는 의견이 많아요.

실제로 넷플릭스의 CDN 서버나 PlayStation의 운영체제 베이스가 FreeBSD 기반이에요. 임베디드나 네트워크 장비 쪽에서도 여전히 활발하게 쓰이고요. 그러니까 FreeBSD 드라이버를 공부하는 게 "마이너 운영체제 취미생활"이 아니라 실제 산업 현장에서 쓸모 있는 지식이라는 거죠.

한국 개발자에게는

솔직히 한국에서 일반 웹/앱 개발자가 디바이스 드라이버를 직접 짤 일은 거의 없어요. 그런데 시스템 프로그래밍 면접이나 저수준 디버깅 능력을 키우고 싶다면 이런 자료가 정말 큰 도움이 돼요. 특히 메모리 관리, 동기화(락, 세마포어), 인터럽트 컨텍스트 같은 개념은 백엔드 서버 튜닝할 때도 똑같이 적용되거든요.

임베디드, 네트워크 장비, 보안 솔루션, 스토리지 회사에서 일하시는 분들이라면 더 직접적이에요. 한국에도 자체 어플라이언스를 만드는 회사들이 꽤 있는데, 거기서 FreeBSD 기반으로 제품을 만드는 곳도 있어요. 또 macOS의 커널인 XNU도 일부분 FreeBSD에서 가져왔기 때문에, 애플 생태계 쪽 깊이 파시는 분들에게도 의외로 연결고리가 있어요.

주말에 노트북에 FreeBSD를 가상머신으로 띄워놓고 책의 첫 챕터부터 따라 해보면, "운영체제가 이렇게 돌아가는구나"를 손으로 느껴볼 수 있어요. 평소에 추상화된 위쪽만 다루던 분들에게는 시야를 한 단계 넓혀주는 경험이 될 거예요.

마무리

공개된 한 권의 책이지만, 커널 세계의 문턱을 낮춰주는 좋은 출발점이에요. 여러분은 운영체제 내부 동작을 어디까지 알고 싶으세요? 추상화된 프레임워크 위에서 일하는 게 편한가요, 아니면 가끔은 그 아래까지 내려가 보고 싶은 충동이 있으신가요?


🔗 출처: Hacker News

이 뉴스가 유용했나요?

TTJ 코딩클래스 정규반

월급 외 수입,
코딩으로 만들 수 있습니다

17가지 수익 모델을 직접 실습하고, 1,300만원 상당의 자동화 도구와 소스코드를 받아가세요.

144+실전 강의
17개수익 모델
4.9수강생 평점
정규반 자세히 보기

"비전공 직장인인데 반년 만에 수익 파이프라인을 여러 개 만들었습니다"

실제 수강생 후기
  • 비전공자도 6개월이면 첫 수익
  • 20년 경력 개발자 직강
  • 자동화 프로그램 + 소스코드 제공

매일 AI·개발 뉴스를 받아보세요

주요 테크 뉴스를 매일 아침 이메일로 전해드립니다.

스팸 없이, 언제든 구독 취소 가능합니다.