浏览代码

chapters/sandbox_ipc: réécriture partielle

Alexandre Janniaux 6 年之前
父节点
当前提交
56497cf3cf
共有 1 个文件被更改,包括 33 次插入6 次删除
  1. 33 6
      chapters/sandbox_ipc.tex

+ 33 - 6
chapters/sandbox_ipc.tex

@@ -1,10 +1,37 @@
-On a besoin d'un moyen de créer une communication inter-processus et de pouvoir
-transéfer la capacité de communiquer dessus à travers les processus.
+\section{Motivation}
 
-On introduit donc le type \inltype{vlc_process_ipc_t} qui est capable de stocker
-ce bus de communication et on construira les fonctions de communication dessus.
+Chacun des morceaux de l'architecture de VLC se retrouvant isolé dans des
+processus indépendant, on a besoin d'un moyen de créer une communication
+inter-processus. Plus encore, on a besoin de pouvoir transférer la capacité de
+communiquer d'un processus à l'autre de façon à contrôler de façon fiable les
+autorisations de chaque processus.
+
+La communication entre les processus est importante car il s'agit de la base
+pour pouvoir effectuer des appels de fonctions distants -- ou RPC pour Remote
+Procedure Call.  Cela va notamment nous servir à calquer l'architecture
+actuelle de VLC pour la faire progressivement évoluer vers un modèle plus
+découplé et moins contraint.
+
+Bien entendu, calquer l'architecture de VLC implique que les RPCs peuvent renvoyer des valeurs et il faut donc que la communication entre deux étages soit bidirectionnelle dès lors que l'un puisse parler à l'autre.
+
+La situation n'est pas totalement la même entre une architecture broker et une
+architecture orchestrateur, mais nous verrons dans la suite qu'on peut se
+ramener de la seconde à la première sans trop de soucis d'abstraction. On peut
+donc raisonner sur un mode de fonctionnement avec broker, puis essayer de voir
+si l'étendre peut poser problème.
+
+\section{Abstraction des messages et RPC}
+
+% TODO: framework de sérialisation
+% TODO: format du message envoyés (header)
+% TODO: framework d'envoi et de réception
+% TODO: implémentation broker
 
 On a également besoin d'un moyen de sérialiser et envoyer des messages pour
 construire les appels de fonctions déportés (RPC, pour Remote Procedure Call).
-Cela va notamment nous servir à calquer l'architecture actuelle de VLC pour la
-faire évoluer progressivement vers un modèle plus découplé et moins contraint.
+
+\section{Abstraction des moyens de communication}
+
+On introduit donc le type \inltype{vlc_process_ipc_t} qui est capable de
+stocker ce bus de communication bidirectionnel et on construit les fonctions
+de communication dessus.