컴퓨터 시스템의 개괄
컴퓨터 시스템의 개괄
컴퓨터는 크게 하드웨어(hardware)와 소프트웨어(software)로 구성된다. 하드웨어는 컴퓨터를 구성하는 기계 장치고, 소프트웨어는 하드웨어를 작동하려고 만든 알고리즘을 프로그램 형태로 제작한 것이다.
1. 하드웨어의 구성
컴퓨터 하드웨어는 CPU, 메인메모리, 입력 장치, 출력 장치, 저장 장치 다섯 가지 요소로 구성된다. 이 중에서 컴퓨터로 하는 대부분의 작업은 CPU와 메인메모리는 필수 장치로 분류하고, 그 외 장치는 주변 장치로 분류한다.
◼︎ CPU
CPU(중앙 처리 장치)는 명령어를 해석하여 실행하는 장치로, 인간의 두뇌에 해당한다.
◼︎ 메인메모리
메인메모리는 작업에 필요한 프로그램과 데이터를 저장하는 장소로, CPU에 데이터를 넘겨주고 처리한 데이터를 다시 저장한다.
◼︎ 입력 장치
입력 장치는 컴퓨터에 데이터를 전달하는 장치로 천공 카드, 키보드, 마우스 순으로 개발했다. 스마트폰 보급으로 터치스크린과 카메라는 중요한 입력 장치가 되었다.
◼︎ 출력 장치
출력 장치는 작업 결과를 나타내는 장치다. 초기 컴퓨터는 진공관이 전부였다. 그래서 결과도 진공관으로 확인했다. 그 후 라인 프린터를 개발했고 모니터, 그래픽 카드, 사운드 카드 등 출력 장치를 개발했다. 최근에는 일반적인 프린터뿐 아니라 입체물을 출력할 수 있는 3D프린터도 개발했다. 컴퓨터 성능에 영향을 미치는 출력 장치로는 그래픽 카드가 있다. 그래픽 카드는 컴퓨터 작업 중 그래픽 작업만 담당하는 부품이다. 3D 게임처럼 많은 양을 처리하는 그래픽 계산 프로그램이 늘어나면서 고성능 그래픽 카드가 사용되기 시작했다. 그래픽용 CPU를 GPU(Graphical Processing Unit)라고 하는데, CPU 계산 성능을 넘어서고 있다.
◼︎ 저장 장치
CPU가 작업에 사용하는 저장 공간인 메인메모리는 전기가 끊기면 데이터 사라지는 특징이 있다. 따라서 전원이 꺼진 이후에도 데이터를 보관할 수 있는 저장 장치가 생겨났다. 이러한 장치를 '보조 저장 장치(second storage)' 혹은 '제2 저장 장치'라고 하며, 간단히 '저장 장치'라고도 한다. 저장 장치를 사용하기 시작한 초기에는 카세트테이프를 쓰다 플로피디스크, 하드디스크가 등장했다. 요즘은 SSD(Solid State Disk), USB 디스크, SD 카드 등 반도체 메모리를 이용한 저장 장치를 많이 사용한다. 이렇게 반도체 메모리를 이용한 저장 장치를 '메모리 저장 장치'리고 한다.
2. 메인보드와 버스
메인보드(main board)는 CPU와 메모리 등 다양한 컴퓨터 부품을 연결시켜 주는 커다란 판이다. 각 부품을 한 곳에 고정시키고 고정된 부품 사이어 버스를 연결하여 컴퓨터가 동작할 수 있도록 한다. 메인보드를 자세히 들여다보면 가는 선들이 복잡하게 엉켜 있는데, 이선들을 버스(bus)라고 한다. 메인보드는 버스로 각 부품을 연결할 뿐 아니라 각 부품에 전기를 공급해 주어 원활하게 작동하도록 한다. 버스는 우리 몸의 혈관과 비슷하다. 혈관이 각 장기에 피를 공급해 주어 몸을 움직일 수 있는 것처럼 버스가 여러 장치를 연결하여 데이터를 공급함으로써 컴퓨터가 작동된다. 버스는 각 장치를 연결하는 선의 집합으로, 데이터가 다니는 통로다. 각종 주변 장치를 연결하는 메인보드의 버스를 시스템 버스(system bus) 혹은 전면 버스(Front-Side Bus, FSB)라고 한다.
3. 폰 노이만 구조
현대 대부분의 컴퓨터는 폰 노이만 구조(von neumann architecture)를 따른다. 폰 노이만 구조는 CPU, 메인메모리, 입력 장치, 출력 장치, 저장 장치가 버스로 연결되어 있다. 폰 노이만 구조가 등장하기 이전에는 전선을 연결하여 회로를 구성하는 하드 와이어링 형태의 컴퓨터였다. 그래서 다른 용도로 사용하려면 전선 연결을 바꾸어야 했다. 이러한 문제를 해결하고자 미국 수학자 존 폰 노이만(John von Neumann)은 메인메모리로 프로그램이 가능한 컴퓨터 구조를 제안했다. 즉, 하드웨어는 그대로 둔 채 작업용 프로그램만 교체하여 메인메모리에 올리는 방식이다. 폰 노이만 구조 덕분에 오늘날에는 프로그래밍 기술을 이용하여 다양한 작업을 할 수 있게 되었다. 폰 노이만 구조에서 가장 중요한 특징은 '모든 프로그램은 메인메모리에 올라와야 실행할 수 있다'는 것이다. 예를 들어 워드프로세서로 보고서를 작성했다고 하자. 워드프로세서 프로그램 보고서 파일은 저장 장치인 하드 디스크에 저장되지만 프로그램과 데이터가 저장 장치에서 바로 실행되지는 않는다. 저장 장치에 있는 프로그램을 실행하려면 프로그램이 메인메모리에 올라와야 한다. 컴퓨터를 켜면 바로 실행되는 윈도우 같은 운영체제도 프로그램이 기 때문에 메인메모리에 올라와야 실행이 가능하다.
[폰 노이만 구조의 특징]= 모든 프로그램은 메인메모리에 올라와야 실행 가능하다.
위 명제를 요리에 빗대어 설명해 주겠다. 주방장(CPU)이 요리를 하려면 보관 창고(저장 장치)에 있는 재료를 도마(메인메모리)로 가져와야 한다. 어떤 주방장도 보관 창고에서 바로 재료를 손질하거나 조리할 수 없다. 도마(메인메모리)는 주방장(CPU)이 요리를 하는 핵심적인 작업 공간이고, 보관창고(저장 장치)는 보조적인 공간이다.