2 weixin_41041321

尚未进行身份认证

暂无相关描述

等级
TA的排名 16w+

链接选项Bsymbolic

问题描述回归正题,前段时间项目开发中,实现了一个动态库,封装了一些方法。然后基于这个动态库,实现了一个应用程序。应用程序中含有全局变量A,动态库中也含有全局变量A,当我调用动态库中函数后,发现应用程序的A发生了变化!!!O,MyGod!对于我这种还没在Linux下做过开发的人来说,一头雾水。。。。。。于是我尝试着,将A中的变量名称改为B,这样问题也就没有了~~~原因应用程序进行链接的...

2018-11-01 09:35:48

gcc -Wl,--wrap,malloc 替换系统函数

GNU链接器就提供了一个好用的方法:–wrap=symbol函数名为“__wrap_symbol”,且称其为包装函数,“symbol”是一个函数名,大致执行过程是这样的:当调用“symbol”函数时,如果“symbol”函数未定义的话就会调用“__wrap_symbol”函数;“__real_symbol”也是个相关的函数,当其只声明不定义的话,我们对其的调用将调用真正的“symbol”函...

2018-10-26 14:17:27

kthread/waitqueue/tasklet/set_bit

•Softirq是中断下半部的处理方式(可以在不同cpu上同时运行)•tasklet是基于softirq实现的,使用比softirq简单.不能在不同cpu上同时运行,但是不同cpu可以运行不同的tasklet.•vk_tasklet_init(&pstDecObj->stDecTasklet,pstDecObj->pfnHandleDecodeDone,(unsignedl

2018-01-16 14:27:20

python 使用opencv 把视频 分割成图片

#--coding:utf-8--importcv2#图像路径名字错误不提示im=cv2.imread("timg.jpg",cv2.IMREAD_GRAYSCALE)cv2.imwrite('res.jpg',im)'''cap=cv2.VideoCapture("1EF5013E37956E7EF2D5F935B6107F34.mp4")whileTrue:

2017-12-31 20:25:12

python 使用 imagehash 和 distance 相似图片识别

#--coding:utf-8--fromPILimportImageimportimagehashimportdistancefunct_hash=imagehash.phashpil_im=Image.open(r"timg.jpg")stepx=64stepy=64printpil_im.sizeoneitem=[]res_box=[]'''d

2017-12-31 20:18:28

hook glibc

我们知道,Linux的用C库的都是glibc,有一个叫libc.so.6的文件,这是几乎所有Linux下命令的动态链接中,其中有标准C的各种函数,默认情况下,linux所编译的程序中对标准C函数的链接,都是通过动态链接方式来链接libc.so.6这个函数库的。这也意味着我们在通过我们注入的.so来实现函数覆盖劫持之后需要从libc.so.6中取得原本的正常函数,让程序继续正常执行正常程序m

2017-12-12 11:33:28

记录一次 linux kernel bug

[2017-07-28  12:07:43:423][160290.942415]------------[cuthere]------------[2017-07-28  12:07:43:423][160290.947109]kernelBUGatfs/ext4/mballoc.c:3728![2017-07-28  12:07:43:423][160290.9518

2017-12-06 10:26:56

nltk_data 离线安装

windows默认搜索路径 Searchedin:  -'C:\\Users\\xa00010/nltk_data'  -'C:\\nltk_data'  -'D:\\nltk_data'  -'E:\\nltk_data'  -'C:\\Python27\\nltk_data'  -'C:\\Python27\\lib\\nl

2017-12-06 10:26:29

使用静态busybox 性能提升, 确一直coredump 的问题

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/arch/arm/include/asm/processor.h?id=acfdd4b1f7590d02e9bae3b73bdbbc4a31b05d38经分析需要kernel打patch

2017-12-06 10:26:10

python requests 库 跳过ssl 验证

#-*-coding:utf-8-*-importrequestsimportsysreload(sys)sys.setdefaultencoding('utf-8')#importssl#ssl._create_default_https_context=ssl._create_unverified_contextproxy_handler={'http':

2017-12-06 09:37:50

使用valgrind 检查内存 泄露 等问题

exportVALGRIND_LIB=/data/build.so/lib/valgrind/cd/data/build.so/bin./valgrind--tool=massif--threshold=0.000001--time-unit=B--trace-children=yes--time-unit=B--trace-children-skip=*pangu,SCLR*

2017-12-05 11:26:36

记录一次系统调用慢的 分析过程

收到问题jira描述•   •      [EM]0131559][工厂适应性问题]执行shell命令,系统反应慢•      分析发现调用系统system函数执行命令的时间过长,每条命令执行约250ms。对比其它平台只需要

2017-12-05 11:21:19

使用facebook infer 进行代码审查

http://fbinfer.com/docs/getting-started.htmlhttp://fbinfer.com/docs/hello-world.html

2017-12-05 11:10:21

使用trace-compass 分析 lttng 抓取的结果

2.http://archive.eclipse.org/tracecompass/doc/org.eclipse.tracecompass.doc.user/Trace-Compass-Main-Features.html             此工具可以直接下载3. trace-compass-3.0.0-20170614-1849-win32.win32.x86_64 

2017-12-05 11:06:50

观察中断情况, 绑定 指定的cpu

void*threadfunction(){cpu_set_tmask;CPU_ZERO(&mask);CPU_SET(0,&mask);第一个参数是你要绑定的cpuif(-1==pthread_setaffinity_np(pthread_self(),sizeof(mask),&mask)){fprintf(stderr,"pthread_

2017-12-05 10:55:06

进程 线程 优先级调整方法

1. nice  优先级的范围为-20~19等40个等级,其中数值越小优先级越高,数值越大优先级越低,既-20的优先级最高,19的优先级最低2.chrt命令chrt -p -r  50        调整成RR   50 chrt -p  是查询 chrt -p -o  0         调整成other

2017-12-05 10:51:15

记录一次 busybox 死机

(gdb)bt#0 0x0009be32in____strtoll_l_internal()#1 0x0009b7b4instrtoq()#2 0x0006c3d2inmdev_main(argc=,argv=)atutil-linux/mdev.c:1116#3 0x0002f18cinrun_applet_no_and_exit(applet_

2017-12-05 10:34:40

使用cgroup 分配 cpu 资源给各个进程

mkdir/cgroupmount-tcgroup-ocpucgroup/cgroupmkdir/cgroup/GroupAmkdir/cgroup/GroupBforiiiin`pidofsitatvservice`doecho$iii>/cgroup/GroupA/tasksdoneforiiiin`pidofappman

2017-12-05 10:31:28

使用 mmap64 和 /dev/mem 访问物理内存

staticint_STBC_function_open(void){ //intfd; fdmem=open("/dev/mem",O_RDWR|O_SYNC); if(fdmem==-1) { printf("opendevmemerror\n"); return(-1); } #defineKER_STBC_REG_BA

2017-12-05 10:17:48

python 遍历 程序 动态库依赖 ,减少不必要依赖,减少启动时间

遍历程序动态库依赖,减少不必要依赖,减少启动时间

2017-12-05 10:12:23

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!