- 博客(19)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 Fault管理与自动化
Fault管理和自动化,咋一看上去,是两个不想干的事情。但是,仔细想想,却是息息相关。Fault管理中很重要的是Release的管理,风险管理,进度管理,流程管理。整体是比较繁琐的,而管理学的重心是沟通,与各种各样的人沟通。而Fault管理中除了与人沟通之外,其他大部分的时间是花在琐碎的发报表、Release填写和催促、Fault的相关的流程上操作。而往往这些是有重复的,完全可以自动化,让Fau
2015-06-06 15:50:08 675
原创 维护项目的敏捷转型
现在敏捷已经是IT行业的开发流程标准了,大部分的产品开发都采用的敏捷开发模型来解决瀑布模型产生的问题。敏捷的迭代周期短,每个迭代都有预设目标,同时每个迭代都有相应的产出,能大大地提高项目相关人的满意度。 一个典型的产品周期是从需求澄清,再到开发、测试、发布、维护。而当产品成熟后,新的功能和改进将会越来越少,同时维护和支持的工作量则会越来越大。一整套的技术支持、项目管理、工程维护、版本管理将会在产
2015-03-11 22:04:50 1109
原创 关于Python Fault 管理半自动化心得[一]
最近从码农变成了苦逼的 FC ,所谓的FC是Fault Coordinator的简称,是负责协调处理Fault相关的角色。FC的所负责的杂事特别多,很多情况是完全重复的机械化劳动。 在做FC的一个职责是为每个Fault添加不同分支的改动表格给开发人员,这样保证所有Fault影响到的分支都有相关改动。 在公司龟速的网络下,每个分支的创建是相当的折磨人,而且在Fault特别多的情况
2015-01-16 22:53:53 696
原创 自己写调试器 软断点 [Linux]
之前结果Windows上面的如何是实现,下面写Linux如何实现 在linux中,我们需要用到ptrace 这个系统调用来实现对进程的控制。同时为了获取系统库中的函数地址,我们需要dlsym等在libdl中的相关函数帮助。 ptrace 的原型如下: long ptrace(enum __ptrace_request request, pid_t pid, void *addr, void *data); 我们可以看到 ptrac
2013-11-28 21:48:57 2152 1
原创 Git 成长贴[一]
由于工作的需要,自己常常需要对同样的代码拉不同的分支,做不同的测试,最后要合并其中一个分支。刚看时使用SVN,发现自己必须在本地或者服务器上建立不同的分支,而且拉很多分支的时候这个就很痛苦。后来发现Git--分布式的版本控制工具,自己便在本地使用它做为版本管理。发现它不论在拉分支(Git可以随意拉很多分支),合并,提交都很是方便。现在总结下Git的使用。基本使用gi
2013-08-05 19:53:19 797
原创 【算法】大数四则运算
最近在写大数四则运算的作业,发现网上有很多相关的算法,有3位作四则运算的,也有仿造计算机做移位运算的,当然,有仿照手工运算的算法。最好的算法应该可以参考python的大数运算,不过本人还是自己实现仿手工运算的算法:好用、简单。/***************************************************************** * *
2013-07-22 21:58:29 599
原创 自己写调试器 软断点
调试器的核心便是断点,根据断点的类型不同,可以分为:软断点,硬断点,内存断点。 软断点实际上是一个单字节的指令,改指令可以引发软中断,将当前进程的控制权交给OS。在X86的架构上,是INT3。要想引发软中断,首先得了解在CPU上出发软中断的机器码。在X86上便是0xCC。然后,调试器的工作便是替换原来指令的机器码中的操作码为引发软中断的操作码,让OS捕获中断,挂起进程,同时让OS把中断的处理
2012-12-28 07:51:07 1455
原创 自己写调试器 进阶
实现了调试器的控制进程后,我们需要访问进程的内存空间,和进程内部各个线程的上下文。 我们用OpenThread来获得一个线程的handle。HANDLE WINAPI OpenThread( _In_ DWORD dwDesiredAccess, _In_ BOOL bInheritHandle, _In_ DWORD dwThreadId);def open_
2012-12-23 20:29:48 1458
原创 自己写调试器 初探
调试器有两种,一种是黑盒调试器,另外一种是白盒调试器。而黑盒调试又分两种:用户态和系统态。一般来说,像GDB这样的既可以用作黑盒,又可以用作白盒。但只能用作用户态来调试程序。 我看了一些大牛们的博客和一些书之后,也有自己写调试器的想法。准备在Windows和Linux上各实现简单的调试功能,顺便对Intel X86的架构有更加深入的了解。 调试器要实现的功能:Con
2012-12-21 07:17:17 2464
原创 函数指针浅谈 ----- 表与函数指针完成命令行参数解析
函数指针浅谈 -----表与函数指针完成命令行参数解析 个人认为C语言的精妙在于宏,指针。这使的C语言既可以与底层硬件打交道,又可以完成上层复杂的构架设计。而函数指针又是指针的一朵绚烂绽放的花。 所谓函数指针,就是一个指向函数地址的指针变量,虽然这只是一个变量,但是在C语言中,这个变量可以做很多事情。下面是一个函数指针的声明:void (* param_handler)
2012-05-11 22:01:16 714
原创 VIM 配置文件
"不要和 VI 兼容set nocompatible"设置使用的系统function! MySys() return "win32"endfunctionif MySys() == "linux" || MySys() == "mac" set shell=bashelse "set shell=D:\MinGW\msys\1.0\msys.batendi
2011-11-14 11:10:58 756
原创 重启博客之旅
毕业,工作快一年了,当时在学生时代开启了博客,由于我的懒惰没有再更新。现在工作了,慢慢有了实践的经验,但也发现很多东西需要学习。现在开始重启博客,把自己所学、所得和朋友们分享。
2011-10-29 16:08:14 393
转载 [转]Android编译Native C的helloworld模块
<br /> <br /> Android编译环境本身比较复杂,且不像普通的编译环境:只有顶层目录下才有Makefile文件,而其他的每个component都使用统一标准的Android.mk. Android.mk文件本身是比较简单的,不过它并不是我们熟悉的Makefile,而是经过了Android自身编译系统的很多处理,因此要真正理清楚其中的联系还比较复杂,不过这种方式的好处在于,编写一个新的Android.mk来给Android增加一个新的Component会比较简单。<br />编
2010-06-20 16:05:00 1094 1
原创 jEdit的汉化
其实jEdit是很好的编辑器,对于Java的软件人员来说,只是看着英文很是不爽,所以在寒假的几天花了点时间来进行汉化,呵呵,其实jEdit是我配置很是灵活,有property 的配置 还有 xml的配置,xml 的我没有仔细看,我只是写了汉化的 property 文件。可是在汉化的时候有问题,出现了乱码。在jEdit的邮件列表问的时候才发现他们没有考虑到国际化,编码采用西欧的iso-8859
2010-01-21 12:24:00 1909 8
原创 #define ##的用法
最近在看源代码,发现有#define Q_TYPE(_T) Q##_T 的用法,不知其意,Google了下,发现有如下用法,Mark一下:定义单行宏:主要有以下三种用法. 1) 前加##或后加##,将标记作为一个合法的标识符的一部分.注意,不是字符串.多用于多行的宏定义中.例如:#define A(x) T_##x
2009-12-04 22:04:00 495
原创 在CSDN上开博客了
在CSDN上开博客了,原来是在lupaworld上开的,但是由于它的写文章的功能用得很是不适应,就索性搬到CSDN来,把lupaworld做为一个镜像吧! 欢迎访问我的Lupaworld的博客:http://www.lupaworld.com/333723/
2009-11-12 21:22:00 440
原创 SciTE的配置
SciTE是我最新发现的比较好的编辑软件,我用过vim,emacs,ue等等,可能是被微软的那一套给惯坏了吧,但是由于对linux的喜爱,我不得不找一个跨平台的编辑软件,试过VIM还有EMACS,他们的年龄都比我还要大,但是就是不爽他的习惯,还要浪费时间学习他们那一套,我勉强的用着VIM,但是我发现了小巧的SciTE,哈哈,找到了我的最爱,只是配置文件有些麻烦,我搞了很久,终于有一个很满
2009-11-12 21:15:00 3813
Gutter和Carter怎么翻译比较好
2010-01-18
TA创建的收藏夹 TA关注的收藏夹
TA关注的人