方法1 方法2 GDB调试 查看函数地址 加载第三方ko 调试ko qemu pci设备相关 查看PCI设备信息 前言 环境搭建在虚拟机ubuntu16.04下进行(vm配置开启cpu虚拟化) 一般内核调试需要的东西就是内核镜像和磁盘镜像...linux-4.15.tar.gz 解压进入 tar -xzvf linux-4.15.tar.gz cd linux-4.15 设置编译选项 make menuconfig 勾选以下项目: Kernel...有些人将 BusyBox 称为 Linux 工具里的瑞士军刀。简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令,也包含了 Android 系统的自带的shell。.../new_rootfs.img 方法2 借助base64编码从shell中直接写入(适用于写exp等) GDB调试 一般只需要设置好架构然后remote一下就行,如果是非x86的架构可能要用gdb-multiarch...进入qemu-system环境后,执行如下命令来获取pci设备信息: lspci: 显示当前主机的所有PCI总线信息,以及所有已连接的PCI设备基本信息; ubuntu@ubuntu:~$ lspci
"-h127.0.0.1" ], } ] } 4、安装vscode相关插件 5、新建build和数据配置目录(本文以我的环境为例...,xxx是我的用户名,根据自己电脑环境配置) mkdir -p /Users/xxx/cpp/src_project/cmake-build-debug cd /Users/xxx/cpp/src_project...defaults-file=/Users/xxx/cpp/src_project/cmake-build-debug/etc/my33.cnf --initialize-insecure 10、启动调试...参考文章:https://shockerli.net/post/mysql-source-macos-vscode-debug-5-7/ 调试过程中感谢富哥帮忙指导。
在Linux下搭建Swift开发调试环境 文本介绍如何在Linux下配置一个的Swift开发环境(可用于生产),文中所记录的各个配置环节不仅适用于Linux,也同样适用于在macOS下配置Visual...但转过头来思考,虽然Publish完美地支持Linux,但开发者能否像在mac上一样方便的进行开发调试呢?...之前使用Vapor的时候,曾通过Docker在Ubuntu上安装过Swift,不过代码是在mac上调试的。我也十分好奇,在2021年Swift到底在Linux下的开发环境如何?...本文的目标是在Linux上搭建一个可供生产标准的Swift开发调试环境。使用者将获得一个支持代码高亮、自动补全、定义跳转、断点调试、代码美化、代码静态扫描、跨操作系统平台配置的综合开发体验。...launch.json是vscode用于调试的配置文件,比如指定调试语言环境,指定调试类型等等。其作用和XCode中的target类似。
而Mac和Linux下要方便得多,你几乎不需要操作便可以轻松通过USB连上手机,进行开发调试。...参看http://developer.android.com/tools/device.html#VendorIds 首先通过文档找到USB Vendor IDs,文档中没有的话可以在Mac上连接USB...Mac OSX下的配置: 1.创建或修改文件: /Users//.android/adb_usb.ini 添加USB Vendor IDs: 0x0421 注意:在Finder中隐藏文件默认不显示的...$ adb devices Linux 下的配置: 1.创建或修改文件:/etc/udev/rules.d/51-android.rules, $ sudo vi /etc/udev/rules.d/51
通过GDB调试找到程序的bug 请查看位于https://github.com/xmu-Linux101/Linux101/tree/201720182/experiments/gcc-5-gdb的代码...g 默认情况下,gcc在编译时不会建个调试符号插入到生成的二进制代码中,如果需要生成调试符号信息,可以使用gcc -g选项,一般不加调试选项,否则会使代码增大。...gdb调试器的功能gdb 调试器的功能gdb调试器的功能 1.设置断点 2.单步执行程序,便于调试 3.查看程序中变量值的变化 4.动态改变程序的执行环境 5.分析崩溃程序产生的...core文件 以上这些就是这次实验的前置知识,需要我们采用gdb调试器来找出一些程序的bug 首先看一下这个程序的目录结构: ?...文件夹下是预先定义好的库函数,粗看文件结构应该可以想到array.c是一个具体实现函数功能的文件,main.c则是总的主函数,进行测试编写的代码功能是否正常执行 在找这个项目的bug之前我们必须确认一下Makefile
而这时,调试的作用就体现出来了。调试不仅仅可以用来 Debug,我觉得更重要的是它能帮你理清一个程序它是从何而始、至何而终以及它整个执行路线是什么。这便是我这篇文章为什么要介绍配置调试环境的原因。...安装完后,需要进一步进行配置才能使用: 首先用 VSCode 打开你要调试的项目目录,然后可以看到左侧栏出现一个调试按键,点击一下会弹出如下提示: 图片 这是告诉你目前没有任何的配置文件来供编译调试,...注意,点击 Create a launch.json file 创建新的配置文件时,VSCode 主窗口要处在打开某一个 C++ 文件状态下,这样它才能自动识别你是要进行 C++ 项目的编译调试工作。...好在这个插件已经给出了一般的配置模板,点击 Add Configuration,VSCode 会询问我们要选择何种调试工具,Linux 上一般都预装了 gdb,所以我们就选 C/C++: (gdb) Launch...附录 C++ Tutorial for Beginners #10: Debugging Makefile Project with Visual Studio Code IDE | (Linux GDB
构建Linux内核调试步骤 系统版本 当前宿主机内核版本 // 目前的环境是ubuntu[root@ubuntu ~]$ uname -a Linux ubuntu 5.15.0-41-generic...#44-Ubuntu SMP Wed Jun 22 14:20:53 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux 调试的内核版本 linux-4.19.25 安装系统组件...append "root=/dev/sda console=ttyS0" -s -S -smp 1 -nographic // 启动后输入poweroff关闭系统 / # poweroff gdb调试内核...()(gdb) 调试ext4文件系统 添加磁盘并格式化为ext4 [root@ubuntu ~/debug-kernel-source]$ dd if=/dev/zero of=ext4.img bs...=1M count=64[root@ubuntu ~/debug-kernel-source]$ mkfs.ext4 ext4.img 启动调试版本内核 // 在一个会话A中 添加一个ext4文件系统,
Mac下Golang环境搭建 下载安装Homebrew /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew.../install/master/install)" 安装Golang $ brew install go 设置环境变量 $ vim ~/.profile export GOOROOT=/usr/local...) } ---- Previous Swift中的闭包(Closures) Next Mac...下使用Docker制作Oralce 12c镜像
安装起来是比较容易的,简单介绍一下,以后经验多了在上干货。 1. 安装 对于所有的平台 官网 上都有安装说明,这里只针对mac系统,到 下载页面 下载最新的对应版本,下载完直接安装即可 2....设置环境变量 配置 GOROOT 和 GOPATH: 创建家目录下的go文件夹: mkdir ~/go 下面的东西放到.bash_rc(也可能是.bash_profile或者.zshrc) export...GOROOT=/usr/share/go export GOPATH=$HOME/go export PATH=$PATH:$GOROOT/bin 试一下 新建一个hello.go的文件: package
https://blog.csdn.net/lyhhj/article/details/48531877 Windows下配置Tomcat环境很easy了,那么在Mac下怎么配置Tomcat环境变量呢...open .bash_profile export PATH=$PATH:/Users/xxx/Documents/work/java/apache-tomcat-7.0.64/bin source一下
第二,当这个进程挂掉的时候,linux不会自动重启它的,想要自动重启的话,我们还要自己写一个监控重启脚本,而supervisor则可以完美的解决这些问题。...而linux系统则是没有这种功能的,我们想要停止一个进程,只能一个一个的去停止,要么就自己写个脚本去批量停止。...大伙都知道linux的进程,特别是侦听在1024端口之下的进程,一般用户大多数情况下,是不能对其进行控制的。想要控制的话,必须要有root权限。...安装 Windows和Mac下都可以使用包管理工具npm进行安装,打开终端/命令行工具,输入以下代码并执行: npm install supervisor -g //windows sudo npm...install supervisor -g //mac 说明:Mac最好加上sudo授予管理员权限进行安装,避免有的文件因权限问题下载失败导致模块无法使用。
卸载步骤如下: 1.输入sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin 2....
在Mac的使用中过程中,有许多需要增加环境变量的情况。比如配置go的私有仓库GOPRIVATE,以及校验服务器GOSUMDB。按照习惯我们都会搜索一下 "mac下如何修改环境变量"。...1.问题-环境变量不生效 mac中默认使用的是zsh终端,按照一般的修改环境变量的方法: vim ~/.bash_profile export GOSUMDB=sum.golang.google.cn...2.mac的环境变量加载顺序 Mac系统的环境变量,加载顺序为: /etc/profile /etc/paths /etc/paths.d/ ~/.bash_profile ~/.bash_login...修改用户的环境变量,只对当前用户有效, ~/.bash_profile与~/.bashrc都可以。...3.问题解决 如上所述,mac中默认使用的是zsh终端,所以上面的的环境变量增加方法只适用于bash,在zsh中不生效。
一、Linux环境搭建 1.1、安装VSCode 进入VsCode官网下载对应版本的安装包,以ubuntu的安装包(.dep)为例。 (1)安装。..."kind": "build", "isDefault": true }, "detail": "调试器生成的任务...preLaunchTask": "build-redis", "miDebuggerPath": "/usr/bin/gdb" } ] } (4) 启动调试...(5)设置断点就可以进行调试了。 二、Windows环境搭建 (1)按照虚拟机(VMware+Ubuntu)和vscode。...三、redis 调用堆栈介绍 启动调试后,在调用堆栈有redis启动的相关线程。可以看到redis不是单线程的,所说的redis单线程是指命令处理、逻辑处理是单线程。
一个最小可运行Linux操作系统需要内核镜像bzImage和rootfs,本文整理了其制作、安装过程,调试命令,以及如何添加共享磁盘。...wget https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/linux-4.14.191.tar.gz 解压源码: tar -xvf linux...内核函数调试 启动命令中添加-s参数与-S参数启动qemu。...~/busybox-1.32.0/rootfs.img -append "root=/dev/sda console=ttyS0" -s -S -smp 1 -nographic 启动gdb远程调试...在系统中执行ls命令,触发new_sync_read函数, 至此,完成了qemu环境下使用gdb进行内核函数的调试。
下载buildroot buildroot可以根据自己需求构建自己的内核,目前准备的内核是为了调试zfs.因此需要一个微内核,然后采用qemu-kv+gdb方式进行调试.后续也想着怎么把lustre...环境搞到里面了。...Custom kernel headers series (5.15.x) Kernel ---> Kernel version (Custom version) 修改fs/ext2下root...开始调试阶段 启动kvm qemu-system-x86_64 -kernel ~/buildroot-2022.02.4/output/images/bzImage -hda ~/buildroot...[root@ubuntu ~/buildroot-2022.02.4/output/build/linux-4.19]$ gdb .
https://blog.csdn.net/lyhhj/article/details/48477191 突然想学习一下Spring MVC,要用到maven环境,自己搭建了一下,就记下来防止以后忘记...首先我们先下载maven http://maven.apache.org/download.cgi 然后将maven解压到自己想放的文件夹下面 开始配置环境 如果你的根目录下面有.bash_profile...MAVEN_HOME export PATH 其中第一行是自己解压的maven文件夹目录 然后保存.bash_profile 输入source .bash_profile 使变量生效 最后输入mvn -v 测试环境是否搭建成功...有可能你的mac没有配置java的环境变量,控制台会输出wo cannot excu...........这时候你需要在.bash_profile中添加 export JAVA_HOME=$(/usr/libexec/java_home) 配置java环境变量 source一下就ok了
在Windows环境中,我们一般使用TortoiseSVN来搭建svn环境。...在Mac环境下,由于Mac自带了svn的服务器端和客户端功能,所以我们可以在不装任何第三方软件的前提下使用svn功能,不过还需做一下简单的配置。...我们首先来看下,如何在Mac环境下搭建svn服务器端环境。...mac svn 删除.svn隐藏文件的命令 打开终端,进到所在的目录,然后出入一下代码 find ....Linux 下可以用dos2unix, unix2dos, sed等命令。Windows下可用 UltraEdit 进行转换。
Mac修改文件 ~/.bash_profile # 定义不同版本jdk的java_home export JAVA_8_HOME=/Users/maruifu/work/tools/java/jdk1.8.0
领取专属 10元无门槛券
手把手带您无忧上云