컴퓨터 시스템은 하드웨어와 소프트웨어로 구성된다.
하드웨어 : 컴퓨터를 구성하는 기계장치
소프트웨어 : 하드웨어의 동작을 지시, 제어하는 명령어 집합
하드웨어에는 중앙처리장치(CPU), 기억장치, 입출력장치
소프트웨어에는 시스템 소프트웨어, 응용 소프트웨어로 구성된다.
숫자, 문자. 이미지, 동영상 같은 정적 정보, 컴퓨터와 주고받는, 내부 저장된 정보를 데이터라 통칭한다. 데이터는 0과 1로 숫자를 표현하는 방법, 0과 1로 문자를 표현하는 방법이 있다.
컴퓨터는 결국 명령어를 처리하는 기계다. 컴퓨터를 실질적으로 움직이는 정보라고 할 수 있다.
작은 컴퓨터, 스마트폰, 노트북, 서버 컴퓨터 등 다양한 종류의 컴퓨터가 있다. 여기서 핵심부품은 종류를 막론하고 동일한 4가지가 있다.
cpu, 메모리(주기억장치-일반적으로 RAM이라는 하드웨어를 지칭), 보조기억장치, 입출력장치다. 메인보드에 4가지 핵심부품을 모두 연결해서 사용할 수 있다.
네가지 부품이 서로 정보를 주고받으려면 통로가 있어야 한다. 그 경로를 '버스'라고 하며, 많은 버스 중 가장 중요한 버스, 척추와 같은 통로를 "시스템버스"라고 한다.
메모리는 현재 실행되는 프로그램의 명령어와 데이터를 저장하는 부품을 말한다. (현재 실행되고 있는 프로그램을 프로세스라고 한다.) 즉, 어떤 프로그램이 실행되려면 메모리에 올려져 있어야 한다.
+참고로, 운영체제에서 페이징은 실행되는 모든 데이터와 명령어가 저장될 필요는 없다고 한다.
보조기억장치에는 현재는 실행되지 않는 프로그램이 저장된다. 모든 프로그램은 명령어와 데이터로 저장되어 있는데, 이는 메모리에 저장되어 있다.
메모리 한칸 한칸이 주소라는 개념을 갖는다. 내가 원하는 명령어, 데이터가 메모리 내에 어디에 저장되어있는지 위치를 특정하기 위해 사용하는 것이 '주소'다. 내가 필요로 하는 명령어, 데이터가 메모리의 어느 주소에 위치해있는지 알 수 있다.
메모리에 저장된 명령어와 데이터를 실행, 읽는 역할을 한다. cpu 내부 구성부품은 3가지다. ALU(산술논리연산장치), 제어장치, 레지스터가 CPU의 핵심 부품이다.
제어신호 : 컴퓨터 부품을 관리, 작동하기 위한 전기신호
예 : 메모리 읽기신호(CPU가 메모리에 저장된 값을 읽고싶을때 메모리를 향해 전기신호 쏘는것), 메모리 쓰기 신호(CPU가 메모리에 값을 쓰고 싶을때 메모리를 향해 전기신호 쏘는것)
전원이 꺼져도 내용을 보관할 수 있는 저장장치다.
*메모리는 실행할 정보를 저장하고, 보조기억장치는 보관할 정보를 저장한다.
컴퓨터 외부에 연결되어 컴퓨터 내부와 정보를 교환할 수 있는 컴퓨터 부품을 말한다. 모니터, 키보드, 마우스가 있다.
보조기억장치와 입출력장치에 대해서는, 실제로 컴퓨터와 주고받는 양상을 보았을때 이 둘을 주변장치라고 통칭하기도 한다.
다만, 보조기억장치는 "메모리를 보조하는 특별한 입출력장치"라고 이해하면 된다.
4가지 핵심부품을 연결할 수 있는 '판'이다. 정보를 주고받을 수 있는 통로를 '버스'라고 하며, 정말 중요한 역할을 하는 버스를 '시스템 버스'라고 한다. 여러 부품을 연결하면 버스를 통해 정보를 주고받게 되는 것이다.
주소버스, 데이터버스, 제어버스라고 하는 내부구성을 가지고 있다. 주소버스는 주소를 주고받는 통로, 데이터버스는 명령어와 데이터를 주고받는 통로, 제어버스는 제어신호를 주고받는 통로라고 보면 된다.
중앙처리장치와 기타 장치 사이에서 데이터를 전달하는 통로를 말하며
기억장치와 입출력 장치의 명령어와 데이터를 중앙처리장치로 보내거나, 중앙처리장치의 연산결과를 기억치와 입출력 장치로 보내는 '양방향'버스다.
데이터를 정확히 실어나르기 위해 기억장치 '주소'를 정해주어야 한다.
주소버스는 중앙처리장치가 메모리나 입출력 장치로 기억장치 주소를 전달하는 통로이므로 '단방향'버스이다.
주소와 데이터 버스는 모든 장치에 공유되므로 이를 제어할 수단이 필요하다.
읽기 동작과 쓰기 동작을 모두 수행하므로 '양방향'버스다.
컴퓨터는 기본적으로 읽고 처리 후 저장하는 과정으로 이뤄진다. READ-PROCESS-WRITE
이 과정을 진행하면서 끊임없이 주기억장치(RAM)과 소통한다. 이때 운영체제가 64bit라면 CPU는 ram으로부터 데이터를 한번에 64bit씩 읽어온다.