5.1.1 Biaya PemanggilanMemanggil suatu prosedur konvensional, membuat sebuah sistem panggilan, mengirim pesan,memanggil prosedur remote pemanggilan semuanya adalah contoh dari mekanisme pemanggilan.Setiap mekanisme menyebabkan kode untuk dieksekusi keluar dari jangkauan prosedur atau objek yangterpanggil. Secara umum, komunikasi argumen ke kode ini dan pengembalian nilai data ke pemanggil.Mekanisme pemanggilan dapat dilakukan secara sinkron, misalnya dalam kasus konvensional danpanggilan prosedur remote, atau juga dapat dilakukan secara asynchronous.Perbedaan penting terkait kinerja mekanisme pemanggilan, terlepas dari apakah sinkron atau tidaksinkron, adalah apakah mereka melibatkan sebuah domain transisi (yaitu, apakah mereka menyeberangiruang alamat), apakah mereka melibatkan komunikasi melalui jaringan, dan apakah mereka melibatkanpenjadwalan dan switching suatu thread. Gambar 6.1.1 menunjukkan kasus-kasus tertentu dari suatusistem panggilan, pemanggilan remote proses antar proses yang dikontrol oleh komputer yang sama,dan suatu pemanggilan remote antar proses pada node berbeda dalam sistem terdistribusi.5.1.2 Pemanggilan Melalui JaringanSebuah null RPC (juga, null RMI) didefinisikan sebagai RPC tanpa parameter yang menjalankanprosedur null, dan tidak mengembalikan nilai. Pelaksanaannya melibatkan pertukaran pesan yangmembawa sedikit data system dan tidak ada data pengguna. Hingga saat ini, waktu untuk null RPCantara dua proses pengguna yaitu pada PC 500MHz melalui 100 megabit / detik LAN adalah padaurutan kesepuluh satu millisecond. Sebagai perbandingan, panggilan prosedur konvensional nullmengambil sebagian kecil mikrodetik. Pada urutan total 100 byte diteruskan ke seluruh jaringan untuksuatu null RPC. Dengan bandwidth mentah 100 megabit / detik, total waktu transfer jaringan untukDukungan Sistem Operasi 14
jumlah data ini adalah sekitar 0,01 milidetik. Jelas, banyak penundaan yang dilakukan – waktu totalpanggilan RPC yang dialami oleh seorang klien harus dipertanggungjawabkan oleh tindakan-tindakankernel sistem operasi dan tingkatan user saat menjalankan kode RPC .Biaya pemanggilan null (RPC, RMI) penting karena hal tersebut mengukur overhead yang tetap,yaitu latency. Invocation biaya meningkat sejalan dengan ukuran argumen dan hasilnya, tapi dalambanyak kasus, latency bersifat signifikan dibandingkan dengan pengingat tunda.Perhatikan suatu RPC yang mengambil jumlah tertentu data dari server. Hal ini memiliki satupermintaan argument bertipe integer,dimana penetapan ukuran data diperlukan. Ada dua argumentjawaban, suatu integer menentukan keberhasilan atau kegagalan (klien mungkin telah memberikanukuran yang tidak valid), dan, bila panggilan sukses sebuah array byte diperoleh dari server.Gambar 6.12 menunjukkan, secara skematik, penundaan klien terhadap ukuran data yang diminta.Penundaan kira-kira sebanding dengan ukuran sampai ukuran tersebut mencapai ambang batas sekitarukuran paket jaringan. Batas di luar itu, setidaknya satu paket tambahan harus dikirim, untuk membawadata tambahan. Tergantung protocol yang digunakan, paket selanjutnya dapat digunakan untukmengakui paket tambahan ini. Lompatan dalam grafik muncul setiap kali jumlah paket meningkat.Penundaan bukan satu-satunya faktor yang menarik untuk sebuah implementasi RPC: bandwidth(atau throughput) RPC juga menjadi keprihatinan ketika data tersebut harus ditransfer dalam jumlahbesar. Bandwidth/throughput ini adalah kecepatan transfer data antara komputer dalam sebuah RPC.Jika kita kaji Gambar 6,12, kita dapat melihat bahwa bandwidth relatif rendah untuk data dalam jumlahkecil, tetapi ketika fixed processing overhead mendominasi. Karena jumlah data meningkat, makabandwidth yang meningkat sebagai overhead menjadi kurang signifikan. Gokhale dan Schmidt [I996]mengutip, sebuah throughput menjadi sekitar 80 megabit / detik saat mentransfer 64 kilobyte, dalamsebuah RPC antara workstation melalui jaringan ATM dengan nominal bandwidth 155 megabit / detik.Dalam kurang lebih 0,8 milidetik untuk mentransfer 64 kilobyte, ini berada dalam urutan yang samabesarnya seperti waktu yang dikutip di atas untuk null RPC lebih dari Ethernet 100 megabit / detik.Ingat bahwa langkah-langkah dalam sebuah RPC adalah sebagai berikut (RMI melibatkanlangkah-langkah serupa):Dukungan Sistem Operasi 15