楼主: aiwudidefenshou
890 1

[作业] Linux GDB CC++调试基础与提升 [推广有奖]

  • 0关注
  • 0粉丝

博士生

32%

还不是VIP/贵宾

-

威望
0
论坛币
120 个
通用积分
73.5015
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
2235 点
帖子
167
精华
0
在线时间
59 小时
注册时间
2023-7-25
最后登录
2025-9-19

楼主
aiwudidefenshou 发表于 2023-8-15 10:32:35 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
学习地址1:https://pan.baidu.com/s/1Hp6zixdLtrrzBWzUBscztQ 提取码: vhtd
学习地址2:https://share.weiyun.com/dolcdxlA 密码:9mu4hk

Linux GDB C/C++调试基础与提升视频教程分享,视频+源码+PPT下载

一、gdb的概述
gdb是GNU开源组织发布的一个强大的UNIX下的程序调试工具。

二、gdb的使用场景
启动你的程序,可以按照你的自定义的要求随心所欲的运行程序。
可让被调试的程序在你所指定的调置的断点处停住。(断点可以是条件表达式)
当程序被停住时,可以检查此时你的程序中所发生的事。
动态的改变你程序的执行环境。

Debug模式:

代码在编译时会显示出完整的调试信息以定位问题,编译期间可以查看程序的运行时信息,且编译期间不考虑对代码的执行进行优化。生成的可执行文件执行速度偏慢。

Release模式:
代码在编译时不会显示调试信息,并且编译期间会优化代码的执行。生成的可执行文件执行速度较快。
GDB主要在Debug模式下进行使用。

对照每个线程的上下文堆栈,搞清楚其逻辑,并结合主线程,看看每个线程是在何时启动的,端口在何时启动侦听的,等等。做完这一步,关于 redis-server 的框架也基本清楚了。

接着我们可以选择一个自己感兴趣的命令,搞清楚 redis-cli 与 redis-server 命令的交互流程。
最后,如果对 redis-server 源码中各种数据结构和细节感兴趣,我们可以进一步深入到具体的代码细节。
当然,不熟悉 GDB 的读者看笔者这段操作流程比较困难,这是正常的,说明如果想通过调试去研究 Redis 这一款开源软件,你需要去补充一点 GDB 调试的知识
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Linux Lin Release Server Redis

沙发
晏几道 发表于 2023-10-26 11:48:40
关注一下

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
扫码
拉您进交流群
GMT+8, 2026-1-27 04:21