09
10

알고보면 쉬운 컴퓨터 부품들을 알아보면 조립이 쉬워질지도 몰라요!

1. 문제의 발단

  • 요즘에는 컴퓨터를 구입할 때 자신에게 맞는 조건의 부품들을 구입하여 직접 조립하는 경우가 많다.
  • 이미 견적이 나와있는 조립이 된 컴퓨터를 삼성이나 엘지에서 사는 것도 좋지만, 직접 하나하나 맞추는 경우가 더 저렴하고 원하는 경우 더 필요한 부품에 견적을 조금 더 두고 쓰임에 따라 만드는 데스크톱도 좋다.
  • 그래서 어떤 하드웨어가 어떤 일을 하는지 알면 더욱 도움이 될 것이라고 생각하고 그것에 대해 정리하게 되었다.

2. SSD

좌측은 HDD의 내부 입니다. 플래터와 헤드가 바로 보이죠. 우측이 SSD입니다. 칩 같은 종류의 부품들이 주를 이룹니다.

  • 무엇이 SSD이고, 무엇이 HDD와 다른가요?
    • Solid State Drive를 줄인 것이다.
    • Hard Disk Drive(HDD)보다 빠르게 동작하며 요즘 컴퓨터에는 HDD 대신 다 들어가 있다.
    • HDD는 뜯어보면 CD 디스크처럼 생긴 '플래터'에 정보를 기록했다가, 축음기 처럼 생긴 '헤드'의 핀이 직접 움직이면서 정보를 읽어 들인다. 이처럼 물리적으로 움직이기 때문에 정보를 읽는데 한계가 존제한다.
    • SSD는 내부에서 전자적인 방식으로 동작하기 때문에 정보를 읽는데 한계가 물리적일 때 보다 적다.
  • SSD의 장단점
    • 장점 1: HDD보다 매우 빠르다.
    • 장점 2: 물리적 충격에 강하다. 물리적인 움직임이 없기 때문이다.
    • 장점 3: 병렬로 데이터를 처리하기 쉽다. HDD의 경우 헤드가 직접 움직이기 때문에 하나의 HDD가 하나의 데이터를 읽어야 하는 반면, 전자적 신호로 여러 개로 나누어 병렬적 처리가 가능하다.
    • 장점 4: 크기도 작고 매우 가볍다. 역시나 물리적인 부분이 없기 때문이다. 하지만 HDD의 대체품으로 SSD는 발전해 왔기 때문에 HDD가 사용하던 위치와 선등을 이용하려고 하다 보니 사이즈가 큰 차이가 없어 보이기도 한다. 하지만 사실은 더 작게 만들 수 있고, 지금은 HDD보다 더 많이 사용하기 때문에, SSD의 자리가 따로 있고 작은 사이즈로 만들어 더 많은 SSD를 달아서 사용한다.
    • 단점 1: SSD안에 보이는 검은색 칩을 'NAND Flash'라고 하는데, 이는 블록으로 구성되어 안에는 여러 개의 페이지로 이루어져 있다. 이때, 하나의 페이지라도 동작하지 않으면 이를 '배드 블록'이라고 한다. 데이터는 블록에 FTL(Flash Traslation Layer)을 통해서 SSD가 사용할 수 있는 형태로 만들어 저장된다. 이때, 한번 사용된 블록을 동일한 데이터는 다시 사용할 수 없기 때문에 데이터가 업데이트되면 새로운 블록에 저장하게 된다. 그래서 블록의 수명이 다 하게 되면, 배드 블록이 된다.
      • 만약, 수명이 다 되면 그 데이터는 어떻게 하죠? : SSD를 사용할 때, SSD의 용량보다 컴퓨터가 읽어 들이는 용량에는 차이가 조금 있는것을 알 수 있다. (예를들어 256GB SSD를 사용할때 컴퓨터가 진짜 인식하는 용량은 230GB 정도로 표시된다. 혹은 용량의 단위를 다르게 써놓는 경우도 있다) 이는 사기당한 것이 아니라, 만약 배드 블록이 발생했을 때 대체할 수 있는 블록을 남은 공간에 두는 것이다. 이를 OP영역(Over Provisioning)이라고 하고, 배드 블록을 관리한다.
    • 단점 2: 쓰기나 읽기의 방해를 받을 수 있다. 자주 사용되는 파일이 저장되어있는 블록이 자주 사용되므로 분명 다른 블록들 보다 전압이 많이 가해진다. 그렇다면 그 옆에 있는 다른 블록들에게는 전압이 가해지지 않았지만 영향을 받을 수 있기 때문이다. 그렇다면 당연히 영향을 받은 블록은 데이터에 손상이 있을 것이다.
    • 단점 3: 리텐션 에러가 일어난다. 자주 사용하지 않은 전자들은 사라지기도 한다. HHD 같은 경우 물리적 방식이기 때문에 부숴버리지 않는 이상 데이터에 손상이 갈 일이 없지만, SSD는 전자를 잃으면 그대로 데이터의 손상이 있게 된다. 이는 모든 반도체의 특성과 같다.
  • 하지만 모든 단점을 다 씹어 버릴 만큼 SSD는 빠르고 좋고 각각의 단점들도 과학의 발전으로 잘 잡히고 있기 때문에 우리 모두 SSD를 쓰자!

