Master Piece of jun/컴퓨터개론

memory management

JUNFUTURE 2021. 11. 8. 15:05

memory management

basic

  1. 프로그램은 반드시 메모리로 가져와야한다
  2. 메인메모리, 레지스터는 CPU가 directly access할 수 있는 저장소
  3. 한 clock당 micro instruction 발생 (Register access, write Register...)
  4. 메모리는 여러 cycle이 걸린다
  5. cache ~ ran&cpu사이의 완충제
  6. protection of memory
  • Register access는 cpu clock에 일어난다 ~ cpu에 버금가는 access 속도를 갖는다
  • clock pulse가 1일때 연산시작 0→1가는 순간
    • Register access, 마이크로 인스트럭션, 메모리 access
  • 여러개의 clock필요함 ⇒ 긴 시간이 필요하다
    • 메모리 엑세스가 많아지면 시간이 많이 필요. 가급적 줄이자 ⇒ cache의 등장
  • protection of memory ~ 효율적 이어야 좋음. 다른 프로세스의 영역 넘어가기 ~ 정보 손실의 위험성

Logical address vs physical address

  • logical address : 가상의 주소
  • physical address : 메모리내 실제주소
  • physical address를 logical address에 매핑하는 개념!

memory-management unit

  • logical address → physical address 매핑해주는 하드워어 디바이스

relocation register

  • relocation : 위치를 다시 잡음
  • swapping에 의해 다시 메모리에 할당해주어야할때, 메모리내에 physical 주소를 다시 부여해줘야함
  • base register : 프로그램이 시작하는 주소 (base 값)이 저장된 레지스터
  • limit register : range of logical address (offset, displacement : 변위)

Dynamic relocation vs Static

  • Dynamic : by relocation register. 효율적인 메모리관리가 가능. 프로그램 주소를 움직일 수 있음. (동적 할당)
  • Static : Swap in Swap out되어 보조기억장치로 갔던 프로세스가 다시 메모리에 할당될때 must 같은 주소로