测试、分析、逆向
长寿梦
我为什么努力,是为了使得人生有更多的可选项。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
对于全局变量对应的内存分配问题的追踪
参考:http://blog.codinglabs.org/articles/a-malloc-tutorial.html测试代码:int nNum1;//Save into DATAint nNum2;//Save into DATAint nNum3;//Save into DATAint nNum4=1111111;//Save into BSS原创 2017-04-07 12:45:00 · 673 阅读 · 0 评论 -
LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件
转自:http://blog.sina.com.cn/s/blog_7b4a5b550101qmx1.html晚在VS2010上运行程序还很好用,今天早上一来实验室就编译失败了。报错信息为:LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏百度一下,发现优快云讨论贴:http://bbs.csdn.ne转载 2017-07-24 08:40:07 · 535 阅读 · 0 评论 -
select模式的IO的事件通知一定是准确的吗?
这里有一个C++写的SDK,封装了网络通信层,基于Select IO 网络IO模型;同一份代码,移植到到NDK和IOS下,线上反映的问题是,刚建立好TCP连接,然后执行Send操作,立即报EPIPE的错误;报这个错误的原因解释是:1.尝试在一个未建立连接的socket上send 2.尝试在一个已经断开连接或者关闭写端通道的连接的socket上send;但是先建立NIO的socket,然后使原创 2017-05-20 21:22:25 · 704 阅读 · 0 评论 -
生成随机字符串
extern char szLog[32];char szLog[32]={0};static unsigned long next = 1;/* RAND_MAX assumed to be 32767 */int myrand(void) { next = next * 1103515245 + 12345; return((unsigned)(next/65536) % 3原创 2017-05-20 14:30:00 · 463 阅读 · 0 评论 -
如果在回调函数中释放对象,会怎么样?
问题的场景:先new一个对象p,假设对象里会执行到一个回调函数,如果在此回调函数里delete p,再继续执行代码;结果会怎么样?可能结果: 1.对象已经被释放,this指针指向的一块无效的内存,那么继续执行this的成员函数或者其他的成员变量,应该会崩溃; 2.执行后面的代码,虽然内存已经访问非法,但是内存其实是可用的,或者叫做强行可用的,还可以继续执行原创 2017-05-18 14:15:23 · 1510 阅读 · 0 评论 -
VC热键总结
F1: 帮助Ctrl+O :OpenCtrl+P :PrintCtrl+N :NewCtrl+Shift+F2 :清除所有书签F2 :上一个书签Shift+F2 :上一个书签Alt+F2 :编辑书签Ctrl+F2 :添加/删除一个书签F12 :Goto definitionShift+F12 :Goto referenceCtrl+Num+ :Displays the next原创 2010-04-16 23:52:00 · 847 阅读 · 0 评论 -
如何使用Shell管理一个服务
针对一个服务,比如说C++服务工作在Linux环境环境下,因为它的启动往往伴随着一些环境变量的设置,或者依赖库的设置、或者特殊的启动方式,我们可能需要专门针对它写一个自动化管理的脚本,实现一键操作;原创 2017-04-01 13:53:28 · 1049 阅读 · 0 评论 -
测试Epoll对TCP连接的敏感
测试场景构造:-------------------------第一步:server在一个端口监听,提供ECHO服务;第二步:客户端就是阻塞的SOCKET实现;A、B、C建立对server的tcp连接;Server执行accept后监听连接的事件:self._epoll_loop.register(acceptor_fd, select.EPOLLET | select.EPOLLOUT原创 2017-03-29 16:58:57 · 1309 阅读 · 0 评论 -
如果服务端重启,那么客户端的长连接会怎么样
这里记录一次服务端重启时,使用winshark的抓包过程;场景是:SDK 建立对 服务端的长连接,客户端连接策略是:失活判断: 一条连接 180s都没有read到数据;保活判断: 每秒检查一次,连续60次检查都为空闲,那么发送一次keeplive包。重连逻辑: 如果连接断开,那么会以2s 、 4s、 6s、 8s...这样的递增产生的时延,去重连,每次连接等待5s判断连接超原创 2017-04-23 19:54:49 · 4031 阅读 · 0 评论 -
引发Coredump的代码测试例子
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl原创 2017-04-10 11:54:26 · 1050 阅读 · 0 评论 -
关于函数中栈内存的分配问题追踪
关于函数中栈内存的分配问题追踪参考:《如何判断栈、堆的增长方向?》 链接:http://blog.youkuaiyun.com/changyourmind/article/details/51839395关于栈内存:1.特意针对栈overflow的写操作,观察打印的行文: 测试代码如下: void test2(int ss=0){ in原创 2017-04-07 18:18:01 · 436 阅读 · 0 评论 -
关于 Segmentation fault的总结
Segmentation fault到底是何方妖孽链接:http://blog.chinaunix.net/uid-23069658-id-3959636.html总结: 程序之所以会时不时的出现“Segmetation Fault”的根本原因是进程访问到了没有访问权限的地方,诸如内核区域或者其0x08048000之前的地方,或者由于要访问的内存没有经MMU进行映射所导致。而这转载 2017-04-06 14:04:12 · 1545 阅读 · 0 评论 -
求矩阵的行列式
import numpy as npmat_1=[ [2,4,1,54], [23,42,4,4], [3,1,4,56], [6,3,2,6],]mat_2=[ [100,2,3], [4,5,6], [7,8,9]]def det(mat,n): A=0 if n==1: A=mat[0原创 2017-05-23 14:28:43 · 1581 阅读 · 0 评论 -
关于heap内存分配问题追踪以及对引发coredump原因的思考
参考: malloc内存分配字节对齐问题 http://blog.youkuaiyun.com/shemangui/article/details/50459102 关于分配内存操作的测试:int getNTick(){ struct timespec ts; clock_gettime(CLOCK_MONOTONIC,&ts); int原创 2017-04-07 22:23:19 · 1764 阅读 · 0 评论 -
纯Python实现的网络服务框架 pyxxnet3
pyxxnet_projectHi,This is a pure python implementation of network services development framework.A clever person solves a problem. A wise person avoids itPlease call Me programming devil.原创 2017-12-24 19:57:28 · 1081 阅读 · 0 评论
分享