본문 바로가기
보안&네트워크/보안

Vitrual Address Space(VAS)

by kakk789 2022. 1. 17.

사전 개념 설명

1. 운영체제의 커널(Kernel)‘ 이라는 엔진이 메모리 전체를 통제한다.

2. 어플리케이션(프로세스)메모리가 필요하다.

3. 커널이 응용프로그램(프로세스)한테 메모리를 할당 해줌.

4. 부족하면 응용프로그램은 요청함.

5. 그러다가 메모리가 충돌이 나는 현상이 발생함(같은 주소를 할당해줌)

6. 그래서 VAS 개념이 나옴

Vitrual Address Space(VAS)

  • 왜, 가상 공간을 만들어 주냐면 우물 안 개구리를 만드는거임.
  • 즉, 프로세스가 인지할 때 이 세상(메모리 상)에 나 밖에 없음. 나 밖에 없으니까 다른 프로세스와 충돌을 할 수가 없음
  • 만약 RAM이 4GB = Ox00000000부터 OxFFFFFFFF 까지 (32비트)
    여기서 2GB  커널이 쓰고
    2GB는 응용프로그램 단에서 사용함(VAS)
  • 32비트 2^32= 4G Byte(43억개의 방)을 가상으로 할당
    왜, 43억개의 방이라고 표현했냐면 CPU가 읽을 수 있는 최소 단위는 1바이트고 4GByte의 주소 할당이라서.

  • 옛날에는 응용프로그램들이 메모리를 알아서 할당하여 사용하였음.
    그래서 같은 메모리 공간을 사용하니까 충돌도 많았음.
  • 요즘은 커널이 프로세스끼리 메모리영역이 겹치지 않게 나눠 줌(선점형 운영체제)
반응형

'보안&네트워크 > 보안' 카테고리의 다른 글

VDI (Virtual Desktop Infrastructure)  (0) 2022.02.11
세션 하이재킹  (0) 2022.01.24
리버싱 할 때 Debug와 Release  (0) 2022.01.17
DNS 공격과 방어  (0) 2022.01.12
DDoS 공격  (0) 2022.01.12

댓글