1. 程式人生 > >systemtap安裝&核心除錯環境配置

systemtap安裝&核心除錯環境配置

我是在ubuntu下安裝的,所以轉至這個網頁:

1.systemtap的安裝

systemtap的安裝是很簡單的,一條命令足以:

$sudo apt-get install systemtap

此時,你執行如下測試命令:

$sudo stap -ve 'probe begin { log("hello world") exit() }'

也是可以正確打印出hello world的,但是,注意到這個小指令碼中並不包含任何的與核心相關的跟蹤資訊,只是簡單的列印hello world,因此,現在並不能開始除錯核心,要對系統的環境進行配置。

2.環境配置

為什麼配置?配置什麼?

既然號稱除錯核心,那麼一定是要有符號表的,但是一般情況下你安裝的核心是不包含debug資訊的,因為這個太大了。所以,我們現在需要增加debug資訊,新增符號表等除錯過程中需要的資訊。有兩種方式:

(1)重新編譯核心,這次記得要在配置選項中增加debug選項。然後用新編譯的核心替換你現在的核心。注意,這兩個核心的版本要相同。(uname -r 就可以看到你用的哪個版本的核心了)

(2)按照官網的解決方法:

$sudo apt-get install linux-image-$(uname -r)-dbgsym.

但是這個命令並不湊效,因為你的更新源中可能並沒有包含相應的dbgsys。因此,你可以自己下載對應版本的dbgsym。下載的網址是http://ddebs.ubuntu.com/pool/main/l/linux/

下載完畢之後:

$sudo dpkg -ilinux-image-3.2.0-26-generic-pae-dbgsym_3.2.0-26.41_i386.ddeb

這樣,就在你的現有核心的基礎上加入了除錯資訊。

但是現在還是不能夠跟蹤核心,按照官網的步驟,你還需要:

$sudo apt-get install elfutils

然後編輯shell指令碼config_elfutils,並且執行($sudo sh config_elfutils),現在你可以跟蹤核心資訊了。

for file in `find /usr/lib/debug -name '*.ko' -print`
do
        buildid=`eu-readelf -n $file| grep Build.ID: | awk '{print $3}'`
        dir=`echo $buildid | cut -c1-2`
        fn=`echo $buildid | cut -c3-`
        mkdir -p /usr/lib/debug/.build-id/$dir
        ln -s $file /usr/lib/debug/.build-id/$dir/$fn
        ln -s $file /usr/lib/debug/.build-id/$dir/${fn}.debug
done

相關推薦

systemtap安裝&核心除錯環境配置

我是在ubuntu下安裝的,所以轉至這個網頁: 1.systemtap的安裝 systemtap的安裝是很簡單的,一條命令足以: $sudo apt-get install systemtap 此時,你執行如下測試命令: $sudo stap -ve 'probe

OVS + dpdk 安裝與實驗環境配置

binding exp pidfile *** 掛載 rem 環境變量 rep new ***DPDK datapath的OVS的安裝與實驗環境配置 首先肯定是DPDK的安裝 0:安裝必要的工具 make gcc

Windows版本搭建安裝React Native環境配置及相關問題

for undle 地址 data dmi tools github spa start http://www.cnblogs.com/aichenxy/p/5971613.html 此文檔整理參考地址: http://www.lcode.org/%E5%8F%B2%E4%

Windows版本搭建安裝React Native環境配置

jdk8 android cli 運行 cnblogs bject start 依次 user 1 安裝Chocolatey 打開cmd黑窗口 @powershell -NoProfile -ExecutionPolicy Bypass -Command "iex ((n

史上最詳細Windows版本搭建安裝React Native環境配置

gin windows系統 adl 搭建環境 tools 想要 變量 rep home 說在前面的話: 感謝同事金曉冰傾情奉獻本環境搭建教程 之前我們已經講解了React Native的OS X系統的環境搭建以及配置,鑒於各大群裏有很多人反應在Windows環境搭建出現各種

CentOS7 使用yum安裝MariaDB以及環境配置

