본문 바로가기

책을 보다

[리뷰] 개발자가 서있는 기반을 살피다 <혼자 공부하는 컴퓨터 구조+운영체제>

엔지니어의 특성을 건드리다

컴퓨터 박스 안에 있는 부품 안쪽에서 어떤 일들이 일어나고 있는지 알 수 있습니다.

 

컴퓨터가 있는 일상이 자연스럽다 못해 당연한 모습이 된 뒤부터 기계를 바라보는 시각이 바뀌었습니다.

기계의 동력이 전기인 게 이상하지 않은 지는 벌써 오래되었습니다. 전기로 움직이는 기계, 특히 일상에서 자주 접하는 제품들은 뭔가 알아서 움직이고 필요하면 사람에게 신호를 보내기도 하며 사람과 상호작용하는 걸 당연시하고 있습니다. 최근에는 상호작용의 수단으로 언어를 사용하기까지 합니다.

제품 안에 물리적 장치 말고 뭔가 더 있다는 걸 압니다.

 

개발의 도구이자 목표이기도 한 컴퓨터의 내부를 들여다봅니다.

주의,  요약서이지 전무 서적이 아닙니다. 그렇지만 충분히 그림을 그려볼 수 있습니다.

방대한 영역 가운데 필요한 내용들을 선별하였다고 합니다. 가볍게 접근하여 재미있게 볼 수 있지만 고민하고 생각하기 시작하면 만만치 않습니다. 꽂히는 주제에 파고드는 일은 책을 다 읽고 난 뒤에 해도 늦지 않다고 생각합니다.

 

컴퓨터의 주요 부품이 움직이는 구조와 원리

문단 제목이 지나치게 거창한 느낌이라는 건 인정합니다. 요약서의 내용을 다시 요약하면 이런 일이 발생할 수 있습니다. 들어줬으면 하는 핑계라고 봐주시기 바랍니다.

누구나 한 번쯤 컴퓨터 조립이라는 말을 들어보았을 것입니다. 누군가에게는 뭐가 뭔지 알 수 없는 말이고, 누군가에게는 재미있는 순간일 수 있습니다. 하지만, 끼우고 연결하고 조이는 건 다루지 않습니다.

 

컴퓨터라 불릴만한 게 작동할 때 그 컴퓨터 내부의 부품 안에서 어떤 일들이 일어나는지 알려줍니다.

4가지 핵심 부품들이 가진 특성, 작동을 위해 맡은 역할, 성능 향상을 위한 구조와 적용하는 처리 기법들을 그림과 설명으로 풀어나갑니다.

각 부품은 하루아침에 하늘에서 뚝 떨어진 게 아니라 시간을 두고 개선하고 많은 아이디어를 적용하여 발전시킨 결과임을 알 수 있습니다.

 

운영체제가 하는 일

한마디로 컴퓨터가 가진 자원을 나누고 할당합니다.

물리적인 한계를 극복하고 성능을 최대한 끌어올리기 위해 어떻게 하고 있는지 보여줍니다.

쪼개고, 분리하고, 공유하기도 하고, 순서를 바꾸기도 합니다. 이러한 시도는 교착  상태라는 상황을 피할 수 없습니다.

피하기보다 맞닥뜨릴 때마다 해결하며 나아가는 방향을 택합니다.

 

프로그래밍 언어에서 사용하는 용어의 출처

개발을 하다 보면 참 이해하기 어려운 단어들을 만나는 일이 종종 있습니다.

사전에서 뜻을 확인해봐도 뭔가 아귀가 맞지 않는 느낌입니다. 다른 단어도 많은데 왜 하필 이 단어를 사용하는지 도무지 알 수 없습니다. 그냥 그런가 보다 하고 넘어가지만 그 단어를 만날 때마다 느끼는 어색함은 어쩔 수 없습니다.

이 책을 읽으면서 답답함을 해소할 수 있었습니다.

운영체제에서 적절하게 사용하기 시작한 용어가 프로그래밍에서 사용하는 용어로 자연스럽게 넘어간 것이었습니다.

 

 

구조와 운영체제 둘 다 완성형이 아닌 현재 진행형입니다.

그 끝을 상상하기는 어렵지만 앞으로 계속 나아질 것입니다.

지금의 컴퓨터 구조와 운영체제를 알 수 있는 좋은 기회는 지금입니다.

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

반응형