1.2 bootchart2
bootgraph가 Kernel 시작 부터 Init까지의 부팅과정을 분석한다면, bootchart2는 init 이후의 부팅 과정 및 CPU 사용률 및 디스크 사용률까지 분석 해준다. bootchart2를 사용하기 위해서는 다음과 같은 작업을 해야 한다.
1) 부팅 과정의 로그를 저장하는 데몬인 bootchartd를 busybox 컴파일 시 포함 시켜줘야 한다.
busybox # make menuconfig Init Utilities ---> [*] bootchartd [*] Compatible, bloated header [*] Support bootchartd.conf |
2) u-boot의 boot parameter인 init=/sbin/init을 init=/sbin/bootchartd로 변경하고 printk.time=1 initcall_debug=1 를 추가 한다.
ex> bootargs=noinitrd rootfstype=ubifs ubi.mtd=4 xxxxxxxxxxxxxxxxxx init=/sbin/bootchartd printk.time=1 initcall_debug=1
3) 부팅 후 /var/log 에 부팅 로그 파일인 bootlog.tgz 를 서버로 복사한다.
4) 개발 서버에서 bootchart2 소스코드를 다운로드 하여 컴파일 한다. ( https://github.com/mmeeks/bootchart/releases )
/usr/local/bootchart2/bootchart-0.14.7$ make |
5) bootchart2 스크립트인 pybootchartgui.py 를 이용하여 부트 로그 파일인 bootlog.tgz 를 그래프화 한다.
$ /usr/local/bootchart2/bootchart-0.14.7/pybootchartgui.py bootlog.tgz |
6) 결과
부팅 로그가 분석된 bootchart.png 파일이 생성 되고 이를 확인할 수 있다.
|
'Programming & Tools > Embedded Linux' 카테고리의 다른 글
[Embedded Linux] Microcom Serial Program (0) | 2015.12.10 |
---|---|
[Embedded Linux] Ultimate Packer for eXecutables (UPX) Cross Compile (0) | 2014.10.15 |
[Embedded Linux] 리눅스 부팅속도 측정 분석 툴 bootgraph, bootchart2 #2-1 (0) | 2014.10.07 |
[Embedded Linux] /proc/bus/usb empty (0) | 2013.05.06 |
[Embedded Linux] Embedded Linux IPv6 Disable 및 TCP KeepAlive 설정 (0) | 2012.08.03 |