포도가게의 개발일지

메모리 관리 참조 : CS chapter 9 & [OS] Lec 8. Memory Management (2/3) - Fixed Partition Multiprogramming 본문

CS

메모리 관리 참조 : CS chapter 9 & [OS] Lec 8. Memory Management (2/3) - Fixed Partition Multiprogramming

grape.store 2021. 9. 9. 22:56
반응형

https://www.youtube.com/watch?v=te-GU7NKa5Y 

 

Memory Allocation

continuos Memory Allocation(연속 메모리 할당)

  • 메모리 구성 정책
    - 메모리에 동시에 올라갈 수 있는 프로세스의 수
    - 각 프로세스에게 할당되는 메모리 공간 크기
    - 메모리 분할 방법

 

  • uni-programming : 프로세스가 하나만 올라가는 경우
    - 가장 간단한 메모리 관리 기법
    - 하나의 프로세스만 메모리 상에 존재
    uni programming

    1. 문제점 : 프로그램의 크기 > 메모리 크기 보다 큰 경우
    해결법
     - Overlay structure(프로그램을 나눠준다)
     - 메모리에 현재 필요한 영역만 적재
     - 사용자가 프로그램의 흐름 및 자료구조를 모두 알고 있어야 함
     - 공통부분은 올리고 남은 프로그램을 필요한 경우만 올려준다

    2. 문제점 : 커널 보호
    해결법
     - 경계 레지스터(boundary register) 사용
     - 메모리 안에서 커널과 경계가 되는지점 바운드리 메모리 주소를 적어줌으로써 못넘어가게 막아줌

    3. 문제점 : 메모리가 낭비되는 경우(시스템의 활용도가 낮다)
    해결법
     - Multi-programming을 구현

  • Multi-programming
    구분
         - Fixed partition(FPM)
         - Variable partition(VPM)
    1. Fixed partition
    - 메모리 공간을 고정된 크기로 미리 분할
    - 각 프로세스는 하나의 partition에 적재
    - partition의 수 = K, mutiprogramming degree = K
    Fixed Partion의 자료구조
  • Fragmentation(단편화)
    1. internal fragmentation
     - 내부 단편화
     - partition 크기 > process 크기 -> 메모리가 낭비되는 현상
    fragmentation 경우 메모리는 남았지만 방이 없을때
    2. External fragmentation
     - 외부 단편화
     - 남은 메모리의 크기 > new process의 크기보다 큰데
        partition에는 하나의 process만 담을 수 있어서 못담는 경우

화이트보드에 내용 적어보자

 

 

Comments