Uzaktan yordam çağrısı


||Bu madde Vikipedi standartlarına uygun değildir. (Haziran 2010)|
Uzak yordam çağrısı (RPC), bir diğer adres uzayı ( genelde ağ paylaşımlı bilgisayarlar) üzerinde programcı açıkça bu uzaktan etkileşim detayları kodlama olmadan çalıştırmak için bir alt yordam veya prosedürü sağlayan bilgisayar programına izin veren süreçler arası iletişim teknolojisidir. Sunuc üzerindeki servisleri kontrol ettiğimizde karşımızı çıkan RPC (remote procedure call) arka planda haberimiz olmadan birçok şeyi gerçekleştiren bir servistir.RPC temel anlamda istemci ve sunucu arasında yapılan işlemlerin iletişimi için dizayn edildi. Bir işlemin gerçekleşmesi için bir gönderici (sunuc) ve birde istemci (client ) vardır.
Konu başlıkları
Tarihi ve Kökeni[değiştir | kaynağı değiştir]
RPC(Remote Procedure Call) fikri 1976 lara dayanır, RFC 707'lerin tanımlandığı tarih. RFC'nin ilk kullanımı Xerox adı altında “Courier” ile 1981'dedir. RFC'nin Unix'te ilk implemantasyonu Sun sistemledir.(ONC RPC). Sun NFS için temel olarak kullanıldı. Bir başka Unix implemantasyonu ise Apollo Computer’in ağ sistemlerinde oldu(NCS). NCS daha sonraları DCE/RPC altyasında OSF's Distributed Computing Environment(DCE)'de kullanıldı. 10 yıl sonra Microsoft DCE/RPC'yi aldı ve Microsoft RPC (MSRPC) olarak uyarladı ve onun içinde DCOM'u implement etti. Doksanlı yılların ortalarında Xerox PARC'un ILU su, Object Management Group'un COBRA'sı RPC tabanlı dağıtılmış nesneli türetim sistemlerinde kullanıldı.
Mesaj Geçişi[değiştir | kaynağı değiştir]
Bir RPC istemcinin uzak bir sunucudan yordamı çalıştırarak istemde bulunmasıyla başladı. Cevap uygulama devam ederken istemciye gönderildi. Birkaç çeşit RPC protokolü var. Sunucu çağrıyı işlerken, istemci bloklanır (sunucuyu bekler). Uzaktan prosedür ile yerel prosedürün en önemli farkı yerel prosedürün öngörülemeyen ağ problemlerinde hatayla karşılaşmasıdır.
RPC Yapımında Temel Adımlar:
1) İstemci taslağa çağrıda bulunur. Bu çarı normal yolla stack'e itilen parametreli yere prosedür çağrısıdır.
2) İstemci taslağı parametreleri bir mesaja paketler ve mesajı göndermek için bir sistem çağrısı yapar. Paketlenmiş parametreler marshalling diye adlandırılır.
3)Çekirdek istemci makineden sunucu makineye mesajı yollar.
4)Çekirdek gelen paketleri sunucu taslağa iletir.
5)Son olarak,sunucu taslak sunucu prosedürünü çağırır.
Standart iletişim mekanizmaları[değiştir | kaynağı değiştir]
Sunucuya farklı istemcilerin erişmeleri için standart RPC sistemleri oluşturulmuş olmalıdır. Çoğunda arayüz tanımlama dili (interface description language (IDL)) kullanılır. Arayüz tanımlama dili birçok platforma izin verir.