![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LINUX
文章平均质量分 71
hercu1iz
i am a robot.
展开
-
编译LINUX内核驱动程序
实际操作一下:如何把一个最简单的驱动程序(hello),按照 2 种方式进行编译:编译进内核;编译为一个独立的驱动模块;实践环境为了便于测试,以下操作都是在 Ubuntu16.04 操作系统里完成的。编译Linux驱动程序,肯定需要内核源码,这里选择的是 linux-4.15 版本,可以在官网下载。文末有下载方式。下载之后,把linux-4.15.tar.gz解压到Ubuntu中任意目录即可,例如:解压到~/tmp/目录下:$ tar -zxvf linux-4.15.tar.gz -转载 2022-03-03 21:03:36 · 676 阅读 · 0 评论 -
readelf 和 objdump 的区别
readelf 和 objdump 的区别1.概念的区别:readelf 显示elf文件的信息objdump 显示目标文件的信息2.readelf 并不提供反汇编功能objdump 提供反汇编功能3.readelf 可以显示调试信息objdump 则不能显示调试信息但是实际上bfd库支持DWARF的处理,通过简单处理objdump也可以显示调试信息4.objdump 使用了bfd库进行文件读取。BFD库(Binary File Descriptor Library),它是一个GNU项目原创 2021-10-23 21:06:13 · 209 阅读 · 0 评论 -
2021/10/23-调试及性能分析
文章目录调试及性能分析调试代码打印调试法与日志第三方日志系统调试器专门工具静态分析性能分析计时性能分析工具(profilers)CPU内存事件分析可视化资源监控专用工具调试及性能分析调试代码打印调试法与日志“最有效的 debug 工具就是细致的分析,配合恰当位置的打印语句” — Brian Kernighan, Unix 新手入门。调试代码的第一种方法往往是在您发现问题的地方添加一些打印语句,然后不断重复此过程直到您获取了足够的信息并找到问题的根本原因。另外一个方法是使用日志,而不是临时添加打印转载 2021-10-23 20:48:00 · 231 阅读 · 0 评论 -
2021/10/21-版本控制Git
《2021年10月21日》 【连续第21天总结】文章目录数据整理正则表达式回到数据整理awk – 另外一种编辑器分析数据利用数据整理来确定参数整理二进制数据数据整理将某种格式存储的数据转换成另外一种格式。例如这样一条命令 journalctl | grep -i intel,它会找到所有包含intel(不区分大小写)的系统日志。您可能并不认为这是数据整理,但是它确实将某种形式的数据(全部系统日志)转换成了另外一种形式的数据(仅包含intel的日志)。大多数情况下,数据整理需要您能够明确哪些工具可以被转载 2021-10-22 00:18:35 · 99 阅读 · 0 评论 -
2021/10/20-命令行环境
《2021年10月20日》 【连续第20天总结】文章目录命令行环境任务控制结束进程暂停和后台执行进程终端多路复用别名配置文件(Dotfiles)可移植性远端设备执行命令SSH 密钥密钥生成基于密钥的认证机制通过 SSH 复制文件端口转发SSH 配置杂项Shell & 框架终端模拟器命令行环境任务控制某些情况下我们需要中断正在执行的任务,比如当一个命令需要执行很长时间才能完成时(假设我们在使用 find 搜索一个非常大的目录结构)。大多数情况下,我们可以使用 Ctrl-C 来停止命令的执行。但转载 2021-10-20 23:51:11 · 242 阅读 · 0 评论 -
2021/10/19-vim编辑器
《2021年10月19日》 【连续第19天总结】文章目录VIMVim的哲学编辑模式基本操作插入文本缓存, 标签页, 窗口命令行Vim 的接口其实是一种编程语言移动选择编辑计数修饰语自定义 Vim扩展 Vim(插件)其他程序的 Vim 模式ShellReadline其他Vim 进阶搜索和替换多窗口宏扩展资料VIMVim的哲学在编程的时候,你会把大量时间花在阅读/编辑而不是在写代码上。所以,Vim 是一个_多模态_编辑 器:它对于插入文字和操纵文字有不同的模式。Vim 是可编程的(可以使用 Vimscr转载 2021-10-19 22:32:13 · 138 阅读 · 0 评论 -
2021/10/12-数据整理
《2021年10月12日》 【连续第12天总结】文章目录数据整理正则表达式回到数据整理awk – 另外一种编辑器分析数据利用数据整理来确定参数整理二进制数据数据整理将某种格式存储的数据转换成另外一种格式。例如这样一条命令 journalctl | grep -i intel,它会找到所有包含intel(不区分大小写)的系统日志。您可能并不认为这是数据整理,但是它确实将某种形式的数据(全部系统日志)转换成了另外一种形式的数据(仅包含intel的日志)。大多数情况下,数据整理需要您能够明确哪些工具可以被原创 2021-10-12 23:57:47 · 142 阅读 · 0 评论 -
2021/10/9-ELF结构
《2021年10月9日》 【连续第9天总结】文章目录ELF结构简介文件格式ELF Headere_idente_typee_machinee_entrye_phoffe_shoffe_ehsizee_phentsizee_phnume_shentsizee_shnume_shstrndxProgram Header Table概述基地址 - Base AddressSection Header TableSectionsELF结构参考简介ELF (Executable and Linkable F原创 2021-10-09 23:04:15 · 176 阅读 · 0 评论 -
2021/10/7-Shell脚本与工具
《2021年10月7日》 【连续第7天总结】文章目录shell脚本赋值定义字符串控制流,函数,参数*命令替换* (*command substitution*)实现进程替换通配符shebang(#!)Shell工具查看命令如何使用-TLDR page查找文件-find/fd/locate查找代码-grep/rg查找 shell 命令文件夹导航-fasd/autojumpshell脚本赋值赋值语法:foo=bar注意:不能存在空格。因为解释器会调用程序foo 并将 = 和 bar作为参数。 总原创 2021-10-07 23:07:50 · 172 阅读 · 0 评论 -
linux shell中单引号‘‘,双引号““和反引号``的区别(很有用)
单引号''和双引号""两者都是解决变量中间有空格的问题。字符含义$:参数替换反引号 ``:命令替换单引号功能''剥夺了所有字符的特殊含义,单引号''内就变成了单纯的字符。双引号功能同样剥夺了所有字符的特殊含义,但是双引号""则对于双引号""内的参数替换($)和命令替换(反引号``)是例外。反引号命令替换,命令替换是指Shell可以先执行单引号``中的命令,将输出结果暂时保存,在适当的地方输出。...原创 2021-08-13 15:33:02 · 3327 阅读 · 0 评论 -
编写一个最小的ELF程序
编写一个最小的ELF程序介绍实验程序编译查看自动生成的段魔改整合ELF段,自定义ld脚本去除符号表,最后结果参考介绍最近分析的都是ELF文件,正好通过自己DIY一个ELF分析结构。顺便复习一遍之前读过的《程序员的自我修养》 内容。(没读过的朋友想学习ELF相关知识,这本书很有必要学习,能实现书中的实验最好了,很有难度的哦。)实验程序汇编代码采用 AT&T 格式这里采用 GCC 内置汇编代码的编写来避免 libc 中自带的库函数代码。char *str="HELLO\n";voi原创 2021-07-20 09:56:18 · 511 阅读 · 0 评论 -
LINUX_apt-get安装软件包
apt-get install [package]下载 package 以及所依赖的软件包,同时进行软件包的安装或者升级。apt-get remove [package]移除 package 以及所有依赖的软件包。apt-cache search [pattern]搜索满足 的软件包。apt-cache show/showpkg [package]显示软件包 [package] 的完整描述。...原创 2021-03-16 21:09:42 · 260 阅读 · 0 评论 -
虚拟机繁忙,任务管理器关不掉,界面卡在灰色解决办法
引言: 这里以centos作为样例。亲测有效两种主要解决方法(关键是针对 进程杀不掉,杀不掉杀不掉 )一. 直接关机重启搞定(但嫌麻烦所以整了半天发现了方法二)二, 先苦诉下血泪史啊啊啊~~,进程关不掉的第一时间我就想先把跟VM相关的服务先都关掉,可是刚关竟然又自动打开了…然后百度各种方法也没找到有效的解决方案(然后发现许多人都碰到类似的问题,所以下面分享给大家我的解决方案)。就是上图这...原创 2020-04-11 22:02:56 · 2780 阅读 · 0 评论 -
Linux_Shell 输入< | 输出> 重定向
Shell 输入/输出重定向参考Here Document重定向方式/dev/null 文件之重定向2>&1的含义原理解释参考参考链接:>,<,>>,>&,<&重定向命令概念命令说明command < file将输入重定向到 file。注意理解:读取file里面的内容作为command输入执行。Here Document重定向方式Here Document 是 Shell 中的一种特殊的重定向方式,原创 2021-03-05 16:05:01 · 99 阅读 · 0 评论 -
工具篇_make
GNU make前言Make工具Makefile文件规则参考前言工欲善其事,必先利其器。工具的使用,相对知识点的理解会更容易一些,但付出的时间相对会更多(需要不断的使用,才能形成长期记忆)。为了避免重复造轮子的总结,工具篇以“简”为主题,附上相关参考资料链接及原参考出处(以表对各位无私分享知识作者的敬意)。Make工具概述>代码变成可执行文件,叫做编译(compile);先编译这个,还是先编译那个(即编译的安排),叫做构建(build)。区分清楚编译 和 构建的关系。编译编写的源程原创 2021-03-05 14:54:19 · 138 阅读 · 0 评论 -
linux bash shell之变量替换::=句法、=句法、:-句法、-句法、=?句法、?句法、:+句法、+句法
点击跳转文章出处转载 2021-03-05 11:26:28 · 121 阅读 · 0 评论 -
LINUX_磁盘分区|挂载
分区与挂载磁盘分区分区步骤挂载磁盘分区Linux磁盘分区主要分为基本分区(primary partion)和扩充分区(extension partion)两种,基本分区和扩充分区的数目之和不能大于四个。且基本分区可以马上被使用但不能再分区。扩充分区必须再进行分区后才能使用,也就是说它必须还要进行二次分区。Linux硬盘编号说明Linux中的硬盘分为IDE硬盘,SCSI硬盘和SATA硬盘硬盘编号格式为”sdXY”,其中”sd”表示硬盘为SCSI的类型(IDE类型为hd).X表示盘号(a基本盘,b转载 2021-02-27 10:41:50 · 110 阅读 · 0 评论 -
LINUX文件查找_Find | Locate
目录 | 文件查找find命令locate命令find 和 locate 对比find命令语法格式:find [path] [-expression] [file] [-actions]find 命令用来在指定目录下(path)查找文件。任何位于参数之前的字符串(file)都将被视为欲查找的目录名。如果 path 是空字串则使用目前路径。如果是空字串则使用 -print 为默认预设 expression。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件,并原创 2021-02-22 11:34:18 · 91 阅读 · 0 评论 -
LINUX_系统监控管理
系统监控管理篇前言统计CPU和设备IO信息进程对应的内存映射显示带宽使用情况前言以下所有命令自己尝试一遍看看效果更能加深记忆印象。统计CPU和设备IO信息iostat进程对应的内存映射pmap -[option] -PID显示带宽使用情况iftop -n -i eth0...原创 2021-01-23 10:52:58 · 106 阅读 · 1 评论 -
Linux_高效入门
拥有自定义简洁的系统环境前言LINUX结构三级目录前言大家好,这章主要是分享给我的各位同学们,及准备想用Linux操作系统的各位朋友们。Liunx程序猿得会的操作系统,而我个人更喜欢的是Linux使一切更简洁,可自定义化,它不像Windows一样强制捆绑任何软件占用你的内存空间。废话不多说,让我们一起来认识LINUX吧,希望能帮助到你们快速入门。LINUX结构1.Linux中一切皆文件...原创 2020-05-14 21:01:06 · 6286 阅读 · 16 评论