Gconf ve dconf arasındaki farklar nelerdir?


57

Yeni bir Ubuntu yapılandırma aracı hakkında çok fazla tartışma okudum: gconf yerine dconf yazdı.

Bu değişiklik neden yapılıyor? Neden bu kadar çok tartışma var? Bir gconf2dconf geçiş aracı oluşturmak çok mu zor?

Yanıtlar:


65

gconfgenellikle dconfkendi XML bloğunu kullanırken bir XML arka ucu kullanır. Bu değişiklikten tek başına bazı noktalar çizebilirsiniz:

  • İkili okuma erişimi, XML'yi ayrıştırmaktan çok daha hızlıdır
  • Göre dconf tasarım bölümünde , bir Gnome giriş okuma işlemlerinin binlerce ve sadece birkaç yazma oluşur. Bunun için gconfbinlerce istatistik, binlerce okuma ve binlerce parsama var. dconf'nin ikili bloğu, sistemi onbinlerce GİB ile bogging etmeyecek olanları havaya uçuracaktı.
  • XML daha taşınabilir
  • XML, büyük ölçüde insan tarafından okunabilir ve düzenlenebilirdir.
  • Dosya tabanlı bir sistem çok fazla uğraşmadan ayrılabilir ve bölümlenebilir
  • Tek parça bir ikili dosyanın bozulması, her şeyin öldüğü anlamına gelebilir. Tek dosya bozulması, yalnızca bu kesime zarar verir gconf.

Argümanların çoğu, Windows kayıt defterinde ve aleyhinde olanlardır.

Anladığım kadarıyla, bu ayarlar arka yüzündeki arayüz gconf: ile aynı olacaktır GSettings. Bu, dağıtımların ve kullanıcıların birini seçmesini ve gerektiğinde değiştirmelerini sağlar.


1
çok net bir cevap. cevabınızı okurken (özellikle son 3 puan) daha yavaş olsa bile gconf olduğunu düşünüyorum ..
nkint

21
Diğer bir önemli nokta ise, dconf'tan okuma ayarlarının tamamen işlem sırasında yapılması ve IPC'nin sadece yazma ve bildirimde bulunma şeklinde gerçekleşmesidir. Buna karşılık, hemen hemen her GConf işlemi IPC'yi içerir. Ayrıca, XML kullanarak GConf'un yararlarını da abartıyor olabilirsiniz: GConf veritabanına erişmenin tek desteklenen yöntemi GConf API'dir ve gconfd çalışırken doğrudan XML dosyalarını düzenlemek beklenmeyen sonuçlara yol açabilir.
James Henstridge

2
Metin tabanlı bir şey kullanmanın asıl avantajı, dosya kısmen bozulduğunda herhangi bir metin düzenleyicisiyle kurtarma bölümlerini kurtarma kabiliyeti olduğunu düşünüyorum (ancak teoride ikili blokların bölümlerini de kurtarabilecek bir araç yazmak mümkün. ?).
Ocak

3
Bence kurtarmanın en iyi yolu, herhangi bir sorun çıkarsa basitçe geri almanızı sağlayacak olan sürüm kontrolü altına ~ / .config koymak olacaktır. Bu, öngörülemeyen yan etkilerle kasıtlı yapılandırma değişikliklerini de düzeltecektir.
Jo-Erlend Schinstad

1
@ Jo-ErlendSchinstad bir şeyler yanlış giderse, VCS'nin kontrol dosyalarını da bozma şansı her zaman vardır.
Ruslan
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.