/proc에서 이러한 내용이 있는지 궁금합니다.(Disk사용률관련)

sky13331의 이미지

안녕하세요.
디스크 사용률을 구하는 프로그램을 만들려고 하는데
좀처럼 딱 이거다 하는 자료가 없어서 이렇게 글을 올립니다.

디스크에서 현재 부하량을 측정해야 하는데
예를 들어 네트워크에서 현재 전송률(mb/s)처럼
디스크에도 이러한 내용이 어디에 있는지 궁금합니다.

/proc/diskstats 에서 보면은
바이트 단위가 아닌 섹터단위로 나오더군요
(섹터단위로 나오는게 당연한 건지도 모르겠네요. 하드디스크는 블록디바이스니깐
섹터단위로 읽고 쓰고 하니깐...)

아무튼 디스크의 read/write에 대한 전송률(MB/s)를 구해야 하는데
혹시 이러한 내용을 알고 계신다면 도움 부탁드리겠습니다.

즐거운 하루 되세요~

monovision의 이미지

hdparam 의 소스를 참고하셔야 할 것 같은데요 ?
참고로.... hdparam 으로 하드 속도를 체크하려면.....
hdparam -tT /dev/xxx 식으로 하시면 됩니다.

다콘의 이미지

sysstat 소스에서 iostat.c 를 보시면 될거 같습니다.
http://pagesperso-orange.fr/sebastien.godard/

iostat도 /proc/diskstats 를 읽어서 처리합니다.
옵션에 따라서 KB/s 와 MB/s 로 보여줍니다.

Quote:
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
sda 0.00 1320.00 8.00 218.00 32.00 6152.00 54.73 0.62 2.75 0.27 6.00

Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %util
sda 15.00 695.00 932.00 194.00 11.82 3.47 27.81 39.85 35.34 0.87 98.20