SystemE, Emacs Lisp рдХреЛ рд╕рд╛рде systemd рдХреЛ рд▓рд╛рдЧрд┐ рд╣рд╛рд╕реНрдп рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди

рд╡рд┐рддрд░рдг рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВ рдордзреНрдпреЗ рдПрдХ рд▓рд┐рдирдХреНрд╕ рдЪреБрдореНрдмрди рдПрдХ рдордЬрд╛рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд▓рд╛рдЧреА рдХреЛрдб рдкреНрд░рдХрд╛рд╢рд┐рдд рдкреНрд░рдгрд╛рд▓реА рдИ, Emacs Lisp рдорд╛ рд▓реЗрдЦрд┐рдПрдХреЛ systemd рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрдирдХреЛ рд░реВрдкрдорд╛ рдорд╛рд░реНрдХреЗрдЯ рдЧрд░рд┐рдПрдХреЛред SystemE рдорд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдЯреВрд▓рдХрд┐рдЯрд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдбрд╛рдЙрдирд▓реЛрдб рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ рдкрд╛рдк PID 1 рд╣реНрдпрд╛рдиреНрдбрд▓рд░рдХреЛ рд░реВрдкрдорд╛, "-script" рдореЛрдбрдорд╛ PID2 рдЕрдиреНрддрд░реНрдЧрдд Emacs рд╕рдореНрдкрд╛рджрдХ рд╕реБрд░реВ рдЧрд░реНрджреИ, рдЬрд╕рд▓реЗ, рдмрджрд▓реЗрдорд╛, Lisp рдорд╛ рд▓реЗрдЦрд┐рдПрдХреЛ рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рд╛рд░рдореНрднрд┐рдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд╣рд░реВ (rc.boot) рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрджрдЫред

рдХрдорд╛рдгреНрдб рд╢реЗрд▓рдХреЛ рд░реВрдкрдорд╛, рдкреНрдпрд╛рдХреЗрдЬ рдкреНрд░рдмрдиреНрдзрдХ, startx/xinitrc рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рд░ рд╕рдЮреНрдЭреНрдпрд╛рд▓ рдкреНрд░рдмрдиреНрдзрдХ рдкрдирд┐ рдЕрдзрд┐рд╡рдХреНрддрд╛ Emacsред рд╕реЗрд╡рд╛рд╣рд░реВрдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдирд┐рдпрдиреНрддреНрд░рдг рдЧрд░реНрди, busybox рдкреНрдпрд╛рдХреЗрдЬрдмрд╛рдЯ runit рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫред SystemE рдХреЛ рд╡рд┐рдХрд╛рд╕рдХреЛ рд▓рд╛рдЧрд┐ рдпреЛрдЬрдирд╛рд╣рд░реВ рдордзреНрдпреЗ, Lisp рдорд╛ рд░рдирд┐рдЯ рд░ рд╕рд┐рдирд┐рдЯ рдкреБрди: рд▓реЗрдЦреНрдиреЗ рдЗрд░рд╛рджрд╛ рдЫ рд░ рдкреНрд░рдХреНрд╖реЗрдкрдг PID 1 рдХреЛ рд░реВрдкрдорд╛ Emacsред

рдПрдХ SystemE рдЖрдзрд╛рд░рд┐рдд рд╡рд╛рддрд╛рд╡рд░рдг рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рдмрд╛рдЯ рд▓рд┐рдирдХреНрд╕ рдЪреБрдореНрдмрди, рдПрдХ рдиреНрдпреВрдирддрдо рд╡рд┐рддрд░рдг рдЬрд╕рдХреЛ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВ, рд╕рд┐рджреНрдзрд╛рдиреНрдд рдЕрдиреБрд╕рд╛рд░ рдЪреБрдореНрдмрди рддрд┐рдиреАрд╣рд░реВ рдЬрдЯрд┐рд▓рддрд╛рд░рд╣рд┐рдд, рдЕрддреНрдпрдиреНрдд рд╕рд░рд▓ рдкреНрд░рдгрд╛рд▓реА рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрди рдЦреЛрдЬрд┐рд░рд╣реЗрдХрд╛ рдЫрдиреНред рдХрд░реНрдордЪрд╛рд░реА рдкреНрдпрд╛рдХреЗрдЬ рдкреНрд░рдмрдиреНрдзрдХ KISS рд╢реЗрд▓рдорд╛ рд▓реЗрдЦрд┐рдПрдХреЛ рдЫ рд░ рдХреЛрдбрдХреЛ рд▓рдЧрднрдЧ 500 рд▓рд╛рдЗрдирд╣рд░реВ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫред рд╕рдмреИ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рд╕реНрд░реЛрдд рдХреЛрдбрдмрд╛рдЯ рдмрдирд╛рдЗрдПрдХрд╛ рдЫрдиреНред рдирд┐рд░реНрднрд░рддрд╛ рдЯреНрд░реНрдпрд╛рдХрд┐рдЩ рд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрдпрд╛рдЪрд╣рд░реВ рд╕рдорд░реНрдерд┐рдд рдЫрдиреНред рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рдкрд╛рда рдлрд╛рдЗрд▓рд╣рд░реВрдорд╛ рдЕрд╡рд╕реНрдерд┐рдд рдЫрдиреН рд░ рдорд╛рдирдХ рдпреБрдирд┐рдХреНрд╕ рдЙрдкрдпреЛрдЧрд┐рддрд╛рд╣рд░реВрджреНрд╡рд╛рд░рд╛ рдкрд╛рд░реНрд╕ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред musl рдкреНрд░рдгрд╛рд▓реА C рдкреБрд╕реНрддрдХрд╛рд▓рдпрдХреЛ рд░реВрдкрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ, рд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛рд╣рд░реВрдХреЛ рд╕реЗрдЯ busybox рдорд╛ рдЖрдзрд╛рд░рд┐рдд рдЫред Xorg рдорд╛ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЧреНрд░рд╛рдлрд┐рдХрд▓ рд╡рд╛рддрд╛рд╡рд░рдг рдкреНрд░рджрд╛рди рдЧрд░рд┐рдПрдХреЛ рдЫред
рд▓реЛрдб рдЧрд░реНрджрд╛, рдзреЗрд░реИ рд╕рд░рд▓ init рд╕реНрдХреНрд░рд┐рдкреНрдЯрд╣рд░реВ.

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди