Kedua-dua klasifikasi dalaman dan luaran mempengaruhi kelajuan data mengakses sistem. Mereka mempunyai perbezaan asas antara mereka iaitu pemecahan dalaman berlaku apabila blok memori bersaiz tetap diperuntukkan kepada proses tanpa berkenaan dengan saiz proses, dan pemecahan Luaran berlaku apabila proses diagihkan memori secara dinamik. Mari kita bergerak lebih jauh dan bincangkan perbezaan, sebab, penyelesaian di sebalik pemecahan dalaman dan luaran dengan bantuan carta perbandingan yang ditunjukkan di bawah.
Carta Perbandingan
Asas untuk Perbandingan | Fragmentasi Dalaman | Fragmentasi Luaran |
---|---|---|
Asas | Ia berlaku apabila blok memori bersaiz tetap diperuntukkan kepada proses. | Ia berlaku apabila ruang memori saiz berubah-ubah diperuntukkan kepada proses secara dinamik. |
Kejadian | Apabila memori yang diberikan kepada proses itu sedikit lebih besar daripada ingatan yang diminta oleh proses ini menciptakan ruang kosong dalam blok yang diperuntukkan menyebabkan pemecahan dalaman. | Apabila proses dikeluarkan dari ingatan, ia mewujudkan ruang kosong dalam memori yang menyebabkan pemecahan luaran. |
Penyelesaian | Memori mesti dibahagikan kepada blok bersaiz yang berubah-ubah dan menetapkan blok patut terbaik untuk proses tersebut. | Compaction, paging dan segmentasi. |
Takrifan Fragmentasi Dalaman
Pemecahan dalaman berlaku apabila memori dibahagikan kepada blok bersaiz tetap . Apabila proses meminta memori, blok bersaiz tetap diperuntukkan kepada proses. Sekiranya memori yang diberikan kepada proses itu agak besar daripada memori yang diminta, maka perbezaan antara memori yang diberikan dan yang diminta adalah pemecahan dalaman .
Ruang sisa ini di dalam blok bersaiz tetap tidak boleh diperuntukkan kepada mana-mana proses kerana ia tidak mencukupi untuk memenuhi permintaan ingatan oleh proses itu. Marilah kita memahami pemecahan Dalaman dengan bantuan contoh. Ruang memori dibahagikan kepada blok berukuran tetap 18, 464 bait. Katakanlah permintaan proses untuk 18, 460 bait dan blok bersaiz tetap 18, 464 bait diperuntukkan untuk proses itu. Hasilnya ialah 4 bait dari 18.464 bait yang masih kosong yang merupakan pemecahan dalaman.
Keupayaan mengesan lubang internal yang dibuat disebabkan oleh pemecahan dalaman adalah lebih banyak daripada jumlah lubang dalaman. Masalah fragmentasi dalaman dapat diselesaikan dengan memisahkan memori ke dalam blok bersaiz ubah dan menetapkan blok bersaiz terbaik untuk proses yang meminta memori. Namun, ia tidak akan benar-benar menghapuskan masalah pemecahan dalaman tetapi akan mengurangkan sedikit sebanyak.
Definisi Fragmentasi Luaran
Pemecahan luaran berlaku apabila terdapat ruang yang mencukupi dalam ingatan untuk memenuhi permintaan memori sesuatu proses. Tetapi permintaan ingatan proses tidak dapat dipuaskan kerana ingatan yang tersedia adalah tidak bersesuaian. Sama ada anda menggunakan strategi peruntukan memori yang sesuai atau paling sesuai, ia akan menyebabkan pemecahan luaran.
Apabila proses dimuatkan dan dikeluarkan dari memori ruang bebas mencipta lubang di ruang ingatan, dan terdapat banyak lubang seperti di ruang memori, ini dipanggil pemecahan luaran. Walaupun patut pertama dan paling sesuai boleh menjejaskan jumlah pecahan luar, ia tidak boleh dihapuskan sepenuhnya. Pemadatan mungkin penyelesaian untuk pemecahan luaran.
Algoritma pemadatan menghiasi semua kandungan memori ke satu sisi dan membebaskan satu blok memori yang besar. Tetapi algoritma pemadatan adalah mahal. Terdapat penyelesaian alternatif untuk menyelesaikan isu pemecahan luaran yang akan membolehkan proses untuk memperoleh memori fizikal dengan cara yang tidak bersesuaian. Teknik untuk mencapai penyelesaian ini adalah paging dan segmentasi.
Perbezaan Utama Antara pemisahan dalaman dan luaran
- Alasan asas di sebalik kejadian pemecahan dalaman dan luaran adalah pemecahan dalaman berlaku apabila ingatan dibahagikan kepada blok bersaiz tetap manakala pemecahan luaran berlaku apabila memori dibahagikan kepada blok saiz berubah-ubah .
- Apabila blok memori yang diperuntukkan kepada proses keluar menjadi sedikit lebih besar daripada ingatan yang diminta, maka ruang kosong yang tersisa di blok memori yang diberikan menyebabkan pemecahan dalaman. Di sisi lain, apabila proses dikeluarkan dari memori, ia menciptakan ruang kosong yang menyebabkan lubang dalam memori yang dipanggil pemecahan luaran.
- Masalah pemecahan dalaman dapat diselesaikan dengan memisahkan memori ke dalam blok bersaiz yang berubah-ubah dan menetapkan blok sesuai yang sesuai dengan proses permintaan. Walau bagaimanapun, penyelesaian untuk pemecahan luaran adalah pemadatan, tetapi ia adalah mahal untuk dilaksanakan, jadi proses harus dibenarkan untuk memperoleh memori fizikal dengan cara yang tidak bersesuaian, untuk mencapai teknik pengeditan dan segmentasi.
Kesimpulan:
Masalah pemecahan dalaman boleh dikurangkan, tetapi ia tidak boleh dihapuskan sepenuhnya. Bantuan paging dan segmentasi dalam menggunakan ruang yang dibebaskan akibat pemecahan luaran dengan membenarkan proses untuk menempati memori dengan cara yang tidak bersambung.