從CentOS7開始,linux系統中預設暗轉過的資料庫變成了MariaDB,此資料庫為MySQL的一個分支,使用起來跟MySQL並沒有什麼區別,而且功能比MySQL更全面一點,此文主要是通過yum安裝。 直接正文 1. 檢視系統是否有mariadb資料庫 [root@

Python 安裝和 Pycharm 環境配置

一、Python 簡介 Python 是一個高層次的結合瞭解釋性、編譯性、互動性和麵向物件的指令碼語言。 Python 的設計具有很強的可讀性,相比其他語言經常使用英文關鍵字,其他語言的一些標點符號,它具有比其他語言更有特色語法結構。 Python 是一種解釋型語言: 這意

Centos7安裝JDK8以及環境配置

轉自:https://blog.csdn.net/pang_ping/article/details/80570011 踩的坑: export JAVA_HOME=/usr/java/jdk1.8.0_152  export CLASSPATH=.:$JAVA_HOME/jre/

dlib庫除錯環境配置經驗

開發環境 系統: windows 10  + Ubuntu 18.04.1 LTS 開發工具: VS2017 其他相關工具:  cmake 概述        為方便學習dlib庫,需要跟蹤原始碼。在此之前使用vs201

Oracle 12cR1 RAC 在VMware Workstation上安裝(上)—OS環境配置

轉載:http://blog.itpub.net/26736162/viewspace-2132768/     1.1  整體規劃部分 1.1.1  所需軟體介紹 Oracle RAC不支援異構平臺。在同

java開發包JDK安裝後的環境配置

步驟1:在“計算機”圖示中單擊滑鼠右鍵,彈出快捷選單中選擇“屬性”命令,在屬性命令對話方塊單擊“高階系統設定”超連結,彈出“系統屬性”對話方塊。 步驟2:單擊“系統環境”按鈕,將彈出“環境變數”對話方塊。然後單擊“系統變數”欄下的“新建”按鈕,建立新的系統變數,變數名(N):JAVA_HOM

Java的JDK安裝、java環境配置、eclipse下載使用

JDK安裝、java環境配置、eclipse下載使用 JDK是Java語言的軟體開發工具包,主要用於移動裝置、嵌入式裝置上的java應用程式。JDK是整個java開發的核心,它包含了JAVA的執行環境,JAVA工具和JAVA基礎的類庫。 JRE(Java Runtime Environmen

Android安裝後的環境配置

安裝Android的步驟比較繁瑣,在新安裝了android如何確定自己是否安裝成功呢?可以以下操作: 按win+R,輸入控制命令符cmd,在顯示的介面輸入android,如果回車後提示:“android”不是內部或外部命令,也不是可執行的程式或批處理檔案,說明

Linux系統安裝及python環境配置

Linux簡介 Linux是一款作業系統核心,是一個類Unix系統的的作業系統 Linux發行版 各個發行廠家基於Linux核心之上,和一些常用應用做成一個包,就是Linux發行版。常見的有Ubuntu、RedHat、CentOS、Debian、Fedora等等

eclipse下載,安裝,jdk環境配置

eclipse下載,安裝,JDk環境配置教程(多圖) 第一步:下載eclipse,並安裝。 下載連結:http://www.eclipse.org/downloads/ 點選 Download Packages; 根據自己的系統選擇32位還是64位的,點選相

【ERP】windows10 Python安裝與開發環境配置

官網下載 第一步:JDK安裝與環境配置 安裝: 1:安裝jdk 隨意選擇目錄 只需把預設安裝目錄 \java 之前的目錄修改即可 2:安裝jre→更改→ \java 之前目錄和安裝 jdk 目錄相同即可 注:若無安裝目錄要求,可全預設設定。無需做

eclipse中pydev外掛安裝出錯及環境配置問題總結

想用eclipse學習Python,結果連pydev都安裝不上,總是出現如下問題: An error occurred while collecting items to be installed  session context was:(profile=Platfo

Android驅動程式開發和除錯環境配置

    本文用《Android深度探索(卷1):HAL與驅動開發》的隨書原始碼為例詳細說明如何配置Android驅動開發和測試環境,並且如何使用原始碼中的build.sh指令碼檔案在各種平臺(Ubuntu Linux、Android模擬器和S3C6410開發板)上編譯、安裝和

linux核心除錯環境搭建

版本linux4.17 ubuntu18.04先給系統至少80G記憶體1。編譯核心先配置檔案make mrpropermake menuconfig我這裡需要的依賴有 sudo apt install make cmake gcc g++ clang sudo apt-get install libnc

linux-2-6-11核心除錯環境搭建

linux核心除錯環境分為兩部分 1)用bochs除錯彙編 2)用qemu除錯從start_kernel開始的部分 環境說明: 核心版本: 2.6.11 ubuntu: 6.10 qemu: qemu-stable-0.13 busybox: 1.10.4 安裝ubuntu