Názor k článku Linuxu chybí univerzální konfigurační systém od Jan Molič - Přesně tak ;-) cat postgresql/default/mojedb/current_locks Prakticky si pod tímhle...

  • Článek je starý, nové názory již nelze přidávat.
  • 10. 1. 2008 16:40

    Jan Molič (neregistrovaný)
    Přesně tak ;-)
    cat postgresql/default/mojedb/current_locks
    
    Prakticky si pod tímhle představuji, že daemon spustí nějaký skript z modulu, který je registrován pod klíčem "postgresql". Skript získá informace a vráti je daemonu zpět. Daemon je pak vystaví jako soubor current_locks na virtuálním FS. Ještě hezčí přístup by byl
    # ls postgresql/default/mojedb/current_locks/
    # lock1 lock2 lock3 lock4
    # cat postgresql/default/mojedb/current_locks/lock2
    
    Pak je ovšem nutné vyřešit, aby šlo pracovat nejen s jednorázovými požadavky typu "zápis do souboru - čtení souboru", ale i se streamem, tj. stálým propojením vstupu a výstupu nějakého toho skriptu s položkou ve virtuálním FS. Taktéž je nutné vyřešit zamykání, protože při přístupu "zápis do souboru - čtení ze souboru" se může stát, že v mezidobí přijde jiný proces, který data přečte. Možností je víc, třeba uchovávat, který proces zapsal a jen ten by mohl přečíst (pak je ale problém s vlákny, to už by si asi proces musel řešit sám). Nebo duplikovat výstup pro víc "čtenářů", atd. Nebo by daemon mohl vyrobit unixový socket, ale to není úplně user-friendly a navíc by pak takový virtuální FS nešlo používat vzdáleně.