рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо: рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ рдФрд░ рд╡реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ? рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

рдирдорд╕реНрддреЗ! рд╣рдо рдЙрди рдкрд╛рдареНрдпрдХреНрд░рдореЛрдВ рдХреЗ рд▓рд┐рдП рдирдИ рд╕реНрдЯреНрд░реАрдо рд▓реЙрдиреНрдЪ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВ рдЬрд┐рдирд╕реЗ рдЖрдк рдкрд╣рд▓реЗ рд╣реА рдкреНрдпрд╛рд░ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ рдФрд░ рдЕрдм рд╣рдо рдпрд╣ рдШреЛрд╖рдгрд╛ рдХрд░рдиреЗ рдХреА рдЬрд▓реНрджреА рдореЗрдВ рд╣реИрдВ рдХрд┐ рд╣рдо рдкрд╛рдареНрдпрдХреНрд░рдореЛрдВ рдХрд╛ рдПрдХ рдирдпрд╛ рд╕реЗрдЯ рд╢реБрд░реВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред "рд▓рд┐рдирдХреНрд╕ рдкреНрд░рд╢рд╛рд╕рдХ"рдЬреЛ рдЕрдкреНрд░реИрд▓ рдХреЗ рдЕрдВрдд рдореЗрдВ рд▓реЙрдиреНрдЪ рд╣реЛрдЧрд╛ред рдЗрд╕ рдЖрдпреЛрдЬрди рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдкреНрд░рдХрд╛рд╢рди рджрд┐рдирд╛рдВрдХрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдореВрд▓ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде, рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╣рд╛рдВ рдкрдврд╝реЗрдВ.

рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЬрд╛рджреБрдИ рдЕрдореВрд░реНрдд рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд▓рд┐рдирдХреНрд╕ рдХреЗ рджрд░реНрд╢рди рдХреЛ рдпрд╣ рдХрд╣рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ "рд╕рдм рдХреБрдЫ рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╣реИред"

рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо: рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ рдФрд░ рд╡реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ? рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреНрдпрд╛ рд╣реИ? рд▓рд┐рдирдХреНрд╕ рдХреЗ рдкрд╣рд▓реЗ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдФрд░ рд▓реЗрдЦрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд╢рдмреНрджреЛрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд░реЛрдмрд░реНрдЯрд╛ рд▓рд╛рд╡рд╛, "рдПрдХ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЗрдХрдЯреНрдареЗ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХрд╛ рдПрдХ рдкрджрд╛рдиреБрдХреНрд░рдорд┐рдд рднрдВрдбрд╛рд░рдг рд╣реИред" рдЬреИрд╕рд╛ рднреА рд╣реЛ, рдпрд╣ рдкрд░рд┐рднрд╛рд╖рд╛ VFAT (рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╝рд╛рдЗрд▓ рдЖрд╡рдВрдЯрди рддрд╛рд▓рд┐рдХрд╛), Git рдФрд░ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдЕрдиреБрдХреВрд▓ рд╣реИ рдХреИрд╕рд╛рдВрджреНрд░рд╛ (рдиреЛрдПрд╕рдХреНрдпреВрдПрд▓ рдбреЗрдЯрд╛рдмреЗрд╕). рддреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ "рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо" рдЬреИрд╕реА рдЪреАрдЬрд╝ рдХреЛ рдХреНрдпрд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ?

рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдореВрд▓ рдмрд╛рддреЗрдВ

рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ рдХреА рдПрдХ рдЗрдХрд╛рдИ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдБ рд╣реЛрддреА рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕реЗ рддрд░реАрдХреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ open(), read() ╨╕ write() рд▓рдЧрд╛рддрд╛рд░ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдирдХреЗ рдирд╛рдо рд╣реИрдВред рд╡рд╕реНрддреБ-рдЙрдиреНрдореБрдЦ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ, рдХрд░реНрдиреЗрд▓ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдПрдХ рдЕрдореВрд░реНрдд рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрди рддреАрди рдмрдбрд╝реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ "рд╡рд░реНрдЪреБрдЕрд▓" рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрдирдХреА рдХреЛрдИ рдареЛрд╕ рдкрд░рд┐рднрд╛рд╖рд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рддрджрдиреБрд╕рд╛рд░, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо (VFS) рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо: рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ рдФрд░ рд╡реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ? рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

