| 커널 프로그래밍에 관한 책이 드물게도 많이 쏟아져 나오는 요즘. 이 책은 한 발 앞서 나왔던 서적이다. 내용 정리가 잘 되어있고, 필요한 부분을 조목조목 잘 짚어주고 있어서 읽고 직접 코딩을 해보는 데 손색이 없었다. 특히나 각 부분 부분들에 대한 자세한 해설은 전공자라도 힘든 부분이 있음을 알고 이를 바탕으로 저술했음을 알 수 있다. 이 번 학기에 임베디드 시스템 개발을 위해 이 책을 사보게 되었는데, 상당히 만족할 만하다고 본다. 하지만 이 책은 거의 반이 소스코드로 되어 있어 설명한 양이 적다는 느낌이 들고, 꼭 필요한 한 부분만을 참조하고자 할 때는 크게 도움이 될만한 책이 아니다. 그렇다고 커널 프로그래밍 바이블 같은 책이 나오길 기다리는 태도는 좋지 않다고 본다. 이 책을 기본으로 하여 다양한 필요한 서적이나 논문등을 찾아본다면 커널 프로그래밍의 도사가 될 수 있으리라 생각한다. 용어 및 여러가지 프로그래밍 지식을 베이스로 요구하므로 비전공자들께는 추천하고 싶지 않다. |
| 커널 공부를 하면서, 개인적으로 이런 책을 원했다. "따라해보세요, 커널 개조" 저 만큼은 아니지만, 커널을 사랑하는(?) 사람들에게 상당히 반가운 책이 아닌가 한다. 이제껏 리눅스의 커널을 다룬 수 많은 책이 있었지만, 이 책만큼 본인을 만족시킨 책은 없다고 자신있게 말하고 싶다. 손으로 읽는 책. 이 책의 필자가 말하길, 이 책은 손으로 해보는 책이라고 한다. 물론 이 책의 뒷부분으로 갈수록 예제 따라하기가 약해지긴 하지만, 다른 커널 관련 책과는 뭔가 다른 시각으로 책을 진행하고 있다. 예를 들어, 4장에서부터 당장 커널에 시스템콜을 추가해서 가지고 노는 부분이 있다. 연습문제는 쉘을 구현하는 것이다. 9장은 파일시스템을 만든다. 화끈하면서 접근하기도 좋은 주제들인것이다. 커널에 대한 가장 실용적인 접근방법 커널관련 도서중에 인기있는 Understanding Linux Kernel이 있다. 아마도 이 책의 리뷰를 보는 사람이라면 저 책을 읽어봤으리라 생각한다. 본인은 메모리 메니지먼트를 전공으로 하는 사람인데, 개인적으로 ULK보다도 훨씬 이해가 쉬운 설명을 했다고 생각한다. 가상메모리의 이해를 위해 접근해나가는 방법이 아주 피부에 와 닿는다고 할 수 있다. 이 뿐 아니라 다른 커널의 전반에 대해서 이런식으로 설명을 해 나간다. 물론 커널 분석을 전문으로 하는 ULK만큼 심도있게 다루지는 않는다. 그러나 본인은 그리 명석하지 않은지라, 처음 ULK를 보았을때 쉽사리 이해가 가지 않았다. 그 전에 많은 OS책을 읽었지만 직접 커널 소스를 상대로 분석하며 글을 쓴, 어떻게 보면 커널의 세세한 부분을 모두 다루는 ULK는 상당히 힘든 책이었다. 그러나 커널 프로그래밍 이 책은, 멀리서 바라보는것에서 시작하여 조금씩 줌인 하여 들어간다. 깊이 뚫고 들어가는 정도가 ULK보다 약하지만, 처음 이해하는데 상당히 유용하다고 생각한다. 다른 책과 병행하여... 국민학교때, 사회, 사회과 탐구 이 두가지의 책을 병행하며 공부했던것이 생각난다. 아마도 Linux Kernel을 공부하려면 ULK를 비롯해서 이 책을 꼭 옆에 두어야 하지 않을까 생각한다. 둘 중 어느것을 먼저 보는가는 개인적으로 선택할 일이지만, 적어도 둘 다 보아야 한다는 점은 깊이 생각해두었으면 한다. 이 책의 연습문제의 난이도는 정말 황당하다. 이 책만으로 절대 해결할수 없다. 아마도 이 책 저자는 다른 관련 도서를 읽었다는 것을 가정한듯 하다. 필자들의 기대에 맞게, 다른 책도 준비해두도록 하자. 마지막으로... 이러한 실습형 책이 거의없다시피한데, 실질적으로 커널을 공부하면서 책만 읽는다는것은 힘들다고 생각한다. 그렇다고 당장 뭔가 어디를 건드려 보고 싶어도 막막하기 그지없다. 그런 사람들에게 이 책은 길잡이가 되어줄것이다. 이 책을 써준 모든 필자님들에게 감사를 전하며...우리나라 커널 해커들도 리눅스 커널의 패칭에 큰 힘을 발휘하게 되었으면 한다... |
| 여러 종류의 리눅스 커널 책을 보아왔다. 이 책은 소개에서도 밝히듯이 학생들을 강의하기 위한 자료를 기반으로 만든 것으로 보인다. 그래서 그런지 다른 책들에 비해 쉽게 설명이 되어 있다. 책 속의 그림들도 강의시간에 쓰였던 그림인 듯 하다. 여러 리눅스 커널 책을 보면서 이해가 잘 안되었던 부분을 이 책은 쉽게 설명해 주고 있어서 도움이 되었다. '상대적으로' 내용이 쉬워서 지하철 속에서도 읽을 수 있을만큼 부담이 덜 되는 책으로 생각된다. 이 책이라면 리눅스 커널을 처음 공부하는 학생이나 다른 책들이 어렵게 생각될때 함께 본다면 도움이 될만한 책인듯 싶다. 뒤에 나오는 프로젝트도 괜찮다. 다만 이 책의 최대 단점은 책의 반 정도를 부록의 소스 코드로 채웠다는 것이다. 이 점이 이 책을 살까 말까 고민하게 만드는 부분이다. |
| 운영체제에 관심이 많은 나로서는 리눅스 커널의 이해는 절대적으로 필요한 사항이였다. 그래서 리눅스 커널에 관련된 자료와 책을 찾다가 이 책을 알게 되었다. 물론 리눅스 커널에 관한 책들이 많이 있고, 또한 뛰어난 책들도 많이 있다는 것을 알고 있다. 하지만 내가 이 책을 선택하게된 이유는 먼저 다른 책에 비해서 해설이 쉽고, 상세하다는 것이다. 이전에 구입했던 리눅스 커널의 이해라는 책과 비교해 볼때, 무척 쉽고 상세하다는 것을 느꼈다.(물론 detail한 것은 리눅스 커널의 이해라는 책이 더 많이 다룬다.) 여기서 상세하다는 것은 설명하는 것에 있어서는, 독자가 초보자임을 감안해서 상세히 설명한다는 것이다. 리눅스 커널의 이해라는 책은 일단 독자가 리눅스 매니아라는 것을 가정하고 쓴 책이기 때문에, 약간의 사전 지식을 요하는 책이다. 하지만 이 책은 정말 리눅스 커널이 무엇이며, 어떻게 만들어 졌는지 등등에 대해서 초보자에 대한 배려가 깊다고 볼 수 있다. 또한 이책의 장점으로는 단순히 리눅스 커널에 대한 설명에서만 그치는 것이 아니라 직접 따라해볼 수 있다는게 큰 장점이다. 직접 코딩한 것을 보여주고, 거기에 따라 설명을 추가함으로써 약간의 C언어 프로그래밍 지식이 있다면 쉽게 따라갈 수 있다. 하지만 다소 아쉬운 부분이 있는데, 첫째로는 책의 반이 부록으로 되어있다. 단순히 소스 코드의 나열로 책의 반을 허비했다. 그냥 시디에 넣어서 부록으로 만들었으면 좋았을 것을 굳이 책의 반을 허비했다는 것은 페이지 늘리기에 급급했다는 인상을 준다. 다음으로 아쉬운 점은 정말 리눅스 커널에 대한 기본만을 말하고 있다는 것이다. 좀 더 깊게 공부하고 싶은 사람들에게는 이 책이 맞지 않을 것이다. 이상의 단점을 제외하면, 이 책은 정말 리눅스 커널에 대해서 공부하고자 하는 초보자들에게 더 없이 좋을 책이라 할만하다. 물론 지금 상태로도 충분히 초보자들의 욕구를 충족하리라 본다. 앞으로 우리가 만든 운영체제를 내 컴퓨터에서 돌리는 그날까지... 우리 모두 화이팅!!! |
| 파일 시스템과 관련된 커널 프로그래밍을 해야 한다면 한 번쯤 볼 만한 책이라 할 수 있다. 국내 서적치고는 해당 부분의 내용을 비교적 잘 설명하고 있고, 이해하기 쉽게 도식화해서 보여주는 책이다. 그러나 일반적인 커널 프로그래밍에 대해서는 기대하지 않는 편이 낫다. 리눅스 커널 프로그래밍 바이블과 같이 광범위한 내용을 다루지 않고 있기 때문에 일반적인 커널 프로그래밍 기술에 대해서는 얻을 수 있는 것이 별로 없다. 전에 파일시스템 드라이버와 관련 커널 모듈등을 만들때 참고 했었는데 관련 부분 개념을 잡는데 많은 도움이 되었다. 물론 이책 한권으로 리눅스 커널에 포함된 파일 시스템의 모든 걸 알 수 있다는 것도 아님을 명심하고 보기 바란다. 현재 상황으로 봐서는 리눅스 커널 2.6이 발표된지 꽤 된것 같은데 책의 내용은 커널 2.2의 구조를 다루고 있기 때문에 맞지 않는 부분이 많이 있다. 2.6의 내용으로 보강된 책이 나와 주면 좋을 것 같은 시기라 생각되는데.. 저자분들은 작업을 하고 있을지... 그래도 기본적인 내용을 알고 싶은 분들은 한 번 쯤 봐둘만 한 책이니 추천한다. |
| 매니아를 위한 커널 프로그래밍이라기 보다는 절반이 넘는 커널 소스가 책의 대부분을 차지함으로써 책의 내용과 제목만 보고 책을 선택한 진정한 리눅스 유저들에게 크나큰 실망감을 안겨준다. 소스대신에 좀 더 부가적인 내용에 설명이 들어가있다면 얼마나 좋으련만... 억지로 책을 만들어 놓은 듯한 느낌을 받는 책이다. 하지만 커널 프로그래밍을 처음 접해본 사람이라면 전체적인 부분을 한눈에 볼수 있으므로 그냥 한번만 볼 만 한 책이라고 할수 있겠다. 커널에 대한 확실한 이해를 하고 싶은 분들은 아쉽지만 다음 기회를 노리는 것이 좋을 듯 하다. 커널에 대한 내용이 약 200페이지 분량인만큼 좋은 내용을 기대하시길 말기를 바라며, 커널 소스를 분석하려고 프린팅하시려고 하는 분들에게는 정말 유익한 책이 되지 않을까 생각합니다. [이벤트 참가] |
| 리눅스 커널에 관해서 관심을 가지고 여러 책을 읽었습니다. 그중 초보자(?)나 매니아에게는 더말할수 없은 좋은 책입니다.(강추) 강의식으로 전개되는 설명이 너무 좋군요. 약간의 흠이라면 책의 반이 소스 프린트가 있고 커널 전체를 다루지 않아서 그렇지만 하여튼 볼만한 책임이 틀림 없습니다. |
| 리눅스 커널 프로그램을 공부할려고 한다. 그런데 어디에서 부터 시작해야 할지 막막했다. 우선, 서점에 가서 책을 찾아보기로 하고, 고속버스 터미널에 있는 '영풍문고'로 가서 책을 찾았보았다. 하지만 내 상각과는 달리 리눅스 커널에 관련된 책이 그렇게 많은 것은 아니었다. 이책 저책 뒤적..뒤적.. 그렇게 내 맘에 쏙 들어오는 것은 없었다. 그러다 선택한 책이 이 책이었다. 이 책은 리눅스 커널에 대해서 시작하기전에.. 리눅스 설치와 리눅스 커널 컴파일을 설명해주고.. 그 뒤로 리눅스의 system call 프로그램을 설명과 함께 소스까지 제공하고 있다. 커널에 대해서 전체적인 흐름도를 이해 할 수 있도록 설명과 함께, 직접 커널 프로그램을 작성할 수 있도록 한 배려.. 넘 잘 짜여진 구성이었다. 리눅스 커널에 대해서 공부를 시작하거나, 리눅스 커널이 무엇인지 궁금한 분에게.. 이 책으로 시작한다면 후회는 없을 것라고 말하고 싶다. 물론 그렇지 않은 경우도 있지만, 그만큼 추천해주고 싶은 책이다. |