컴퓨터 구조를 발전시킨 데에는 7가지 아이디어가 있었다.
단순히 예전에 계산에만 쓰이던 컴퓨터가 지금까지 사람들이 사용할 수 있었던 7가지 아이디어에 대해 소개하겠다.
Abstraction(추상화)
먼저 컴퓨터를 추상화함으로써 컴퓨터 사용을 더 편리하게 했다. 간단하게 디자인하게 된 것이다. 그냥 단순하게 생각하면 컴퓨터를 하드웨어랑 소프트웨어로 분리한 것도 추상화의 하나라고 생각할 수 있다.
Common Case Fast (공통 부분 빠르게!)
어떤 일을 하든지 공통적인 부분을 묶으면 빨리 할 수 있다. 컴퓨터도 이러한 일환으로 CISC과 RISC라는 개념들도 나오게 된다.
Parellelism (병렬화)
병렬화를 통해서 컴퓨터의 성능을 최대화 시켰다.
Pipelining(파이프라이닝)
이건 좀 의아할 수 있는데, 파이프라이닝?은 물 배관으로 알고 있다. 대량의 명령어가 순차적으로 처리되는 것이 물이 흐르는 과정이랑 비슷하다는 생각에서 나온 개념이라고 한다.
Prediction (예측)
컴퓨터는 예측을 통해서 명령어를 실행해 성능을 향상시켰다. 물론 이것이 취약점이 되어서 나온 문제가 Melt Down이다.
인텔 프로세서에 영향을 미치는 하드웨어 취약성인 melt down은 프로세서가 추측 실행을 처리하는 방식의 결함을 이용함으로써 작동하는데, 이것이 프로그램이 다음에 실행할 명령을 예측함으로써 처리 속도를 높이는 데 사용되는 기술이다.
Hierarchy of Memories (메모리 계층 구조)
메모리를 계층적으로 사용하는 것도 컴퓨터의 성능을 향상 시킨 요소이다.
Dependability via Redundancy(이중화를 통한 신뢰성)
RAID는 "독립 디스크의 중복 어레이"를 의미한다. 여러 개의 하드 드라이브를 사용하여 성능, 안정성 또는 둘의 조합을 향상시키는 데이터 스토리지 기술이다.
RAID의 핵심 원칙 중 하나는 "중복성을 통한 신뢰성"이다 즉, 여러 개의 하드 드라이브를 사용하여 해당 드라이브 간에 데이터를 복제하여 단일 드라이브 장애 시 중복성을 제공할 수 있다. 이러한 이중화는 우리에게 데이터의 신뢰성을 줄 수 있다.
'CS > 컴퓨터 구조' 카테고리의 다른 글
암달의 법칙 (Amdahl's law) (0) | 2023.03.20 |
---|---|
컴퓨터 성능은 어떻게 측정할까? (0) | 2023.03.20 |
컴퓨터 구조와 언어 (2) | 2023.03.05 |