3. 그래픽 카드

그래픽 카드입니다. 거대한 펜은 그래픽 카드의 온도를 잡습니다. 싯가에 따른 덤탱이에 주의합시다.

  • 그래픽 카드?
    • 컴퓨터 하드의 꽃이다. 영상과 같은 모든 작업에 중요한 하드웨어다.
  • 내장 그래픽 카드
    • CPU 자체에 달려있는 그래픽 카드로 대부분의 사무용 컴퓨터에서 사용하는 정도이다.
    • 정말 최소한의 작업들을 할 수 있으며 따로 떼어서 업그레이드는 불가능하다.
    • 요즘에는 이것조차도 좋아져서 할 수 있는 작업들이 늘어나고 있다.
  • 외장 그래픽 카드
    • 우리가 사용하는 그 그래픽 카드이다.
    • 그림을 그리거나, 고사양 게임을 하는 데 사용한다.
    • 업그레이드도 가능하고 CPU보다 더 비싼 경우도 종종...? 요즘엔 자주 있다.
  • CPU vs 그래픽 카드
    • CPU보다 더 수학적이고 논리적인 계산을 그래픽카드는 더 잘한다.
    • 그저 영상을 보여주는 장치라고 생각할 수 있지만 그것도 다 계산된 것이라고 생각하면 편하다.
    • 그래서 코어가 엄청나게 많이 달려있다. 논리적인 계산을 위한 코어이지만 CPU보다 1000배는 더 달려있다.
    • CPU가 해줘야 할 일들이지만, 단순한 작업은 그래픽 카드가 도와주는 것이다. CPU는 하는 일이 많기 때문이다.
    • 그래서 움직이는 선과 점을 읽고 계산하여 그 움직임을 표현하는데 더욱 뛰어나서 그래픽 작업에 유리한 것이다.
  • 그래픽 카드와 대화하는 법
    • 우리가 게임할 때 사용하는 DirectX나 Nvidia의 CUDA 등이 그래픽카 등 와 대화는 소통수단이다.
    • 사용자에게 그래픽 카드를 이용해 다양한 작업을 할 수 있게 해 준다.
  • 그렇다면 왜 이렇게 그래픽 카드가 비싸졌죠?
    • '가상화폐 채굴'이 엄청난 열풍을 몰고 오면서 그래픽 카드의 가격이 천정부지로 올랐다.
    • 가상화폐를 채굴할 때는  해쉬 연산을 하여서 블록체인의 연산을 하게 되는데, CPU보다 더 효과적으로 수많은 코어들을 이용해 그래픽 카드는 해쉬값을 찾을 수 있다. 이를 '마이닝'이라고 하고 코어만 있다면 다른 계산들과 독립적이기 때문에 돌릴 수 있는 코어가 있다면 바로 해쉬값을 찾을 수 있는 그래픽 카드가 많이 사용되었다.

