Programlar Arası İletişim

Windows işletim sistemi, uygulamalar arasında iletişimi ve veri paylaşımını sağlamak için çeşitli mekanizmalara sahiptir. Bu mekanizmalara işlemler arası iletişim – Interprocess Communications (IPC) adı verilir. Tipik olarak uygulamalar IPC’yi sunucu ve istemci olarak kategorize ederek kullanırlar.

Windows’ta aşağıdaki IPC mekanizmaları mevcuttur:

  • Pano (Clipboard)
  • Bileşen Nesne Modeli (COM)
  • Veri Kopyalama (Data Copy)
  • Dinamik Veri Takası (DDE)
  • Dosya Adresleme (File Mapping)
  • İleti Yuvaları (Mailslots)
  • Borular (Pipes)
  • Uzak Yordam Çağrısı (RPC)
  • Windows Soketleri (Windows Sockets)

Ben bunların arasından otomatik veri dönüştürme ve farklı işletim sistemleri ile çalışabilme özelliğinden dolayı RPC’yi tercih ediyorum. RPC ile yüksek performanslı dağıtık uygulamalar geliştirilebilinir. RPC kütüphanesi olarak da Zyan Communication Framework‘ü tercih ediyorum.

Örnek bir sohbet uygulaması oluşturdum. Host çalıştığı anda bağlantıya başlıyor ve 3 adet farklı client çalıştırıyor. Client’lar birbirlerine mesaj gönderebiliyor.

Buradan oluşturduğum örnek projeyi indirebilirsiniz.

Leave a Reply

Your email address will not be published. Required fields are marked *