개념공부/컴퓨터구조와 운영체제

00. 왜 공부하는가 ?

Cadi 2025. 3. 20. 14:27

 

 

지금은 코드를 치는 작업에 주로 몰두 하고 있으나, 중간 중간 이해가 잘 가지 않는 부분들이 불쑥불쑥 튀어나오곤 한다.

스레드라든지 ( 유니티는 싱글 스레드라 압박이 덜하긴 하다 ) , 성능상의 문제라든지 ( 어디까지가 허용 범위이고, 어느 행동이 성능을 많이 잡아먹고 , 어느것은 또 괜찮은 것인지 ) , 멀티플레이 게임을 만들기 위한 네트워크는 어떻게 동작하는 것인지도 궁금하다,  결국 1과 0의 전기신호만 주고받는 것일텐데, 주소는 어떻게 인식하고 '무선 인터넷'은 어떤 원리인 것인가 ? 우리는 어떻게 이 네모난 고철 덩어리로 전 세계 사람들과 '거의 동시에' 정보를 주고받을 수 있는 것인가 ?

이런 근본적인 의문이 튀어나오는 것은 어찌 보면 당연한 일이다. 

 

그래서 , 조금이나마 이해해보고자 교보문고에 가서 '혼자 공부하는 컴퓨터 구조 + 운영체제' 라는 책을 샀다. 

 

 

책을 고른 이유는.. 그냥 보이는 것 중에 이쁜것 골랐다. 

 

평일날 하루에 한 소단원씩이라도 공부하는 것을 목표로 잡았다. 하루 실행해 봤는데 생각보다 오랜 시간이 걸리지는 않는다. ( 공부한 것을 달달 외우고, 시험을 보는 것이 아니기 때문에 ) 

이 책의 내용을 완전히 이해한겠다는 욕심보다는 무언가 내가 다른 분야를 공부하다 막히는 부분이 있을 때, 

" 그 책에 나왔던 이러한 키워드도 있었지 ~ " 하면서 찾아볼 수 있는 수준이면 충분하다. 

그래서 읽고, 정리하고, 복습하는 정도로 공부할 예정이며 정리는 이 블로그에 할 것이다. 

 

 

01 - 1 컴퓨터 구조를 알아야 하는 이유

 

 

  • 같은 코드를 쳤는데 코드가 제대로 동작하지 않는 문제가 있을 수 있다. 
    이 경우 문제를 해결하기 위해 '문법적인 오류' 만을 찾아보기보다 컴퓨터 구조에 대한 이해를 통해 답을 얻을 수 있다.
    메모리 관리,  CPU 작동 방식, 입출력 시스템 등을 파악하여 문제의 근본적인 원인을 찾고 해결 할 수 있다. 

  • 성능 , 용량, 비용을 고려하며 개발을 진행하기 위해서는 구조 관련 공부가 필요하다. 
    컴퓨터 구조를 알게 됨으로써 효율적인 프로그래밍이 가능하게 된다.