แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜ Linux-แƒจแƒ˜: แƒ แƒแƒขแƒแƒ› แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ˜แƒกแƒ˜แƒœแƒ˜? แฒœแƒแƒฌแƒ˜แƒšแƒ˜ 1

แฒกแƒแƒšแƒแƒ›แƒ˜ แƒงแƒ•แƒ”แƒšแƒแƒก! แƒฉแƒ•แƒ”แƒœ แƒ•แƒแƒ’แƒ แƒซแƒ”แƒšแƒ”แƒ‘แƒ— แƒแƒฎแƒแƒšแƒ˜ แƒœแƒแƒ™แƒแƒ“แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒแƒก แƒ˜แƒ› แƒ™แƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒฃแƒ™แƒ•แƒ” แƒจแƒ”แƒ’แƒ˜แƒงแƒ•แƒแƒ แƒ“แƒแƒ— แƒ“แƒ แƒแƒฎแƒšแƒ แƒ’แƒ•แƒ”แƒฉแƒฅแƒแƒ แƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒ•แƒแƒชแƒฎแƒแƒ“แƒแƒ—, แƒ แƒแƒ› แƒ•แƒ˜แƒฌแƒงแƒ”แƒ‘แƒ— แƒ™แƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒแƒฎแƒแƒš แƒ™แƒแƒ›แƒžแƒšแƒ”แƒฅแƒขแƒก "แƒšแƒ˜แƒœแƒฃแƒฅแƒกแƒ˜แƒก แƒแƒ“แƒ›แƒ˜แƒœแƒ˜แƒกแƒขแƒ แƒแƒขแƒแƒ แƒ˜"แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒžแƒ แƒ˜แƒšแƒ˜แƒก แƒ‘แƒแƒšแƒแƒก แƒ“แƒแƒ˜แƒฌแƒงแƒ”แƒ‘แƒ. แƒแƒฎแƒแƒšแƒ˜ แƒžแƒฃแƒ‘แƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒ“แƒแƒ—แƒแƒ แƒ˜แƒฆแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒแƒ› แƒ›แƒแƒ•แƒšแƒ”แƒœแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒแƒ แƒ˜แƒ’แƒ˜แƒœแƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒกแƒแƒšแƒ˜แƒ— แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒฌแƒแƒ˜แƒ™แƒ˜แƒ—แƒฎแƒ”แƒ— แƒแƒฅ.

แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒ”แƒ แƒ—แƒ’แƒ•แƒแƒ แƒ˜ แƒฏแƒแƒ“แƒแƒกแƒœแƒฃแƒ แƒ˜ แƒแƒ‘แƒกแƒขแƒ แƒแƒฅแƒชแƒ˜แƒแƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช Linux-แƒ˜แƒก แƒคแƒ˜แƒšแƒแƒกแƒแƒคแƒ˜แƒแƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒแƒซแƒšแƒ”แƒ•แƒก แƒ—แƒฅแƒ•แƒแƒก, แƒ แƒแƒ› โ€žแƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒ˜แƒโ€œ.

แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜ Linux-แƒจแƒ˜: แƒ แƒแƒขแƒแƒ› แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ˜แƒกแƒ˜แƒœแƒ˜? แฒœแƒแƒฌแƒ˜แƒšแƒ˜ 1

แƒ แƒ แƒแƒ แƒ˜แƒก แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ? Linux-แƒ˜แƒก แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒ™แƒแƒœแƒขแƒ แƒ˜แƒ‘แƒฃแƒขแƒแƒ แƒ˜แƒกแƒ แƒ“แƒ แƒแƒ•แƒขแƒแƒ แƒ˜แƒก แƒกแƒ˜แƒขแƒงแƒ•แƒ”แƒ‘แƒ–แƒ” แƒ“แƒแƒงแƒ แƒ“แƒœแƒแƒ‘แƒ˜แƒ— แƒ แƒแƒ‘แƒ”แƒ แƒขแƒ แƒšแƒแƒ•แƒ, "แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ แƒแƒ แƒ˜แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ˜แƒ”แƒ แƒแƒ แƒฅแƒ˜แƒฃแƒšแƒ˜ แƒจแƒ”แƒœแƒแƒฎแƒ•แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒ˜แƒ แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜ แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—." แƒ แƒแƒ’แƒแƒ แƒช แƒแƒ  แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก, แƒ”แƒก แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ แƒ”แƒ แƒ—แƒœแƒแƒ˜แƒ แƒแƒ“ แƒ™แƒแƒ แƒ’แƒแƒ“ แƒจแƒ”แƒ”แƒคแƒ”แƒ แƒ”แƒ‘แƒ VFAT-แƒก (แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒœแƒแƒฌแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒชแƒฎแƒ แƒ˜แƒšแƒก), Git-แƒก แƒ“แƒ Cassandra (NoSQL แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒ). แƒ›แƒแƒจ, แƒ แƒ แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ•แƒก แƒ˜แƒกแƒ”แƒ— แƒ แƒแƒ›แƒ”แƒก, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ "แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ"?

แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒกแƒแƒคแƒฃแƒซแƒ•แƒšแƒ”แƒ‘แƒ˜

Linux-แƒ˜แƒก แƒ‘แƒ˜แƒ แƒ—แƒ•แƒก แƒแƒฅแƒ•แƒก แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒšแƒ˜ แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ”แƒ‘แƒ˜ แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒฉแƒแƒ˜แƒ—แƒ•แƒแƒšแƒแƒก แƒคแƒแƒ˜แƒšแƒฃแƒ  แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒ“. แƒ›แƒแƒœ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒœแƒแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒแƒก แƒ›แƒ”แƒ—แƒแƒ“แƒ”แƒ‘แƒ˜ open(), read() ะธ write() แƒ›แƒฃแƒ“แƒ›แƒ˜แƒ•แƒ˜ แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒกแƒแƒช แƒแƒฅแƒ•แƒ— แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜. แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ–แƒ” แƒแƒ แƒ˜แƒ”แƒœแƒขแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ—แƒ•แƒแƒšแƒกแƒแƒ–แƒ แƒ˜แƒกแƒ˜แƒ— แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ, แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜ แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ•แƒก แƒ–แƒแƒ’แƒแƒ“ แƒคแƒแƒ˜แƒšแƒฃแƒ  แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒก, แƒ แƒแƒ’แƒแƒ แƒช แƒแƒ‘แƒกแƒขแƒ แƒแƒฅแƒขแƒฃแƒš แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒก แƒ“แƒ แƒ”แƒก แƒกแƒแƒ›แƒ˜ แƒ“แƒ˜แƒ“แƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ แƒ’แƒแƒœแƒ˜แƒฎแƒ˜แƒšแƒ”แƒ‘แƒ "แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒแƒ“" แƒ“แƒ แƒแƒ  แƒแƒฅแƒ•แƒก แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜ แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ. แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒแƒ“, แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒแƒก แƒ”แƒฌแƒแƒ“แƒ”แƒ‘แƒ แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ (VFS).

แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜ Linux-แƒจแƒ˜: แƒ แƒแƒขแƒแƒ› แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ˜แƒกแƒ˜แƒœแƒ˜? แฒœแƒแƒฌแƒ˜แƒšแƒ˜ 1

แƒ—แƒฃ แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ’แƒแƒ•แƒฎแƒกแƒœแƒแƒ—, แƒฌแƒแƒ•แƒ˜แƒ™แƒ˜แƒ—แƒฎแƒแƒ— แƒ“แƒ แƒฉแƒแƒ•แƒฌแƒ”แƒ แƒแƒ— แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒ–แƒ”, แƒ›แƒแƒจแƒ˜แƒœ แƒ”แƒก แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒ˜ แƒ’แƒแƒœแƒ˜แƒฎแƒ˜แƒšแƒ”แƒ‘แƒ แƒคแƒแƒ˜แƒšแƒแƒ“, แƒ แƒแƒ’แƒแƒ แƒช แƒ”แƒก แƒ–แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜ แƒ™แƒแƒœแƒกแƒแƒšแƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜แƒ“แƒแƒœ แƒฉแƒแƒœแƒก.
VFS แƒคแƒ”แƒœแƒแƒ›แƒ”แƒœแƒ˜ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒฎแƒแƒ–แƒก แƒฃแƒกแƒ•แƒแƒ›แƒก Unix-แƒ˜แƒก แƒ›แƒกแƒ’แƒแƒ•แƒก แƒ“แƒแƒ™แƒ•แƒ˜แƒ แƒ•แƒ”แƒ‘แƒแƒก, แƒ แƒแƒ› โ€žแƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒ˜แƒโ€œ. แƒ“แƒแƒคแƒ˜แƒฅแƒ แƒ“แƒ˜แƒ—, แƒ แƒแƒ›แƒ“แƒ”แƒœแƒแƒ“ แƒฃแƒชแƒœแƒแƒฃแƒ แƒ˜แƒ, แƒ แƒแƒ› แƒ”แƒก แƒžแƒแƒขแƒแƒ แƒ /dev/console แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ แƒ’แƒ•แƒ˜แƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒกแƒ˜แƒœแƒแƒ›แƒ“แƒ•แƒ˜แƒšแƒ”แƒจแƒ˜ แƒ™แƒแƒœแƒกแƒแƒšแƒ˜. แƒกแƒฃแƒ แƒแƒ—แƒ–แƒ” แƒœแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜แƒ แƒ˜แƒœแƒขแƒ”แƒ แƒแƒฅแƒขแƒ˜แƒฃแƒšแƒ˜ Bash แƒกแƒ”แƒกแƒ˜แƒ. แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒ˜แƒก แƒ’แƒแƒ’แƒ–แƒแƒ•แƒœแƒ แƒ™แƒแƒœแƒกแƒแƒšแƒจแƒ˜ (แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ™แƒแƒœแƒกแƒแƒšแƒ˜แƒก แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ) แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒ›แƒแƒก แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ  แƒ”แƒ™แƒ แƒแƒœแƒ–แƒ”. VFS-แƒก แƒกแƒฎแƒ•แƒ, แƒ™แƒ˜แƒ“แƒ”แƒ• แƒฃแƒคแƒ แƒ แƒฃแƒชแƒœแƒแƒฃแƒ แƒ˜ แƒ—แƒ•แƒ˜แƒกแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒแƒฅแƒ•แƒก. แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒ›แƒแƒซแƒ”แƒ‘แƒœแƒแƒ— แƒ›แƒแƒก.

แƒœแƒแƒชแƒœแƒแƒ‘ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒก, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ ext4, NFS แƒ“แƒ /proc, แƒแƒฅแƒ•แƒ— แƒกแƒแƒ›แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ C แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒแƒจแƒ˜ แƒ”.แƒฌ. file_operations. แƒ’แƒแƒ แƒ“แƒ แƒแƒ›แƒ˜แƒกแƒ, แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒšแƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒก แƒ“แƒ แƒฎแƒ”แƒšแƒแƒฎแƒšแƒ แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ•แƒก VFS แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒœแƒ˜แƒ แƒ”แƒ‘แƒแƒก แƒœแƒแƒชแƒœแƒแƒ‘แƒ˜ แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ–แƒ” แƒแƒ แƒ˜แƒ”แƒœแƒขแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ’แƒ–แƒ˜แƒ—. แƒ แƒแƒ’แƒแƒ แƒช แƒ แƒแƒ‘แƒ”แƒ แƒข แƒšแƒแƒ•แƒ˜ แƒแƒฆแƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, VFS แƒแƒ‘แƒกแƒขแƒ แƒแƒฅแƒชแƒ˜แƒ Linux-แƒ˜แƒก แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ”แƒ‘แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒแƒซแƒšแƒ”แƒ•แƒก แƒ“แƒแƒฃแƒคแƒ˜แƒฅแƒ แƒ”แƒ‘แƒšแƒแƒ“ แƒ“แƒแƒแƒ™แƒแƒžแƒ˜แƒ แƒแƒœ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜ แƒ›แƒ”แƒกแƒแƒ›แƒ” แƒ›แƒฎแƒแƒ แƒ˜แƒก แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒฃแƒš แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒจแƒ˜ แƒแƒœ แƒแƒ‘แƒกแƒขแƒ แƒแƒฅแƒขแƒฃแƒš แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒ”แƒ‘แƒ–แƒ”, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ แƒ›แƒ˜แƒšแƒ”แƒ‘แƒ˜, แƒ›แƒแƒ—แƒ˜ แƒจแƒ˜แƒ“แƒ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒคแƒแƒ แƒ›แƒแƒขแƒ–แƒ” แƒคแƒ˜แƒฅแƒ แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”. แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒ›แƒฎแƒแƒ แƒ”แƒก (แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒกแƒ˜แƒ•แƒ แƒชแƒ”แƒจแƒ˜), แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒฃแƒ แƒ˜ แƒ–แƒแƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒžแƒ แƒแƒชแƒ”แƒกแƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒ“แƒแƒแƒ™แƒแƒžแƒ˜แƒ แƒแƒก แƒคแƒแƒ˜แƒšแƒ˜แƒ“แƒแƒœ แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ”แƒ‘แƒจแƒ˜ แƒ›แƒ”แƒ—แƒแƒ“แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— read() แƒ”แƒ แƒ—แƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ แƒ“แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ— แƒ›แƒ”แƒ—แƒแƒ“แƒ˜ write () แƒกแƒฎแƒ•แƒ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ’แƒแƒ›แƒแƒกแƒแƒขแƒแƒœแƒแƒ“.

แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ›แƒ˜แƒ”แƒ™แƒฃแƒ—แƒ•แƒœแƒ”แƒ‘แƒ แƒกแƒแƒ‘แƒแƒ–แƒ˜แƒกแƒ VFS แƒขแƒ˜แƒžแƒ”แƒ‘แƒก, แƒแƒ แƒ˜แƒก แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒจแƒ˜ fs/*.c แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒฌแƒงแƒแƒ แƒแƒก แƒ™แƒแƒ“แƒ˜, แƒฎแƒแƒšแƒ แƒฅแƒ•แƒ”แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒ”แƒ‘แƒ˜ fs/ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒš แƒคแƒแƒ˜แƒšแƒฃแƒ  แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒก. แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒ”แƒ‘แƒก, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ cgroups, /dev ะธ tmpfs, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒกแƒแƒญแƒ˜แƒ แƒแƒ แƒฉแƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒจแƒ˜ แƒ“แƒ แƒแƒ›แƒ˜แƒขแƒแƒ› แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒฃแƒšแƒ˜แƒ แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒฅแƒ•แƒ”แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒจแƒ˜ init/. แƒจแƒ”แƒแƒ›แƒฉแƒœแƒ˜แƒ” แƒ แƒแƒ› cgroups, /dev ะธ tmpfs แƒแƒ  แƒ“แƒแƒ•แƒแƒ แƒฅแƒ•แƒแƒ— "แƒ“แƒ˜แƒ“แƒ˜ แƒกแƒแƒ›แƒ˜" แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ file_operations, แƒ›แƒแƒ’แƒ แƒแƒ› แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ  แƒฌแƒแƒ˜แƒ™แƒ˜แƒ—แƒฎแƒ”แƒ— แƒ“แƒ แƒฉแƒแƒฌแƒ”แƒ แƒ”แƒ— แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒจแƒ˜.
แƒฅแƒ•แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜ แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ แƒ’แƒ•แƒ˜แƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒฌแƒ•แƒ“แƒ”แƒ‘แƒ แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒกแƒ˜แƒ•แƒ แƒชแƒ” Linux แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ–แƒ” แƒ“แƒแƒ›แƒแƒœแƒขแƒแƒŸแƒ”แƒ‘แƒฃแƒš แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒขแƒ˜แƒžแƒ˜แƒก แƒคแƒแƒ˜แƒšแƒฃแƒ  แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒก. แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ”แƒ‘แƒ˜ แƒแƒ  แƒแƒ แƒ˜แƒก แƒœแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜ pipes, dmesg ะธ POSIX clocks, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒแƒกแƒ”แƒ•แƒ” แƒแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ”แƒœ แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒแƒก file_operations, แƒฌแƒ•แƒ“แƒแƒ›แƒ VFS แƒคแƒ”แƒœแƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—.

แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜ Linux-แƒจแƒ˜: แƒ แƒแƒขแƒแƒ› แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ˜แƒกแƒ˜แƒœแƒ˜? แฒœแƒแƒฌแƒ˜แƒšแƒ˜ 1

VFS แƒแƒ แƒ˜แƒก "แƒจแƒ”แƒคแƒฃแƒ—แƒ•แƒ˜แƒก แƒคแƒ”แƒœแƒ" แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒฃแƒ  แƒ–แƒแƒ แƒ”แƒ‘แƒกแƒ แƒ“แƒ แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒšแƒ˜ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ”แƒ‘แƒก แƒจแƒแƒ แƒ˜แƒก file_operations, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ ext4 ะธ procfs. แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜ file_operations แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒฃแƒ แƒ—แƒ˜แƒ”แƒ แƒ—แƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ˜แƒก แƒ“แƒ แƒแƒ˜แƒ•แƒ”แƒ แƒ”แƒ‘แƒ—แƒแƒœ แƒแƒœ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒก แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ”แƒ‘แƒ—แƒแƒœ. tmpfs, devtmpfs ะธ cgroups แƒแƒ  แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— file_operations, แƒ›แƒแƒ’แƒ แƒแƒ› แƒฃแƒจแƒฃแƒแƒšแƒแƒ“ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒ–แƒ” แƒฌแƒ•แƒ“แƒแƒ›แƒ.
VFS-แƒ˜แƒก แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒ แƒ˜แƒซแƒšแƒ”แƒ•แƒ แƒ™แƒแƒ“แƒ˜แƒก แƒฎแƒ”แƒšแƒแƒฎแƒšแƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒแƒก, แƒ แƒแƒ“แƒ’แƒแƒœ แƒคแƒแƒ˜แƒšแƒฃแƒ  แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒ›แƒ”แƒ—แƒแƒ“แƒ”แƒ‘แƒ˜ แƒแƒ  แƒฃแƒœแƒ“แƒ แƒ’แƒแƒœแƒ›แƒ”แƒแƒ แƒ“แƒ”แƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒขแƒ˜แƒžแƒ˜แƒก แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ . แƒ™แƒแƒ“แƒ˜แƒก แƒฎแƒ”แƒšแƒแƒฎแƒแƒšแƒ˜ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒžแƒ แƒแƒฅแƒขแƒ˜แƒ™แƒแƒ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ˜แƒก แƒ˜แƒœแƒŸแƒ˜แƒœแƒ แƒ”แƒ‘แƒก แƒจแƒแƒ แƒ˜แƒก! แƒ—แƒฃแƒ›แƒชแƒ, แƒ—แƒฃ แƒ›แƒ แƒแƒ•แƒแƒšแƒฏแƒ”แƒ แƒแƒ“แƒ˜ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒ“แƒ˜ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒกแƒ”แƒ แƒ˜แƒแƒ–แƒฃแƒšแƒ˜ แƒจแƒ”แƒชแƒ“แƒแƒ›แƒ”แƒ‘แƒ˜, แƒงแƒ•แƒ”แƒšแƒ แƒ˜แƒ›แƒžแƒšแƒ”แƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒ”แƒ›แƒ™แƒ•แƒ˜แƒ“แƒ แƒ”แƒแƒ‘แƒ˜แƒ— แƒ˜แƒฆแƒ”แƒ‘แƒก แƒกแƒแƒ”แƒ แƒ—แƒ แƒ›แƒ”แƒ—แƒแƒ“แƒ”แƒ‘แƒก, แƒ’แƒแƒœแƒ˜แƒชแƒ“แƒ˜แƒก แƒ›แƒแƒ—แƒ’แƒแƒœ.

/tmp: แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒ›แƒ˜แƒœแƒ˜แƒจแƒœแƒ”แƒ‘แƒ

แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒ’แƒ–แƒ แƒ˜แƒ›แƒ˜แƒก แƒ“แƒแƒกแƒแƒ“แƒ’แƒ”แƒœแƒแƒ“, แƒ แƒแƒ› VFS แƒแƒ แƒ˜แƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒจแƒ˜ แƒแƒ แƒ˜แƒก แƒแƒ™แƒ แƒ”แƒคแƒ mount | grep -v sd | grep -v :/, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ“แƒแƒ›แƒแƒœแƒขแƒแƒŸแƒ”แƒ‘แƒฃแƒšแƒก (mounted) แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒแƒ  แƒแƒ แƒ˜แƒก แƒ“แƒ˜แƒกแƒ™แƒ˜แƒก แƒ แƒ”แƒ–แƒ˜แƒ“แƒ”แƒœแƒขแƒ˜ แƒ“แƒ แƒแƒ แƒ NFS, แƒ แƒแƒช แƒแƒกแƒ”แƒ แƒฃแƒ›แƒ”แƒขแƒ”แƒก แƒ™แƒแƒ›แƒžแƒ˜แƒฃแƒขแƒ”แƒ แƒ”แƒ‘แƒ–แƒ”. แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒฉแƒแƒ›แƒแƒ—แƒ•แƒšแƒ˜แƒšแƒ˜ แƒกแƒแƒ›แƒแƒ’แƒ แƒ˜ (mounts) VFS แƒฃแƒ“แƒแƒ•แƒแƒ“ /tmp, แƒแƒ แƒ?

แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜ Linux-แƒจแƒ˜: แƒ แƒแƒขแƒแƒ› แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ˜แƒกแƒ˜แƒœแƒ˜? แฒœแƒแƒฌแƒ˜แƒšแƒ˜ 1

แƒงแƒ•แƒ”แƒšแƒแƒ› แƒ˜แƒชแƒ˜แƒก แƒ”แƒก แƒกแƒแƒชแƒแƒ•แƒ˜ / tmp แƒคแƒ˜แƒ–แƒ˜แƒ™แƒฃแƒ  แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ”แƒ‘แƒ–แƒ” - แƒกแƒ˜แƒ’แƒ˜แƒŸแƒ”! แƒฌแƒงแƒแƒ แƒ.

แƒ แƒแƒขแƒแƒ› แƒแƒ แƒ˜แƒก แƒแƒ แƒแƒกแƒแƒกแƒฃแƒ แƒ•แƒ”แƒšแƒ˜ แƒจแƒ”แƒœแƒแƒฎแƒ•แƒ /tmp แƒคแƒ˜แƒ–แƒ˜แƒ™แƒฃแƒ  แƒ›แƒ”แƒ“แƒ˜แƒแƒ–แƒ”? แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒ, แƒ แƒแƒ› แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜ /tmp แƒ“แƒ แƒแƒ”แƒ‘แƒ˜แƒ—แƒ˜แƒ แƒ“แƒ แƒจแƒ”แƒœแƒแƒฎแƒ•แƒ˜แƒก แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜ แƒฃแƒคแƒ แƒ แƒœแƒ”แƒšแƒ˜แƒ แƒ•แƒ˜แƒ“แƒ แƒ” แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ, แƒกแƒแƒ“แƒแƒช แƒ˜แƒฅแƒ›แƒœแƒ”แƒ‘แƒ tmpfs. แƒฃแƒคแƒ แƒ แƒ›แƒ”แƒขแƒ˜แƒช, แƒคแƒ˜แƒ–แƒ˜แƒ™แƒฃแƒ แƒ˜ แƒ›แƒ”แƒ“แƒ˜แƒ แƒฃแƒคแƒ แƒ แƒ›แƒ’แƒ แƒซแƒœแƒแƒ‘แƒ˜แƒแƒ แƒ”แƒ แƒแƒชแƒ•แƒ˜แƒแƒ— แƒ’แƒแƒ“แƒแƒฌแƒ”แƒ แƒ˜แƒกแƒแƒก, แƒ•แƒ˜แƒ“แƒ แƒ” แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ. แƒ“แƒแƒ‘แƒแƒšแƒแƒก, แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜ /tmp แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒ“แƒ”แƒก แƒ›แƒ’แƒ แƒซแƒœแƒแƒ‘แƒ˜แƒแƒ แƒ” แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒแƒก, แƒแƒ›แƒ˜แƒขแƒแƒ› แƒ›แƒแƒ—แƒ˜ แƒ’แƒแƒฅแƒ แƒแƒ‘แƒ แƒงแƒแƒ•แƒ”แƒšแƒ˜ แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒกแƒแƒก แƒแƒฃแƒชแƒ˜แƒšแƒ”แƒ‘แƒ”แƒšแƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒ.

แƒกแƒแƒ›แƒฌแƒฃแƒฎแƒแƒ แƒแƒ“, แƒšแƒ˜แƒœแƒฃแƒฅแƒกแƒ˜แƒก แƒ’แƒแƒœแƒแƒฌแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ˜แƒก แƒ–แƒแƒ’แƒ˜แƒ”แƒ แƒ—แƒ˜ แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒแƒ“ แƒฅแƒ›แƒœแƒ˜แƒก /tmp แƒจแƒ”แƒœแƒแƒฎแƒ•แƒ˜แƒก แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒแƒก. แƒแƒ  แƒ“แƒแƒ˜แƒ“แƒแƒ แƒ“แƒแƒ—, แƒ—แƒฃ แƒ”แƒก แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒกแƒแƒช แƒ“แƒแƒ”แƒ›แƒแƒ แƒ—แƒ. แƒ›แƒ˜แƒฐแƒงแƒ”แƒ•แƒ˜แƒ— แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ›แƒแƒ แƒขแƒ˜แƒ• แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒแƒก แƒ•แƒ˜แƒ™แƒ˜แƒžแƒ”แƒ“แƒ˜แƒแƒแƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒฌแƒแƒ แƒ”แƒ‘แƒ แƒ“แƒ แƒ˜แƒชแƒแƒ“แƒ”แƒ—, แƒ แƒแƒ› แƒ’แƒแƒ›แƒแƒงแƒแƒคแƒ˜แƒšแƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ tmpfs แƒกแƒฎแƒ•แƒ แƒ›แƒ˜แƒ–แƒœแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ›แƒ˜แƒฃแƒฌแƒ•แƒ“แƒแƒ›แƒ”แƒšแƒ˜ แƒฎแƒ“แƒ”แƒ‘แƒ. แƒกแƒฎแƒ•แƒ แƒกแƒ˜แƒขแƒงแƒ•แƒ”แƒ‘แƒ˜แƒ— แƒ แƒแƒ› แƒ•แƒ—แƒฅแƒ•แƒแƒ—, แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒก, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒแƒฅแƒ•แƒก แƒ’แƒ˜แƒ’แƒแƒœแƒขแƒฃแƒ แƒ˜ tmpfs แƒ“แƒ แƒ›แƒแƒกแƒ–แƒ” แƒ“แƒ˜แƒ“แƒ˜ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜, แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒแƒ›แƒแƒ˜แƒฌแƒฃแƒ แƒแƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒ“แƒ แƒ“แƒแƒ–แƒ˜แƒแƒœแƒ“แƒ”แƒก. แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ”แƒ แƒ—แƒ˜ แƒ›แƒ˜แƒœแƒ˜แƒจแƒœแƒ”แƒ‘แƒ: แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒ แƒ”แƒ“แƒแƒฅแƒขแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒกแƒแƒก /etc/fstab, แƒ’แƒแƒฎแƒกแƒแƒ•แƒ“แƒ”แƒ—, แƒ แƒแƒ› แƒ˜แƒก แƒฃแƒœแƒ“แƒ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ“แƒ”แƒก แƒแƒฎแƒแƒšแƒ˜ แƒฎแƒแƒ–แƒ˜แƒ—, แƒฌแƒ˜แƒœแƒแƒแƒฆแƒ›แƒ“แƒ”แƒ’ แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ แƒแƒ  แƒฉแƒแƒ˜แƒขแƒ•แƒ˜แƒ แƒ—แƒ”แƒ‘แƒ.

/proc แƒ“แƒ /sys

แƒ’แƒแƒ แƒ“แƒ แƒแƒ›แƒ˜แƒกแƒ /tmp, VFS (แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜), แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒ›แƒ”แƒขแƒแƒ“ แƒ˜แƒชแƒœแƒแƒ‘แƒ”แƒœ Linux-แƒ˜แƒก แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ”แƒ‘แƒก /proc ะธ /sys. (/dev แƒชแƒฎแƒแƒ•แƒ แƒแƒ‘แƒก แƒกแƒแƒ”แƒ แƒ—แƒ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒจแƒ˜ แƒ“แƒ แƒแƒ  แƒแƒฅแƒ•แƒก file_operations). แƒ แƒแƒขแƒแƒ› แƒ”แƒก แƒแƒ แƒ˜ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜? แƒ›แƒแƒ“แƒ˜แƒ— แƒจแƒ”แƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒแƒ› แƒกแƒแƒ™แƒ˜แƒ—แƒฎแƒก.

procfs แƒฅแƒ›แƒœแƒ˜แƒก แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒ˜แƒ› แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒ˜แƒก แƒกแƒฃแƒ แƒแƒ—แƒก, แƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒกแƒแƒช แƒ›แƒแƒก แƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ‘แƒก userspace. In /proc แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜ แƒ‘แƒ”แƒญแƒ“แƒแƒ•แƒก แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒแƒก แƒ˜แƒ›แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘, แƒ—แƒฃ แƒ แƒ แƒแƒ แƒ˜แƒก แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ แƒจแƒ”แƒคแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒ‘แƒ˜, แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒ“แƒ แƒ’แƒ แƒแƒคแƒ˜แƒ™แƒ˜. แƒ’แƒแƒ แƒ“แƒ แƒแƒ›แƒ˜แƒกแƒ, /proc/sys แƒแƒ แƒ˜แƒก แƒแƒ“แƒ’แƒ˜แƒšแƒ˜, แƒกแƒแƒ“แƒแƒช แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒ— sysctl, แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜ userspace. แƒ˜แƒœแƒ“แƒ˜แƒ•แƒ˜แƒ“แƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒ˜แƒก แƒกแƒขแƒแƒขแƒฃแƒกแƒ˜ แƒ“แƒ แƒกแƒขแƒแƒขแƒ˜แƒกแƒขแƒ˜แƒ™แƒ แƒœแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜แƒ แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒจแƒ˜ /proc/.

แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜ Linux-แƒจแƒ˜: แƒ แƒแƒขแƒแƒ› แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ˜แƒกแƒ˜แƒœแƒ˜? แฒœแƒแƒฌแƒ˜แƒšแƒ˜ 1

แƒแƒฅ /proc/meminfo แƒแƒ แƒ˜แƒก แƒชแƒแƒ แƒ˜แƒ”แƒšแƒ˜ แƒคแƒแƒ˜แƒšแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒแƒ˜แƒœแƒช แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒฆแƒ˜แƒ แƒ”แƒ‘แƒฃแƒš แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒแƒก.

แƒฅแƒชแƒ”แƒ•แƒ /proc แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜ แƒ’แƒ•แƒ˜แƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก, แƒ—แƒฃ แƒ แƒแƒ›แƒ“แƒ”แƒœแƒแƒ“ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ˜แƒงแƒแƒก VFS แƒ“แƒ˜แƒกแƒ™แƒ˜แƒก แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜. แƒ”แƒ แƒ— แƒ›แƒฎแƒแƒ แƒ”แƒก, /proc/meminfo แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒแƒก, แƒ แƒแƒ›แƒšแƒ˜แƒก แƒœแƒแƒฎแƒ•แƒแƒช แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒ— free. แƒ›แƒ”แƒแƒ แƒ”แƒก แƒ›แƒฎแƒ แƒ˜แƒ•, แƒชแƒแƒ แƒ˜แƒ”แƒšแƒ˜แƒ! แฒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก? แƒกแƒ˜แƒขแƒฃแƒแƒชแƒ˜แƒ แƒ›แƒแƒ’แƒ•แƒแƒ’แƒแƒœแƒ”แƒ‘แƒก แƒชแƒœแƒแƒ‘แƒ˜แƒš แƒกแƒขแƒแƒขแƒ˜แƒแƒก แƒกแƒแƒฎแƒ”แƒšแƒฌแƒแƒ“แƒ”แƒ‘แƒ˜แƒ— แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒ—แƒฃ แƒแƒ แƒ แƒ›แƒ—แƒ•แƒแƒ แƒ”, แƒ แƒแƒชแƒ แƒ›แƒแƒก แƒแƒ แƒแƒ•แƒ˜แƒœ แƒฃแƒงแƒฃแƒ แƒ”แƒ‘แƒก? แƒ แƒ”แƒแƒšแƒแƒ‘แƒ แƒ“แƒ แƒ™แƒ•แƒแƒœแƒขแƒฃแƒ แƒ˜ แƒ—แƒ”แƒแƒ แƒ˜แƒ"แƒ“แƒแƒฌแƒ”แƒ แƒ แƒ™แƒแƒ แƒœแƒ”แƒšแƒ˜แƒก แƒฃแƒœแƒ˜แƒ•แƒ”แƒ แƒกแƒ˜แƒขแƒ”แƒขแƒ˜แƒก แƒคแƒ˜แƒ–แƒ˜แƒ™แƒ˜แƒก แƒžแƒ แƒแƒคแƒ”แƒกแƒแƒ แƒ›แƒ แƒ“แƒ”แƒ•แƒ˜แƒ“ แƒ›แƒ”แƒ แƒ›แƒ˜แƒœแƒ›แƒ 1985 แƒฌแƒ”แƒšแƒก. แƒคแƒแƒฅแƒขแƒ˜แƒ, แƒ แƒแƒ› แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜ แƒแƒ’แƒ แƒแƒ•แƒ”แƒ‘แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒกแƒขแƒแƒขแƒ˜แƒกแƒขแƒ˜แƒ™แƒแƒก แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ˜แƒก แƒ›แƒ˜แƒฆแƒ”แƒ‘แƒ˜แƒกแƒแƒก /procแƒ“แƒ แƒ แƒ”แƒแƒšแƒฃแƒ แƒแƒ“ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒจแƒ˜ /proc แƒแƒ แƒแƒคแƒ”แƒ แƒ˜แƒ, แƒ แƒแƒชแƒ แƒแƒ แƒแƒ•แƒ˜แƒœ แƒฃแƒงแƒฃแƒ แƒ”แƒ‘แƒก. แƒ แƒแƒ’แƒแƒ แƒช แƒ˜แƒ—แƒฅแƒ•แƒ แƒ›แƒ”แƒ แƒ›แƒ˜แƒœแƒ˜, "แƒคแƒฃแƒœแƒ“แƒแƒ›แƒ”แƒœแƒขแƒฃแƒ แƒ˜ แƒ™แƒ•แƒแƒœแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒฅแƒขแƒ แƒ˜แƒœแƒ แƒแƒ›แƒ‘แƒแƒ‘แƒก, แƒ แƒแƒ› แƒ’แƒแƒ–แƒแƒ›แƒ•แƒ แƒ–แƒแƒ’แƒแƒ“แƒแƒ“ แƒแƒ  แƒแƒ•แƒšแƒ”แƒœแƒก แƒ’แƒแƒกแƒแƒ–แƒแƒ›แƒ˜ แƒฅแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒฌแƒ˜แƒœแƒแƒกแƒฌแƒแƒ  แƒแƒ แƒกแƒ”แƒ‘แƒฃแƒš แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒแƒก." (แƒ“แƒ แƒ›แƒ—แƒ•แƒแƒ แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒจแƒ”แƒ™แƒ˜แƒ—แƒฎแƒ•แƒ แƒกแƒแƒจแƒ˜แƒœแƒแƒ แƒ“แƒแƒ•แƒแƒšแƒ”แƒ‘แƒแƒ“ แƒ›แƒ˜แƒ˜แƒฉแƒœแƒ˜แƒ”!)
แƒ›แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒกแƒ˜แƒชแƒแƒ แƒ˜แƒ”แƒšแƒ” procfs แƒแƒ–แƒ แƒ˜ แƒแƒฅแƒ•แƒก, แƒ แƒแƒ“แƒ’แƒแƒœ แƒ˜แƒฅ แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ แƒ“แƒ˜แƒœแƒแƒ›แƒ˜แƒฃแƒ แƒ˜แƒ. แƒแƒ“แƒœแƒแƒ• แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒ˜แƒขแƒฃแƒแƒชแƒ˜แƒ sysfs. แƒ›แƒแƒ“แƒ˜แƒ— แƒจแƒ”แƒ•แƒแƒ“แƒแƒ แƒแƒ— แƒ แƒแƒ›แƒ“แƒ”แƒœ แƒคแƒแƒ˜แƒšแƒจแƒ˜แƒ แƒ›แƒ˜แƒœแƒ˜แƒ›แƒฃแƒ› แƒ”แƒ แƒ—แƒ˜ แƒ‘แƒแƒ˜แƒขแƒ˜แƒก แƒ–แƒแƒ›แƒ /proc แƒ“แƒ /sys.

แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜ Linux-แƒจแƒ˜: แƒ แƒแƒขแƒแƒ› แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ˜แƒกแƒ˜แƒœแƒ˜? แฒœแƒแƒฌแƒ˜แƒšแƒ˜ 1

Procfs แƒแƒฅแƒ•แƒก แƒ”แƒ แƒ—แƒ˜ แƒคแƒแƒ˜แƒšแƒ˜, แƒ™แƒ”แƒ แƒซแƒแƒ“ แƒ”แƒฅแƒกแƒžแƒแƒ แƒขแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ, แƒ แƒแƒช แƒ’แƒแƒ›แƒแƒœแƒแƒ™แƒšแƒ˜แƒกแƒ˜แƒ, แƒ แƒแƒ“แƒ’แƒแƒœ แƒ›แƒ˜แƒกแƒ˜ แƒ’แƒ”แƒœแƒ”แƒ แƒ˜แƒ แƒ”แƒ‘แƒ แƒกแƒแƒญแƒ˜แƒ แƒแƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ”แƒ แƒ—แƒฎแƒ”แƒš แƒฉแƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ›แƒ”แƒแƒ แƒ”แƒก แƒ›แƒฎแƒ แƒ˜แƒ•, แƒจแƒ˜ /sys แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒ‘แƒ”แƒ•แƒ แƒ˜ แƒฃแƒคแƒ แƒ แƒ“แƒ˜แƒ“แƒ˜ แƒคแƒแƒ˜แƒšแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ—แƒแƒ’แƒแƒœ แƒ‘แƒ”แƒ•แƒ แƒ˜ แƒ˜แƒ™แƒแƒ•แƒ”แƒ‘แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ—แƒ”แƒš แƒ’แƒ•แƒ”แƒ แƒ“แƒก. แƒ แƒแƒ’แƒแƒ แƒช แƒฌแƒ”แƒกแƒ˜, แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜ sysfs แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ–แƒฃแƒกแƒขแƒแƒ“ แƒ”แƒ แƒ— แƒ แƒ˜แƒชแƒฎแƒ•แƒก แƒแƒœ แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒก, แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒ˜แƒ— แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒฌแƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒ˜แƒก แƒจแƒ”แƒ“แƒ”แƒ’แƒแƒ“ แƒ›แƒ˜แƒฆแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ˜แƒก แƒชแƒฎแƒ แƒ˜แƒšแƒ”แƒ‘แƒ˜แƒกแƒ’แƒแƒœ, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ /proc/meminfo.

แƒ›แƒ˜แƒ–แƒแƒœแƒ˜ sysfs - แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒก แƒฌแƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒ˜แƒก/แƒฉแƒแƒฌแƒ”แƒ แƒ˜แƒก แƒ—แƒ•แƒ˜แƒกแƒ”แƒ‘แƒ”แƒ‘แƒ˜, แƒ แƒแƒกแƒแƒช แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜ แƒฃแƒฌแƒแƒ“แƒ”แƒ‘แƒก ยซkobjectsยป แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒกแƒ˜แƒ•แƒ แƒชแƒ”แƒจแƒ˜. แƒ”แƒ แƒ—แƒแƒ“แƒ”แƒ แƒ—แƒ˜ แƒ›แƒ˜แƒ–แƒแƒœแƒ˜ kobjects แƒแƒ แƒ˜แƒก แƒ‘แƒ›แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒ—แƒ•แƒšแƒ: แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ™แƒแƒ‘แƒ”แƒฅแƒขแƒ˜แƒก แƒ‘แƒแƒšแƒ แƒ‘แƒ›แƒฃแƒšแƒ˜ แƒฌแƒแƒ˜แƒจแƒšแƒ”แƒ‘แƒ, แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ แƒแƒฆแƒแƒ“แƒ’แƒ”แƒœแƒก แƒ›แƒแƒกแƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒš แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒก. แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒแƒ›แƒ˜แƒกแƒ, /sys แƒจแƒ”แƒแƒ“แƒ’แƒ”แƒœแƒก แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒชแƒœแƒแƒ‘แƒ˜แƒšแƒก "แƒกแƒขแƒแƒ‘แƒ˜แƒšแƒฃแƒ แƒ˜ ABI แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒกแƒ˜แƒ•แƒ แƒชแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก" แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒ•แƒ”แƒ แƒแƒ•แƒ˜แƒœ แƒ•แƒ”แƒ แƒแƒกแƒ“แƒ แƒแƒก แƒ•แƒ”แƒ แƒแƒ•แƒ˜แƒ—แƒแƒ  แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜ แƒ•แƒ”แƒ  แƒจแƒ”แƒซแƒšแƒ”แƒ‘แƒก "แƒจแƒ”แƒกแƒ•แƒ”แƒœแƒ”แƒ‘แƒ". แƒ”แƒก แƒแƒ  แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› sysfs-แƒจแƒ˜ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜ แƒกแƒขแƒแƒขแƒ˜แƒ™แƒฃแƒ แƒ˜แƒ, แƒ แƒแƒช แƒจแƒ”แƒฃแƒกแƒแƒ‘แƒแƒ›แƒ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒแƒ แƒแƒกแƒขแƒแƒ‘แƒ˜แƒšแƒฃแƒ แƒ˜ แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒ—แƒ•แƒšแƒแƒกแƒ—แƒแƒœ.
แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒกแƒขแƒแƒ‘แƒ˜แƒšแƒฃแƒ แƒ˜ ABI แƒ–แƒฆแƒฃแƒ“แƒแƒ•แƒก แƒ แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒฉแƒœแƒ“แƒ”แƒก /sys, แƒแƒ แƒ แƒ˜แƒก, แƒ แƒแƒช แƒ แƒ”แƒแƒšแƒฃแƒ แƒแƒ“ แƒแƒ แƒ˜แƒก แƒแƒ› แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒš แƒ›แƒแƒ›แƒ”แƒœแƒขแƒจแƒ˜. sysfs-แƒจแƒ˜ แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒœแƒ”แƒ‘แƒแƒ แƒ—แƒ•แƒ”แƒ‘แƒ˜แƒก แƒฉแƒแƒ›แƒแƒ—แƒ•แƒšแƒ แƒ˜แƒซแƒšแƒ”แƒ•แƒ แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒ•แƒแƒก, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒ˜แƒ แƒ”แƒ‘แƒแƒ“แƒ˜ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜ แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ›แƒแƒ“แƒฃแƒšแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒ.แƒจ. แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ แƒแƒœ แƒฌแƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒ. แƒšแƒแƒ’แƒ˜แƒ™แƒฃแƒ แƒ˜ แƒ“แƒแƒกแƒ™แƒ•แƒœแƒ แƒแƒ แƒ˜แƒก แƒ˜แƒก, แƒ แƒแƒ› procfs แƒแƒกแƒ”แƒ•แƒ” แƒแƒ แƒ˜แƒก แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒกแƒขแƒแƒ‘แƒ˜แƒšแƒฃแƒ แƒ˜ ABI-แƒก แƒœแƒแƒฌแƒ˜แƒšแƒ˜, แƒ—แƒฃแƒ›แƒชแƒ แƒ”แƒก แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ  แƒแƒ  แƒแƒ แƒ˜แƒก แƒœแƒแƒ—แƒฅแƒ•แƒแƒ›แƒ˜ แƒ“แƒแƒ™แƒฃแƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ.

แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜ Linux-แƒจแƒ˜: แƒ แƒแƒขแƒแƒ› แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ˜แƒกแƒ˜แƒœแƒ˜? แฒœแƒแƒฌแƒ˜แƒšแƒ˜ 1

แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜ sysfs แƒแƒฆแƒฌแƒ”แƒ แƒ”แƒ— แƒ”แƒ แƒ—แƒ˜ แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜ แƒ—แƒ•แƒ˜แƒกแƒ”แƒ‘แƒ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ˜แƒงแƒแƒก แƒฌแƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒแƒ“แƒ˜, แƒฉแƒแƒกแƒแƒฌแƒ”แƒ แƒ˜ แƒแƒœ แƒแƒ แƒ˜แƒ•แƒ”. แƒคแƒแƒ˜แƒšแƒจแƒ˜ "0" แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› SSD-แƒ˜แƒก แƒแƒ›แƒแƒฆแƒ”แƒ‘แƒ แƒจแƒ”แƒฃแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ.

แƒ“แƒแƒ•แƒ˜แƒฌแƒงแƒแƒ— แƒ—แƒแƒ แƒ’แƒ›แƒแƒœแƒ˜แƒก แƒ›แƒ”แƒแƒ แƒ” แƒœแƒแƒฌแƒ˜แƒšแƒ˜ แƒ˜แƒ›แƒ˜แƒ—, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ•แƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒแƒ— VFS eBPF แƒ“แƒ bcc แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒ›แƒ”แƒœแƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒแƒฎแƒšแƒ แƒ™แƒ˜ แƒ•แƒ”แƒšแƒแƒ“แƒ”แƒ‘แƒ˜แƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ”แƒ‘แƒก แƒ“แƒ แƒขแƒ แƒแƒ“แƒ˜แƒชแƒ˜แƒฃแƒšแƒแƒ“ แƒ’แƒ”แƒžแƒแƒขแƒ˜แƒŸแƒ”แƒ‘แƒ˜แƒ— แƒฆแƒ˜แƒ แƒ•แƒ”แƒ‘แƒ˜แƒœแƒแƒ แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒฉแƒ•แƒ”แƒœแƒ˜ แƒ›แƒแƒกแƒฌแƒแƒ•แƒšแƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ’แƒแƒ›แƒแƒ แƒ—แƒแƒ•แƒก 9 แƒแƒžแƒ แƒ˜แƒšแƒก - แƒ•แƒšแƒแƒ“แƒ˜แƒ›แƒ˜แƒ  แƒ“แƒ แƒแƒ–แƒ“แƒ”แƒชแƒ™แƒ˜.

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