Lage sistèm GNU Shepherd 0.8 init la

Disponib manadjè sèvis GNU Shepherd 0.8 (ansyen dmd), ki ap devlope pa devlopè distribisyon GNU Guix System kòm yon altènatif ki konnen depandans ak sistèm inisyalizasyon SysV-init la. Daemon kontwòl Shepherd ak sèvis piblik yo ekri nan lang Guile (youn nan aplikasyon lang Scheme), ki itilize tou pou defini anviwònman ak paramèt pou lanse sèvis yo. Shepherd deja itilize nan distribisyon GuixSD GNU/Linux epi li vize tou pou itilize nan GNU/Hurd, men li ka kouri sou nenpòt OS ki konfòm ak POSIX pou lang Guile ki disponib.

Shepherd ka itilize tou de kòm sistèm inisyalizasyon prensipal la (init ak PID 1), ak nan yon fòm separe jere pwosesis background nan itilizatè endividyèl (pa egzanp, kouri tor, privoxy, mcron, elatriye) ak ekzekisyon ak dwa yo nan. itilizatè sa yo. Shepherd fè travay la nan kòmanse ak sispann sèvis yo lè li pran an kont relasyon ki genyen ant sèvis yo, dinamikman idantifye ak kòmanse sèvis yo sou ki sèvis la chwazi depann. Shepherd sipòte tou detekte konfli ant sèvis yo ak anpeche yo kouri ansanm.

Prensipal inovasyon:

  • Make-kill-destructor aplike touye yon gwoup pwosesis;
  • Te ajoute paramèt "default-pid-file-timeout", ki detèmine tan ap tann pou kreye yon dosye PID;
  • Si fichye PID a pa parèt nan delè a, tout gwoup pwosesis la sispann (deside pwoblèm kite pwosesis travay san yon dosye PID);
  • Te ajoute paramèt "#:file-creation-mask" nan "make-forkexec-constructor", aplike kreyasyon dosye boutèy demi lit epi sispann sipòte ansyen konvansyon apèl la;
  • Rezoud pwoblèm ak konpilasyon sou sistèm san prctl, tankou GNU/Hurd;
  • Fikse yon pwoblèm ki te lakòz SIGALRM yo te voye chak segonn.

Sous: opennet.ru

Add nouvo kòmantè