IT TIP

내부 및 외부 조각화

itqueen 2020. 11. 3. 19:37
반응형

내부 및 외부 조각화


누구든지 파일에 대한 디스크 공간을 할당하는 동안 내부 및 외부 조각화의 차이점을 말해 줄 수 있습니까?


외부 조각화
전체 메모리 공간은 요청을 충족 시키거나 프로세스를 상주하기에 충분하지만 연속적이지 않아 사용할 수 없습니다.

외부 조각화

내부 조각화
프로세스에 할당 된 메모리 블록이 더 큽니다. 메모리의 일부는 다른 프로세스에서 사용할 수 없으므로 사용되지 않은 상태로 남아 있습니다.

내부 단편화


먼저 조각화 단서 라는 용어는 조각 으로 나뉘어 진 개체가 있습니다.

  • 내부 조각화 : 일반적인 종이 책은 페이지 모음입니다 (텍스트가 페이지로 나뉩니다). 챕터의 끝이 페이지의 끝에있는 새로운 장을 새로운 페이지에서 시작되지 않는 경우, 그 장 사이에 간격이있다 그것은 공간의 낭비 - (책 페이지) 덩어리 사용되지 않는 공간이 내부 ( 내부 ) - "여백"

  • 외부 단편화 : 종이 일기가 있고 생각을 페이지마다 순차적으로 작성하지 않고 오히려 무작위로 작성했다고 가정 해 보겠습니다. 3 페이지를 연속으로 쓰고 싶은 상황에 처할 수도 있지만, 하나씩 정리 한 3 페이지가 없기 때문에 그럴 수 없습니다. 다이어리에 완전히 15 페이지가있을 수 있지만 그들은 인접하지 않습니다


아마도이 사이트에서 :

내부 조각화 내부 조각화는 메모리 할당자가 클라이언트에 할당 된 메모리 블록 내부에 추가 공간을 비워 둘 때 발생합니다. 이는 일반적으로 프로세서의 설계에서 메모리를 특정 크기의 블록으로 잘라야한다고 규정하기 때문에 발생합니다. 예를 들어 블록을 4, 8 또는 16 바이트로 균등하게 분할해야 할 수 있습니다. 이 경우 57 바이트의 메모리가 필요한 클라이언트에 60 바이트 또는 64 바이트가 포함 된 블록이 할당 될 수 있습니다. 클라이언트가 낭비 할 필요가없는 추가 바이트는 시간이 지남에 따라 이러한 작은 덩어리 사용하지 않는 메모리의 양은 할당자가 사용할 수없는 많은 양의 메모리를 축적하고 생성 할 수 있습니다. 이러한 쓸모없는 바이트는 모두 더 큰 메모리 블록 안에 있기 때문에 조각화는 내부로 간주됩니다.

외부 조각화 외부 조각화는 메모리 할당자가 할당 된 메모리 부분 사이에 사용되지 않은 메모리 블록 섹션을 남길 때 발생합니다. 예를 들어, 여러 메모리 블록이 연속 라인에 할당되었지만 라인의 중간 블록 중 하나가 해제 된 경우 (아마도 해당 메모리 블록을 사용하던 프로세스가 실행을 중지했기 때문에) 사용 가능한 블록이 조각화됩니다. 블록은 해당 블록에 맞는 메모리가 필요한 경우 나중에 할당 자에서 계속 사용할 수 있지만 이제 블록은 더 큰 메모리 요구 사항에 사용할 수 없습니다. 더 큰 작업에 사용할 수 있으려면 총 메모리가 연속적이어야하므로 시스템에서 사용할 수있는 총 여유 메모리로 다시 집중할 수 없습니다. 이런 식으로 사용 가능한 메모리의 전체 섹션은 종종 너무 작아서 상당한 용도로 사용할 수없는 전체와 분리 될 수 있습니다.

참고 URL : https://stackoverflow.com/questions/1200694/internal-and-external-fragmentation

반응형