Quali sono le differenze tra gconf e dconf?


57

Ho letto molte discussioni su un nuovo strumento di configurazione di Ubuntu: gconf è sostituito da dconf.

Perché viene apportata questa modifica? Perché c'è così tanto dibattito al riguardo? È troppo difficile creare uno strumento di migrazione gconf2dconf?

Risposte:


65

gconfutilizza in genere un back-end XML, mentre dconfusa il proprio BLOB binario. Da quel solo cambiamento puoi trarre alcuni punti:

  • L'accesso binario in lettura è molto più veloce dell'analisi XML
  • Secondo la sezione di progettazione di dconf , un login di Gnome è composto da migliaia di operazioni di lettura e solo poche scritture. Per gconfquesto sono migliaia di statistiche, migliaia di letture e migliaia di analisi. dconfIl BLOB binario frullerebbe tra quelli senza impantanare il sistema con mille mila IOP.
  • XML è più portatile
  • XML è ampiamente leggibile e modificabile dall'uomo.
  • Un sistema basato su file può essere separato e porzionato senza troppi problemi
  • La corruzione di un file binario monolite potrebbe significare che tutto muore. La corruzione di un singolo file danneggia solo quel segmento gconf.

Molti degli argomenti sono quelli livellati a favore e contro il registro di Windows.

A quanto ho capito, l'interfaccia su questo back-end di impostazioni sarebbe la stessa di gconf: through GSettings. Ciò consentirebbe alle distribuzioni e agli utenti di sceglierne una e passare se necessario.


1
risposta molto chiara. leggendo la tua risposta (specialmente l'ultimo punto 3) penso che gconf anche se più lento è meglio ..
nkint

21
Un altro grande punto di differenza è che la lettura delle impostazioni da dconf viene eseguita interamente nel processo, con IPC che si verifica solo per le scritture e le notifiche di modifica. Al contrario, quasi tutte le operazioni GConf coinvolgono IPC. Potresti anche sopravvalutare i vantaggi di GConf anche usando XML: l'unico metodo supportato per accedere al database GConf è tramite l'API GConf e la modifica diretta dei file XML mentre gconfd è in esecuzione potrebbe avere risultati inaspettati.
James Henstridge,

2
Penso che il vantaggio principale dell'utilizzo di qualcosa di basato sul testo sia la possibilità di salvare parti di esso con qualsiasi editor di testo quando il file viene parzialmente corrotto (ma immagino che in teoria sia possibile scrivere uno strumento in grado di salvare anche parti delle BLOB binarie ?).
JanC

3
Penso che il modo migliore per salvare sarebbe quello di mettere ~ / .config sotto il controllo della versione, il che ti permetterebbe di eseguire semplicemente il rollback se qualcosa andasse storto. Ciò riparerebbe eventuali cambiamenti di configurazione intenzionali con effetti collaterali imprevisti.
Jo-Erlend Schinstad,

1
@ Jo-ErlendSchinstad qualcosa che non va ha sempre la possibilità di rovinare anche i file di controllo di VCS.
Ruslan,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.