본문 바로가기
운영체제

address binding

by kcj3054 2021. 10. 5.

address Binding :

  • int a = 10; 컴파일러가 알아서 변수a의 메모리 주소를
    할당해준다

-> 이것들은 내가 부르기전에는 binary executable file로
저장된 정보일뿐이다.

-> 실행 시킬려고 메모리로 가져왔을때 그것은 비로소
프로세스가 된다

-> 프로세스의 주소는 000에서 시작되는 것은 아니다
그것은 os커널이 정해준다

-> 소스에서 주소는 일반 적으로 symbolic한데
컴파일러가 symbolic한 주소를
relocatable한 주소로 바꾼다.
relocatable한 주소를 절대적 주소..

단계별로 바인딩이 다르다 ..

logical vs physical address space:

logical주소는 cpu에 의해서 발생한 주소 , user가 접근할려는 주소
physical : 메모리에 들어가 있는 주소,

mmu (memory mapped unit)

logical address -> physical address

  • relocation register : a base register in mmu

*dynamic loading :

파일을 메모리에 올릴때 .exe 파일들을 다 메모리에 올리냐?
그렇지 않ㄷ다 그렇게 되면 뻗는다.

그래서 다이나믹 로딩이필요하다 :
better memory-space utilization을 위해서
필요한 루틴을 호출할때만 불러서 쓰면된다

====================

*dynamic linking

  • dlls : 다이나믹 linked librarieese

  • 시스템 라이브러리가 프로그램 실행중에
    사용자 프로그램에 연결되는 것이다.

  • static linking : 정적인 린킹은 말 그래도
    다ㅏ른 object moudle처럼 프로그램 코드에 로더가
    combined하는 것이다

  • dynamic linking: 다이나믹 로딩과 비슷하다.
    실행시까지 린킹을 지연시키는 것이다 .

==================================

contiguous memory allocation
연속적인 메모리 할당

이 방법은 a.out 파일자체를 메모리엥 할당해서
os나 유저가 프로세스가 사용하는것이다.

어떤 section에 통째로 올리기에 연속적이다

  • memory protection
    여기서 limit register과 relocation register을 주었을ㄸㅐ
    쉽다
    relocation + limit해서 이 공간이 내영역이다..

여기서 메모리할당할때
*variable - partition이있다
프로세스마다 크기가 다 다르다

메모리에 p5 p8 p2할당하다가 p8,이 끝나고 p9,가 들어
오고 p5가 나가게된다면
빈 hole이 생기게된다.

이러한 빈 구멍이 생겼을때 요청되는 n사이즈를 어떻게
할당할 것인가에 전략이 있따 ..

first - fit 위의 빈홀들이 연결리스트로 이루어 졌을때
들어 갈 수 있는 제일 첫부분에 넣는 것이다.

best - fit 이것은 우큐를 사용해서 가장 작은 곳부터
할당하는 것이다 .
worst - fit 이것은 사이즈가 가장 큰 곳부터 할당 하는
것이다

  • fragmentation
    • 외부단편화
    • 내부 단편화
      vs
  • 외부 단편화는 p1, p2가 있을때 사이에
    남는 공간이 있다 그것이 외부단편화

내부단편화는 같은 크기로 쪼개져있을때
마지막에 프레임안에 남아있는 공간이있는데 그것이
내부단편화 ..

세그멘테이션 -> 페이징처럼 크기를 나누기는 하는데
동일하게 나누지말고 variable하게 나누는 것이다.

paging 은 똑같은 큭기로 쪼개자

=========================

페이징과 스와핑

*pagging

'운영체제' 카테고리의 다른 글

컴퓨터 시스템 구조  (0) 2021.10.19
os란  (0) 2021.10.18
동시성 vs 병렬성  (0) 2021.10.02
데드락  (0) 2021.10.02
운영체제 . 개념, 용어, 프로세스  (0) 2021.07.30