Varlink è un'interfaccia del kernel e un protocollo che è facile da leggere sia per le persone che per le macchine.
Interfaccia Varlink combina le classiche opzioni della riga di comando UNIX, i formati di testo STDIN/OUT/ERROR, le pagine di manuale, i metadati di servizio ed è equivalente al descrittore di file FD3. Varlink è disponibile da qualsiasi ambiente di programmazione.
L'interfaccia Varlink definisce, quali metodi saranno implementati e come. Ogni metodo ha un nome e parametri di input e output specificati.
C'è la possibilità di documentare aggiungendo commenti prima del pezzo di codice da documentare.
In protocollo Varlink codifica tutti i messaggi come oggetti JSON e termina con un byte NUL.
Il servizio risponde alle richieste nell'ordine in cui sono state ricevute: i messaggi non vengono mai multiplexati. Tuttavia, più richieste possono essere messe in coda nella connessione per consentire l'elaborazione in pipeline.
Un caso comune è una semplice chiamata a un metodo con una sola risposta. In alcuni altri casi, il server potrebbe non rispondere affatto oppure rispondere più volte a una singola chiamata. Una descrizione più dettagliata qui.
Fonte: linux.org.ru
