Sự khác biệt giữa phân mảnh bên trong và bên ngoài

Mục lục:

Sự khác biệt giữa phân mảnh bên trong và bên ngoài
Sự khác biệt giữa phân mảnh bên trong và bên ngoài

Video: Sự khác biệt giữa phân mảnh bên trong và bên ngoài

Video: Sự khác biệt giữa phân mảnh bên trong và bên ngoài
Video: BÀI TOÁN DOANH THU, CHI PHÍ, LỢI NHUẬN | KINH TẾ HỌC CƠ BẢN A BỜ CỜ 2024, Tháng bảy
Anonim

Phân mảnh bên trong so với bên ngoài

Sự khác biệt giữa phân mảnh bên trong và bên ngoài là chủ đề được nhiều người thích nâng cao kiến thức máy tính quan tâm. Trước khi biết sự khác biệt này, chúng ta phải xem phân mảnh là gì. Phân mảnh là hiện tượng xảy ra trong bộ nhớ máy tính như Bộ nhớ truy cập ngẫu nhiên (RAM) hoặc đĩa cứng, gây lãng phí và sử dụng không hiệu quả dung lượng trống. Trong khi việc sử dụng hiệu quả không gian có sẵn bị cản trở, điều này cũng gây ra các vấn đề về hiệu suất. Phân mảnh nội bộ xảy ra khi phân bổ bộ nhớ dựa trên các phân vùng có kích thước cố định, trong đó sau khi một ứng dụng kích thước nhỏ được gán cho một khe, không gian trống còn lại của khe đó sẽ bị lãng phí. Phân mảnh bên ngoài xảy ra khi bộ nhớ được cấp phát động trong đó sau khi tải và dỡ một số vị trí ở đây và ở đó, không gian trống đang được phân phối thay vì liền kề.

Phân mảnh nội bộ là gì?

Sự khác biệt giữa phân mảnh bên trong và bên ngoài_Internal Fragmentation
Sự khác biệt giữa phân mảnh bên trong và bên ngoài_Internal Fragmentation
Sự khác biệt giữa phân mảnh bên trong và bên ngoài_Internal Fragmentation
Sự khác biệt giữa phân mảnh bên trong và bên ngoài_Internal Fragmentation

Hãy xem hình trên, nơi cơ chế cấp phát bộ nhớ có kích thước cố định đang được tuân theo. Ban đầu, bộ nhớ trống và bộ cấp phát đã chia bộ nhớ thành các phân vùng có kích thước cố định. Sau đó, ba chương trình tên A, B, C đã được tải vào ba phân vùng đầu tiên trong khi phân vùng thứ 4 vẫn còn trống. Chương trình A phù hợp với kích thước của phân vùng, do đó không có lãng phí trong phân vùng đó, nhưng Chương trình B và Chương trình C nhỏ hơn kích thước phân vùng. Vì vậy, trong phần ition 2 và phân vùng 3 có dung lượng trống còn lại. Tuy nhiên, không gian trống này không thể sử dụng được vì trình cấp phát bộ nhớ chỉ gán các phân vùng đầy đủ cho các chương trình chứ không có t phần nào của nó. Sự lãng phí không gian trống này được gọi là phân mảnh nội bộ.

Trong ví dụ trên, đó là các phân vùng cố định có kích thước bằng nhau nhưng điều này thậm chí có thể xảy ra trong trường hợp có các phân vùng có kích thước cố định khác nhau. Thông thường bộ nhớ hoặc không gian cứng nhất được chia thành các khối thường có kích thước bằng lũy thừa của 2 chẳng hạn như 2, 4, 8, 16 byte. Vì vậy, một chương trình hoặc một tệp 3 byte sẽ được gán cho một khối 4 byte nhưng một byte của khối đó sẽ không thể sử dụng được gây ra phân mảnh nội bộ.

Phân mảnh bên ngoài là gì?

Sự khác biệt giữa phân mảnh bên trong và bên ngoài_Phân mảnh bên ngoài
Sự khác biệt giữa phân mảnh bên trong và bên ngoài_Phân mảnh bên ngoài
Sự khác biệt giữa phân mảnh bên trong và bên ngoài_Phân mảnh bên ngoài
Sự khác biệt giữa phân mảnh bên trong và bên ngoài_Phân mảnh bên ngoài

