본문 바로가기

전체 글44

15. 다양한 보조기억장치 하드디스크 구성 저장단위  데이터 접근 과정하드 디스크가 저장된 데이터에 접근하는 시간- 탐색 시간 seek time : 접근하려는 데이터가 저장된 트랙까지 헤드를 이동시키는 시간- 회전 지연 rotational latency : 헤드가 있는 곳으로 플래터를 회전시키는 시간- 전송 시간 transfer time : 하드 디스크와 컴퓨터 간에 데이터를 전송하는 시간플래시 메모리전기적으로 데이터를 읽고 쓰는 반도체 기반 저장 장치로 NAND 플래시 메모리와 NOR 플래시 메모리가 있다.셀 cell- 플래시 메모리에서 데이터를 저장하는 가장 작은 단위- 셀이 모여서 MB, GB, TB 저장 장치가 된다.- 1비트를 저장할 수 있는 플래시 메모리 : SLC- 2비트를 저장할 수 있는 플래시 메모리 : MLC- .. 2024. 10. 12.
14. 캐시 메모리 저장 장치 계층 구조CPU가 메모리에 접근하는 시간은 CPU 연산 속도보다 느리다.CPU와 가까운 저장 장치는 빠르고, 멀리 있는 저장 장치는 느리다.속도가 빠른 저장 장치는 저장 용량이 작고, 가격이 비싸다.즉, 낮은 가격대의 대용량 저장 장치를 원한다면 느린 속도를 감수해야 하고, 빠른 속도의 저장 장치를 원한다면 비싼 가격을 감수해야 한다. 저장 장치들은 'CPU에 얼마나 가까운가'를 기준으로 계층적으로 나타낼 수 있다. 캐시 메모리CPU와 메모리 사이에 위치한, 레지스터보다 용량이 크고 메모리보다 빠른 SRAM기반의 저장 장치CPU의 연산 속도와 메모리 접근 속도의 차이를 조금이나마 줄이기 위해 탄생CPU가 매번 메모리에서 왔다 갔다 하는 건 시간이 오래 걸리기 때문에 메모리에서 CPU가 사용할 .. 2024. 10. 10.
13. 메모리의 주소 공간 메모리 내 주소 체계는 크게 논리주소와 물리주소로 나뉜다. "CPU와 실행 중인 프로그램은 메모리 몇 번지에 무엇이 저장되어 있는지 알 수 있을까?"> 알 수 없다. 왜냐하면 메모리에 저장된 값들은 아래의 이유로 시시각각 변하기 때문이다.새롭게 실행되는 프로그램은 새롭게 메모리에 적재된다.실행이 끝난 프로그램은 메모리에서 삭제된다.같은 프로그램을 실행하더라도 실행할 때마다 적재되는 주소는 달라진다.물리 주소와 논리 주소물리 주소메모리 입장에서 바라본 주소말 그대로 정보가 실제로 저장된 하드웨어상의 주소논리 주소CPU와 실행 중인 프로그램 입장에서 바라본 주소실행 중인 프로그램 각각에게 부여된 0번지부터 시작하는 주소물리 주소와 논리 주소의 변환MMU라는 메모리 관리 장치 하드웨어에 의해 변환 CPU ->.. 2024. 10. 9.
12. RAM의 특징과 종류 주기억 장치의 종류에는 크게 RAM과 ROM 두 가지가 있고 우리가 흔히 '메모리'라고 부르는 것은 주로 RAM을 지칭한다. RAM의 특징CPU는 RAM으로부터 명령어와 데이터들을 갖고 와서 프로그램을 실행한다. RAM은 실행할 대상을 저장하지만 전원이 꺼지면 저장한 내용을 잃어버린다. 그렇기 때문에 보조기억 장치라고 하는 전원이 꺼져도 저장된 내용을 기억할 수 있는 대용량 저장장치가 필요하다.즉, RAM에는 실행할 대상을 저장하고 보조기억장치에는 보관할 대상을 저장한다.RAM의 용량과 성능일반적으로 컴퓨터를 구매할 때 RAM의 용량은 클수록 좋다고 한다. RAM은 CPU와 상호작용 하면서 필요한 데이터와 명령어를 보조기억 장치에서 찾아와서 실행한다. 만약 여러 가지 프로그램을 동시에 실행하려고 할 때 .. 2024. 10. 8.
11. 명령어 집합 구조, CISC와 RISC 명령어 집합 구조인텔, 애플 등 각 제조사별 CPU마다 명령어의 종류, 연산 방식, 주소 지정 방식이 다르다.x86 혹은 x86-64 명령어 구조를 따르는 CPU들은 ARM 명령어 집합을 따르는 CPU의 명령어를 이해하지 못한다.명령어 집합은 CPU가 이해할 수 있는 명령어 모음으로 CPU의 언어와 같다. 이를 명령어 집합 구조 ISA Instruction Set Architecture라고 부른다.명령어가 달라지면 그에 대한 나비효과로 많은 것들이 달라진다. 명령어 해석방식, 레지스터의 종류와 개수, 파이프라이닝의 용이성 등즉, 명령어 집합에 따라서 CPU, 컴퓨터의 구조까지도 결정이 되기 때문에 명령어 집합 구조는 하드웨어가 소프트웨어를 어떻게 이해해야 될지에 대한 약속이다. 현대 명령어 집합은 가장 .. 2024. 10. 7.
10. 명령어 병렬 처리 기법 명령어 파이프라인하나의 명령어가 처리되는 과정을 비슷한 시간 간격으로 나누면 아래의 4개의 단계로 나누어진다.명령어 인출 Instruction Fetch명령어 해석 Instruction Decode명령어 실행 Execute Instruction결과 저장 Write Back여기서 주목할 점은 CPU는 같은 단계가 겹치지만 않으면 각각의 단계를 동시에 실행할 수 있다.아래의 그림에서 t2는 3개의 명령어를 t4는 4개의 명령어를 겹쳐서 실행하고 있는 것을 볼 수 있다.이런 식으로 명령어를 동시에 병렬로서 처리하는 방법을 명령어 파이프라인 이라고 한다.명령어 파이프라인을 사용하지 않는다면 아래 그림처럼 명령어를 처리하는 속도가 길어진다는 것을 알 수 있다. 단, 명령어 파이프라인이 항상 올바르게 작용되는 것은.. 2024. 10. 6.