Ko'pchilik OS darslarida o'rgangan bo'lsa kerak, processlar ma'lumot almashishi uchun turli ko'rinish va protocollar bor.
Masalan hammamiz bilgan network protocollar.
Lekin hech o'ylab ko'rganmisiz OS ichida internal qanday qilib ma'lumot almashish mumkin ?
Bizda 2ta process bor, endi ular ma'lumot almashishi kerak, ha balki unix socketlar birinchi hayolingizga kelgandir :) Tog'ri localda network exchange tezroq bo'ladi bazi OSI layerlari skip qilgani uchun.
Lekin yanada qiziqroq aynan local IPC uchun mo'ljallangan narsalar ham bor masalan DBUS linuxda alohida message bus system. Buni ko'proq brokerlarga ham o'xshatsa bo'ladi. Chunki siz api qilganizda alohida bus namespace yozasiz, huddi topiclar, channellar kabi. Kegin contactlarni belgilaysiz huddi kafkadagi avro schemalar kabi. High levelda biroz o'xshaydi ammo 1:1 tassavur qilmang.
Qizig'i dbus tiplarni ham support qiladi )) Ha biroz eskicha dizayn va bazi narsalar xml bilan. Lekin siz o'ylagan REST apilardan yaxshiroq dizayn qilsa bo'ladi ko'p narsani ))
Albatta IPC uchun dbusdan ham yaxshiroq yechimlar bo'lishi mumkin. XML hisobga olmasak dbus api design qilish ancha yoqimliroq lekin.
Batafsil: https://www.freedesktop.org/wiki/Software/dbus/
Post #3895
559
- 🔥 9