시험준비를 위해 또는 컴퓨터 자체에 관심이 있어서 컴퓨터 구조가 궁금한 분들이 있을 것입니다.
이 글에서 컴퓨터를 잘 모르는 초보자분들을 대상으로 컴퓨터 구조 설명 내용을 정리해서 공유드리려고 합니다.
그러면 기본적인 컴퓨터의 구성요소와 구조가 어떻게 이루어져 있는지 등 전반적인 내용을 바로 알아보겠습니다.
목차
- 컴퓨터 구조란?
- 컴퓨터의 기본 구성 요소
- 컴퓨터 구조 이해하기
- 가장 중요한 CPU가 하는 일 정리
- 보조기억장치와 주기억장치의 차이점
- 컴퓨터에서 운영체제(OS)가 하는일
- 운영체제의 ‘프로세스’에 대해
- 최근 컴퓨터 아키텍쳐 트렌드는?
컴퓨터 구조란?
안녕하세요! 컴퓨터 초보자를 위한 친절한 IT가이드 컴퓨터앤가이드입니다.
이 글은 컴퓨터 초보자분들을 위한 컴퓨터 구조 설명을 하는 내용입니다. 그러면 바로 시작해 보도록 하겠습니다.
먼저 컴퓨터 구조를 이해하려면 어떤 하드웨어(물리적 부품)들이 컴퓨터를 이루고 있는지를 알아야 하고 또한 어떻게 서로서로 상호작용을 하는지를 이해해야 합니다.
컴퓨터는 하드웨어만 있어서는 사용자가 사용할 수 없습니다. 사용자가 원하는 기능을 사용할 수 있도록 해주는 소프트웨어(프로그램)가 반드시 있어야 합니다.
특히 하드웨어를 관리하는 역할도 하면서 사용자와도 상호작용하는 소프트웨어를 시스템 소프트웨어라 하고 그 중 대표적인 것이 운영체제(윈도우, macOS, 안드로이드 등)입니다.
예를 들어 조립PC 본체를 구매했다면 하드웨어를 구매한 것입니다. 이 컴퓨터 안에는 CPU, 메인보드, 램, 그래픽카드, SSD 등의 다양한 하드웨어들이 장착되어 있습니다.
여기에 소프트웨어인 운영체제 즉 윈도우가 설치되어야 우리가 컴퓨터를 조작할 수가 있습니다. 또한 그 외에 포토샵, 게임, 크롬 브라우저 등의 사용자가 원하는 기능을 가진 소프트웨어들도 설치할 수 있습니다.
- (일반적인 의미의) 컴퓨터 = 하드웨어(물리적 부품) + 소프트웨어(프로그램)
조금 더 자세한 구성요소와 동작들은 이어질 내용에서 설명드리고 그러면 컴퓨터의 구조를 파악하는 것이 왜 필요할까요?
왜냐하면 현재 우리 생활에 빼놓을 수 없는 다양한 전자기기들이 모두 이러한 컴퓨터의 구조를 기반으로 작동하기 때문입니다.
가장 알기 쉬운 예로는 스마트폰이 있습니다. 보통은 스마트폰을 컴퓨터라는 이름으로 부르는 것이 일반적이지는 않습니다.
왜냐면 일반적인 컴퓨터가 범용으로 사용되는 것과 다르게 스마트폰은 무선통신을 기반으로 전화, 문자, 카카오톡, 모바일뱅킹 등과 같은 다양한 기능을 이동하면서 사용하는 것이 주목적이기 때문에 방향성이 다르기 때문입니다.
그러나 이론적으로 보면 컴퓨터의 두뇌인 CPU가 주기억장치인 RAM 그리고 보조기억장치인 SSD와 상호작용을 하는 것과 비슷하게 작동합니다.
다만 스마트폰은 사람이 들고 다니면서 이용하는 소형 전자기기이기 때문에 CPU의 물리적인 구조 자체가 동일하지는 않습니다. (스마트폰의 CPU는 모바일 AP(Application Processor, 스마트폰의 CPU)라 불립니다)
컴퓨터의 경우 CPU, 메모리, 그래픽카드, 저장장치가 모두 독립되어 있는 반면에 모바일 AP의 경우 CPU, 메모리, 그래픽카드, 저장장치가 보통 하나의 칩(SoC, System On Chip)으로 되어 있습니다.
당연히 차이점은 있으나 아직까지는 기존 컴퓨터의 구조를 발전시킨 형태이기 때문에 기존의 컴퓨터 구조를 잘 이해해두면 최근의 다양한 전자기기들을 이해하는데 많은 도움이 될 것입니다.
컴퓨터의 기본 구성 요소
컴퓨터의 기본적인 구성 요소를 아주 간략하게 요약하면 아래와 같습니다.
구성 요소 | 역할 |
CPU(Central Processing Unit) | 연산과 제어 |
캐시 메모리 (Cache Memory) | 속도 보완 (CPU ↔️ 주기억장치) |
주기억장치(RAM, ROM) | 속도 보완 (CPU ↔️ 보조기억장치) |
보조기억장치(SSD, HDD) | 자료 저장 |
위 구성요소들 중 CPU, RAM, SSD에 대해서는 초보자 분들이라도 어느정도 익숙할 텐데요. 아마 익숙하지 않을 캐시 메모리라는 녀석은 CPU 내에 있습니다.
그런데 컴퓨터는 데스크탑을 기준으로 위 구성요소 외에도 그래픽카드, 파워서플라이가 더 필요합니다.
그런데 이 중 기본적인 구성요소로 CPU, 캐시 메모리, 램, SSD만 언급하는 이유는 이 부품들의 상호작용이 컴퓨터 구조를 이해하는데 매우 중요하기 때문입니다.
이 관계를 이해해보기 위해 먼저 이 구성요소들의 용량, 속도, 비용을 비교해보면 아래와 같습니다.
이 중 컴퓨터의 동작을 이해하기 위해서는 먼저 속도를 살펴볼 필요가 있습니다.
보는 것처럼 보조기억장치 쪽으로 갈수록 속도가 느려집니다.
그리고 CPU쪽으로 갈수록 속도가 빨라진다는 점을 먼저 알아두어야 합니다.
왜냐면 하드웨어적으로 보았을 때 이 속도의 차이를 완화시키기 위해 RAM과 캐시 메모리를 사용하기 때문입니다.
보통 사용자 입장에서는 컴퓨터를 사용하면서 체감속도만을 느낄 뿐이지 컴퓨터 내부의 부품들의 속도가 다르다고 인식하지는 않습니다.
그러나 실제로는 서로간의 속도 차이가 상당히 커서 양 끝에 있는 CPU와 SSD의 속도 차이는 어마어마하게 많이 납니다.
이 때 RAM은 CPU와 SSD 사이의 속도 차이를 줄여줄 수 있습니다.
그리고 캐시 메모리는 CPU와 RAM 사이의 속도 차이를 줄여줄 수 있습니다.
최근의 CPU들은 캐시 메모리가 물리적으로 CPU내에 위치해 있습니다. 그러나 여기서는 이해를 돕기 위해 캐시 메모리가 일단 따로 있다고 가정할 것입니다.
먼저 크게 이러한 관계를 이해한 후 이어서 컴퓨터의 구조를 조금 더 자세히 보도록 하겠습니다.
참고로 이 외에도 컴퓨터의 부품들이 궁금하다면 아래 컴퓨터 부품 설명 내용을 정리한 글에서 모두 알 수 있습니다.
✅ 함께 보면 좋은 연관 포스팅
초보자를 위한 자세한 컴퓨터 부품 설명 가이드 (2024)
컴퓨터 구조 이해하기
앞서 컴퓨터의 구성 요소와 각 요소들간의 속도에 관한 차이점을 공유드렸습니다.
이제 조금 더 실질적인 구조도를 한 번 보도록 하겠습니다.
보는 것처럼 CPU에는 계산을 담당하는 ALU(Arithmetic Logic Unit)와 제어를 담당하는 CU(Control Unit) 그리고 기억장치인 레지스터(Register)가 있습니다.
여기서 레지스터는 우리가 생각하는 SSD와 RAM과 같은 고용량인 기억장치가 아니라 1bit를 저장할 수 있는 소자인 플립플롭(Flip-Flop)입니다.
또한 종류가 굉장히 많지만 일단은 단순하게 기억장치로 알아두도록 하겠습니다.
이러한 구조에서 CPU는 시스템 버스 즉 통로를 통해서 주기억장치인 RAM과 명령어와 데이터를 주고 받습니다.
그리고 사실 이 시스템 버스라는 녀석도 주소(어디로 접근할지), 데이터(어떤 녀석을 보낼지), 제어(어떤 통제를 할지) 버스로 나누어집니다.
다만 CPU가 보조기억장치인 SSD에 직접적으로 접근하지는 않습니다.
보통 사용자의 실제 자료가 저장되고 활용되는 부분이 SSD이기 때문에 왜 SSD가 보조기억장치인지 헷갈릴 수도 있을 것입니다.
그러나 이렇게 CPU를 중심으로 생각하면 왜 RAM이 주기억장치인지 이해할 수 있습니다.
여기서 위 그림으로만 구조를 이해하려고 하면 화살표가 가리키는 경우의 수가 너무 많아서 헷갈릴 수도 있을 것입니다.
그래서 전체적인 동작을 이해해보기 위해 예시를 들어 설명드려 보겠습니다.
만약 사용자가 윈도우에서 SSD(보조기억장치)에 저장된 어떤 프로그램을 실행 시켰다고 가정해 보겠습니다.
그러면 이 프로그램은 바로 CPU에 의해 실행되는 것이 아니라 먼저 SSD(보조기억장치)에서 RAM(주기억장치)에 적재(Load)됩니다.
그리고 이렇게 메모리에 적재된 내용이 다시 캐시 메모리에 적재됩니다.
그러면 운영체제인 윈도우가 프로그램을 실행하라고 CPU에 알려줬기 때문에 CPU는 RAM(주기억장치)에서 관련 내용을 찾아야 하는데요.
그 전에 먼저 캐시 메모리에서 관련 내용이 있는지를 확인합니다.
그래서 캐시 메모리에 있으면(캐시 히트, Cache Hit) 바로 가져와서 연산을 할 수 있고 없으면(캐시 미스, Cache Miss) 이 때는 다시 RAM(주기억장치)에서 캐시 메모리로 필요한 내용을 적재합니다.
그 후 다시 캐시 메모리에서 관련 내용을 읽어와서 연산을 하게 됩니다.
이러한 일련의 과정을 머리속에서 한 번 상상해보시기 바랍니다. 그러면 컴퓨터의 구조를 이해하는 것이 더 나아질 것입니다.
여기까지 어떤 흐름으로 동작하는지를 이해하셨나요?
만약 사용자가 컴퓨터를 켜서 엑셀을 실행하고 크롬 브라우저도 켜고 포토샵도 켰다면 이러한 동작을 할 때마다 이와 동일한 과정이 반복됩니다.
그 때마다 CPU가 계속 연산을 수행하고 필요한 경우 제어를 하기 때문에 두뇌라고 많이 표현합니다. 이 때 잊지 말아야 할 것은 앞서 얘기한 것처럼 CPU는 아주 빠르고 SSD는 이에 비해 아주 느리다는 점입니다.
CPU의 사양 중 초당 진동수를 의미하는 GHz 단위의 클럭(Clock)이라는 것이 있습니다.
이 클럭이라는 것은 1초에 몇 번의 명령어(컴퓨터 입장에서의 명령어)를 처리할 수 있는지를 나타낼 수 있는 지표인데 요즘 CPU들은 보통 수GHz 단위입니다.
만약 어떤 CPU가 3GHz의 클럭을 가진다면 1초에 약 30억번의 싸이클(명령어는 여러 싸이클에 걸쳐 처리될 수 있음)을 처리한다는 뜻이므로 상상을 초월할 정도로 빠른 속도입니다.
그리고 이것은 개인용 PC의 CPU를 기준으로 설명드리는 것이며 기업에서 사용하는 서버용 CPU들(인텔 제온, AMD 쓰레드리퍼 등)은 이보다도 훨씬 더 빠릅니다.
이처럼 기존 컴퓨터의 구조에서는 CPU가 가장 중요한 역할을 합니다. 그래서 다른 부품들과는 다르게 CPU가 고장이 나면 아예 컴퓨터를 사용할 수 없습니다.
여기까지 컴퓨터의 구조에 대해서 그리고 CPU가 왜 중요한 지 알아보았는데요.
이어서 그렇다면 CPU가 어떤 일을 하는지 조금 더 자세히 알아보겠습니다.
참고로 CPU를 포함해 컴퓨터 성능 테스트 방법이 궁금하다면 아래 글에서 자세한 방법들을 알 수 있을 것입니다.
✅ 함께 보면 좋은 연관 포스팅
가장 중요한 CPU가 하는 일 정리
앞서 컴퓨터가 어떤 구조로 되어있는지와 CPU가 컴퓨터에 무척 중요한 부품이라는 점에 대해 얘기드렸습니다. 여기서는 CPU가 하는 일을 조금 더 자세하게 알아보려고 합니다.
CPU는 아래와 같이 구성되어 있습니다.
- ALU(연산 장치) : 산술 연산과 논리 연산 수행
- CU(제어 장치) : 메모리에 저장된 값을 읽거나 쓰면서 제어
- Register(기억 장치) : CPU 내부의 기억장치
이 각각이 어떤 역할을 하는지 알아보겠습니다.
ALU는 단순히 계산기라고 생각하면 이해하기 쉽습니다. 이 중 산술 연산이란 말 그대로 사칙연산과 관련된 계산이고 논리 연산은 AND, OR, NOT 등과 같은 연산을 의미합니다.
여기서 AND란 두 가지 입력 중 하나라도 0이라면 결과값이 0인 연산이고 OR은 두 가지 입력 중 하나라도 1이면 1인 연산이며 NOT의 경우 0이면 1이 되고 1이면 0이 되는 연산입니다.
CU는 이름처럼 제어를 담당하는 부분입니다. CPU는 주기억장치인 RAM과 상호작용하므로 메모리를 읽거나 쓰는 제어를 합니다.
Register는 기억장치입니다. 이 기억장치는 우리가 이해하는 SSD와 같은 기억장치가 아닌 플립플롭이라는 소자로 이루어진 계산의 결과값을 저장해두는 임시 기억장치입니다.
사실 레지스터의 종류는 위 목록에 있는 종류 외에도 여러개가 있지만 일단은 이렇게 하나로 프로그램을 실행하는데 필요한 값들을 임시로 저장하는 기억장치라는 사실을 알아두면 되겠습니다.
여기까지 CPU가 하는 일을 간단히 정리해 보았는데요. 이보다 조금 더 자세하게 알기 위해서는 이제 더욱 복잡한 내용을 공부해야만 합니다.
초보자 분들이라면 여기까지만 이해하는 것도 결코 쉽지 않을 것입니다.
만약 컴퓨터 구조에 대한 더 자세히 공부해보고 싶다면 이제 관련 책이나 강의를 이용해서 공부하면 되는데요.
개인적으로 유튜브의 개발자 강민철님의 컴퓨터 구조 과목 몰아보기 영상을 한 번 보는 것을 추천드립니다.
보조기억장치와 주기억장치의 차이점
컴퓨터에서 기억장치는 외부기억장치와 내부기억장치로 나눌 수 있습니다.
외부기억장치는 보조기억장치(SSD, HDD 등)를 의미합니다. 그리고 내부기억장치는 캐시 메모리, 레지스터, 주기억장치(RAM, ROM)를 의미합니다.
- 외부기억장치
- 보조기억장치 : SSD, HDD 등
- 내부기억장치
- 캐시 메모리 : CPU에 있는 속도 보완 메모리
- 레지스터 : CPU에 있는 임시기억장치
- 주기억장치
- RAM : Random Access Memory, 읽기와 쓰기 가능
- SRAM : Static RAM, 정적 램
- DRAM : Dynamic RAM, 동적 램
- ROM : Read Only Memory, (기본적으로는) 읽기만 가능
- PROM : Programmable ROM, 한 번 쓰기 가능
- EPROM : Erasable PROM, 삭제 가능(자외선)
- EEPROM : Electrically EPROM, 삭제 가능(전기 신호)
- RAM : Random Access Memory, 읽기와 쓰기 가능
이 중 우리가 잘 알고 있는 RAM은 주기억장치의 한 종류인데요.
이 RAM은 다시 SRAM과 DRAM으로 나누어지며 우리가 보통 얘기하는 RAM이란 DRAM을 의미합니다.
컴퓨터 램의 사양에서 볼 수 있는 DDR이라는 명칭의 전체 이름은 DDR SDRAM(Double Data Rate Synchronous DRAM) 즉 DRAM의 한 종류입니다.
복잡한 분류는 이 정도만 하고 여기서는 보조기억장치의 대표적인 SSD와 주기억장치의 대표적인 RAM에 대해서 알아보겠습니다.
SSD는 윈도우 자체도 포함하여 모든 데이터가 실제로 저장되는 부품으로 전원이 꺼져도 그 내용이 유지됩니다. (비휘발성)
반면에 RAM은 프로그램을 실행할 때마다 SSD로부터 데이터를 가져오는 부품으로 전원이 꺼지면 그 내용이 모두 사라집니다. (휘발성)
즉 SSD와 RAM의 눈에 띄는 차이점은 전원이 꺼졌을 때 내용이 유지되는지 사라지는지입니다.
예를 들어 사용자가 엑셀 작업을 하다 저장 버튼을 누르면 SSD에 저장되고 웹서핑을 하다가 어떤 이미지를 다운로드 받으면 SSD에 저장됩니다.
이 때 엑셀이나 웹서핑을 위한 크롬 브라우저 같은 프로그램들 자체는 SSD에 저장되어 있고 컴퓨터가 켜져 있을 때는 RAM에도 (굳이 같은 표현을 쓰자면) 저장되어 있는 상태입니다.
그러나 전원이 꺼지면 이 자료들은 SSD에는 남아있고 RAM에는 남아있지 않죠.
다음으로 눈에 띄는 차이점은 SSD는 속도가 느린 대신 고용량이지만 RAM은 속도가 빠른 대신 (상대적으로) 저용량이라는 점입니다.
여기서 잠깐 조금 다른 얘기로 SSD와 램을 업그레이드하면 컴퓨터 속도가 많이 빨라지는지 궁금해하는 분들이 있습니다.
결론부터 얘기드리면 실제로 빨라지기는 하지만 현재 컴퓨터의 사양에 따라 체감으로 느껴지는 속도차이가 다르고 더욱 중요한 점은 그다지 체감속도 향상이 없을 수도 있다는 점입니다.
굳이 이 두 부품을 업그레이드해서 속도가 빨라지는 효과를 보고 싶다면 최신 방식으로 바꾸면서 용량도 늘려야 가능성이 있습니다.
예를 들어 만약 2.5인치 SATA SSD+ DDR4 RAM의 조합을 사용중이라면 M.2 NVMe SSD+DDR5 RAM의 조합으로 업그레이드하는 것입니다.
다만 이렇게 되면 메인보드를 교체해야 할 수도 있기 때문에 생각보다 일이 커질 수 있습니다.
그리고 램 용량만 늘리면 컴퓨터 체감속도가 빨라질 것으로 생각하는 분들도 많습니다.
하지만 (물론 효과가 있지만) 램 용량을 지금보다 두 배 늘린다고 해도 체감속도는 그렇게 커지지 않을 것입니다.
컴퓨터 속도를 향상시키고 싶다면 가장 먼저 업그레이드를 고려해야 할 부품은 다름 아닌 CPU입니다. 물론 이 CPU 업그레이드도 메인보드를 교체해야 할 가능성이 있기 때문에 결국일이 커지는 것은 마찬가지입니다.
그래서 저는 혹시 이렇게 물어보는 분들이 있으면 차라리 새로 컴퓨터를 하나 맞추라고 보통 얘기드립니다. 왜냐면 어설프게 업그레이드하면 비용만 들고 체감속도는 별로 빨라지지 않을 가능성도 많기 때문입니다.
다시 돌아와서 앞서 캐시 메모리에 대해서도 알아보았는데 하나 얘기드리지 않은 점이 있습니다.
최근 CPU들은 이 캐시 메모리에서도 속도 차이(와 용량)를 단계별로 두고 Level1, Level2, Level3로 나눕니다. (사실 꽤 오래 되었지만 단순하게 요즘 볼 수 있는 모든 CPU라고 이해하면 되겠습니다)
현재 사용중인 컴퓨터의 캐시 메모리를 확인하고 싶다면 사양 확인하는 프로그램인 CPU-Z에서 알 수 있습니다.
참고로 CPU-Z 보는 법을 포함한 컴퓨터 사양 확인하는 자세한 방법은 아래 글에서 모두 알 수 있습니다.
✅ 함께 보면 좋은 연관 포스팅
컴퓨터에서 운영체제(OS)가 하는일
앞서 컴퓨터의 대략적인 구조에 대해서 알아보았습니다.
사실 중간중간에 생략된 개념과 내용들이 아주 많고 개요 정도의 내용임에도 초보자분들이라면 전체적인 구성을 이해하는 것이 쉽지 않을 것입니다.
그래서 이번에는 조금 더 사용자가 자주 접하게 되면서 또한 컴퓨터를 설명할 때 빼놓을 수 없는 운영체제(OS, Operating System)가 하는일에 대해서 알아보겠습니다.
운영체제의 정의는 ‘컴퓨터 사용자가 손쉽게 컴퓨터를 쓸 수 있게 도와주는 동시에 컴퓨터 시스템을 효율적으로 운영해주는 기능을 갖춘 프로그램의 집단’입니다.
그런데 이 말이 너무 딱딱하고 추상적으로 들릴 수도 있을 것입니다.
조금 풀어서 설명드리면 사용자가 윈도우(운영체제)를 통해 문서작업, 웹서핑 등 이런저런 프로그램을 실행하고 원하는 작업을 가능하도록 하면서 하드웨어도 관리한다는 의미입니다.
여기서 문서작업이나 웹서핑과 같은 경우 모두가 쉽게 이해할 수 있지만 윈도우가 하드웨어 관리도 한다는 것은 잘 와닿지 않을 수도 있습니다.
하지만 윈도우는 눈에 보이지 않게 다양한 하드웨어들을 컨트롤하면서도 사용자에게는 그래픽 환경에서 편리하게 응용프로그램을 실행할 수 있도록 제공하는 어려운 일을 하고 있습니다.
아마 처음 들어보는 용어일 수도 있는데 하드웨어를 제어하는 것은 윈도우의 커널(Kernel)이라는 녀석이 담당하고 있습니다.
그래서 사용자 입장에서는 보통 하드웨어를 직접적으로 컨트롤하게 될 일은 잘 없습니다. (그리고 너무 복잡해서 그렇게 할 수도 없을 것입니다)
그러나 사용자가 컴퓨터의 하드웨어와 관련된 부분을 어느정도 직접 제어하는 일이 빈번하게 있는데 이것이 드라이버를 설치하고 삭제하거나 업데이트하는 일입니다.
예를 들어 만약 새 복합기를 구매했다고 가정해 보겠습니다. 그러면 이 복합기는 컴퓨터에 연결되므로 윈도우 입장에서 하나의 하드웨어로 생각할 수 있습니다.
그런데 이 복합기를 현재 컴퓨터에 연결만 하는 것으로는 다양한 기능들을 제대로 사용할 수가 없습니다. 그래서 복합기 제조사의 홈페이지에 가서 관련된 드라이버를 다운로드받아 설치해야 합니다.
그러고 나면 복합기가 내 컴퓨터에 잘 연동이 되고 이제 기본적인 출력기능을 포함해 양면복사, 좌우반전 등 여러가지 기능들을 사용할 수 있게 됩니다.
하드웨어를 제어한다는 측면에서 운영체제가 하는 일을 간단히 정리하면 아래와 같습니다.
먼저 윈도우는 CPU의 스케줄링을 해야 합니다. 여기서 스케줄링이란 CPU가 어떤 일에 어떻게 쓰여질지를 결정하는 것을 의미합니다.
스케줄링의 기법에는 여러가지가 있는데 하나만 얘기드리면 유명한 기법으로 라운드 로빈(Round Robin)이라는 것이 있습니다. 아주 간단히 말하면 라운드 로빈은 정해진 시간만큼만 실행하고 다음으로 넘어가는 스케줄링 기법입니다.
그리고 RAM도 관리해야 합니다. 앞서 보았듯이 컴퓨터를 사용중에는 늘 RAM을 사용합니다. 다음장에 얘기드릴 프로세스(실행중인 프로그램)라는 것이 있는데 이 프로세스가 실행되려면 RAM에 적절하게 할당하고 해제도 해야 합니다.
아마 RAM 용량 부족으로 컴퓨터가 느려지거나 제대로 프로그램이 실행되지 않는 등의 경험을 해 본 분들이라면 무슨 얘기인지 어느정도 이해할 수 있을 것입니다.
또한 입출력 장치들 그러니까 마우스, 키보드, 프린터 등을 제어하는 일도 해야 합니다. 이러한 일을 앞서 얘기드린 드라이버를 통해서 합니다. 물론 꼭 드라이버를 통해서 하는 것은 아니지만 처음에는 너무 복잡하게 생각할 필요는 없습니다.
물론 윈도우는 다양한 제조사의 부품들이 결합된 컴퓨터를 사용할 수 있어야 하므로 윈도우가 설치될 때 필수요소인 키보드, 마우스와 같은 몇몇 부품들에 대해서는 표준 드라이버를 제공합니다.
그래서 윈도우 설치후 따로 드라이버를 설치하지 않아도 키보드나 마우스는 보통 바로 사용할 수 있는 것입니다.
여기까지 운영체제가 하는 일에 대해 알아보았는데요. 운영체제는 이러한 핵심적인 역할을 하기 때문에 컴퓨터의 구조와 떼어놓고 생각할 수 없습니다. 그래서 모든 전자기기는 이러한 역할을 수행할 수 있는 소프트웨어가 필요합니다.
참고로 윈도우는 매우 복잡하고 방대한 소프트웨어이며 포토샵, 한글, 오피스, 게임, 압축 프로그램 등 너무나 많은 응용 프로그램들이 실행되며 내부적으로는 하드웨어도 컨트롤 해야 하는 등 할 일이 많기 때문에 생각보다 RAM 용량을 잘 관리하지 못하는 경우가 많습니다.
컴퓨터 사용중 메모리와 관련된 오류로 블루 스크린이 뜰 때 마이크로소프트에서도 원인을 정확히 찾기 힘든 부분들이 있을 정도입니다. 이와 관련해서는 마이크로소프트 블루 스크린 오류 해결 페이지에서도 알 수 있습니다.
그래서 평소 램 용량을 어느정도 정리해 나가면서 컴퓨터를 사용하는 것이 좋습니다.
참고로 만약 컴퓨터 메모리 정리하는 간단하고 쉬운 방법이 궁금하다면 아래 글에서 모두 알 수 있습니다.
✅ 함께 보면 좋은 연관 포스팅
컴퓨터 메모리 정리 방법 3가지! 부족한 용량 확보하기
운영체제의 ‘프로세스’에 대해
운영체제 즉 윈도우에는 프로세스라는 녀석들이 늘 실행되고 있습니다. 이 프로세스란 녀석의 정의는 간단한데 ‘실행되고 있는 프로그램’입니다.
그런데 왜 프로그램(또는 앱)이라는 간단한 단어를 두고 프로세스라는 단어가 또 있을까요?
사실 프로세스는 사용자가 실행하는 오피스, 포토샵 등과 같은 응용 프로그램만을 지칭하지 않기 때문입니다.
프로세스는 크게 시스템 프로세스와 사용자 프로세스로 나누어집니다.
시스템 프로세스란 윈도우가 제대로 실행되도록 하는 작업을 하는 프로세스인데 보통 사용자의 눈에는 보이지 않는 백그라운드 프로세스로 동작하고 있습니다. 컴퓨터의 전원을 켜면 아무것도 하지 않아도 늘 일정용량의 램을 차지하는 이유 중 하나가 이것입니다.
그리고 사용자 프로세스는 말 그대로 사용자가 실행시킨 프로그램으로 인해 실행되고 있는 프로세스입니다. 이것은 보통은 그냥 프로그램이라고 이해하면 되겠습니다. 그런데 이러한 프로그램은 실행되고 있는 것이 눈에 보이므로 백그라운드 프로세스라고 하지는 않습니다.
갑자기 프로세스라는 녀석을 설명드리는 이유는 이 프로세스라는 것을 이해하면 운영체제가 어떻게 동작하는지 이해하는데 도움이 되기 때문입니다.
여기서 조금 헷갈릴 수 있는 점이 하나 있는데요.
앞서 얘기한 것처럼 윈도우를 잘 동작시키기 위한 시스템 프로세스는 어차피 눈에 보이지 않고 뒤에서 동작하는 백그라운드 프로세스입니다.
그런데 사용자 프로세스는 눈에 보이는 것이 있고 사용자도 모르게 눈에 보이지 않는 백그라운드 프로세스도 존재하기 때문입니다.
예를 들어 포토샵을 설치하려고 한다고 가정해 보겠습니다. 어도비 홈페이지에서 포토샵 설치를 시도하면 먼저 크리에이티브 클라우드라는 프로그램을 설치하도록 유도합니다.
포토샵을 모두 설치 후 실행을 하려고 하면 늘 크리에이티브 클라우드라는 프로그램도 같이 실행되고 있습니다.
그런데 이 크리에이티브 클라우드는 어떤 업데이트가 있을 때 사용자에게 알려주도록 알림을 띄우고 업데이트를 도와주는 눈에 보이지 않는 백그라운드 프로세스를 늘 실행시키고 있습니다.
만약 이러한 프로그램들이 여러개 실행되고 있다면 눈에는 안 보여도 CPU를 계속 사용하고 있고 RAM의 용량도 역시 계속 차지하고 있습니다.
따라서 이런 프로세스들이 보이지 않게 여러개 실행되고 있다면 컴퓨터의 속도는 느리다고 느껴질 수 밖에 없을 것입니다.
여기서 설명드린 프로세스라는 녀석들은 윈도우의 작업 관리자를 실행시키면 모두 볼 수 있습니다.
이 중 앱=프로그램이고 백그라운드 프로세스=사용자 프로세스이며 Windows 프로세스=시스템 프로세스입니다.
그런데 엄밀히 말하면 사용자의 눈에는 보이지 않지만 뒤에서 계속 실행되고 있으므로 Windows 프로세스도 백그라운드 프로세스입니다.
최근 컴퓨터 아키텍쳐 트렌드는?
이번에는 최근 컴퓨터 구조의 트렌드에 대해 간단히 알아보겠습니다.
최근 가장 핫한 주제는 아무래도 양자컴퓨터일 것입니다.
양자컴퓨터란 양자역학의 원리를 이용한 컴퓨터로 이 글을 쓰는 현재 아직까지 상용화되지는 않았지만 향후 몇 년 내에 상용화될 가능성도 있는 컴퓨터입니다. (물론 상용화까지 아주 오래 걸릴 거라는 예측도 많습니다)
양자컴퓨터의 특징은 연산속도가 기존의 슈퍼컴퓨터보다도 월등히 빠르다는 것입니다.
얼마전 어떤 뉴스(매일경제 IT 과학 뉴스 기사)에서는 기존의 슈퍼컴퓨터로 10자년(10의 25승년)이 걸리는 연산을 구글의 양자컴퓨터로 5분내에 끝낼 수 있다는 기사도 보았습니다. (참고로 매일경제와 아무런 상관이 없는 블로그입니다)
개인적으로 양자컴퓨터에 대해서 잘 모르지만 개요를 조금 공부해보니 구조가 기존의 컴퓨터와는 완전히 다르게 되어 있습니다.
가장 큰 차이점은 현재 사용하는 기존의 컴퓨터는 비트(bit, 0과1을 표현) 단위를 사용하지만 양자컴퓨터는 큐비트(qbit, 0과 1 또는 0과 1을 중첩된 상태로 동시에 가짐) 단위를 사용한다는 점입니다.
그리고 현재 컴퓨터의 주요칩은 반도체를 기반으로 하는데 양자컴퓨터도 반도체를 사용하기는 하지만 꼭 반도체일 필요는 없다고 합니다.
양자역학을 기반으로 해서 이 매개체(반도체)의 양자들(원자, 전자, 광자 등)을 중첩 상태로 만든 후 빠르게 측정하는 방식이라고 하는데요.
일반적으로 이해하기 어렵기는 하지만 향후 대세가 될 수도 있기 때문에 원리나 양자컴퓨터의 구조나 원리 등에 대해 늘 관심을 가진다면 좋을 것입니다.
그리고 또 하나 최근에는 AI(인공지능)에 대한 얘기를 빼놓을 수가 없습니다.
불과 몇 년전까지만 해도 인공지능은 거의 상상속에서나 존재할 것만 같은 기술이었지만 현재는 그렇지 않습니다.
ChatGPT가 등장하면서 사람들이 인공지능의 강력한 위력을 알게 되었습니다. 또한 엔비디아(NVIDIA)가 AI시장을 장악하면서 엔비디아 주가가 어마어마하게 치솟기도 했습니다.
그리고 개인용 PC에서 보면 AI와 관련된 기능을 잘 수행하기 위해 기존에는 없던 NPU(Neural Processing Unit)라는 또 다른 형태의 칩도 등장했습니다.
현재 많은 노트북들은 이런 NPU칩을 장착한 AI기능을 내세워서 다양한 홍보를 하며 판매를 하기도 합니다.
이처럼 큰 틀에서 보면 변하지 않을 것만 같던 기술에 근본적인 변화가 일어나고 있다고 보여집니다.
따라서 컴퓨터에 관심이 있는 분들이라면 이러한 변화를 지켜보는 것도 재미있는 일이 될 것입니다.
참고로 NPU란 무엇인지에 대해 조금 더 자세히 알고 싶다면 아래 글에서 확인할 수 있습니다.
✅ 함께 보면 좋은 연관 포스팅
NPU란 무엇일까? NPU 뜻과 원리 및 특징 총정리 (2025)
마치며
여기까지 컴퓨터 구조 정리 내용을 알아보았는데요.
컴퓨터는 큰 의미에서 이제 우리의 삶에서 빼놓을 수 없는 전자기기가 되었습니다. 우리가 사용하는 스마트폰, 태블릿들도 결국 모두 컴퓨터라는 틀 안에서는 똑같기 때문입니다.
여기에 설명드린 컴퓨터 구조는 컴퓨터를 이루는데 가장 기초적인 내용으로 컴퓨터가 전공이 아닌 분들이라도 상식적으로 알아두면 좋을 내용입니다.
아무쪼록 컴퓨터 구조가 궁금했던 분들이라면 이 글이 좋은 가이드가 되길 바랍니다.
감사합니다.