1.4 코드 아래 세상을 이해하는 순서
지금까지 AI 시대가 드러낸 칩의 힘, 연산과 기억을 맡는 칩의 종류, 그리고 우리 주변의 다양한 컴퓨터와 그 안의 칩을 살펴보았다. 이제는 코드가 실행될 때 컴퓨터 안에서 어떤 일이 일어나는지 좀 더 가까이 들여다볼 준비가 되었다. 그 구체적인 내용을 알아가기 전에, 이 책이 무엇을 어떻게 연결해 설명하려는지 먼저 살펴보자.
이 책의 중심 질문은 “사람이 작성한 코드는 컴퓨터 안에서 어떻게 수행되는가?”이다. 칩 내부에서 정보를 기억하고 연산하는 동작을 알아보면, 코드에 담긴 지시가 어떻게 처리되는지도 구체적으로 이해할 수 있다. 여기에 칩들이 정보를 주고받으며 함께 일하는 모습을 연결하면, 컴퓨터 전체가 프로그램을 실행하는 과정이 보이기 시작한다. 이처럼 칩의 이해를 코드의 수행과 컴퓨터의 동작에 연결하는 것이 이 책에서 살펴볼 ‘코드 아래 세상’이다.
이 관점을 염두에 두고, 앞으로의 여정은 다음과 같이 전개된다.
첫 번째로, 컴퓨터 동작의 핵심을 개념으로 먼저 꿰뚫는다.
복잡한 세부 사항에 들어가기 전에, 컴퓨터가 어떻게 동작하는지 큰 그림을 먼저 그려볼 것이다. 깊은 기술적 설명보다는 컴퓨터 동작의 핵심을 가능한 한 쉽고 개념적으로 바라보는 것이 목표다. 처음에는 다소 추상적으로 느껴질 수 있지만, 이 큰 그림은 뒤에서 만날 회로와 부품이 왜 필요한지 이해하는 바탕이 된다. 컴퓨터의 전체 동작을 먼저 알아두면, 칩과 회로가 코드 실행에서 어떤 역할을 맡는지도 자연스럽게 연결할 수 있다.
두 번째로, 하드웨어에서 소프트웨어 방향으로 단계적으로 올라간다.
컴퓨터를 설명할 때는 보통 소프트웨어에서 시작하여 하드웨어로 내려간다. 하지만 이 책은 반대 방향을 택한다. 아래에서부터 차근차근 쌓아 올라가면, 새로 만나는 구조와 동작을 앞에서 배운 내용을 바탕으로 이해할 수 있기 때문이다. 가장 작은 단위인 트랜지스터부터 시작하여, 논리 회로, 연산과 기억을 맡는 회로, 컴퓨터 구조, 그리고 소프트웨어까지 한 단계씩 쌓아 올라간다. 이 과정에서 소프트웨어는 하드웨어에 어떤 일을 시킬지 정하는 지시의 관점에서 바라본다. 기본이 되는 회로와 그 회로들이 모여 만드는 새로운 동작을 차근차근 살펴보면서, 하드웨어가 프로그램의 지시를 수행하는 과정까지 연결해갈 것이다. 이 여정의 중심에는 CPU가 있다. CPU를 통해 작은 회로들이 어떻게 컴퓨터의 핵심 동작을 만드는지 따라가다 보면, 소프트웨어와 하드웨어가 서로 맞물려 일하는 모습도 구체적으로 이해할 수 있을 것이다.
세 번째로, 쌓아 올린 이해를 바탕으로 실제 칩의 세계로 나아간다.
여기까지 오면 코드가 어떻게 수행되는지는 CPU 하나를 따라가며 답을 얻게 된다. 하지만 코드 아래 세상에 CPU만 있는 것은 아니다. 세 번째 단계에서는 그 이해를 현실의 칩으로 넓힌다. CPU, GPU, NPU가 각각 어떤 일을 잘하며, 맡은 일에 따라 왜 서로 다른 구조를 갖는지 살펴본다. 실제 칩이 어떻게 탄생하고 어떤 사람들이 역할을 나누어 맡는지, 어떤 회사들이 이 세계를 이루고 있는지도 알아본다. 코드 아래 세상의 가장 아래층은 결국 누군가가 설계해서 만들어낸 물건이기 때문이다. 또한 컴퓨터에 요구되는 일이 달라지면서 칩의 구조와 역할이 어떻게 변해왔는지도 살펴볼 것이다. 이를 통해 앞에서 배운 기본 원리가 현실의 칩과 컴퓨터에서 어떻게 이어지는지 확인한다.
긴 여정처럼 느껴질 수 있지만, 각 단계는 다음 단계의 탄탄한 디딤돌이 된다. 처음에는 낯설고 어렵게 느껴지더라도, 기본 원리부터 차근차근 쌓아 올라가다 보면 전체 그림이 선명하게 보이는 순간이 찾아올 것이다. 이제, 컴퓨터 동작의 큰 그림부터 함께 시작해보자.