- 博客(21)
- 资源 (38)
- 收藏
- 关注
原创 程序编写和调试的思考
1. 避免长时间使用调试工具(过度关注细节,无助复杂问题的解决),调试工具是辅助你理解程序状态的一种手段,适合用来分析特定条件下程序运行的状态。2. 将时间用在思考为什么程序会运行到这里,相关状态可以被通过哪些模块,函数改变?3. 多使用ASSERT让异常情况尽早被探测,好的ASSERT就是函数最好的注释。4. 写全判断逻辑,有if就一定要写else。
2016-03-24 10:19:38
853
原创 Lock, semaphore, condition variables and monitors.
Semaphore: Down operation on a semaphore checks to see if the value is greater than 0, if so, it decrements the value and just continues. If the value is 0, the process is put to sleep(sleep
2015-03-16 15:55:26
906
原创 理解用户态,内核态
1. 可执行指令集不同:CPU运行在内核态时,可以执行所有CPU指令,访问所有设备文件。2. 可访问虚拟内存范围不同:内核态可以访问进程的所有虚拟内存。3. 用户态要访问内核态的数据时,一般需要通过系统调用访问。 Linux提供的/proc文件系统可以使用户态进程快速访问内核数据而无需CPU切换到内核态。
2015-03-09 10:36:00
531
转载 图解Git
图解Git其他语言: Deutsch English Español Français Italiano 日本語 한국어 Português Русский Slovenčina Tiếng Việt如果图片不能显示,试试非SVG版此页图解git中的最常用命令。如果你稍微理解git的工作原理,这篇文章能够让你理解的更透彻。 如果你想知道这个站点怎样产生,请前往Git
2015-02-09 15:09:32
592
转载 make 并行编译结果的串行输出
Descrambling Parallel Build LogsBy Eric Melski - March 28, 2013Summary:One of GNU make's many features allows you to shorten build times by running more than one comm
2015-02-03 16:38:51
999
原创 理解Linux重定向
1. Linux中执行open操作,打开一个文件时,会在进程文件描述表中新添加一项(文件描述符id + 指向内核文件描述表项的指针)。 文件描述符表 ------------fd0 0 | p0 -------------> 文件表0 ---------> vnode0 ------------fd1 1 | p1 -------------> 文件
2015-02-02 12:31:34
491
原创 创建GObject子类的基本步骤
创建GObject子类的基本步骤:在 .h 文件中包含 glib-object.h;#include 在 .h 文件中构建实例结构体与类结构体,并分别将 GObject 类的实例结构体与类结构体置于成员之首typedef struct _ProjectObject { GObject parent_instance; //first el
2014-12-29 14:32:46
767
转载 Understanding Big and Little Endian Byte Order
Understanding Big and Little Endian Byte OrderProblems with byte order are frustrating, and I want to spare you the grief I experienced. Here's the key:Problem: Computers speak different langu
2014-03-19 14:57:28
977
原创 编译libjpeg库,jpeg-6b编译错误
make: ./libtool: Command not foundmake: *** [jcapimin.lo] Error 127错误分析:由于libtool版本过低导致的,重新下载新版本的libtool以默认方式安装,执行以下命令:./configuremakemake install然后进入jpeg-6b的源码目录,然后执行以下步骤,切记!
2010-04-30 10:53:00
3097
转载 考查嵌入式C开发人员的最好的16道题
考查一个初级嵌入式系统开发人员的C基本功,附有答案题目由资深嵌入式系统专家拟定,目的是考查入门级的嵌入式软件开发人员, Gavin Shaw提供详细解答. 编者按:非常基本关于C语言的问题,一个信息类(计算机,资讯工程,电子工程, 通信工程)专业的本科毕业生应该达到的水平,
2010-03-23 09:58:00
870
原创 valgrind Fatal error at startup: a function redirection
在ppc的板子上运行valgrind, 程序出现valgrind Fatal error at startup: a function redirection的错误提示。查找了下,发现是因为libc或ld.so库进行过strip操作。直接安装一个debug版本的库就可以了。sudo apt-get install libc6-dbg
2010-03-06 15:09:00
4816
原创 Undefined reference to vtable 'xxx'
新添加一个类,定义了构造函数和析构函数。其中析构函数只申明没有定义。链接时遇到如下的问题:../local_gui/.libs/lib_local_gui.a(monthcalendar.o): In function `monthcalendar:localgui/monthcalendar.cpp:208: undefined reference to `vtable for m
2010-01-06 14:00:00
1894
转载 vi常用命令和vimrc配置
·一个简单编译器(编译、执行常见程序) #vi ~/.vimrc "定义F9来编译、执行程序 map :call ProgCompileRun() func ProgCompileRun() "s***e the current file first :w "取得程序后缀名 如j***a php pl py let ext = expand("%:e") "编译J**
2009-12-29 16:08:00
1768
原创 Debian 中安装minigui 1.3.3
一. 下载文件 libminigui-1.3.3.tar.gz mg-samples-1.3.0.tar.gz (示例) minigui-res-1.3.3.tar.gz(资源) qvfb-1.1.tar.gz (virtual frame buffer)二. 编译源码 [注]: 1. 由于安装实例程序时,将出现/usr/local
2009-12-28 13:44:00
2602
转载 解决chm打不开的问题
最近遇到了一个奇怪的问题就是,将本机的chm文件传到(用的是FyUpload)空间后下载就出现无法打开链接。百思不得其解,怀疑是不是文件破损了,然后看了下文件大小,没错啊。。于是就到网上搜索了以下,果然也有人遇到这样的问题,解决办法:点击文件,右键--属性--解除锁定即可!=============如果还没有解决?=================如果你的Windows XP不能打开chm格式的
2009-11-01 11:13:00
2135
转载 ubuntu/debian 源
Ubuntu和debian都有很多的源和镜像,也有不少的国内镜像。一些爱好者为了寻找镜像已经自己“憋”出来了一些pl脚本用于寻找最快的镜像。实际上debian的爱好者早准备了更厉害的武器等你来用,就是apt-spy(是间谍还是小偷?哈哈)早就想写出来了。切记先备份你机器里的源列表。误区:通常大家都在交流使用国内的哪个源速度比较快,实际上很多国外源的访问速度是国内的很多倍。记得曾经用过国
2009-09-27 12:35:00
516
原创 minigui界面生成工具的一种简单实现方式,轻松实现Windows/linux minigui 跨平台界面编程
前一段时间在Linux下封装了一个简单的图形库,封装时主要借鉴minigui 1.33的源码。弄完了之后发现编程很是繁琐,怀念在Windows下用鼠标拖拽的岁月。看着minigui和windows很相似的代码,于是有了下面的想法:1. 利用VC设计好窗口界面,进行可视操作,对生产的资源文件进行解析2. 解析获取的信息,控件类型、标题、窗口风格、坐标、扩展风格3. 对获取的信息进行简单的
2009-09-23 10:20:00
2070
3
原创 二维字符数组与char** 关系
数组和指针联系很紧密,数组名的含义至少有两种含义: 1. 对应数据中的第一个元素的地址, 2. sizeof为数组大小,而不是指针大小注:《c专家编程》中有详细介绍 指针使用经验总结.pdf 中也有相关内容 编程中,需要向某个函数传递一个字符串数组。测试代码如下:#include #define M 2#define N 100
2009-08-07 13:40:00
9287
1
原创 解决undefined reference 问题的方法
最近把开发板上的程序移植到目标板上,编译通过之后。链接时,一堆的... undefined reference ... 经过大半天的分析,终于都搞定了。在这里做下总结,有不对的地方还请多多指教 -------------------------------------------------引起此类问题的原因主要有以下几类: 1. 缺少某个源
2009-08-05 16:02:00
4513
1
原创 Debian下搭建GTK+开发环境
1. 安装gtk及相关开发包: sudo apt-get install gnome-core-develsudo apt-get install libglib2.0-doc libgtk2.0-docsudo apt-get install devhelp sudo apt-get install glade-gnome glade-common
2009-05-15 10:44:00
2124
原创 windows xp 下exe,msi文件不能安装的解决办法
一、解决msi文件不能安装,提示信息"WINDOWS INSTALLER无法启动"1. 开始-运行(win+r) 打开里面填写 msiexec /unreg 回车。2. 然后开始-运行 打开里面填写 msiexec /regserver 回车。二、解决不能安装exe文件的办法打开“我的电脑”,进入菜单“工具”→“文件夹选项”→“文件类型”,这时在现有的文件类型中找不到扩展名为exe的文件类
2009-05-05 21:42:00
5149
Mastering web application development with angularjs
2016-05-02
AngularJS Web Application Development cookbook
2016-03-08
Learn Objective-C On The Mac and SourceCode
2015-08-25
深入Linux内核架构 英文版 带书签 pdf 1371页 Professional Linux Kernel Architecture
2011-01-14
SecureCRT_6.5 注册机 破解说明书
2010-06-30
GTK 2.0中文教程 HTML格式
2008-10-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人