Perbedaan antara fragmentasi internal dan eksternal adalah topik yang menarik bagi banyak orang yang suka meningkatkan pengetahuan komputer mereka. Sebelum mengetahui perbedaan ini, kita harus melihat apa itu fragmentasi. Fragmentasi adalah fenomena yang terjadi dalam memori komputer seperti Random Access Memory (RAM) atau hard disk, yang menyebabkan pemborosan dan penggunaan ruang bebas yang tidak efisien. Meskipun penggunaan ruang yang efisien secara efisien terhambat, ini juga menyebabkan masalah kinerja. Fragmentasi internal terjadi ketika alokasi memori didasarkan pada partisi ukuran tetap di mana setelah aplikasi ukuran kecil ditugaskan ke slot, ruang kosong yang tersisa dari slot itu terbuang sia-sia. Fragmentasi eksternal terjadi ketika memori dialokasikan secara dinamis di mana setelah pemuatan dan pembongkaran beberapa slot di sana-sini ruang bebas didistribusikan daripada berdekatan.
Pertimbangkan gambar di atas di mana mekanisme alokasi memori berukuran tetap sedang diikuti. Awalnya, memori kosong dan pengalokasi telah membagi memori menjadi partisi ukuran tetap. Kemudian tiga program bernama A, B, C telah dimuat ke tiga partisi pertama sementara partisi ke-4 masih gratis. Program A cocok dengan ukuran partisi, sehingga tidak ada pemborosan dalam partisi itu, tetapi Program B dan Program C lebih kecil dari ukuran partisi. Jadi di bagian ition 2 dan partisi 3 masih ada ruang kosong yang tersisa. Namun, ruang kosong ini tidak dapat digunakan karena pengalokasi memori hanya menetapkan partisi penuh untuk program tetapi tidak ada bagiannya. Pemborosan ruang bebas ini disebut fragmentasi internal.
Dalam contoh di atas, itu adalah partisi tetap berukuran sama tetapi ini bahkan dapat terjadi dalam situasi di mana partisi berbagai ukuran tetap tersedia. Biasanya ruang memori atau tersulit dibagi menjadi blok-blok yang biasanya berukuran kekuatan 2 seperti 2, 4, 8, 16 byte. Jadi program atau file 3 byte akan ditugaskan untuk blok 4 byte tetapi satu byte blok itu akan menjadi tidak dapat digunakan menyebabkan fragmentasi internal.
Pertimbangkan gambar di atas di mana alokasi memori dilakukan secara dinamis. Dalam alokasi memori dinamis, pengalokasi hanya mengalokasikan ukuran yang tepat yang dibutuhkan untuk program itu. Memori pertama benar-benar gratis. Kemudian Program A, B, C, D dan E dari ukuran yang berbeda dimuat satu demi satu dan mereka ditempatkan di memori secara bersamaan dalam urutan itu. Kemudian, Program A dan Program C ditutup dan mereka diturunkan dari memori. Sekarang ada tiga area ruang kosong dalam memori, tetapi tidak berdekatan. Sekarang sebuah program besar yang disebut Program F akan dimuat tetapi tak satu pun dari blok ruang bebas tidak cukup untuk Program F. Penambahan semua ruang bebas pasti cukup untuk Program F, tetapi karena kurangnya kedekatan ruang yang tidak dapat digunakan untuk Program F. Ini disebut Fragmentasi Eksternal.
• Fragmentasi Internal terjadi ketika teknik alokasi memori ukuran tetap digunakan. Fragmentasi eksternal terjadi ketika teknik alokasi memori dinamis digunakan.
• Fragmentasi internal terjadi ketika partisi ukuran tetap ditugaskan ke program / file dengan ukuran kurang dari partisi membuat sisa ruang di partisi itu tidak dapat digunakan. Fragmentasi eksternal disebabkan oleh kurangnya ruang yang berdekatan setelah memuat dan membongkar program atau file untuk beberapa waktu karena semua ruang bebas didistribusikan di sana-sini.
• Fragmentasi eksternal dapat ditambang dengan pemadatan di mana blok yang ditetapkan dipindahkan ke satu sisi, sehingga ruang yang berdekatan diperoleh. Namun, operasi ini membutuhkan waktu dan juga area tertentu yang ditentukan misalnya layanan sistem tidak dapat dipindahkan dengan aman. Kita dapat mengamati langkah pemadatan ini dilakukan pada hard disk saat menjalankan defragmenter disk di Windows.
• Fragmentasi eksternal dapat dicegah dengan mekanisme seperti segmentasi dan paging. Di sini ruang memori virtual logis bersebelahan diberikan sementara pada kenyataannya file / program dipisahkan menjadi beberapa bagian dan ditempatkan di sana-sini.
• Fragmentasi internal dapat dibuat cacat dengan memiliki partisi dengan beberapa ukuran dan menetapkan program berdasarkan yang paling cocok. Namun, fragmentasi internal masih belum sepenuhnya dihilangkan.
Ringkasan:
Baik fragmentasi internal dan fragmentasi eksternal adalah fenomena di mana memori terbuang. Fragmentasi internal terjadi dalam alokasi memori ukuran tetap sedangkan fragmentasi eksternal terjadi dalam alokasi memori dinamis. Ketika partisi yang dialokasikan ditempati oleh program yang lebih rendah dari partisi, ruang yang tersisa akan terbuang sehingga menyebabkan fragmentasi internal. Ketika cukup ruang yang berdekatan tidak dapat ditemukan setelah memuat dan membongkar program, karena fakta bahwa ruang bebas didistribusikan di sana-sini, ini menyebabkan fragmentasi eksternal. Fragmentasi dapat terjadi pada perangkat memori apa pun seperti RAM, Hard disk, dan drive Flash.