Hãy xem hình bên trên nơi cấp phát bộ nhớ được thực hiện động. Trong cấp phát bộ nhớ động, bộ cấp phát chỉ cấp phát kích thước cần thiết chính xác cho chương trình đó. Bộ nhớ đầu tiên hoàn toàn miễn phí. Sau đó, các Chương trình A, B, C, D và E với các kích thước khác nhau được tải lần lượt và chúng được đặt liền nhau trong bộ nhớ theo thứ tự đó. Sau đó, Chương trình A và Chương trình C đóng lại và chúng được dỡ bỏ khỏi bộ nhớ. Bây giờ có ba vùng không gian trống trong bộ nhớ, nhưng chúng không liền nhau. Bây giờ một chương trình lớn được gọi là Chương trình F sẽ được tải nhưng không khối không gian trống nào là không đủ cho Chương trình F. Việc thêm tất cả các không gian trống chắc chắn là đủ cho Chương trình F, nhưng do thiếu liền kề nên không gian đó là không sử dụng được cho Chương trình F. Đây được gọi là Phân mảnh Bên ngoài.

Sự khác biệt giữa Phân mảnh Bên trong và Bên ngoài là gì?

• Phân mảnh nội bộ xảy ra khi sử dụng kỹ thuật cấp phát bộ nhớ có kích thước cố định. Phân mảnh bên ngoài xảy ra khi sử dụng kỹ thuật cấp phát bộ nhớ động.

• Phân mảnh nội bộ xảy ra khi phân vùng có kích thước cố định được gán cho một chương trình / tệp có kích thước nhỏ hơn phân vùng làm cho phần còn lại của không gian trong phân vùng đó không thể sử dụng được. Phân mảnh bên ngoài là do thiếu đủ không gian liền kề sau khi tải và dỡ các chương trình hoặc tệp trong một thời gian vì sau đó tất cả dung lượng trống được phân phối ở đây và ở đó.

• Phân mảnh bên ngoài có thể được khai thác bằng cách nén trong đó các khối được gán được chuyển sang một phía, để có được không gian liền kề. Tuy nhiên, hoạt động này cần có thời gian và một số khu vực được chỉ định quan trọng nhất định, chẳng hạn như các dịch vụ hệ thống không thể được di chuyển một cách an toàn. Chúng ta có thể quan sát bước nén này được thực hiện trên đĩa cứng khi chạy trình chống phân mảnh đĩa trong Windows.

• Phân mảnh bên ngoài có thể được ngăn chặn bằng các cơ chế như phân đoạn và phân trang. Ở đây, một không gian bộ nhớ ảo liền kề hợp lý được cung cấp trong khi thực tế, các tệp / chương trình được chia thành nhiều phần và được đặt ở đây và ở đó.

• Phân mảnh nội bộ có thể được xác định bằng cách tạo các phân vùng có nhiều kích thước và gán một chương trình dựa trên sự phù hợp nhất. Tuy nhiên, sự phân mảnh bên trong vẫn chưa được loại bỏ hoàn toàn.

Tóm tắt:

Phân mảnh bên trong so với bên ngoài

Cả phân mảnh bên trong và phân mảnh bên ngoài đều là hiện tượng bộ nhớ bị lãng phí. Phân mảnh bên trong xảy ra trong phân bổ bộ nhớ kích thước cố định trong khi phân mảnh bên ngoài xảy ra trong phân bổ bộ nhớ động. Khi một phân vùng được cấp phát bị chiếm bởi một chương trình nhỏ hơn phân vùng, dung lượng còn lại sẽ bị lãng phí gây ra phân mảnh nội bộ. Khi không thể tìm thấy đủ không gian liền kề sau khi tải và dỡ các chương trình, do thực tế là không gian trống được phân phối ở đây và ở đó, điều này gây ra phân mảnh bên ngoài. Phân mảnh có thể xảy ra trong bất kỳ thiết bị nhớ nào như RAM, đĩa cứng và ổ đĩa Flash.

Đề xuất: