2016-11-17 8 views
0

필자가 이해하는 한, 프로그램은 가상 메모리에 인접한 주소 공간이 할당됩니다. 주소 공간에는 힙, 스택, 데이터 및 텍스트 섹션 및 여유 공간이 포함됩니다.외부 조각화에 대한 해결책 - 불연속 할당

실제로 이러한 섹션은 실제 메모리 (RAM)에서 연속적이지 않습니다. 이 경우 외부 조각화를 해결할 수 없습니까? 내 말은, 외부 분열의 전체적인 지점은 우리가 충분한 연속 공간을 가지고 있지 않다는 것이다. 그렇다면 왜 세그먼트를 분할하고 인접하지 않은 공간을 사용하지 않을까요?

나는 뭔가를 놓친다는 것을 안다. 누군가 이것에 대해 자세히 설명해 줄 수 있습니까? 감사.

답변

1

논리적에서 물리적 페이지로의 매핑은 하나의 단편화 문제를 해결하지만 전부는 아닙니다. 일반적으로 운영 체제에는 조각화 될 수있는 메모리 풀이 있습니다. 또한 운영 체제가 실제 메모리를 조작해야 할 필요가 있습니다. 한 가지 예가 페이지 테이블 자체입니다. 페이지 테이블의 일부 (기본 하드웨어에만 의존하는 것은 아님)는 실제 메모리에 있어야합니다.

+0

매핑이 어떻게 단편화 문제를 해결하는지 설명 할 수 있습니까? –

+0

매핑은 물리적 페이지 프레임을 임의의 순서로 주소 공간에 매핑 할 수 있기 때문에 선형 논리 주소 공간을 설정하는 문제를 해결합니다. 인접한 페이지 프레임이 논리 주소 공간을 설정할 필요가 없습니다. – user3344003