sysfs는 리눅스 커널 2.4에서 /proc 디렉토리 아래에 무질서하게 놓여 있던 디바이스와 관련된 정보들을 리눅스 커널 2.6에서는 sysfs를 이용하여 좀더 체계적으로 표현하기 위해 사용하고 있습니다.
sysfs는 가상 파일 시스템으로 루트 파일 시스템(/)에 sys라는 이름의 디렉토리에 마운트 됩니다. sysfs도 proc파일 시스템 처럼 파일의 읽기/쓰기/변경 등은 그 권한에 따라 사용자가 이용할 수 있습니다.
또한 sysfs는 하드웨어 구성 정보와 디바이스 드라이버 정보가 통일된 계층으로 보이게 하기 위한 파일 시스템입니다. 이를 위하여, 시스템에서 동작하는 디바이스들의 연결 관계를 출력하기 위해 kobject라는 데이터 구조를 이용합니다.
sysfs는 하드웨어의 핫 플러그도 대응 하며, 핫 플러그 동작에 맞추어 sysfs 내의 해당 파일이 생성/삭제를 구성 할 수 있게 됩니다.
sysfs를 사용하기 위해서는 커널의 CONFIG_SYSFS가 정의 되어 있어야 하며 다음과 같이 mount 하여 사용 합니다.
mount -t sysfs sysfs /sys
다음은 현재 Ubuntu 11.04 버전의 /sys 디렉토리 아래에있는 가장 첫번째 단계의 디렉토리 구성입니다.
/sys
├── block
├── bus
├── class
├── dev
├── devices
├── firmware
├── fs
├── kernel
├── module
└── power
출처 : http://forum.falinux.com/zbxe/?document_srl=567368&mid=lecture_tip&page=2
'Linux > Kernel Analysis' 카테고리의 다른 글
[Linux Kernel] Kobject에 대하여 (0) | 2014.06.27 |
---|---|
[Linux Kernel] 리눅스 커널 Configuring (0) | 2014.06.27 |
리눅스 소스 사이트 (0) | 2014.06.08 |
git-proxy 설정 (0) | 2014.06.01 |
램디스크 ( Ram disk ) (0) | 2014.05.21 |