4. RAM

8GB 램입니다. 램은 시금치가 정석...

  • Random Access Memory를 줄인 것이다.
  • 왜 사용하나요?
    • 메모리 내부에서 주소를 아무 곳이나 이동할 수 있다. 예를 들어, 옛날에 사용하던 CD 플레이어를 생각해 보자. 순서대로 다음 노래, 그 전 노래를 재생할 수는 있어도 갑자기 1번 트렉에서 5번 트렉을 재생시킬 수 없다. 램은 이것을 가능하게 한다.
  • 휘발성 메모리?
    • 램은 컴퓨터가 꺼지면 메모리가 사라진다. 그래서 계속 전기적 신호를 주고받아서 계속 쓰는 정보는 저장하고 있다. 그래서 휘발성 메모리다.
  • 그래서 어떻게 동작 하나요?
    • 하드디스크는 거대한 저장장치이다. 하지만 느리다. 그 하드디스크의 데이터를 시간적 지역성과 공간적 지역성을 통해 중요하고 자주 사용하는 정보를 가지고 있다가 CPU에게 전달하는 역할을 한다.
    • 만약 CPU를 렘 용량만큼 달아 버린다면? 정말 최고의 컴퓨터가 될 수 있겠지만 가격도 최고가 될 것이다. 일반적 사용자들은 램을 사용해 하드디스크와 CPU의 사이에서 적절한 가격으로 빠르게 데이터를 처리할 수 있게 해주는 것이다.
    • 즉, 램이 커질수록 CPU와 하드디스크 간의 소통을 도와주기 때문에 클수록 빨라지고, 두 개의 채널을 동시에 사용하는 '듀얼 채널' 램을 사용한다면, 독립적으로 한 번에 처리할 수 있는 데이터 양이 커지기 때문에, 큰 용량의 램을 하나 사용하는 것보다, 절반의 용량의 램을 두개 사용하는 것이 더 유리하기 때문에 더 빠른 처리속도를 가질 수 있을 것이다.

5. CPU

  •  가장 중요한 컴퓨터의 '뇌'이다.
  • Centeral Processing Unit을 줄인 것이다.
  • 코어?
    • 쉽게 말하면 일꾼이다. 코어가 많으면? 그만큼 동시에 작업을 할 수 있는 일들이 많아지게 될 것이다.
    • 그렇다고 코어가 하나라면 작업을 못하는 것은 아니다. 동시에 일을 처리할 수는 없지만 빠른 속도만 있다면 빠르게 하나하나 명령의 순서에 따라 작업 시작하고 끝낸 후 다음 작업을 처리할 수 도 있다.
  • 스레드?
    • 코어안에 분기를 나눠 놓은 것이다.
    • 코어가 하나지만, 데이터의 분기를 나누어 사용하기 때문에 더 유리하다. 예를 들어, 2차선 도로보다 4차선 도로가 통행량을 더 많이 받을 수 있는 것과 같다.
  • 스레드의 역설
    • 분명, 코어에 스레드가 많으면 데이터 처리를 더 효율적으로 할 수 있다.
    • 하지만 만약 돌리려는 프로그램이 크면, 그것을 분기를 나눠 데이터를 처리하는 것보다 강력한 한 개의 코어의 스레드로 처리하는 것이 더 사용자에게는 더 빠르게 처리할 수 있게 될 것이다.
    • 예를 들어, 고속도로를 사용한다고 생각할 수 있겠다. 많은 차가 몰리면 차는 막힐 수 있겠지만, 최대 속도가 2차선 도로나 4차선 도로보다 높기 때문에 더 빠르게 처리할 수 있는 것이다.
    • 하지만 차가 클수록 높은 속도를 내기는 힘든 법. 프로그램도 마찬가지로 코어나 스레드에 맞게 어떠한 상황에서도 사용할 수 있는 적절한 코딩이 되어 있어야 다양한 환경에서도 똑바로 사용할 수 있을 것이다.

 

COMMENT