Manajemen Memori di Sistem Operasi: Memori Berurutan, SwappingFragmentasi

⚡ Ringkasan Cerdas

Manajemen Memori adalah proses sistem operasi yang mengontrol dan mengkoordinasikan memori komputer, menetapkan blok-blok memori ke program yang sedang berjalan untuk mengoptimalkan kinerja. tracks setiap lokasi memori, memindahkan proses antara memori utama dan disk, dan melindungi proses satu sama lain.

  • 🧠 Definisi: Manajemen memori mengalokasikan dan tracks blok memori untuk menjalankan program guna memaksimalkan kinerja.
  • Teknik: Alokasi memori tunggal yang berdekatan, terpartisi, berhalaman, dan tersegmentasi mengelola memori secara berbeda.
  • 🔄 Menukarping: Proses berpindah sementara antara memori utama dan penyimpanan cadangan untuk meningkatkan kemampuan multiprogramming.
  • 📑 Paginasi vs Segmentasi: Paginasi menggunakan frame dengan ukuran tetap; segmentasi menggunakan segmen dengan panjang variabel.
  • 🧩 Fragmentasi: Fragmentasi internal dan eksternal membuang memori dalam blok-blok kecil yang tidak dapat digunakan.
  • 🔗 Memuat & Menghubungkan: Pemuatan dan penautan dinamis menghemat memori dengan hanya memuat rutin saat dibutuhkan.

Manajemen Memori di OS

Apa itu Manajemen Memori?

Manajemen memori adalah proses mengendalikan dan mengoordinasikan memori komputer, menetapkan bagian yang dikenal sebagai blok ke berbagai program yang sedang berjalan untuk mengoptimalkan kinerja sistem secara keseluruhan.

Ini adalah fungsi terpenting dari sistem operasi yang mengelola memori utama. Fungsi ini membantu proses untuk berpindah bolak-balik antara memori utama dan disk eksekusi. Ini membantu sistem operasi untuk menjaga agar track dari setiap lokasi memori, terlepas dari apakah lokasi tersebut dialokasikan ke suatu proses atau masih kosong.

Mengapa Menggunakan Manajemen Memori?

Berikut adalah alasan mengapa manajemen memori diperlukan:

  • Hal ini memungkinkan Anda untuk memeriksa berapa banyak memori yang perlu dialokasikan untuk proses yang menentukan prosesor mana yang harus mendapatkan memori pada waktu berapa.
  • Tracks setiap kali inventaris dibebaskan atau tidak dialokasikan, dan memperbarui status sesuai dengan itu.
  • Ini mengalokasikan ruang untuk rutinitas aplikasi.
  • Hal ini juga memastikan bahwa aplikasi-aplikasi tersebut tidak saling mengganggu.
  • Membantu melindungi berbagai proses agar tidak saling mengganggu.
  • Ini menempatkan program dalam memori sehingga memori digunakan secara maksimal.

Teknik Manajemen Memori

Berikut beberapa teknik manajemen memori yang paling penting:

Alokasi Bersebelahan Tunggal

Ini adalah teknik manajemen memori yang paling mudah. ​​Dalam metode ini, semua jenis memori komputer, kecuali sebagian kecil yang dicadangkan untuk sistem operasi, tersedia untuk satu aplikasi. Misalnya, sistem operasi MS-DOS mengalokasikan memori dengan cara ini. Sistem tertanam juga berjalan hanya dengan satu aplikasi.

Alokasi yang Dipartisi

Metode ini membagi memori utama menjadi berbagai partisi memori, yang sebagian besar merupakan area memori yang berdekatan. Setiap partisi menyimpan semua informasi untuk tugas atau pekerjaan tertentu. Metode ini terdiri dari mengalokasikan partisi ke suatu pekerjaan saat dimulai dan membatalkan alokasinya saat berakhir.

Manajemen Memori Halaman

Metode ini membagi memori utama komputer menjadi unit-unit berukuran tetap yang dikenal sebagai bingkai halaman. Unit manajemen memori perangkat keras ini memetakan halaman ke dalam bingkai yang harus dialokasikan berdasarkan halaman.

Manajemen Memori Tersegmentasi

Memori tersegmentasi adalah satu-satunya metode manajemen memori yang tidak menyediakan ruang alamat linier dan berdekatan bagi program pengguna.

Segmen memerlukan dukungan hardware berupa tabel segmen. Ini berisi alamat fisik bagian dalam memori, ukuran, dan data lain seperti bit perlindungan akses dan status.

