KTAU
distribution is organized as in following hierarchy.
-
TAU/patches/ : Contains patches for various versions of Linux kernel
-
KTAU/src/ : Contains extension to Linux kernel which is independent from version of the kernel.
-
KTAU/user-src/ : Contains user-space libraries and utilities.
-
misc/ : Contains works in progress.
-
btain a
KTAU
distribution. -
Obtain a vanilla Linux kernel.
-
To install the kernel extension, in "
KTAU
/src/linux-2.x/", runsh INSTALL-kernel.sh <path of kernel source> <
KTAU
patch name>This script will patch the kernel source with the specified patch name, and Then install the
KTAU
extension to Linux kernel. -
To install libraries and utilities, in "
KTAU
/user-src/src", runmake clean all install KERNEL_SRC=<path to kernel source>
This will build and put all the libraries and utilities in "
KTAU
/user-src/bin", which must be included in $PATH variable. -
At kernel source root, run make menuconfig and configure the kernel. Configure KTAU as discussed in section 3.3.
-
Compile and build the kernel as usual. At kernel root, run
make clean dep bzImage modules modules_install (for Linux-2. 4)
or
make clean bzImage modules modules_install
(for Linux-2.6)
-
Install kernel image (bzImage for ix86) and configure the bootloader (i.e. lilo, grub) to choose the installed kernel image.
NOTE:please see "KTAU
/KTAU
_installation.log" for an installation demo.
KTAU
configuration is integrated into
the Linux kernel configuration utility (i.e. make menuconfig). It is
listed under KTAU
Profiling and Profiling Support in
Linux-2.4 and Linux-2.6 respectively. Each option enables
instrumentations for each aspect of the kernel. Figure 2 shows a
screenshot of KTAU
configuration screen in
Linux-2.4.30 after the kernel is patched with KTAU
.
Figure 2 shows a general configuration of
KTAU
. In this case, it enables profiling and tracing
on all aspects. However, the option Merging KTAU
Profile with TAU
'is to be used together with
TAU
to generate a merged profile output from both
kernel and user- space. However, this option limits the number of
aspects that KTAU
can profile since merging profile
requires the profile data must be accessed only from process context,
and not from interrupt context.