본문 바로가기

Book review

프로세서에 집중한 컴퓨터 구조 도서 (프로세서를 지탱하는 기술 - 제이펍)


  학교 다닐때 제가 가장 곤혹스러워 했던 과목이 컴퓨터 구조와 이산수학이었습니다. 수학은 뭐 그렇다 치고, 컴퓨터 구조는 왜 이렇게 어려웠는지 모를만큼 머리 아프게 하는 대표 과목이었었죠. 학창 시절 막상 배움의 단계에서는 이 과목이 대체 왜 필요한지 모르는 경우가 많았습니다. 그리고 그만큼 실전과 동떨어진 과목들은 점수를 받기도 어려웠기 때문에 등한시 하게 되고 기피하기 일수 였었죠. 컴퓨터 구조는 C보다는 좋은 점수를 받았던 것으로 기억하는데 정확히는 잘 기억이 안나는군요. 그것도 벌써 10년 가까이 지나버렸다니 세월이 참 빠르다는 생각을 해봅니다.

  컴퓨터 구조는 왜 배워야 했던 걸까요? 현업에서 일하고있는 지금에 이르러 생각해 보면 기본이 되는 것 만큼 중요한 것은 없다는 생각을 하게 됩니다. 기초가 부족하여 고생했던 나날들을 생각하면 내가 왜 그때 공부하지 않았던가에 대한 후회를 하기도 했었죠. 하지만 뒤늦은 후회는 부질없는 것. 어서 빨리 모자란 부분을 채우는 편이 더 낫다는 생각을 했었죠. 실제적으로 일을 하면서도 컴퓨터 구조는 참 보충하기 어려웠던 기초로 기억합니다. 지금도 이제 좀 뭔가를 알겠다는 정도 밖에는 안되기 때문인 것 같습니다. 그러던 참에 이 책을 만나게 되었습니다.


  [프로세서를 지탱하는 기술] 
이전에 한빛미디어에서 나온 멀티코어 도서 (2010/07/07 - [Book review] - 파헤쳐보자 멀티코어 (프로그래머가 몰랐던 멀티코어 CPU 이야기)) 를 보았을 때 이해하기 어려워서 고민했던 적이 있었는데 그 책을 읽기 전에 이 책을 먼저 읽을 수 있었더라면 조금더 나았을 것 같다는 생각을 하게 되었습니다. 이 책은 컴퓨터 구조에서 핵심이 되는 프로세서와 그 주변 장치 들의 이야기를 나름 쉽게 풀어내고 있습니다. 


  프로세서나 컴퓨터 구조에서 가장 핵심이지만 그만큼 복잡한 기술 요소를 가지고 있고 생각보다 많은 기술이 집약 되어 있다는 것을 알 수 있엇습니다. 그리고 프로세서에 대한 이해가 왜 중요한지에 대해서도 생각을 해볼 수 있는 기회가 되었었죠. 그런데 말이죠 문제는 이 책이 생각보다 쉽지는 않다는 것이 문제였었습니다. 초반에는 쉽게 이야기를 풀어내는 듯 싶었는데... 아 진짜 뒤로 갈수록 별세계가 펼쳐지는 것이었습니다...;;


  용어의 난해함은 찾아보면 되니깐 그렇다 치겠는데, 세번째 챕터인 프로세서 아키텍처에 대해서 이야기가 나오는 부분 부터는 출퇴근 하면서 가볍게 읽을 수준이 아니었습니다. 집에서 천천히 정독하면서 무슨 말을 하려고 하는 것인지 몇번이고 되짚어가면서 읽어봐야 했었죠. 그 뒷부분은 조금 수월했습니다. 하지만 책의 말미에 가서 또 비슷한 수준의 난해함을 가진 챕터가 등장하는데 그 이름하여 <GPGPU와 초병렬처리> 였습니다... 솔직히 이 책을 마지막 장을 덮는 순간까지 60% 정도를 이해했다는 생각이 들었습니다. 마의 두 챕터가 정말 괴로웠습니다 ㅋㅋㅋ


  난해한 두 부분에도 불구하고 이 책은 꽤 소장 가치가 높다고 생각이 됩니다. 프로세서라는 한정된 소재에 대해서 많은 부분을 설명하고자 노력한 흔적이 많이 보이기 때문입니다. 넓은 폭을 커버하기 위해서 깊이가 생각보다 얕은 부분도 있습니다. 하지만 어느정도 상식적인, 그리고 기초적인 수준에서 생각하면 많은 내용을 담고 있기 때문에 너무 깊은 부분까지 접근하지 않으면서 필요한 정보는 충분히 담겨 있는 책이기 때문이기도 하죠. 한번 읽어서는 이해하기 어렵지만 두고두고 틈나는 대로 읽으면 많은 부분이 저에게 도움이 되지 않을까 하는 생각이 듭니다. 프로세서라는 것을 알고 싶으시면 한번 씩 읽어보시면 좋을것 같습니다 :)


덧) 번역문장 자체가 어려운 부분도 종종 있습니다만 크게 영향을 주지는 않습니다.