debugfs
debugfs๋ ๋ฒ์ 2.6.10-rc๋ถํฐ ๋ฆฌ๋ ์ค ์ปค๋์์ ์ฌ์ฉ๋๋ ํน๋ณํ ํ์ผ ์์คํ ์ด๋ค.[1]ย ์ด๊ฒ์ย Greg Kroah-Hartman์ ์ํด ๋ง๋ค์ด์ก๋ค.[2]
debugfs๋ ๋๋ฒ๊น ๋ชฉ์ ์ผ๋ก ํน๋ณํ ์ค๊ณ๋ ์ฝ๊ฒ ์ฌ์ฉ ๊ฐ๋ฅํ ๋จ ๊ธฐ๋ฐ ํ์ผ ์์คํ ์ด๋ค. ์ด๊ฒ์ ์ปค๋ ๊ฐ๋ฐ์๋ค์ด ์ฌ์ฉ์ ๊ณต๊ฐ์์ ์ ๋ณด๋ฅผ ํ์ฉ ๊ฐ๋ฅํ๊ฒ ํด์ฃผ๋ ๊ฒ์ ํธํ๊ฒ ํ๊ธฐ ์ํด ์กด์ฌํ๋ค.[3]ย ๋จ์ง ํ๋ก์ธ์ค์ ๋ํ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ ๋ชฉ์ ์ ๊ฐ์งย /proc์ด๋, ํ์ผ ๋น ์๊ฒฉํ ํ ๊ฐ์ ๊ท์น์ผ๋ก ๊ฐ๋ sysfs์ ๋ฌ๋ฆฌ ์ด๊ฒ์ ๊ท์น์ด ์กด์ฌํ์ง ์๋๋ค. ๊ฐ๋ฐ์๋ค์ ์์ ์ด ์ํ๋ ์๋ฌด ์ ๋ณด๋ฅผ ์ฌ๊ธฐ์ ๋ฃ์ ์ ์๋ค.[4]
์ฌ์ฉ
[ํธ์ง]debugfs ๊ธฐ๋ฅ์ ์ฌ์ฉํด์ ๋ฆฌ๋ ์ค ์ปค๋์ ์ปดํ์ผํ๊ธฐ ์ํด์๋,ย CONFIG_DEBUG_FSย ์ต์ ์ด yes๋ก ์ค์ ๋์ด์ผ ํ๋ค. ์ด๊ฒ์ ์ผ๋ฐ์ ์ผ๋กย /sys/kernel/debugย ์ ๋ค์๊ณผ ๊ฐ์ ๋ช ๋ น์ด๋ก ๋ง์ดํธ๋๋ค:[5]
mount -t debugfs none /sys/kernel/debug
์ด๊ฒ์ ๋ค์์ ํฌํจํ๋ C ํค๋ ํ์ผย linux/debugfs.h์ ์ฌ๋ฌ ํธ์ถ๋ค์ ์ฌ์ฉํจ์ผ๋ก์จ ์กฐ์ ๊ฐ๋ฅํ๋ค:
- debugfs_create_file - ๋๋ฒ๊ทธ ํ์ผ ์์คํ ์์ ํ์ผ์ ์์ฑํ๊ธฐ ์ํ.
- debugfs_create_dir - ๋๋ฒ๊ทธ ํ์ผ ์์คํ ์์ ๋๋ ํ ๋ฆฌ๋ฅผ ์์ฑํ๊ธฐ ์ํ.
- debugfs_create_symlink - ๋๋ฒ๊ทธ ํ์ผ ์์คํ ์์ ์ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ์์ฑํ๊ธฐ ์ํ.
- debugfs_remove - ๋๋ฒ๊ทธ ํ์ผ ์์คํ ์์ debugfs ์ํธ๋ฆฌ๋ฅผ ์ ๊ฑฐํ๊ธฐ ์ํ.
๊ฐ์ฃผ
[ํธ์ง]- โ Linux: DebugFS ๋ณด๊ด๋จ 2010-02-01 - ์จ์ด๋ฐฑ ๋จธ์ , by Jeremy, December 11, 2004, KernelTrap.
- โ โDebugfsโ. LWN.net. 2004๋ 12์ 13์ผ.
- โ Linux Kernel Documentationย :: filesystemsย : debugfs.txt documentation from the source code (Based on kernel version 2.6.35.4.
- โ An updated guide to debugfs, By Jonathan Corbet, May 25, 2009, LWN
- โ 2.5 Debugfs ๋ณด๊ด๋จ 2016-01-05 - ์จ์ด๋ฐฑ ๋จธ์ A guide to using debugfs, Ariane Keller, Version 0.8, July 2008, Kernel Space - User Space Interfaces