Memory 관리 1
JeongSeulho
2023년 02월 22일
준비중...
클립보드로 복사
📌메모리 종류
📌메모리 계층 구조
- block : 보조기억장치와 주기억 장치 사이의 데이터 전송 단위
- word : 주기억장치와 레지스터 사이의 데이터 전송 단위
📌address binding
- 프로그램의 논리 주소를 실제 메모리의 물리 주소로 매핑하는 작업
- 프로그램 프로세싱 과정
📖Compile time binding
- 프로세스가 메모리에 적재될 위치를 컴파일러가 알 수 있는 경우
- 프로그램 전체가 메로리에 올라가야 한다
📖load time binding
- 메모리 적재 위치를 컴파일 시점에서 모르면, 대체 가능한 상대주소를 생성
- 적재시점(load time)에 시작 주소를 반영하여 사용자 코드 상의 주소를 재설정
- 프로그램 전체가 메모리에 올라가야 함
📖run time binding
- address binding을 수행시간까지 연기
- 프로세스가 수행 도중 다른 메로리 위치로 이동 할 수 있음
- HW 도움 필요
- 대부분의 OS 사용
📌dynamic loading
- 모든 루틴(예 :
함수
)를 교체 가능한 형태로 하드디크스에 저장 - 실제 호출 전까지는 루틴을 적재하지 않음
- 즉, 하드에 저장해놨다가 호출되면 메모리에 적재 및 address binding하기
- 메모리 공간 효율적 사용
📌swapping
- swap out : 프로세스 할당이 끝나고 수행 완료된 프로세스를 swap-device로
- swap in : 새롭게 시작하는 프로세르를 메모리에 적재