클릭은 작은 전기 신호에서 시작된다
사용자가 마우스 버튼을 누르면 아주 작은 전기 신호가 만들어진다. 마우스 내부 회로는 이 신호를 "버튼이 눌렸다"는 데이터로 바꾸고, USB나 블루투스 같은 연결 통로를 통해 컴퓨터로 보낸다.
이때 CPU가 계속 마우스만 지켜보고 있는 것은 아니다. 입출력 장치는 보통 인터럽트를 사용한다. 인터럽트는 "지금 처리해야 할 일이 생겼다"고 CPU에게 알리는 신호다. CPU는 하던 일을 잠시 멈추고 운영체제의 정해진 처리 코드로 이동한다.
운영체제는 마우스 드라이버를 통해 신호를 해석한다. 드라이버는 특정 장치와 운영체제 사이의 통역사다. 드라이버가 "왼쪽 버튼 클릭"이라는 의미를 알아내면, 운영체제는 이를 이벤트로 바꾼다. 그리고 현재 마우스 포인터가 어떤 창, 어떤 아이콘 위에 있는지 확인한다.

운영체제는 실행할 대상을 찾는다
클릭한 대상이 프로그램 아이콘이라면 운영체제는 그 아이콘이 가리키는 실행 파일을 찾는다. 실행 파일은 저장장치에 보관되어 있다. 운영체제는 파일 시스템을 통해 해당 파일의 위치를 알아내고, 필요한 데이터를 저장장치에서 읽어 온다.
프로그램을 실행하려면 단순히 파일을 여는 것만으로는 부족하다. 운영체제는 새 프로세스를 만든다. 프로세스는 실행 중인 프로그램의 단위다. 운영체제는 이 프로세스에게 메모리 공간을 배정하고, 실행 파일의 코드와 데이터를 RAM에 올린다. 필요한 라이브러리도 함께 연결된다.
그다음 운영체제는 CPU에게 "이 주소부터 실행하라"고 알려준다. 이제 프로그램은 저장장치 속의 파일이 아니라, 메모리 위에서 실행되는 살아 있는 작업이 된다.
CPU는 명령어를 하나씩 실행한다
CPU는 메모리에서 명령어를 가져오고, 해석하고, 실행한다. 이 과정은 매우 빠르게 반복된다. 명령어는 계산을 하거나, 메모리에서 값을 읽거나, 화면에 그릴 데이터를 준비하거나, 운영체제에 서비스를 요청한다.
하지만 CPU가 매번 RAM이나 저장장치까지 직접 기다리면 속도가 크게 느려진다. 그래서 캐시가 사용된다. 자주 쓰는 명령어와 데이터는 CPU 가까운 캐시에 머문다. 캐시에 없으면 RAM에서 가져오고, RAM에도 없으면 저장장치에서 읽어야 한다.
이 흐름은 앞에서 배운 메모리 계층 구조와 연결된다. 빠른 장치는 작고 비싸며, 느린 장치는 크고 저렴하다. 컴퓨터는 이 차이를 숨기기 위해 캐시, RAM, 저장장치를 함께 사용한다.
웹페이지를 여는 클릭은 네트워크까지 이어진다
클릭한 것이 웹 브라우저의 링크라면 과정은 컴퓨터 바깥으로 확장된다. 브라우저는 먼저 주소의 서버를 찾아야 한다. 사람이 읽는 도메인 이름은 그대로 통신에 쓰이지 않는다. DNS가 도메인 이름을 IP 주소로 바꾸어 준다.
IP 주소를 알면 브라우저는 서버와 연결을 맺는다. 보통 TCP를 통해 데이터가 순서대로 안전하게 오가도록 준비하고, HTTPS를 통해 통신 내용을 암호화한다. 그 후 브라우저는 "이 페이지를 보내 달라"는 요청을 서버에 보낸다.
서버는 HTML, CSS, JavaScript, 이미지 같은 데이터를 응답으로 돌려준다. 브라우저는 이 데이터를 해석해 문서 구조를 만들고, 글자와 그림의 위치를 계산한다. JavaScript가 실행되면 페이지 내용이 바뀌거나 추가 요청이 발생할 수도 있다.
화면에 보이는 결과가 만들어진다
프로그램이나 웹페이지가 준비한 화면은 곧바로 눈에 보이는 것이 아니다. 운영체제와 그래픽 시스템은 창의 위치, 겹침, 크기를 계산한다. 그래픽 처리 장치인 GPU는 많은 픽셀을 빠르게 처리해 화면에 표시할 이미지를 만든다.
모니터는 일정한 주기로 화면을 새로 그린다. 이 한 번의 화면을 프레임이라고 한다. 사용자가 클릭했을 때 버튼 색이 바뀌거나 새 창이 열리는 것은, 내부 계산 결과가 다음 프레임에 반영되기 때문이다.
결국 하나의 클릭은 입력 장치, 인터럽트, 드라이버, 운영체제, 파일 시스템, 메모리, CPU, 네트워크, GPU가 이어서 움직인 결과다. 사용자는 단순히 버튼을 눌렀을 뿐이지만, 컴퓨터 내부에서는 수많은 계층이 각자의 역할을 수행한다.
컴퓨터의 원리는 따로 떨어진 지식이 아니다. 0과 1의 표현, 논리회로, CPU 명령어, 메모리 계층, 저장장치, 운영체제, 네트워크, 보안과 성능은 모두 하나의 실행 과정 안에서 만난다. 그래서 컴퓨터를 이해한다는 것은 부품 하나를 외우는 일이 아니라, 데이터가 어디서 생겨 어디로 이동하고 어떻게 의미 있는 결과가 되는지 따라가는 일이다.
이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.
