![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux调试
文章平均质量分 83
eydwyz
AA123456123456
展开
-
GNU链接器的LMA和VMA
LMA和VMA的含义LMA:加载存储地址,指的是加载到存储器的地址,即加载(有时应该说烧写)到哪里VMA:虚拟存储地址,也就是链接地址,指示代码和数据运行的时候应该位于何处对于主机程序对于PC上的程序(有操作系统环境),loader在加载程序时,会根据可执行程序文件中记录的链接地址申请相应的虚拟地址,在实际访问时申请物理地址并和之前申请的虚拟地址建立映射关系。由于进程独享虚拟地址空间,因此通常都能申请到相应的虚拟地址。这种情况下LMA通常是等于VMA的。对于嵌入式系统程序在嵌入式系统中,LMA转载 2022-04-14 19:19:14 · 720 阅读 · 0 评论 -
阿里开源内核诊断工具:diagnose-tools
小编说:今天为大家介绍一款实用工具——阿里开源内核诊断工具diagnose-tools。diagnose-tools是由阿里巴巴开发的linux内核诊断工具,用于linux性能分析,特别是大规模集群系统中的抖动问题分析。diagnose-tools工具是阿里工程师谢宝友在过去一年多时间开发的,代码行数超过 5万行。同时,他也是《深入理解并行编程》、《自研操作系统:DIM-SUM设计与实现》的作者。1. 引言作为一名Linux工程师,难免会遇到系统宕机、夯机、性能抖动等问题。在夯机时,常见的做法是编.转载 2021-03-04 16:17:59 · 1304 阅读 · 1 评论 -
使用 VSCode + qemu 搭建 Linux 内核调试环境
Posted on2019-10-24byhowardlau目录[隐藏]1编译调试版 Linux 内核 1.1Ubuntu 1.2CentOS 1.3Fedora 2制作 initramfs 3启动内核并调试 4配置 VSCode 4.1.vscode/c_cpp_properties.json 4.2.vscode/tasks.json 4.3.vscode/launch.json 4.4.vscode/settings.json...转载 2021-02-24 13:42:21 · 2544 阅读 · 1 评论 -
Linux内核分析实验(二)——深入理解系统调用
一、实验内容找一个系统调用,系统调用号为学号最后2位相同的系统调用 通过汇编指令触发该系统调用 通过gdb跟踪该系统调用的内核处理过程 重点阅读分析系统调用入口的保存现场、恢复现场和系统调用返回,以及重点关注系统调用过程中内核堆栈状态的变化二、实验环境配置1、安装开发工具sudo apt install build-essential libncurses-dev bison flex libssl-dev libelf-devsudo apt install qemu2、下载安转载 2021-02-24 13:40:53 · 606 阅读 · 0 评论 -
用QEMU和GDB调试Linux内核(linux-5.5.9) --- OK -- 成功(差VScode了)
转载 :https://blog.csdn.net/eidolon_foot/article/details/104905084此调试在VisualBox虚拟机和PC都可进行。操作系统:ubuntu 19.10(unbuntu镜像下载)Linux内核:linux-5.5.9 (https://www.kernel.org/)QEMU:qemu-4.2.0(https://download.qemu.org/)GDB:gdb-9.1(https://download.qemu.or..转载 2021-02-24 11:49:28 · 467 阅读 · 0 评论 -
Dynamic Tracing with DTrace & SystemTap
Dynamic Tracing with DTrace & SystemTap http://myaut.github.io/dtrace-stap-book/DTrace: Dynamic Tracing in Oracle Solaris, Mac OS X and FreeBSD原创 2021-02-22 18:26:03 · 126 阅读 · 0 评论 -
linux内核调试之 kdump安装配置
【1】Kexec 机制Kexec是实现 kdump 机制的关键,介绍kdump之前先介绍下linux kexec机制。kexec 是 Linux 内核的一个补丁,让您可以从当前正在运行的内核直接引导到一个新内核。起初是方便系统可以极其快速地重新启动,后来在crash dump领域得到新的应用。Kexec包括 2 个组成部分:一是内核空间的系统调用 kexec_load,负责在生产内核(production kernel 或 first kernel)启动时将捕获内核(capture kernel 或转载 2021-02-20 18:11:51 · 1701 阅读 · 0 评论 -
linux内核调试之 crash分析dump文件
Linux 下也有众多的内存转储分析工具,lcrash、Alicia、Crash。Crash 是由 Dave Anderson 开发和维护的一个内存转储分析工具,目前它的最新版本是 5.0.0。 在没有统一标准的内存转储文件的格式的情况下,Crash 工具支持众多的内存转储文件格式:Live linux 系统 kdump 产生的正常的和压缩的内存转储文件 由 makedumpfile 命令生成的压缩的内存转储文件 由 Netdump 生成的内存转储文件 由 Diskdump 生成的内存转储文件转载 2021-02-20 18:10:40 · 3253 阅读 · 0 评论