Apa itu Swap?ping?

Menukarping adalah metode di mana suatu proses harus ditukar sementara dari memori utama ke penyimpanan cadangan. Proses tersebut nantinya akan dikembalikan ke memori untuk melanjutkan eksekusi.

Penyimpanan cadangan adalah hard disk atau perangkat penyimpanan sekunder lainnya yang harus cukup besar untuk menampung salinan semua citra memori untuk semua pengguna. Perangkat ini juga mampu menawarkan akses langsung ke citra memori tersebut.

Menukarping

Manfaat Swapping

Berikut adalah manfaat/keuntungan utama dari swap.ping:

  • Ia menawarkan tingkat multiprogramming yang lebih tinggi.
  • Memungkinkan relokasi dinamis. Misalnya, jika pengikatan alamat pada waktu eksekusi digunakan, maka proses dapat ditukar ke lokasi yang berbeda. Jika tidak, dalam kasus pengikatan waktu kompilasi dan pemuatan, proses harus dipindahkan ke lokasi yang sama.
  • Ini membantu untuk mendapatkan pemanfaatan memori yang lebih baik.
  • Pemborosan waktu CPU minimum saat penyelesaian, sehingga dapat dengan mudah diterapkan pada metode penjadwalan berbasis prioritas untuk meningkatkan kinerjanya.

Apa itu alokasi memori?

Alokasi memori adalah proses dimana program komputer diberi memori atau ruang.

Di sini, memori utama dibagi menjadi dua jenis partisi:

  1. Memori rendah - The Operasistem ting berada dalam memori jenis ini.
  2. Memori Tinggi – Proses pengguna disimpan di memori tingkat tinggi.

Alokasi Partisi

Memori dibagi menjadi beberapa blok atau partisi. Setiap proses dialokasikan sesuai dengan kebutuhan. Alokasi partisi adalah metode ideal untuk menghindari fragmentasi internal.

Berikut adalah berbagai skema alokasi partisi:

  • Pertama Kali Dipasang: Dalam jenis pengaturan ini, partisi dialokasikan yaitu blok pertama yang cukup dari awal memori utama.
  • Paling cocok: Proses tersebut dialokasikan ke partisi yang merupakan partisi terkecil yang memadai di antara partisi-partisi yang tersedia.
  • Paling Cocok: Proses tersebut dialokasikan ke partisi yang merupakan partisi terbesar dan cukup tersedia di memori utama.
  • Kesesuaian Berikutnya: Metode ini sebagian besar mirip dengan First Fit, tetapi Fit ini mencari partisi yang memadai pertama dari titik alokasi terakhir.

Apa itu Paging?

Paging adalah mekanisme penyimpanan yang memungkinkan sistem operasi untuk mengambil proses dari penyimpanan sekunder ke memori utama dalam bentuk halaman. Dalam metode Paging, memori utama dibagi menjadi blok-blok memori fisik berukuran tetap yang disebut frame. Ukuran frame harus dijaga agar sama dengan ukuran halaman untuk memaksimalkan pemanfaatan memori utama dan menghindari fragmentasi eksternal. Pager digunakan untuk akses lebih cepat ke data, dan ini adalah konsep logis.

Apa itu Fragmentasi?

Proses disimpan dan dikeluarkan dari memori, yang menciptakan ruang memori kosong yang terlalu kecil untuk digunakan oleh proses lain.

Setelah beberapa waktu, proses-proses tersebut tidak dapat dialokasikan ke blok memori karena ukurannya yang kecil, dan blok memori selalu tetap tidak terpakai. Hal ini disebut fragmentasi. Masalah jenis ini terjadi selama sistem alokasi memori dinamis ketika blok-blok kosong cukup kecil, sehingga tidak mampu memenuhi permintaan apa pun.

Dua jenis metode Fragmentasi adalah:

  1. Fragmentasi eksternal
  2. Fragmentasi internal
  • Fragmentasi eksternal dapat dikurangi dengan mengatur ulang isi memori untuk menempatkan semua memori bebas bersama-sama dalam satu blok.
  • Fragmentasi internal dapat dikurangi dengan menetapkan partisi terkecil, yang masih cukup baik untuk menjalankan seluruh proses.

Apa itu Segmentasi?

Metode segmentasi bekerja hampir sama dengan metode penomoran halaman. Satu-satunya perbedaan antara keduanya adalah bahwa segmen memiliki panjang yang bervariasi, sedangkan pada metode penomoran halaman, halaman selalu berukuran tetap.

