본문 바로가기

카테고리 없음

라즈베리 파이로 배우는 컴퓨터 아키텍처

반응형

컴퓨터 구조를 쉽게 그리고 다시 배우고자 하는 이들을 위한 책

 

학부 시절 컴퓨터 아키텍처에 대해 설명해주는 수업은 없었다. 개론 수업에서는 Side effect가 한글로 뭐냐는 시험문제가 나왔던 것만 기억나고(답은 "부작용"이었다. 이걸 어떻게 잊을 수가 있으랴.) 바로 심화된 OS와 CPU 수업만이 있을 뿐이었다.

 

저 우주가 점차 Zoom-In 되어 특정 별을 관찰하는 게 아니라, 밤하늘을 보여준 이후 갑자기 어떤 별이 포커스 되어, 대체 이 별이 어디 있던 별인가 싶은 상황이었다. 물론 서울대-해외 박사 코스를 밟으신 교수님들은 다 이해하셨겠지만, 우매한 나는 이 쇳덩어리에서 어떻게 OS와 CPU와 Application이 조화를 이루는지 알 수가 없었다. 이게 어떻게 보면 Embeded SW 시장에서 SW 개발자보다 전기전자과 출신들이 더 빛을 발하는 이유인지도 모르겠다. 그들은 Bottom-up방식으로 각론은 전공(전자)으로 보고 총론(SW Application)을 구글이나 다양한 자료로 보다 쉽게 획득하기 때문이다. SW 개발자들이 총론을 보고 각론을 보기에는 자료취득의 한계와 기술적인 제약이 있을 수밖에 없다.

 

어쨌든, 한국의 SW 업무 중 대기업에서 진행하는 내용은 대부분 Embeded SW이고 SW 개발자들은 컴퓨터 구조를 이해할수록 고수라는 칭호를 듣게 된다. 다행히도 시중에 적지 않은 컴퓨터 구조 관련 책들이 있다. 물론 다들 책꽂이에 있고 앞에 한 두 챕터를 읽다가 방치해 두었지만 말이다.

 

이 책은 그런 개발자들이 포기하지 않고 다시 컴퓨터 구조를 쉽게 이해할 수 있게 도와준다.(그러길 진심으로 바란다.) 일단, x86 기반의 CPU가 아니라 ARM 기반의 라즈베리파이를 기반으로 설명하고 있어 시스템에 대한 설명이 간단하며, 라즈베리파이를 설계했던 전문가들이 초보자들을 위해 CPU/DRAM/저장장치/OS/프로그래밍 등으로 점차 주제를 확장시켜 나가며 시스템이 구동되고 Application이 동작하는 방법을 설명하고 있어, 개발자의 안목을 키워 줄 수 있다. 

 

다만, 각 챕터별로 저자들이 다른데, 저자별로 설명의 차이, 이해의 깊이, 표현하고자 하는 바가 달라 온도가 상이하여 읽다 보면 온탕과 냉탕을 왔다 갔다 할 때의 그 느낌을 받을 수 있다.(품질이 균일하지 않다는 뜻이다.)

 

학부생, 개발을 막 시작하는 사람뿐만 아니라, 개발이라는 컨베이너 벨트에서 자기 코드만을 묵묵히 작업하던 나 같은 유사 개발자들도 이 거대한 공장의 사장이 누군지, 어떤 제품을 만드는지,  재무상황은 어떤지, 어떻게 돌아가고 운영되는지 이해할 수 있게 해 준다. 그러면 어쩌면... 십장 정도로 승진이 될지 누가 알겠는가?

반응형