본문 바로가기

분류 전체보기41

[컴퓨터 구조] 입출력장치 장치 컨트롤러와 장치 드라이버장치 컨트롤러등장 배경입출력장치 종류는 CPU, 메모리보다 많고 다양해 규격화하기 어렵습니다. 또한 데이터를 얼마나 빨리 교환할 수 있는 지 나타내는 전송률도 CPU, 메모리보다 입출력장치가 낮습니다. 이러한 이유로 입출력장치는 컴퓨터에 직접 연결되지 않고 장치 컨트롤러라는 하드웨어를 통해 연결됩니다. 장치 컨트롤러의 역할장치 컨트롤러는 대표적으로 다음과 같은 역할을 통해 앞서 언급한 문제를 해결합니다.CPU와 입출력장치 간의 통신 중개오류 검출데이터 버퍼링여기서 데이터 버퍼링은 무엇일까요? 버퍼링이란 전송률이 높은 장치와 낮은 장치 사이에 주고받는 데이터를 버퍼라는 임시 저장 공간에 저장하여 전송률을 비슷하게 맞추는 방법입니다. 장치 컨트롤러의 구조원래는 더 복잡하지만 기억.. 2025. 2. 3.
[컴퓨터 구조] 보조기억장치 다양한 보조기억장치하드 디스크하드 디스크는 자기적인 방식으로 데이터를 저장하는 자기 디스크의 일종입니다. 먼저 동그란 원판으로 되어있는 부분은 플래터라 불리는 실질적으로 데이터가 저장되는 부품입니다. 그러한 플래터를 회전시키는 구성 요소를 스핀들이라고 하며, 스핀들이 플래터를 돌리는 속도는 분당 회전수를 나타내는 RPM이라는 단위로 표현됩니다. 플래터를 대상으로 데이터를 읽고 쓰는 구성 요소를 헤드, 그런 헤드를 원하는 위치로 이동시키는 부품을 디스크 암이라 합니다. 플래터는 트랙과 섹터라는 단위로 데이터를 저장합니다. 트랙은 운동장 트랙처럼 원으로 이루어져 있고 그런 트랙의 한 조각을 섹터라고 부릅니다. 즉, 섹터는 하드 디스크의 가장 작은 전송 단위라고 볼 수 있습니다. 수직 상 같은 위치의 트랙들을.. 2025. 2. 2.
[컴퓨터 구조] 메모리와 캐시 메모리 RAM의 특징과 종류주기억장치의 종류에는 크게 RAM과 ROM 두 가지가 있고, '메모리'라는 용어는 RAM을 지칭하는 경우가 많습니다. RAM 용량이 컴퓨터 성능에 어떤 영향을 미치는지 그리고 DRAM, SRAM, SDRAM, DDR SDRAM은 무엇이고 어떤 특징을 가지는지 알아보겠습니다.RAM의 특징RAM의 가장 큰 특징은 전원을 끄면 RAM에 저장된 명령어와 데이터가 모두 날아간다는 것입니다. 이러한 특징을 가진 저장 장치를 휘발성 저장 장치라고 합니다. 반면 전원이 꺼져도 내용이 유지되는 저장 장치는 비휘발성 저장 장치라 하고 보조기억장치가 대표적입니다.RAM의 용량과 성능CPU가 실행하고 싶은 프로그램이 보조 기억 장치에 있다면 이를 RAM으로 가져와야 할 텐데, RAM의 용량이 적다면 보조 .. 2025. 2. 1.
[컴퓨터 구조] CPU 성능 향상 기법 빠른 CPU를 위한 설계 기법클럭앞서 컴퓨터 부품들은 '클럭 신호'에 맞춰 일사불란하게 움직이고, CPU는 '명령어 사이클'이라는 정해진 흐름에 맞춰 명령어들을 실행한다고 설명했습니다. 만약 클럭 신호가 빠르게 반복되면 CPU는 명령어 사이클을 더 빠르게 반복할 것이고, 다른 부품들도 그의 맞춰 더 빠르게 작동할 것입니다. 그래서 클럭 속도가 높은 CPU는 일반적으로 성능이 좋습니다. * 클럭 속도는 헤르츠(Hz) 단위로 측정합니다. 이는 1초에 클럭이 몇번 반복되는지를 나타내며 1초에 한 번 반복되면 CPU 클럭 속도는 1Hz로 표현됩니다.코어와 멀티코어오늘날 CPU는 많은 기술적 발전을 거듭하였고 이전 CPU를 정의하는 '명령어를 실행하는 부품'을 CPU 내부에 얼마든지 만들 수 있게 되었습니다. 그.. 2025. 1. 31.
[컴퓨터 구조] CPU의 작동원리 알아보기 ALU와 제어장치ALUALU는 레지스터를 통해 피연사자를 받아들이고, 제어장치로부터 수행할 연산을 알려주는 제어 신호를 받아들입니다. 그리고 ALU가 내보내는 정보로는 특정 숫자나 문자, 메모리 주소가 될 수 있는데 이 *결과값은 바로 메모리에 저장되지 않고 일시적으로 레지스터에 저장됩니다.CPU가 메모리에 접근하는 속도는 레지스터에 접근하는 속도보다 훨씬 느립니다. 만약 연산을 할 때마다 결과를 메모리에 저장한다면 프로그램 실행 속도가 저하되기 때문에 결과값을 메모리가 아닌 레지스터에 우선 저장합니다.  ALU는 계산 결과와 더불어 플래그를 내보냅니다. 이 플래그는 ALU가 더 알아야할 연산 결과에 대한 추가 정보를 내보낼 때 사용됩니다. 대표적인 플래그는 아래와 같습니다.플래그 종류의미사용 예시부호 .. 2025. 1. 29.
[컴퓨터 구조] 명령어에 대해 알아보기 소스코드와 명령어컴퓨터는 C, C++, Java, Pyhon과 같은 프로그래밍 언어를 이해하지 못하기 때문에 컴퓨터 내부 명령어로 변환해주어야 합니다. 위에 언급한 언어처럼 사람이 쉽게 이해할 수 있도록 만들어진 언어를 고급 언어라고 합니다. 반대로 컴퓨터가 직접 이해하고 실행할 수 있는 언어를 저급 언어라고 합니다. 저급 언어에는 두 가지 종류가 있습니다. 바로 기계어와 어셈블리어입니다. 기계어기계어란 0과 1의 명령어 비트로 이루어진 언어로 이진수로 표현되지만 이를 나열하면 너무 길어지기에 십육진수로 표현하기도 합니다.어셈블리어어셈블리어는 0과 1로 이루어진 기계어를 읽기 편한 형태로 번역한 저급 언어입니다.앞서 고급 언어로 작성된 소스 코드는 결국 저급 언어로 변환되어 실행된다고 했습니다. 그렇다면.. 2025. 1. 24.