나는 왜 너를 사랑하는가


모르고 쓰면 마술, 알고 쓰면 기술

지금까지 컴퓨터는 내게 마술이었다.

내가 지금 다니고 있는 학교에서 전자공학을 전공하면서도
수업에서 C, Java, Python을 배우면서도
나는 C 프로그램이 어떻게 돌아갈 수 있는지 몰랐고,
그냥 컴퓨터가 { }나 if, for, while 등을 직접 인식해서 수행하겠거니 생각했고,
만일 컴퓨터가 직접 문법을 인식한다면,
if, for, while, { } 같은 문법을 인식하는 프로그램도 컴퓨터에 있긴 할텐데
이건 어떻게 돌아갈까 하는,
그런 질문에 대답하지 못했었다.


그러다가 4학년 1학기,
학교에서 아키텍처를 제대로 배우면서 시스템에 대해 처음으로 배우게 되었다.

(사실 군대가기 전, 그러니까 2014년 1학기에 아키텍처 수업을 듣긴 했는데,
수업을 존나 대충 들었고
학점도 B0를 받았었다.
그러니까, 사실상 처음으로 들은 수업이나 다름 없다.)

재수강도 아니었고 (애초에 재수강 학점이 아니었으니)
청강생 신분으로 수업을 들었지만,
아키텍처 수업을 들으면서 너무 황홀했다.

아키텍처 수업을 들으면서
마술 같았던 컴퓨터는 내게 다가와 기술이 되었다.

그 기분은 지금도 잊을 수 없다.
바로 저번 학기에 들은 수업이기도 했지만,
지금까지 서울대학교에 다니면서 들었던 수업 중
거의 유일하게
내안에 있는 꽁꽁 얼어버린 바다를 깨뜨려버리는 도끼와 같은 수업이었다.

아키텍처에 대해 조금이나마 알게 되면서
컴퓨터를 아주 조금이지만 제대로 이해하기 시작했고,
그러면서 비로소 내 전공이 어떤 역할을 하는 학문인지 알게 되었고
내 전공을 진심으로 사랑하게 되었다.


아직 컴퓨터 시스템에 대해서 배워야 할 것이 너무 많다.
컴퓨터는 엄청난 분야다.

컴퓨터를 이용하려면 프로그래밍을 할 줄 알아야 하는데,
프로그래밍를 제대로 하려면 컴파일러와 OS에 대해 알아야 하고,
OS를 제대로 이해하려면 아키텍처를 알아야 하고,
아키텍처를 제대로 이해하려면 디지털전자회로에 대해 알아야 하고,
디지털회로를 제대로 이해하려면 반도체 소자에 대해 알아야 하고,
반도체를 제대로 이해하려면 물리학, 특히 양자역학을 알아야 한다.

제대로 하려면 할게 너무 많다.
하지만 난 시스템을 공부하는게 너무 재미있다.

공부를 하면 할수록,
내가 마술같다고 생각했던 것들이 기술이 된다.

알면 알수록,
내가 마술이라 생각했던 것들을 내가 할 수 있게 되면서
마법사가 된 듯한 기분이 든다.


그래서 나는 이 학문을 사랑하는 것 같다.














댓글

이 블로그의 인기 게시물

시스템프로그래밍: gprof (gnu 프로파일러) 소개 및 사용법

칩 설계에 관한 전반적인 내용들

나는 반드시 구글에 들어간다!