메모리
컴퓨터 메모리 공간을 이해하기 위해서는 메모리의 종류, 작동 원리, 그리고 메모리 관리에 대한 깊은 이해가 필요함.
컴퓨터 시스템에서 메모리는 데이터를 임시로 저장하는 공간임.
CPU가 프로그램을 실행하면서 계속적으로 접근하는 중요한 컴포넌트임.
메모리의 종류
1. 주 메모리
일반적으로 RAM으로 불림.
실행 중인 프로그램과 현재 사용 중인 데이터를 저장함.
RAM은 휘발성 메모리로 전원이 꺼지면 그 내용이 사라짐.
2. 보조 메모리
하드 드라이브, SSD와 같은 저장 장치들이 여기에 해당됨.
데이터를 영구적으로 저장함.
이들은 주 메모리보다 접근 속도가 느리지만, 용량이 크고 데이터가 영구적임.
메모리 계층구조
컴퓨터 아키텍처에서 메모리는 속도와 용량에 따라 계층적으로 구성됨.
계층 구조는 다음과 같음.
1. 레지스터
CPU 내부에 있는 매우 빠른 메모리임.
매우 제한된 용량을 가짐.
CPU는 이곳에 있는 데이터를 직접 처리함.
2. 캐시 메모리
CPU와 주 메모리 사이에 위치하며, 레지스터 다음으로 빠른 접근 속도를 제공함.
캐시는 자주 사용되는 데이터를 임시로 저장해 CPU의 데이터 접근 시간을 단축시킴.
3. 주 메모리
프로그램의 코드와 데이터가 저장됨.
CPU는 이곳에 있는 정보를 필요에 따라 읽고 씀.
메모리 관리
1. 메모리 할당
운영 체제는 프로그램이 요구하는 메모리를 할당함.
사용이 끝난 메모리를 회수하는 역할을 함.
동적 할당과 정적 할당 방식이 있음.
2. 가상 메모리
실제 RAM보다 더 큰 메모리 공간을 프로그램에 제공하기 위해 사용됨.
디스크의 일부를 가상의 RAM처럼 사용하여, 프로그램이 더 많은 메모리를 사용할 수 있도록 함.
3. 페이징 및 세그멘테이션
메모리를 관리하는 방법임.
페이징은 메모리를 고정된 크기의 페이지로 나누어 관리하는 반면, 세그멘테이션은 다양한 크기의 세그먼트로 나누어 관리함.
메모리의 성능과 최적화
메모리의 성능은 시스템의 전체적인 성능에 직접적인 영향을 미침.
메모리 접근 속도를 최적화하기 위해 기술로는 다음과 같은 것들이 있음.
1. 캐시 최적화
적절한 알고리즘과 정책을 사용하여 캐시 히트율을 높이고, 데이터의 지역성을 향상시킴.
2. 메모리 인터리빙
메모리 접근 패턴을 분산시켜 동시에 여러 메모리 모듈에 접근할 수 있게 함으로써 처리 속도를 높임.
3. 멀티쓰레딩 및 병렬 처리
프로그램의 여러 부분을 동시에 실행하여 메모리 사용을 최적화하고, 전체적인 처리 속도를 향상시킴.
'Operating System > Computer' 카테고리의 다른 글
[Computer] 파이썬 코드가 실행되는 과정 (0) | 2024.06.23 |
---|---|
[Computer] 컴퓨터과학 (1) | 2024.06.23 |
[Computer] 보조기억장치, 클라우드 스토리지 (0) | 2024.06.23 |
[Computer] 파이썬에서 리스트와 집합의 차이 (0) | 2024.06.16 |
[Computer] CPU가 바라보는 메모리 (2) | 2024.06.16 |