-*- outline -*-
$B%$%s%9%H!<%kJ}K!(B

* $B%$%s%9%H!<%kA0$N3NG'(B

hardmeter $B$O(B Intel Pemtium 4 $B$N$_$r%5%]!<%H$7$F$$$^$9!#(B

   $ cat /proc/cpuinfo

$B$r<B9T$7$F!"(Bvendor_id $B$,(B GenuineIntel, cpu family $B$,(B 15 $B$G$"$k$3$H$r3N(B
$BG'$7$F$/$@$5$$!#(B

------------------------ $B:o=|(B $B$3$3$+$i(B------------------------
$B$^$?!"(Bhardmeter $B$O%$%Y%s%H3d9~$_$r=&$&$?$a$K(B APIC($B9b@-G=%W%m%0%i%^%W%k(B
$B3d$j9~$_%3%s%H%m!<%i(B) $B$rMxMQ$7$F$$$^$9!#$7$?$,$C$F!"(BCPU $B$,(B APIC $B$r%5%]!<(B
$B%H$7$F$$$kI,MW$,$"$j$^$9!#%5%]!<%H$7$F$$$k$+$I$&$+$N3NG'$O!"(B

   $ cat /proc/cpuinfo

$B$N(B flags $B$K(B apic $B$,4^$^$l$F$$$k$+$I$&$+$GH=JL$7$F$/$@$5$$!#%N!<%H(BPC $B$N(B
CPU $B$K$O(B APIC $B$,$J$$$3$H$,B?$$$h$&$G$9!#(B
------------------------ $B:o=|(B $B$3$3$^$G(B------------------------

* $B%$%s%9%H!<%k$KI,MW$J%U%!%$%k$N=`Hw(B

perfctr $B$H(B perfctr $B$NBP1~$7$F$$$k%+!<%M%k%=!<%9$,I,MW$G$9!#(B

** perfctr $B$N%@%&%s%m!<%I(B

perfctr $B$O(B

    http://user.it.uu.se/~mikpe/linux/perfctr/perfctr-2.4.5.tar.gz

$B$h$j%@%&%s%m!<%I$7$F$/$@$5$$!#(B

** perfctr $B$NBP1~$7$F$$$k%+!<%M%k$N%@%&%s%m!<%I(B

perfctr $B$NBP1~$7$F$$$k%+!<%M%k$N%P!<%8%g%s$O!"(Bperfctr-2.4.5.tar.gz $B$r(B
$BE83+$7$F:n@.$5$l$k%G%#%l%/%H%j(B

    perfctr-2.4.5/patches/

$B$N2<$r8+$k$H$o$+$j$^$9!#(Bpatch-kernel- $B$N8e$,%P!<%8%g%sHV9f$N$_$N>l9g$O(B
http://www.kernel.org/ $B$NG[I[$9$k%+!<%M%k%=!<%9$G!"(B-redhat $B$,$D$$$F$$(B
$B$k>l9g$O!"(Bredhat $B$NG[I[$9$k%+!<%M%k%=!<%9$G$9!#(B

kernel.org $B$NG[I[$9$k%+!<%M%k%=!<%9$r;HMQ$9$k>l9g$O!"F|K\9qFb$J$i$P!"(B
$BK\2H$N%5%$%H$^$G9T$+$:$K!"(Bring $B%5!<%P(B http://www.ring.gr.jp $B$N%_%i!<%5(B
$B%$%H$+$iF~<j$7$^$7$g$&!#(B

$B$3$NJ8=q$G$O!"(Bkernel.org $B$h$j(B linux-2.4.20.tar.bz2 $B$r%@%&%s%m!<%I$7$?(B
$B$H$$$&A0Ds$G?J$a$^$9!#(B

* hardmeter $BBP1~%+!<%M%k$N:n@.(B

** $B%=!<%9$NE83+(B

$B%@%&%s%m!<%I$7$?%=!<%9$rE83+$7$^$9!#(B

   cd /usr/src
   tar xvfj linux-2.4.20.tar.bz2
   tar xvfz perfctr-2.4.5.tar.gz
   tar xvfz hardmeter-030225

$B%+!<%M%k%=!<%9$,$9$G$KE83+:Q$_$N>l9g$O!"%+!<%M%k$N%k!<%H%G%#%l%/%H%j$K(B
$B$"$k(B .config $B%U%!%$%k$rJL$N%G%#%l%/%H%j$K%P%C%/%"%C%W$r$H$C$?>e$G!"(B
'make mrproper' $B$r<B9T$7!"85$KLa$7$F$/$@$5$$!#(B

   cd linux-2.4.20
   cp .config ../config-2.4.20.backup
   make mrproper
   cp ../config-2.4.20.backup .config

.config $B$,$J$$>l9g$O$3$N$h$&$J$3$H$r$9$kI,MW$O$"$j$^$;$s!#(B

** $B%Q%C%A$rEv$F$k!#(B

perfctr $B$K%Q%C%A$rEv$F$?>e$G!"(Bperfctr $B$N(B update-kernel $B$r<B9T$7$F$/$@(B
$B$5$$!#(B

(perfctr $B$X$N%Q%C%AEv$F(B)
   cd perfctr-2.4.5
   patch -p1 < ../hardmeter-030225/patch/perfctr-2.4.5.dif
($B%+!<%M%k$N(B perfctr $BBP1~(B)
   cd ../linux-2.4.20
   ../perfctr-2.4.5/update-kernel

$B%+!<%M%k$KBP$7$F$9$G$K(B perfctr $B$N%Q%C%A$,Ev$?$C$F$$$k>l9g$O!"(B

   ../perfctr-2.4.5/update-kernel --nopatch

$B$r<B9T$7$F$/$@$5$$!#(B

$B$=$NB>!":n6H$9$k$+$I$&$+$OG$0U$G$9$,!"(Blinux-2.4.20/Makefile $B$N@hF,$N(B

   EXTRAVERSION =

$B$r(B

   EXTRAVERSION = -hardmeter

$B$HJQ99$9$k$3$H$r$*4+$a$^$9!#$3$&$9$k$H!"(B'uname -r' $B$r<B9T$7$?$H$-$K!"(B
'2.4.20-hardmeter' $B$H=PNO$5$l!":#F0$$$F$$$k%+!<%M%k$,(B hardmeter $BBP1~$+(B
$B$I$&$+$N3NG'$,$7$d$9$/$J$j$^$9!#(B

** perfctr $B$rM-8z$K$9$k!#(B

'make config', 'make menuconfig', 'make xconfig' $B$N$$$:$l$+$r<B9T$7$F!"(B

    General setup  --->
        Performance-monitoring counters support  --->

$B$H$?$I$C$F$$$C$F!"(B

    Performance-monitoring counters support
    Virtual performance counters support

$B$rM-8z$K$7$F$/$@$5$$!#B>$N9`L\$OM-8z$K$7$F$b$7$J$/$F$bNI$$$G$9$,!"(B
hardmeter $B$r;H$&$K$O>/$J$/$H$b(B Virtual performance counters support $B$,(B
$BM-8z$K$J$C$F$$$kI,MW$,$"$j$^$9!#(B

$B$^$?!"(B

     Processor type and features  --->

$B$H$?$I$C$F$$$C$F!"(B

     Symmetric multi-processing support

$B$+(B

     Local APIC support on uniprocessors

$B$N$I$A$i$+$rM-8z$K$7$F$/$@$5$$!#(B

$B>e5-(B2$B$D$N9`L\0J30$O4D6-$K$"$o$;$FG$0U$K@_Dj$7$F$/$@$5$$!#(B

** $B%+!<%M%k$N:n@.$H%$%s%9%H!<%k(B

$B%+!<%M%k$H%+!<%M%k%b%8%e!<%k$N%3%s%Q%$%k$r9T$$$^$9!#(B
$B%+!<%M%k%=!<%9$N%k!<%H%G%#%l%/%H%j$G(B

   make dep; make clean; make; make bzImage
   make modules; make modules_install

$B$r<B9T$7$F!"(B

   cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.20-hardmeter
   cp System.map /boot/System.map-2.4.20-hardmeter
  (linux-2.4.20/Makefile $B$N(B EXTRAVERSION $B$rJQ$($F$J$$>l9g$O(B
    -hardmeter $B$OITMW$G$9!#(B)

$B$G$b$C$F(B /boot $B$N2<$K%$%s%9%H!<%k$7$F$/$@$5$$!#(B

$B<!$K!"(Blilo $BEy$N%V!<%H%m!<%@$N@_Dj$rJQ$($F!"(B
      /boot/vmlinuz-2.4.20-hardmeter
$B$N%+!<%M%k$G$b$C$F:F5/F0$5$;$F$/$@$@$$!#(B

$B0J>e$G(B hardmeter $BBP1~%+!<%M%k$N:n@.$O=*$j$G$9!#(B

* hardmeter $B%f!<%6%"%W%j%1!<%7%g%s$N%3%s%Q%$%k(B

$B$^$:!"(B'uname -r' $B$r<B9T$7$F(B hardmeter $BMQ$K:n@.$7$?%+!<%M%k$,N)$A>e$,$C(B
$B$F$$$k$+$I$&$+3NG'$7$F$/$@$5$$!#$D$.$K!"(Bhardmeter $B$N%=!<%9%U%!%$%k$N%k!<(B
$B%H%G%#%l%/%H%j$K0\F0$7$F(B make $B$r<B9T$7$F$/$@$5$$!#(B

src/ebs, src/libhardmeter.o $B$,:n@.$5$l$?$i%3%s%Q%$%k40N;$G$9!#(B
