위로
아래
RAM
RAM (Random Access Memory)
- 주기억장치 중 Main Memory Unit
- 보통은 동적 램(Dynamic RAM)을 의미
Cache / Buffer Memory
Buffer
- 데이터 처리 속도 차이를 줄여주는 기술
- 처리 속도가 다른 장치들 사이에서 데이터가 손실되지 않도록 미리 저장해두는 방식
- Buffer의 개념 안에서, 속도 증진을 위해 만들어진 개념이 Cache
Cache Memory
- CPU 내부에 탑재되어 RAM (메인 메모리)와 데이터를 교류한다
- 과정
- CPU가 RAM보다 데이터 처리 속도가 빨라서 CPU는 RAM의 데이터 전송을 기다리며 자원이 낭비된다 (RAM이 준비되지 않았음에도 CPU가 RAM에 너무 자주 접근하여 자원 낭비)
- Cache Memory가 CPU와 RAM 사이에서 Buffer 기술을 사용하여 RAM의 데이터를 Cache Memory에 저장해 모아두었다가 CPU로 전송해 자원 낭비를 줄인다
- Cache Memory 안의 데이터는 바로 삭제하지 않고 자주 쓰면 냅두고 잘 안 쓰는 것들을 삭제
Buffer Memory
- 입력 장치를 통해서 데이터가 들어올 때 바로 CPU로 가는 게 아니라, Buffer Memory에 저장하여 CPU가 Buffer Memory에서 데이터를 읽을 수 있도록 한다
- 과정
- 키보드를 통해서 빠르게 123456789를 입력
- 입력장치가 바로 CPU에게 데이터를 전달했다면, CPU가 다른 처리를 하던 중이면 데이터 손실이 일어나 159만 입력될 우려가 있음
- 입력 장치에서 입력된 데이터 123456789는 Buffer Memory에 임시 저장되어, CPU가 해당 작업을 처리할 때 입력장치가 아닌 Buffer Memory에서 데이터를 Load
- CPU가 읽은 후에는, 다음 입력을 받아야하기 때문에 용량 관리를 위하여 Buffer Memroy 안의 데이터 자동 삭제
Swap Memory
스왑 메모리
- 실제 메모리 외에 더 많은 메모리가 필요할 때 디스크 공간의 일부를 가상 메모리로 만들어 부족한 메모리를 대체
- 실제 메모리가 아닌 하드 디스크를 사용하는 것이라 메모리 속도 면에서는 현저히 느리다
Shared Memory
공유 메모리
- 여러 장치에서 여러 프로세스가 공동으로 사용하는 메모리
- 메모리를 아끼기 위한 목적으로 등장
- 일반적으로는 프로세스마다 각자의 독립적인 Memory를 가지고 있지만, memory 용량을 줄이고자 개발된 기법
- 공유 메모리는 RAM에 올라간다
- 사용 용도 2가지
- 프로세스 간 통신 방법 (IPC)
- 메모리 보존 관리 방법
IPC (Inter Process Connunication)
- 프로세스 간 통신 방법
- 프로세스 간에 같은 데이터가 필요할 때 매번 복사해서 전달하는 불필요한 overhead 과정 없이 하나의 메모리에서 서로 데이터 읽기 가능
메모리 보존 관리 방법
- 여러 프로세스들이 특히 자주 사용하는 Library를 Shared Memory에 적재시켜 놓으면 불필요한 overhead를 줄일 수 있다
- OS가 각 프로세스의 각각의 Memory 영역에 RAM의 Shared Memory를 매핑해주어서 사용
참고 : https://kimjack.tistory.com/9
Shared Memory 공유 메모리
공유 메모리(Shared memory)란 IPC(InterProcess Communication)기법 중 하나이며 여러 프로세스에서 동시에 접근할 수 있는 메모리를 뜻한다.IPC란 프로세스간 통신 방법을 의미한다. 과다한 복사를 방지하고
kimjack.tistory.com