Linux Programmer

리눅스 커널 2.6 구조와 원리 본문

독서 관련/컴퓨터

리눅스 커널 2.6 구조와 원리

sunyzero 2013. 3. 26. 23:03

리눅스 커널 2.6구조와 원리. 타카하시 히로카즈, 오다 이츠로, 야마하타 이사쿠, 이영희 역, 한동훈 감수, 한빛출판사.


리눅스 커널 2.6구조와 원리

리눅스 커널 2.6 구조와 원리야마하타 이사쿠(YAMAHATA ISAKU),타카하시 히로카즈(TAKAHASI HIROKAZU),오다 이츠로(ODA ITUROU)
상세보기


1. 책의 저술 목표

이 책은 커널 코드를 분석하는 책이 아니라 커널에 쓰인 기법이나 각종 표준들이 어떤 것들인지 러프하게 소개하는 책이다. 따라서 직접 커널을 개발하기 위한 책보다는 참고서에 가깝다고 본다.


그래서 내용면에서 코드보다 도표가 많은 편이다. 코드 구조는 최소화 하려고 했던 흔적이 보인다.

즉 이 책은 나무를 보기보단 숲을 보는, 전체적인 조화를 확인하는 용도이다.


그림을 보면 알겠지만 도식을 연속으로 배치해서 시각적으로 보기 편하게 편집되어있다.


리눅스 커널 2.6구조와 원리 내용


2. 번역 상태

번역은 매끄러운 것 같다. 

하지만 편집은 "~입니다."의 경어체를 써서 말이 좀 길어지는 감이 있다. 최근에 느낀 것이지만 기술 서적은 그냥 반말로 짧게 전달하는게 좋다고 생각된다.


게다가 감수는 리눅스 1세대, 한국의 리눅스 계에서는 살아있는 화석급이신 한동훈님이 감수까지 하신 책이다. (갑자기 이만용님은 요새 뭐하시는지 궁금해진다.)


3. 대상 독자층 (이 책을 읽어야 할 사람)

임베디드나 커널 개발자보단 시스템이나 네트워크 프로그래밍을 배우는 학생에게 유용할 것 같다.


4. 핵심 포인트

특히 책에서 눈여겨 볼 목차와 내용 부분은 다음과 같다. 

시스템 프로그래머라면 아래 부분은 꼭 알고 있어야만 한다. 아래 항목들을 설명할 수 없다면 꼭 읽고 숙지해야만 한다. 코드를 보는 것보다 중요한 것이 개념을 잡고 있는 것이다.

  • 스케줄러 : O(1)스케줄러, CFS스케줄러(이건 책에 없다)
  • 동기화 : 선점 금지, 스핀락, atomic operation
  • 프로세스 및 프로세스 그룹의 관리 : 프로세스 그룹, 세션, 제어 터미널의 개념
  • 시그널 처리 : UNIX signal, RT signal, handler & queuing
  • 프로세스 공간 관리 : 스왑, 페이징, COW, fork, mmap, exec, 페이지 폴트
  • 파일 읽기 쓰기 : 파일 캐시, 비동기 I/O, 페이지 캐시, 메모리 매핑의 I/O 처리
  • 소켓 구조체, 소켓 버퍼
  • IP층
  • TCP연결 관리 : TCP헤더, 연결(3way handshaking), 종료(active, passive, half), 2MSL
  • TCP흐름 제어 : SACK, nagle algorithm
  • TCP혼잡 제어

5. 한줄 결론

사보면 후회는 안하는 책이다.




반응형
Comments