Segmen program mencakup fungsi utama program, struktur data, fungsi utilitas, dll. OS memelihara tabel peta segmen untuk semua proses. Ini juga mencakup daftar blok memori bebas beserta ukurannya, nomor segmen, dan lokasi memorinya di memori utama atau memori virtual.

Apa itu Pemuatan Dinamis?

Pemuatan dinamis adalah rutinitas suatu program yang tidak dimuat sampai program tersebut memanggilnya. Semua rutinitas harus disimpan pada disk dalam format pemuatan yang dapat dipindahkan. Program utama akan dimuat ke dalam memori dan akan dieksekusi. Pemuatan dinamis juga memberikan pemanfaatan ruang memori yang lebih baik.

Apa itu Tautan Dinamis?

Penautan (linking) adalah metode yang membantu sistem operasi untuk mengumpulkan dan menggabungkan berbagai modul kode dan data ke dalam satu file yang dapat dieksekusi. File tersebut dapat dimuat ke dalam memori dan dieksekusi. Sistem operasi dapat menautkan pustaka tingkat sistem ke dalam program yang menggabungkan pustaka tersebut pada saat pemuatan. Dalam metode penautan dinamis (dynamic linking), pustaka ditautkan pada saat eksekusi, sehingga ukuran kode program dapat tetap kecil.

Perbedaan Antara Pemuatan Statis dan Dinamis

Pemuatan Statis Pemuatan Dinamis
Pemuatan statis digunakan ketika Anda ingin memuat program Anda secara statis. Kemudian, pada saat kompilasi, seluruh program akan dihubungkan dan dikompilasi tanpa memerlukan modul eksternal atau ketergantungan program apa pun. Dalam program yang dimuat secara dinamis, referensi akan diberikan dan pemuatan akan dilakukan pada saat eksekusi.
Pada waktu pemuatan, seluruh program dimuat ke dalam memori dan memulai eksekusinya. Rutinitas perpustakaan dimuat ke dalam memori hanya ketika diperlukan dalam program.

Perbedaan Antara Tautan Statis dan Dinamis

Berikut perbedaan utama antara penautan statis dan penautan dinamis:

Tautan Statis Tautan Dinamis
Penautan statis digunakan untuk menggabungkan semua modul lain yang dibutuhkan oleh suatu program ke dalam satu kode yang dapat dieksekusi. Hal ini membantu sistem operasi mencegah ketergantungan saat runtime. Saat menggunakan penautan dinamis, tidak perlu menautkan modul atau pustaka sebenarnya dengan program. Sebagai gantinya, ia menggunakan referensi ke modul dinamis yang disediakan pada saat kompilasi dan penautan.

Pertanyaan Umum Demo Slot

Paging membagi memori menjadi frame berukuran tetap dan tidak terlihat oleh programmer, sedangkan segmentasi membagi memori menjadi segmen dengan panjang variabel berdasarkan struktur logis program. Paging dapat menyebabkan fragmentasi internal; segmentasi dapat menyebabkan fragmentasi eksternal.

Fragmentasi internal adalah pemborosan ruang di dalam blok yang dialokasikan ketika suatu proses menggunakan ruang kurang dari ukuran blok tersebut. Fragmentasi eksternal adalah memori bebas yang terbagi menjadi blok-blok kecil yang tersebar, yang jika digabungkan cukup besar tetapi tidak dapat memenuhi suatu permintaan.

Alamat logis (virtual) dihasilkan oleh CPU selama eksekusi program. Alamat fisik adalah lokasi sebenarnya di memori utama. Unit manajemen memori (MMU) menerjemahkan alamat logis ke alamat fisik pada saat program dijalankan.

AI dapat memprediksi halaman mana yang akan dibutuhkan program selanjutnya dan melakukan prefetch, sehingga meningkatkan keputusan cache dan penggantian halaman. AI juga membantu mendeteksi kebocoran memori dan menyesuaikan kebijakan alokasi secara dinamis, sehingga mengurangi swap.ping dan meningkatkan kinerja sistem secara keseluruhan.

Ya. AI dapat mempelajari pola alokasi dan memilih ukuran blok atau waktu pemadatan yang meminimalkan fragmentasi. Dengan memprediksi berapa lama alokasi bertahan, AI mengelompokkan objek serupa bersama-sama, mengurangi ruang kosong yang tersebar dan kebutuhan akan pemadatan memori yang mahal.

Ringkaslah postingan ini dengan: