Pengantar Manajemen Memori RPC
Dalam konteks RPC, manajemen memori melibatkan:
- Mengalokasikan dan membatalkan alokasi memori yang diperlukan untuk mensimulasikan satu ruang alamat konseptual antara klien dan server di ruang alamat yang berbeda dari utas klien dan server.
- Menentukan komponen perangkat lunak mana yang bertanggung jawab untuk mengelola memori — aplikasi atau stub yang dihasilkan MIDL.
- Memilih atribut MIDL yang memengaruhi manajemen memori: atribut arah, atribut penunjuk, atribut array, dan atribut ACF [ byte_count], [ alokasikan], dan [ enable_allocate].
Ketika program memanggil fungsi atau prosedur di ruang alamatnya, manajemen memori lebih mudah daripada dalam aplikasi terdistribusi. Untuk mengilustrasikan, diagram berikut menggambarkan pohon biner. Untuk meneruskan struktur data ini ke prosedur di ruang alamatnya, program hanya meneruskan penunjuk ke akar pohon.
Aplikasi RPC klien/server berbagi data di dua ruang memori yang berbeda. Ruang memori ini mungkin atau mungkin tidak berada di komputer yang sama. Bagaimanapun, klien dan server tidak memiliki akses langsung ke ruang memori satu sama lain. RPC tergantung pada kemampuan untuk mensimulasikan ruang alamat program klien di ruang alamat program server. Ini juga harus mengembalikan data, termasuk data baru dan yang diubah, dari server ke memori klien.
Dalam kasus seperti pohon biner yang digambarkan dalam diagram sebelumnya, tidak cukup untuk meneruskan penunjuk ke simpul akar ke prosedur jarak jauh. Baik program atau rintangan harus meneruskan seluruh pohon ke ruang alamat server agar prosedur jarak jauh dapat beroperasi di atasnya.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk