Memory Management   메모리 관리

(2024-12-25)

메모리 논리주소 물리주소


1. 메모리 관리컴퓨터 시스템에서 메모리를 효율적으로 배치, 할당, 회수하는 과정
     - 운영체제는 메모리 관리를 통해, 
     - 프로세스충돌을 방지하고, 효율적인 메모리 활용으로 성능 최적화


2. 메모리 관리의 특징

  ㅇ 메모리 관리는, 하드웨어 설계에 크게 영향을 받음

  ㅇ 메모리 전체를 운영체제가 관리함
     - 대부분의 메모리 관리 알고리즘은, 하드웨어,운영체제 간의 협력을 필요로 함

  ㅇ 메모리 관리에서, 메모리 공간의 보호가 필요함
     - 사용자공간커널공간 간의 분리

  ㅇ 한편, 메모리 계층화를 통해, 적절한 비용으로 높은 성능을 낼 수 있음
     - 소량,고속,고가 기억장치와, 대량,저속,저가인 기억장치계층적으로 구성함
        . (CPU) ↔ (캐쉬메모리) ↔ (주메모리) ↔ (보조메모리, 자기디스크 등)


3. 메모리 관리에서, 운영체제 역할

  ㅇ 사용중인 부분이 어디이고, 이를 누가 사용하고 있는지 추적 관리
  ㅇ 필요에 따라, 메모리 공간을 할당,회수 해야 함
  ㅇ 어떤 프로세스를 메모리에 적재,제거할 것인가를 결정 해야 함


4. 메모리 관리의 주요 기능프로세스 메모리 할당
     - 각 프로세스가 실행될 때 필요한 메모리 공간을 할당
     - 실행이 종료되면 해당 메모리 공간을 반환

  ㅇ 주소 공간 관리
     - 가상 메모리를 통해 각 프로세스에 독립적인 주소 공간 제공
     - 논리 주소물리 주소매핑하여 프로세스 간의 충돌 방지

  ㅇ 메모리 보호
     - 한 프로세스가 다른 프로세스의 메모리 공간에 접근하지 못하도록 보호
     - 접근 제어 및 권한 검사를 통해 안정성 보장.

  ㅇ 메모리 단편화 해결
     - 내부 단편화 : 할당된 메모리 공간 내 미사용 영역 초래
     - 외부 단편화 : 메모리 공간이 작은 조각들로 나뉘어 할당이 어려운 상황 초래
     - 해결책 : 압축(Compaction), 페이징(Paging), 세그멘테이션(Segmentation) 등

  ㅇ 가상 메모리
     - 실제 물리 메모리 보다 더 큰 메모리 공간을 제공
     - `페이지 교체 알고리즘`을 통해 필요한 데이터 만 메모리에 로드

  ㅇ 캐시 관리
     - 자주 사용되는 데이터캐시에 저장하여 접근 속도 향상

  ㅇ 입출력 버퍼 관리
     - 메모리와 입출력 장치데이터 전송효율적 관리


5. 메모리 관리 기법

  ㅇ 크게,
     - 단순 하드웨어 방식
     - 연속 메모리 할당 방식
     - 페이징 기법
     - 세그먼트 방법 등으로 구분

  ㅇ 페이징 (Paging)
     - 메모리를 고정 크기인 페이지 단위로 나눠 관리.
     - 단편화 문제 해결 및 효율적 관리.

  ㅇ 세그멘테이션 (Segmentation)
     - 메모리를 가변 크기의 세그먼트로 나눠 관리
     - 프로그램논리적 구조와 일치

  ㅇ 동적 메모리 할당
     - 필요할 때 메모리를 할당하고, 사용이 끝나면 반환
     - `malloc`, `free`와 같은 함수 사용

  ㅇ 교체 알고리즘
     - 가상 메모리에서 페이지를 교체할 때 적절한 페이지를 선택.
     - 대표적인 알고리즘 : FIFO, LRU, LFU 등


6. [참고사항]논리주소물리주소
     - 논리 주소 : CPU가 생성하는 주소 (가상 주소)
     - 물리 주소 : 메모리가 취급되는 주소
     - 프로그램변수들의 주소 바인딩시에, 기억장치로의 접근 방식
        . 컴파일 또는 적재하면서 주소 바인딩시에는, 논리주소 = 물리주소 임
        . 실행 시간 동안 주소 바인딩시에는, 논리주소 (가상주소) ≠ 물리주소 임
           .. 이때, 가상 주소를 물리 주소로의 매핑 작업을, MMU라는 장치에서 실행함

메모리
1. 메모리 관리   2. 가상 메모리   3. 스와핑   4. 페이징   5. MMU  

"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"
     [정보통신기술용어해설]       편집·운영 ( 차재복, 건강 문제로 휴식중 )
[메모리]1. 메모리 관리   2. 가상 메모리   3. 스와핑   4. 페이징   5. MMU  

  1. Top (분류 펼침)      :     1,604개 분류    6,618건 해설