菜鸟笔记
提升您的技术认知

Linux 笔记

什么是进程?什么是线程?进程和线程之间的区别是什么?

菜鸟阅读 : 22赞(0)

什么是进程?什么是线程? 进程是系统中正在运行的一个程序,程序一旦运行就是进程。 进程可以看成程序执行的一个实例。进程是系统资源分配的独立实体,每个进程都拥有独立的地址空间。一个进程无法访问另一个进程的变量和数据结构,如果想让一个进程访问另...

使用addr2line定位so文件段错误的问题

菜鸟阅读 : 26赞(0)

首先、查看我们的程序运行报的段错误信息 通过命令dmesg -T| tail查看,或者查看日志/var/log/message [root@prime complibs]# dmesg -T| tail [一 8月 30 02:22:24 ...

Address Sanitizer(Asan)原理及实战定位

菜鸟阅读 : 23赞(0)

Asan ASAN(AddressSanitizer的缩写)是一款面向C/C++语言的内存错误问题检查工具,可以检测如下内存问题: 使用已释放内存(野指针) 堆内存越界(读写) 栈内存越界(读写) 全局变量越界(读写) 函数返回局部变量 内...

Linux下内存检测工具:asan

菜鸟阅读 : 26赞(0)

Linux下内存检测工具:asan ASAN(Address-Sanitizier)早先是LLVM中的特性,后被加入GCC 4.8,在GCC 4.9后加入对ARM平台的支持。因此GCC 4.8以上版本使用ASAN时不需要安装第三方库,通过在...

谈谈程序链接及分段那些事

菜鸟阅读 : 25赞(0)

如果读过我之前的文章就会知道,程序构建大概需要经历四个过程:预处理、编译、汇编、链接,这里主要介绍链接这一过程。 链接链的是什么? 链接链的就是目标文件,什么是目标文件?目标文件就是源代码编译后但未进行链接的那些中间文件,如Linux下的....

POSIX信号处理

菜鸟阅读 : 32赞(0)

        信号(signal)就是通知某个进程发生了某个事件,有时也称为软件中断(software interrupt)。信号通常是异步发生的,也就是说进程预先不知...

linux僵尸进程

菜鸟阅读 : 38赞(0)

给进程设置僵尸状态的目的是维护子进程的信息,以便父进程在以后某个时间获取。这些信息包括子进程的进程ID、终止状态以及资源利用信息(CPU时间,内存使用量等等)。如果一个进程终止,而该进程有子进程处于僵尸状态,那么它的所有僵尸子进程的父进程I...

linux 内存查看方法:meminfo\maps\smaps\status 文件解析

菜鸟阅读 : 35赞(0)

linux 下面查看内存有多种渠道,比如通过命令 ps ,top,free 等,比如通过/proc系统,一般需要比较详细和精确地知道整机内存/某个进程内存的使用情况,最好通过/proc 系统,下面介绍/proc系统下内存相关的几个文件 &n...

线程局部存储-pthread_getspecific和pthread_setspecific使用

菜鸟阅读 : 32赞(0)

 在Linux系统中使用C/C++进行多线程编程时,我们遇到最多的就是对同一变量的多线程读写问题,大多情况下遇到这类问题都是通过锁机制来处理,但这对程序的性能带来了很大的影响,当然对于那些系统原生支持原子操作的数据类型来说,我们可...

Linux查看本机外网ip

菜鸟阅读 : 42赞(0)

前言 我们上网用的IP并不一定是本机网卡的IP地址,由于公网IP地址稀少,国内绝大多数电脑上网,一般都是通过拨号或者端口映射。多个内网地址映射到一个公网地址来实现上网的。 目录 1.查看本机网卡ip 2.查看本机外网ip上网ip 3.路由跟...