세그멘테이션기법이 왜있는지 궁금합니다

kwkimg3100의 이미지

그러니까

논리주소 -> 세그멘테이션 -> 선형주소 -> 페이징 -> 물리주소 순으로

된다고 봣는대

논리주소에서 바로 페이징을 거쳐 물리주소로 안하는이유가뭔지 궁금합니다

Necromancer의 이미지

세그먼테이션 -> 프로세스간 메모리 격리
페이징 -> 가상메모리

Written By the Black Knight of Destruction

익명 사용자의 이미지

16비트 리얼 모드, 그리고 286 때 보호 모드가 도입되었던 초기에는 그런 의미로 쓰였지만,
이제는 대부분의 현대 OS에서 프로세스 메모리 격리는 스와핑(swapping) 방식이 아니라 페이징을 이용해서 구현하기 때문에 의미가 많이 퇴색되었다고 봅니다. 현재 세그멘테이션이 가지고 있는 가치라고 한다면 실행 코드의 특권 구분(Protection Ring), 특별 시스템 구조체 지시 용도(예: Windows에서의 FS 세그먼트(x86-64에서는 GS)는 TEB(Thread Environment Block)을 가리킴) 정도 뿐이라고 봅니다.