рдпрджрд┐ рд╣рдо рдХрд┐рд╕реА рдЗрдХрд╛рдИ рдХреЛ рдЦреЛрд▓, рдкрдврд╝ рдФрд░ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЙрд╕ рдЗрдХрд╛рдИ рдХреЛ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдКрдкрд░ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
рд╡реАрдПрдлрдПрд╕ рдШрдЯрдирд╛ рдХреЗрд╡рд▓ рдпреВрдирд┐рдХреНрд╕-рдЬреИрд╕реЗ рдЕрд╡рд▓реЛрдХрди рдХреЛ рд░реЗрдЦрд╛рдВрдХрд┐рдд рдХрд░рддреА рд╣реИ рдХрд┐ "рд╕рдм рдХреБрдЫ рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╣реИ"ред рд╕реЛрдЪреЗрдВ рдХрд┐ рдпрд╣ рдХрд┐рддрдирд╛ рдЕрдЬреАрдм рд╣реИ рдХрд┐ рдКрдкрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╡рд╣ рдЫреЛрдЯрд╛ рд╕рд╛ /dev/console рдЙрджрд╛рд╣рд░рдг рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рдХрдВрд╕реЛрд▓ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЪрд┐рддреНрд░ рдПрдХ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдмреИрд╢ рд╕рддреНрд░ рджрд┐рдЦрд╛рддрд╛ рд╣реИред рдХрдВрд╕реЛрд▓ (рд╡рд░реНрдЪреБрдЕрд▓ рдХрдВрд╕реЛрд▓ рдбрд┐рд╡рд╛рдЗрд╕) рдкрд░ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рднреЗрдЬрдирд╛ рдЗрд╕реЗ рд╡рд░реНрдЪреБрдЕрд▓ рд╕реНрдХреНрд░реАрди рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред рд╡реАрдПрдлрдПрд╕ рдХреЗ рдкрд╛рд╕ рдЕрдиреНрдп, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЬрдирдмреА рд╕рдВрдкрддреНрддрд┐рдпрд╛рдВ рднреА рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЖрдкрдХреЛ рдЦреЛрдЬ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ R╨ЕRoR╤Ш.

рдкрд░рд┐рдЪрд┐рдд рд╕рд┐рд╕реНрдЯрдо рдЬреИрд╕реЗ ext4, NFS, рдФрд░ /proc рдХреЗ C рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рддреАрди рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд╛рд░реНрдп рд╣реЛрддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдлрд╝рд╛рдЗрд▓_рдСрдкрд░реЗрд╢рдВрд╕. рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреБрдЫ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдкрд░рд┐рдЪрд┐рдд рдСрдмреНрдЬреЗрдХреНрдЯ-рдУрд░рд┐рдПрдВрдЯреЗрдб рддрд░реАрдХреЗ рд╕реЗ рд╡реАрдПрдлрдПрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдФрд░ рдкреБрдирд░реНрдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдЬреИрд╕рд╛ рдХрд┐ рд░реЙрдмрд░реНрдЯ рд▓рд╡ рдмрддрд╛рддреЗ рд╣реИрдВ, рд╡реАрдПрдлрдПрд╕ рдПрдмреНрд╕реНрдЯреНрд░реИрдХреНрд╢рди рд▓рд┐рдирдХреНрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЕрдкрдиреЗ рдЖрдВрддрд░рд┐рдХ рдбреЗрдЯрд╛ рдкреНрд░рд╛рд░реВрдк рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд┐рдП рдмрд┐рдирд╛ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдпрд╛ рдкрд╛рдЗрдк рдЬреИрд╕реА рдЕрдореВрд░реНрдд рдЗрдХрд╛рдЗрдпреЛрдВ рд╕реЗ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд▓рд╛рдкрд░рд╡рд╛рд╣реА рд╕реЗ рдХреЙрдкреА рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрдХреНрд╖ (рдпреВрдЬрд░рд╕реНрдкреЗрд╕) рдкрд░, рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдХрд░реНрдиреЗрд▓ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдореЗрдВ рдХреЙрдкреА рдХрд░ рд╕рдХрддреА рд╣реИ read() рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдФрд░ рдлрд┐рд░ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ write () рдбреЗрдЯрд╛ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреНрдп рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдоред

рдЖрдзрд╛рд░ VFS рдкреНрд░рдХрд╛рд░реЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдлрд╝рдВрдХреНрд╢рди рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╣реИрдВ рдПрдлрдПрд╕/*.рд╕реА рдХрд░реНрдиреЗрд▓ рд╕реНрд░реЛрдд рдХреЛрдб, рдЬрдмрдХрд┐ рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдПрдБ fs/ рдХреБрдЫ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдХреЛрд░ рдореЗрдВ рдРрд╕реА рд╕рдВрд╕реНрдерд╛рдПрдБ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИрдВ cgroups, /dev ╨╕ tmpfs, рдЬреЛ рдмреВрдЯ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВ рдФрд░ рдЗрд╕рд▓рд┐рдП рдХрд░реНрдиреЗрд▓ рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИрдВ init/. рдиреЛрдЯрд┐рд╕ рдЬреЛ cgroups, /dev ╨╕ tmpfs "рдмрдбрд╝реЗ рддреАрди" рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рдХреЙрд▓ рди рдХрд░реЗрдВ file_operations, рд▓реЗрдХрд┐рди рд╕реАрдзреЗ рд╕реНрдореГрддрд┐ рдореЗрдВ рдкрдврд╝реЗрдВ рдФрд░ рд▓рд┐рдЦреЗрдВред
рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЪрд┐рддреНрд░ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдпреВрдЬрд░рд╕реНрдкреЗрд╕ рдЖрдорддреМрд░ рдкрд░ рд▓рд┐рдирдХреНрд╕ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рд▓рдЧреЗ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рддрдХ рдХреИрд╕реЗ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИред рд╕рдВрд░рдЪрдирд╛рдПрдВ рдирд╣реАрдВ рджрд┐рдЦрд╛рдИ рдЧрдИрдВ pipes, dmesg ╨╕ POSIX clocks, рдЬреЛ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рднреА рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ file_operations, VFS рдкрд░рдд рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд╣реБрдБрдЪрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо: рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ рдФрд░ рд╡реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ? рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

рд╡реАрдПрдлрдПрд╕ рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдФрд░ рдХреБрдЫ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдмреАрдЪ рдПрдХ "рд░реИрдкрд░ рдкрд░рдд" рд╣реИ file_operations, рдЬреИрд╕реЗ рдХрд┐ ext4 ╨╕ procfs. рдХрд╛рд░реНрдп file_operations рдбрд┐рд╡рд╛рдЗрд╕ рдбреНрд░рд╛рдЗрд╡рд░ рдпрд╛ рдореЗрдореЛрд░реА рдПрдХреНрд╕реЗрд╕ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░реИрдХреНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИред tmpfs, devtmpfs ╨╕ cgroups рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░реЛ file_operations, рд▓реЗрдХрд┐рди рд╕реАрдзреЗ рдореЗрдореЛрд░реА рддрдХ рдкрд╣реБрдВрдЪреЗрдВред
рд╡реАрдПрдлрдПрд╕ рдХрд╛ рдЕрд╕реНрддрд┐рддреНрд╡ рдХреЛрдб рдХреЛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рдЬреБрдбрд╝реЗ рдмреБрдирд┐рдпрд╛рджреА рддрд░реАрдХреЛрдВ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рджреНрд╡рд╛рд░рд╛ рдкреБрди: рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдЗрдВрдЬреАрдирд┐рдпрд░реЛрдВ рдХреЗ рдмреАрдЪ рдХреЛрдб рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдПрдХ рдЖрдо рдмрд╛рдд рд╣реИ! рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрджрд┐ рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рдХреЛрдб рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИ рдЧрдВрднреАрд░ рдЧрд▓рддрд┐рдпрд╛рдБ, рд╕рднреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЬреЛ рд╕рд╛рдорд╛рдиреНрдп рддрд░реАрдХреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ, рдЙрдирд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред

/tmp: рд╕рд░рд▓ рд╕рдВрдХреЗрдд

рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХрд╛ рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реИ рдХрд┐ рд╡реАрдПрдлрдПрд╕ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдореМрдЬреВрдж рд╣реИ рдЯрд╛рдЗрдк рдХрд░рдирд╛ mount | grep -v sd | grep -v :/, рдЬреЛ рд╕рднреА рдорд╛рдЙрдВрдЯреЗрдб рджрд┐рдЦрд╛рдПрдЧрд╛ (mounted) рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдЬреЛ рдбрд┐рд╕реНрдХ-рдирд┐рд╡рд╛рд╕реА рдФрд░ рдЧреИрд░-рдПрдирдПрдлрдПрд╕ рдирд╣реАрдВ рд╣реИрдВ, рдЬреЛ рдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрдВрдкреНрдпреВрдЯрд░реЛрдВ рдкрд░ рд╕рдЪ рд╣реИред рд╕реВрдЪреАрдмрджреНрдз рдорд╛рдЙрдВрдЯ рдореЗрдВ рд╕реЗ рдПрдХ (mounts) рд╡реАрдПрдлрдПрд╕ рдирд┐рд╕реНрд╕рдВрджреЗрд╣ рд╣реЛрдЧрд╛ /tmp, рд╣реИ рди?

рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо: рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ рдФрд░ рд╡реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ? рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

рднрдгреНрдбрд╛рд░рдг рддреЛ рд╕рднреА рдЬрд╛рдирддреЗ рд╣реИрдВ / tmp рднреМрддрд┐рдХ рдорд╛рдзреНрдпрдо рдкрд░ - рдкрд╛рдЧрд▓рдкрди! рд╕реНрд░реЛрдд.

рднрдВрдбрд╛рд░рдг рдХрд░рдирд╛ рдЕрд╡рд╛рдВрдЫрдиреАрдп рдХреНрдпреЛрдВ рд╣реИ? /tmp рднреМрддрд┐рдХ рдореАрдбрд┐рдпрд╛ рдкрд░? рдХреНрдпреЛрдВрдХрд┐ рдлрд╝рд╛рдЗрд▓реЗрдВ рдЕрдВрджрд░ рд╣реИрдВ /tmp рдЕрд╕реНрдерд╛рдпреА рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рд╕реНрдЯреЛрд░реЗрдЬ рдбрд┐рд╡рд╛рдЗрд╕ рдЙрд╕ рдореЗрдореЛрд░реА рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдзреАрдореЗ рд╣реЛрддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ tmpfs рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕реНрдореГрддрд┐ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рд╣реЛрдиреЗ рдкрд░ рднреМрддрд┐рдХ рдореАрдбрд┐рдпрд╛ рдХреЗ рдЦрд░рд╛рдм рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдЕрдзрд┐рдХ рд╣реЛрддреА рд╣реИред рдЕрдВрдд рдореЗрдВ, /tmp рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдЬрд╛рдирдХрд╛рд░реА рд╣реЛ рд╕рдХрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рд░реАрдмреВрдЯ рдкрд░ рдЙрдиреНрд╣реЗрдВ рдЧрд╛рдпрдм рдХрд░рдирд╛ рдПрдХ рдЖрд╡рд╢реНрдпрдХ рд╕реБрд╡рд┐рдзрд╛ рд╣реИред

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдХреБрдЫ рд▓рд┐рдирдХреНрд╕ рд╡рд┐рддрд░рдг рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕реНрдЯреЛрд░реЗрдЬ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ /tmp рдмрдирд╛рддреА рд╣реИрдВред рдЕрдЧрд░ рдЖрдкрдХреЗ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рднреА рдРрд╕рд╛ рд╣реБрдЖ рд╣реИ рддреЛ рдирд┐рд░рд╛рд╢ рди рд╣реЛрдВред рдХреБрдЫ рд╕рд░рд▓ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВ рдЖрд░реНрдХ рд╡рд┐рдХреАрдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдФрд░ рдЗрд╕ рдмрд╛рдд рд╕реЗ рдЕрд╡рдЧрдд рд░рд╣реЗрдВ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрд╡рдВрдЯрд┐рдд рдореЗрдореЛрд░реА tmpfs рдЕрдиреНрдп рдкреНрд░рдпреЛрдЬрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдкрд▓рдмреНрдз рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рд╡рд┐рд╢рд╛рд▓ tmpfs рдФрд░ рдЙрд╕ рдкрд░ рдмрдбрд╝реА рдлрд╝рд╛рдЗрд▓реЛрдВ рд╡рд╛рд▓рд╛ рд╕рд┐рд╕реНрдЯрдо рдореЗрдореЛрд░реА рд╕реЗ рдмрд╛рд╣рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдХреНрд░реИрд╢ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рдФрд░ рд╕рдВрдХреЗрдд: рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╕рдордп /etc/fstab, рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдпрд╣ рдПрдХ рдирдИ рд▓рд╛рдЗрди рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрдиреНрдпрдерд╛ рдЖрдкрдХрд╛ рд╕рд┐рд╕реНрдЯрдо рдмреВрдЯ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

/proc рдФрд░ /sys

рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд /tmp, рд╡реАрдПрдлрдПрд╕ (рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо) рдЬреЛ рд▓рд┐рдирдХреНрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рд╕реЗ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ /proc ╨╕ /sysред (/dev рд╕рд╛рдЭрд╛ рд╕реНрдореГрддрд┐ рдореЗрдВ рд░рд╣рддрд╛ рд╣реИ рдФрд░ рдирд╣реАрдВ рд╣реИ file_operations). рдпреЗ рджреЛ рдШрдЯрдХ рдХреНрдпреЛрдВ? рдЖрдЗрдП рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЧреМрд░ рдХрд░реЗрдВ.

procfs рдХрд░реНрдиреЗрд▓ рдФрд░ рдЙрд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рдореЙрдирд┐рдЯрд░ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдПрдХ рд╕реНрдиреИрдкрд╢реЙрдЯ рдмрдирд╛рддрд╛ рд╣реИ userspace. рдореЗрдВ /proc рдХрд░реНрдиреЗрд▓ рдЙрд╕рдХреЗ рдкрд╛рд╕ рдЙрдкрд▓рдмреНрдз рдЪреАрдЬрд╝реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд┐рдВрдЯ рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдЗрдВрдЯрд░рдкреНрдЯ, рд╡рд░реНрдЪреБрдЕрд▓ рдореЗрдореЛрд░реА рдФрд░ рд╢реЗрдбреНрдпреВрд▓рд░ред рдЕрд▓рд╛рд╡рд╛, /proc/sys рд╡рд╣ рд╕реНрдерд╛рди рд╣реИ рдЬрд╣рд╛рдВ рдкреИрд░рд╛рдореАрдЯрд░ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЧрдП рд╣реИрдВ sysctl, рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИ userspace. рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдФрд░ рдЖрдБрдХрдбрд╝реЗ рдХреИрдЯрд▓реЙрдЧ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ /proc/.

рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо: рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ рдФрд░ рд╡реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ? рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

рдпрд╣рд╛рдВ /proc/meminfo рдПрдХ рдЦрд╛рд▓реА рдлрд╝рд╛рдЗрд▓ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдлрд┐рд░ рднреА рдмрд╣реБрдореВрд▓реНрдп рдЬрд╛рдирдХрд╛рд░реА рд╣реИред

рд╡реНрдпрд╡рд╣рд╛рд░ /proc рдлрд╝рд╛рдЗрд▓реЗрдВ рджрд┐рдЦрд╛рддреА рд╣реИрдВ рдХрд┐ VFS рдбрд┐рд╕реНрдХ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХрд┐рддрдиреЗ рднрд┐рдиреНрди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдПрдХ рддрд░рдл, /proc/meminfo рдРрд╕реА рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬрд┐рд╕реЗ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ free. рджреВрд╕рд░реА рдУрд░, рдпрд╣ рдЦрд╛рд▓реА рд╣реИ! рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? рд╕реНрдерд┐рддрд┐ рд╢реАрд░реНрд╖рдХ рд╡рд╛рд▓реЗ рдкреНрд░рд╕рд┐рджреНрдз рд▓реЗрдЦ рдХреА рдпрд╛рдж рджрд┐рд▓рд╛рддреА рд╣реИ рдХреНрдпрд╛ рдЪрдВрджреНрд░рдорд╛ рддрдм рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рд╣реИ рдЬрдм рдЙрд╕реЗ рдХреЛрдИ рдирд╣реАрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реЛ? рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдФрд░ рдХреНрд╡рд╛рдВрдЯрдо рд╕рд┐рджреНрдзрд╛рдВрдд"1985 рдореЗрдВ рдХреЙрд░реНрдиреЗрд▓ рд╡рд┐рд╢реНрд╡рд╡рд┐рджреНрдпрд╛рд▓рдп рдХреЗ рднреМрддрд┐рдХреА рдкреНрд░реЛрдлреЗрд╕рд░ рдбреЗрд╡рд┐рдб рдорд░реНрдорд┐рди рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдЦрд┐рддред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдХрд░реНрдиреЗрд▓ рдореЗрдореЛрд░реА рдЖрдБрдХрдбрд╝реЗ рдПрдХрддреНрд░ рдХрд░рддрд╛ рд╣реИ /proc, рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ /proc рдЬрдм рдХреЛрдИ рдирд╣реАрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реЛ рддреЛ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИред рдЬреИрд╕рд╛ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ рдорд░реНрдорд┐рди, "рдореМрд▓рд┐рдХ рдХреНрд╡рд╛рдВрдЯрдо рд╕рд┐рджреНрдзрд╛рдВрдд рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рдорд╛рдк рдЖрдо рддреМрд░ рдкрд░ рдорд╛рдкреА рдЬрд╛ рд░рд╣реА рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рдореВрд▓реНрдп рдХреЛ рдкреНрд░рдХрдЯ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред" (рдФрд░ рдЪрдВрджреНрд░рдорд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреНрд░рд╢реНрди рдХреЛ рд╣реЛрдорд╡рд░реНрдХ рд╕рдордЭреЗрдВ!)
рдЦрд╛рд▓реАрдкрди рдирдЬрд░ рдЖ рд░рд╣рд╛ рд╣реИ procfs рдпрд╣ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡рд╣рд╛рдВ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдЧрддрд┐рд╢реАрд▓ рд╣реИред рдХреЗ рд╕рд╛рде рдереЛрдбрд╝реА рдЕрд▓рдЧ рд╕реНрдерд┐рддрд┐ sysfs. рдЖрдЗрдП рддреБрд▓рдирд╛ рдХрд░реЗрдВ рдХрд┐ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдмрд╛рдЗрдЯ рдЖрдХрд╛рд░ рдХреА рдХрд┐рддрдиреА рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реИрдВ /proc рдФрд░ /sys.

рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо: рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ рдФрд░ рд╡реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ? рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

Procfs рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╣реИ, рдЕрд░реНрдерд╛рддреН рдирд┐рд░реНрдпрд╛рддрд┐рдд рдХрд░реНрдиреЗрд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди, рдЬреЛ рдПрдХ рдЕрдкрд╡рд╛рдж рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдкреНрд░рддрд┐ рдмреВрдЯ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рджреВрд╕рд░реА рдУрд░, рдореЗрдВ /sys рдХрдИ рдмрдбрд╝реА рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХрдИ рдореЗрдореЛрд░реА рдХрд╛ рдкреВрд░рд╛ рдкреЗрдЬ рд▓реЗ рд▓реЗрддреА рд╣реИрдВред рдЖрдорддреМрд░ рдкрд░ рдлрд╝рд╛рдЗрд▓реЗрдВ sysfs рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рдХреА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдмрд┐рд▓реНрдХреБрд▓ рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдпрд╛ рд░реЗрдЦрд╛ рд╣реЛрддреА рд╣реИ /proc/meminfo.

рд▓рдХреНрд╖реНрдп sysfs - рдХрд░реНрдиреЗрд▓ рдЬреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ рдЙрд╕рдХреЗ рдкрдврд╝рдиреЗ/рд▓рд┐рдЦрдиреЗ рдХреЗ рдЧреБрдг рдкреНрд░рджрд╛рди рдХрд░реЗрдВ ┬лkobjects┬╗ рдЙрдкрдпреЛрдХреНрддрд╛ рд╕реНрдерд╛рди рдореЗрдВ. рдПрдХрдорд╛рддреНрд░ рд▓рдХреНрд╖реНрдп kobjects рд▓рд┐рдВрдХ рдХрд╛рдЙрдВрдЯрд┐рдВрдЧ рд╣реИ: рдЬрдм рдХрд┐рд╕реА рдХреЛрдмрдЬреЗрдХреНрдЯ рдХрд╛ рдЕрдВрддрд┐рдо рд▓рд┐рдВрдХ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рд┐рд╕реНрдЯрдо рдЙрд╕рд╕реЗ рдЬреБрдбрд╝реЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░ рджреЗрдЧрд╛ред рдлрд┐рд░ рднреА, /sys рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреНрд░рд╕рд┐рджреНрдз рдмрдирд╛рддрд╛ рд╣реИ "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрдерд╛рди рдХреЗ рд▓рд┐рдП рд╕реНрдерд┐рд░ рдПрдмреАрдЖрдИ" рдореВрд▓, рдЬреЛ рдХреЛрдИ рднреА рдХрднреА рднреА, рдХрд┐рд╕реА рднреА рдкрд░рд┐рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ "рддреЛрдбрд╝рдирд╛". рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ sysfs рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЗрдВ рд╕реНрдерд┐рд░ рд╣реИрдВ, рдЬреЛ рдЕрд╕реНрдерд┐рд░ рд╡рд╕реНрддреБрдУрдВ рдХреА рд╕рдВрджрд░реНрдн рдЧрдгрдирд╛ рдХреЗ рд╕рд╛рде рдЕрд╕рдВрдЧрдд рд╣реЛрдВрдЧреАред
рдХрд░реНрдиреЗрд▓ рдХреА рд╕реНрдерд┐рд░ рдПрдмреАрдЖрдИ рдЬреЛ рджрд┐рдЦрд╛рдИ рджреЗ рд╕рдХрддреА рд╣реИ рдЙрд╕реЗ рд╕реАрдорд┐рдд рдХрд░рддреА рд╣реИ /sys, рди рдХрд┐ рдЙрд╕ рд╡рд┐рд╢реЗрд╖ рдХреНрд╖рдг рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рдореМрдЬреВрдж рд╣реИред Sysfs рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рд╕реЗ рдпрд╣ рдЬрд╛рдирдХрд╛рд░реА рдорд┐рд▓рддреА рд╣реИ рдХрд┐ рдбрд┐рд╡рд╛рдЗрд╕, рдореЙрдбреНрдпреВрд▓, рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдЖрджрд┐ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИрдВред рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдпрд╛ рдкрдврд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ. рддрд╛рд░реНрдХрд┐рдХ рдирд┐рд╖реНрдХрд░реНрд╖ рдпрд╣ рд╣реИ рдХрд┐ procfs рднреА рдХрд░реНрдиреЗрд▓ рдХреЗ рд╕реНрдерд┐рд░ ABI рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд╣реАрдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдкреНрд░рд▓реЗрдЦрди.

рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо: рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ рдФрд░ рд╡реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ? рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

рдлрд╝рд╛рдЗрд▓реЗрдВ рдЕрдВрджрд░ sysfs рдкреНрд░рддреНрдпреЗрдХ рдЗрдХрд╛рдИ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реЗрдВ рдФрд░ рдпрд╣ рдкрдврд╝рдиреЗ рдпреЛрдЧреНрдп, рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп рдпрд╛ рджреЛрдиреЛрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдлрд╝рд╛рдЗрд▓ рдореЗрдВ "0" рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ SSD рдХреЛ рд╣рдЯрд╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ред

рдЖрдЗрдП рдЕрдиреБрд╡рд╛рдж рдХрд╛ рджреВрд╕рд░рд╛ рднрд╛рдЧ рдИрдмреАрдкреАрдПрдл рдФрд░ рдмреАрд╕реАрд╕реА рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡реАрдПрдлрдПрд╕ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреИрд╕реЗ рдХрд░реЗрдВ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░реЗрдВ, рдФрд░ рдЕрдм рд╣рдо рдЖрдкрдХреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдкрд░рдВрдкрд░рд╛рдЧрдд рд░реВрдк рд╕реЗ рдЖрдкрдХреЛ рдЖрдордВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рд╡реЗрдмрд┐рдирд╛рд░ рдЦреЛрд▓реЗрдВ, рдЬреЛ 9 рдЕрдкреНрд░реИрд▓ рдХреЛ рд╣рдорд╛рд░реЗ рд╢рд┐рдХреНрд╖рдХ рджреНрд╡рд╛рд░рд╛ рдЖрдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ - рд╡реНрд▓рд╛рджрд┐рдореАрд░ рдбреНрд░реЛрдЬрд╝рдбреЗрдЯреНрд╕реНрдХреА.

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