컴퓨터 밑바닥의 비밀 - 컴퓨터 시스템의 본질을 알면 코드의 실마리가 보인다, 2024 세종도서
루 샤오펑 지음, 김진호 옮김 / 길벗 / 2024년 3월
평점 :
장바구니담기




1) 책이 말하는 컴퓨터 밑바닥은?

이 책에서 말하는 밑바닥은 물리적인 밑바닥을 의미하지 않습니다. 컴퓨터가 켜지고 실행되는 내부를 뜻하는데요. 루 샤오펑 저자는 코드가 동작하는 것처럼 보이기는 하는데 어떻게 움직이는 것일까요? 코드가 실행될 때 컴퓨터의 저수준 계층에서는 어떤 일이 일어나고 있을까?를 고민을 하면서 책을 썼습니다. 저자는 이러한 고민을 왜 했을까요? 그 답을 찾아보도록 하겠습니다. 저자의 약력을 통해 알 수 있습니다.




2) 저자 약력

저자는 현재 bilibili(중국의 유튜브)에 <컴퓨터 밑바닥의 비밀> 책과 관련된 영상을 제작해서 올리고 있습니다. 그의 <컴퓨터 밑바닥의 비밀> 책은 저자가 CSDN 블로그, 위챗 등 기타 사이트에 2018년부터 2023년 책의 초고를 적었는데요. 이 초고를 바탕을 2023년이 중국에 출간이 됩니다. 1년 뒤 길벗을 통해 국내에 번역이 되고 지금 만나 볼 수 있습니다. ​ 루 샤오펑 저자는 베이징 항공우주대학에서 컴퓨터과학부를 졸업 후 석사까지 나왔습니다. 


가상화 소프트웨어를 주로 만드는 VM웨어와 징동닷컴 출신입니다. 징동닷컴은 주로 전자기기 파는 중국의 전자상거래 회사인데요. 사용자는 약 4억 명입니다. 국내 가장 많은 사용자를 보유한 카카오톡이 약 5천만 명인데요. 징동닷컴은 대략 7~8배가 많습니다. ​ 사용자가 많으면 컴퓨터 안의 내부 시스템을 구체적으로 이해해야 하는데요. 사용자에 따라 시스템의 규모를 제어해야 하기 때문입니다. 그래서 저자가 컴퓨터 밑바닥의 비밀을 알게 됐고 책으로 풀어 쓴 것입니다. ​




3) 기계어, 어셈블리어, 고급언어

루 샤오펑 저자는 CPU가 등장한 이후, 인간은 두 번째 두뇌를 가지게 되었다고 말하는데요. 컴퓨터와 사람의 첫 대화는 0, 1의 명령어로 이루어집니다. 이를 기계어로 표현합니다. 0과 1의 조합을 한두 개면 이해하지만 수십수만이면 사람이 이해하기 힘들기 때문이죠. 하지만 CPU는 이 뜻이 무엇인지 알고 있을 뿐만 아니라 속으로 세상에서 가장 아름다운 언어다고 생각할 것입니다. ​ 


CPU는 가산 명령어와 점프 명령어 등을 통해 명령어만 실행할 수 있다는 사실을 알게 됩니다. 이때 기계어와 해당 특정 작업을 간단하게 대응시킵니다. 그 후 기계어를 인간이 읽고 이해할 수 있는 단어로 대응시켰습니다. 사람이 01을 입력하지 않고 add, sub, mov처럼 인식할 수 있는 단어로 대화를 할 수 있습니다. 이걸 어셈블리어라고 하는데요. 아직 저수준 언어입니다. ​ 부족함을 느낀 개발자는 사람이 추상적인 표현을 하면 CPU가 알아서 자동 변환하는 방법을 고민합니다. 위 사진의 마지막에 보면 고수준 언어로 현재 대부분의 언어에 볼 수 있는 주요 개념입니다.



4) 코루틴

이 책은 분명히 컴퓨터 공학 책인데요. 코루틴? 니가 왜 여기서 나와? 그거 코틀린 개발자가 쓰는 거 아니야? 생각이 들 수 있습니다. 코루틴은 비동기 개발에 주로 씁니다. 비동기라는 말은 쉽게 풀면은 드라마 보면서 책을 읽을 수 있잖아요. 만약 동기식 개발이라면 드라마는 드라마 책은 책을 보고 다음 동작을 할 수 있습니다. ​ 대부분의 개발은 동기식으로 이루어집니다. 논리적으로 복잡하지 않기 때문이죠. 


모바일 시대에 들어오면서 비동기로 해야 할 일이 많아졌습니다. 예를 들어 검색하게 되면 자동완성이 되잖아요. 이때 동기식이면 한자 한자 입력할 때만 서버에게 자료를 보냅니다. 그럼, 서버는 부하를 받게 되죠. 비동기식으로 코드를 짜게 되면 마지막 입력할 때 단 한 번만 보내게 하면 되는 거죠. 이럴 때 씁니다. ​ 


책의 저자는 코루틴 개념은 1958년부터 이미 존재한 개념이라고 자세히 알려주는데요. 스레드 개념이 나오기 전이라 동시성 프로그램을 작성하기 위해 사용했다고 합니다. 그 후 스레드가 나와서 잊힙니다. 코틀린 언어에서 코루틴을 본격적으로 사용하게 되면서 RX언어들의 긴 코드들을 줄여주고 있습니다.


PS

스토리 텔러인 루 샤오펑. <컴퓨터 밑바닥의 비밀> 책은 비유와 그림 맛집인데요. 그의 책을 읽으면 어려운 컴퓨터공학 내용을 마법같이 이해가 됩니다. 그의 쉬운 설명이 힘을 발휘하는 것이죠.



이 포스팅은 길벗에서 책을 받아 읽고 주관적으로 작성해습니다.


댓글(0) 먼댓글(0) 좋아요(1)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo