自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

housansan的专栏

其实我是一个演员

  • 博客(42)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

原创 为什么使用 waitpid 捕获 SIGCHLD

unix 网络编程 5.9 小节Q: 处理 SIGCHLD 时为什么使用 while waitpid 捕获, 而不是 wait ?使用 wait 捕获 SIGCHLD 时代码如下sig_chld(int signo){ pid = wait(NULL)}如书上所说,当有5个SIGCHLD 同时发送时 sig_chld 仅仅只能执行一次,那么其余4个还是处于僵死状

2015-04-19 23:12:08 992

转载 bochs 调试 com 文件

在网上看到2中解决此问题的方法:1.使用dos下的debug32工具单步跟踪pmtest2.com的运行情况。但这个方法存在问题,当跟踪到mov cr0,eax语句时freedos会错误,无法继续跟踪下去。2.使用bochs的magic_break,方法如下:在Bochs的配置文件里加上一句magic_break: enabled=1,然后在程序里加上一句xchg bx,bx,运行到这

2014-12-09 23:49:46 2680

原创 getcontext makecontext setcontext swapcontext

getcontext makecontext setcontext swapcontext允许在一个程序中多个线程进行切换. typedef struct ucontext { struct ucontext *uc_link; // 当前 thread 运行完后, 接着运行 uc_link sigset_t uc_sigmas

2014-03-29 16:20:40 2737

原创 内核模块

ELF文件格式ELF:executable and Linkable Format (extensible LInking Format).是UNIX-Like 下的二进制格式,内核模块同样也是ELF格式。ELF格式简介 ELF header部分重要数据成员typedef struct elf32_hdr{ unsigned char e_ident[E

2014-03-23 15:44:00 1027

转载 http://www.douban.com/group/topic/4895387/

0. 先普及常识,Firefox右上角搜索引擎的各种定制版本都可以在这里搜索http://mycroft.mozdev.org/直接用域名的关键词就行,比如找豆瓣,就搜douban1.搜douban的结果是:http://mycroft.mozdev.org/search-engines.html?name=douban页面显示六个,有四个不同的豆瓣搜索,最后2个是douban.n

2014-02-23 10:04:08 5475

转载 添加删除PPA (Personal Package Archives for Ubuntu)

Ubuntu里,PPA代表一种非稳定版本到发布,喜欢尝试鲜到人一般会加入很多PPA源。 关于PPA到详细说明,可以参考https://help.launchpad.net/Packaging/PPA 介绍两个命令,用于添加和删除PPA源 添加一个PPA源sudo add-apt-repository ppa:user/ppa-name如添加cairo-dock到we

2014-02-17 23:54:16 592

转载 手动删除ppa

ppa 源删除2011-12-06ubuntu 的 ppa 源都被放在 /etc/apt/sources.list.d 目录升级到 oneiric 版本后,之前添加的是 natty 的源,升级后 ppa 源没有自动升级只能手动删除,重新添加一遍或手工修改Removing apt repository in ubuntu karmic koala这篇文章的评论里中提到

2014-02-17 23:53:23 912

转载 I can't add PPA repository behind the proxy

http://askubuntu.com/questions/212132/i-cant-add-ppa-repository-behind-the-proxyActually it seems to be much easier than the answer posted previously. You just need "sudo" to know that you

2014-02-17 22:46:53 660

转载 zsh 使用 安装

http://www.cnblogs.com/bamanzi/p/zsh-simple-guide.htmlbash用久了,有些地方开始觉得不爽,于是想看看有没有更好的选择。原来在网上瞎逛时,已经很多次看到有人推荐zsh了,加上zsh高度兼容bash,于是就来折腾这个。不过试验了一下oh-my-zsh,感觉功能太强大了,太多东西不知道怎么配置的,这种过于“不知其所以然”的感觉我

2014-02-16 22:52:38 7165

转载 ubuntu 12.04 搭建 嵌入式环境搭建

ubuntu12.04交叉编译器安装,已经设置好环境变量了~$ echo $PATH/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:~/git/opt/FriendlyARM/toolschain/4.4.3/bin~/git/opt/F

2014-02-13 19:02:13 644

转载 ubuntu12.04 禁止鼠标触摸板

国庆节刚入手了一台新机器,装上ubuntu 12.04之后,发现禁止鼠标触摸板很是不爽,因为每次都需要按FN+F6来禁止,而且每次在重启之后又会重新启用,为了可以方便的关闭与启用,最后发现可以通过xinput来实现。     1、先通过 xinput 查看一下有哪些输入设备,找出触摸板的名称,执行 xinput list  得出结果大致如下:  ⎡ Virt

2014-02-13 18:58:53 764

转载 搭建XP驱动开发IDE平台DDK2003 + VS2005 + DriverStudio3.2

转载地址:http://www.51qudong.net/71.html WINXP 打印机驱动开发平台,扫描仪驱动开发平台,USB驱动开发的平台搭建:DDK2003 + VS2005 + DriverStudio3.2,以下内容在网上百度了很多,大多是VC6.0,或是VS2008的配置方案,有些是2005的但也是从其他地方转载,修改下内容,也没有认证。下面就介绍step by step的

2013-08-22 18:59:20 1183

原创 第六章

6.2磁盘文件, 非阻塞 , 不断的 read 、 write

2012-11-10 17:10:30 421

原创 设计包含 min 函数的栈

定义栈的数据结构,要求添加一个min的函数,能够得到栈的最下元素。要求函数min, push, pop的时间复杂度都是O(1)开始我是这么想的 用一个min  index  当push时很容易,直接与push(int d), s[min] 和 d 做比较然后更新min但是pop 就出问题了。当min出去了,必须要找到次min的,这时就要另外用空间保存起来。当我想到这个方

2012-11-08 22:08:15 393

原创 树的先序、中序、后序

给出树的先序、中序、后序 中两种,求另一种序列已知 :必须要有中序才能唯一确定树先序 : A -- B -- D -- H -- E -- C -- F -- G中序 : H -- D -- B -- E -- A -- F -- C -- G后序 : H -- D -- E -- B -- F -- G -- C -- A先序 中序 求后序如下:先序中第一

2012-11-05 22:28:49 613

转载 VSFTD 553 Could not create file

我在vsftpd配置文件中 注释了 ROOT但是还是出现了不能上传的问题 原来是这个问题我在LINUX下VSftp建立一个FTP服务器,但从WINDOWS使用FTP时,无法上传也无法下载!出错如下 ftp>; ls 200 PORT command successful. Consider using PASV. 150 Here comes the directory lis

2012-11-04 12:13:10 875

原创 第五章

5.2 执行位5.5 六种A  1.定位 2.写B  1.定位 2.写A1  B1  A2  B2 : B 覆盖 AA1  B1  B2  A2 : A 覆盖 BA1  A2  B1  B2 : 正常B1  A1  A2  B2 : B 覆盖 AB1  A1  B2  A2 : A 覆盖 BB1  B2  A1  A2  : 正常

2012-11-01 16:09:29 330

原创 第四章

主要内容:文件系统;磁道分成三个区域:超级块  :  记录文件系统本身的结构信息i-node表: 文件的属性数据区  :  文件内容 i-node表: i-node 号 和 数据块索引目录表 :i-node 号 和文件名 创建一个文件过程 :1 . 先找到一个空的i-node2 . 存储数据,找到自由快(eg: 220 à 627à992)3

2012-10-22 21:23:40 592

转载 缩进::Vim进阶索引

http://blah.blogsome.com/2007/09/30/vim_tut_indent/缩进::Vim进阶索引[8]Table of Contents缩进::Vim进阶索引[8]1 基础知识2 预设规则2.1 autoindent2.2 smartindent,cindent2.3 lisp3 进阶规则(indentexpr)

2012-10-11 13:09:03 1363

原创 B_TREE B+TREE(C 实现)

只经过少量测试, malloc() 没有判断 是否为空delete insert 假设 传进来的不是NULLB_TREEgcc 编译 /* * precursor 返回值应该是 k 而不是指针,返回指针有可能会降到一个度为T-1的结点上 * 指针重复释放 * 使用宏错误 T ,使用根结点也是 T. * 文件的操作 * 只经过少量的测试,

2012-10-04 10:13:24 2575

原创 Debug Error! DAMAGE:after Normal Block (#Xxxx) 问题

昨天写mergesort的时候出现了这个错误,原本以为是 b = malloc() b 的地址改了,后来发现没有改变,实在是找不到原因,后来 google 发现 原来是 跟 malloc   和  free 有关   由于越界访问了内存,发现确实如此。这个问题找了好久,因此觉得有必要记下来。

2012-09-18 15:51:40 1113 1

原创 二叉树,红黑树 (C 实现)

以下代码只经过少量的测试,如有问题,可回复 。二叉搜索树:#include #include #define ROOT(_T_) (_T_->left)#define LEFT(_T_) (_T_->left)#define RIGHT(_T_) (_T_->right)#define PARENT(_T_) (_T_->parent)#define K

2012-09-12 19:43:06 2962

原创 为自己工作

为自己工作

2012-09-08 21:00:40 393

转载 如何提高编写代码的速度

转载自 sunkehappy http://hi.baidu.com/it_intheway/blog/item/2520f6374bfaa7d1a3cc2be9.html Loirey (落英) 于 2008年06月26日23:40:42 星期四) 提到: 奋是基础,一切的前提奋之上是忍耐大部分时候大部分人的“习惯”都是跟“效率”作对的奋让你有机会去跟这些习惯做

2012-07-27 18:33:52 885

转载 写给计算机软件专业的大学生

地址:http://acm.hdu.edu.cn/forum/read.php?tid=2074 1、大学生活丰富多彩,会令你一生都难忘,但难忘有很多种,你可以学了很多东西而难忘,也会因为什么都没学到而难忘!2、计算机专业是一个很枯燥的专业,但即来之、则安之,只要你努力学,也会发现其中的乐趣的。3、记住:万丈高楼平地起!基础很重要,尤其是专业基础课,只有打好基础才能学得更深。4

2012-07-27 18:27:16 835

转载 ACM学习网站汇总

转载地址:http://www.cnblogs.com/zhourongqing/archive/2012/05/24/2516180.htmlhttp://61.187.179.132/JudgeOnline/problemset.php 特点:一个中学oj 、题目都是中文的 http://acm.hust.edu.cn:8080/judge/problem/toList

2012-07-21 17:12:06 1392

转载 哈佛为什么群星闪耀?

地址 : http://blog.csdn.net/niushuai666/article/details/6698355 哈佛校园里,不见华服,不见化妆,更不见晃里晃荡,只有匆匆的脚步,坚实地写下人生的篇章。哈佛不是神话,哈佛只是一个证明,人的意志,精神,抱负,理想的证明。日前,两张美国哈佛大学图书馆凌晨4点多学生仍在学习的照片,在网上迅速传播。照片显示:凌晨4点的哈佛大

2012-07-16 11:11:25 4666

转载 有目标?请闭嘴

http://www.starming.com/index.php?action=plugin&v=wave&tpl=union&ac=viewgrouppost&gid=32767&tid=1000006327  当你给了自己一个全新的目标,你会不会想要跟身边(亲密)的人分享它呢?通常来讲,很多人都会说出来,在这种行为背后,有些是出于“期望获得来自他人的有效监督”的目的,而有些则

2012-07-12 16:27:37 821

转载 dp讲解

因为我查看的没有地址所以不知道原创地址1,什么是动态规划(DP)?非常重要!,不要认为概念不重要,理解的深刻,你才知道对于什么样的问题去考虑有没有动态规划的方法,以及如何去使用动态规划。 1)动态规划是运筹学中用于求解决策过程中的最优化数学方法。当然,我们在这里关注的是作为一种算法设计技术,作为一种使用多阶段决策过程最优的通用方法。它是应用数学中用于解决某类最优化问题的重要工具。

2012-07-12 16:18:10 1503

转载 网络访问消息: 无法显示此页

解释: 在页面检索完成之前,请求超时。尝试下列:刷新页: 单击“刷新”按钮来再次搜索此页。超时可能是由于 Internet 拥塞造成的。 检查拼写: 请检查您是否正确键入了网页地址。键入的网页地址不正确。 联系网站: 您可能想要联系网站的管理员,以确认网页仍然存在。您可以使用网站主页上列出的电子邮件地址或电话号码与他们联系。如果您仍然看不到请求的页面,请与您的管理员或支

2012-07-09 18:18:45 2602 1

转载 freopen()函数在ACM中的使用

http://www.cnblogs.com/krisdy/archive/2009/04/04/1429579.html在做acm题目的过程中,我们需要在本地机器上调试。调试过程中,如果输入数据少还可以接受,但如果输入数据很庞大的话,我们就很难忍受一次又一次的重新输入和调试了。通过google,找到一种简便的方法,那就是freopen函数。        使用freopen函数可以解决测

2012-07-09 15:01:50 1172

原创 C陷阱与缺陷总结

1.      词法分析贪心法:尽可能的多读字符符号中间不应有空格y = x/*p;   /*p …/*/  y = x;整型常量,第一个字符加0是为八进制x = 026;   // x = 32d2.  语法分析运算符优先级 操作符 [] () ->单目  (从右到左)双目  (算术、移位、关系、逻辑 )三目赋值  (自右向左)逗号

2012-07-06 16:37:48 413

原创 ++i 和 i++ 一些区别

++x;  //先将x的地址里面的值加一然后放到寄存器中x++;  //先将x地址里面的值放到寄存器中然后x再加一x += 1;arr[i++] += 1;   //arr[i] = arr[i] + 1; ++i;frotz[--j + i++] += --y等同于--j;--y;frotz[j+i] = frotz[j+i] + y;++i;

2012-06-27 16:03:00 408

转载 浅谈数据库连接

http://blog.csdn.net/dba_huangzj/article/details/7650348因为它首先访问服务器的IPC$共享。这一步必须通过Windows认证。才能连到SQLServer监听的管道上。这是使用命名管道的最大好处,直接利用Windows内置的安全机制。应该根据不同要求选择协议,如果没有特殊原因,建议先考虑TCP/IP协议。

2012-06-10 18:37:53 993

转载 李喆:程序员到底怎么了

http://blog.jobbole.com/5886/我们是这样的一群人:每天都在“努力”的工作着,每天都和计算机打交道,泡在网上,打游戏,查资料,发微博。可是有一天,突然意识到,我们的未来在哪里,每个月那点可怜的工资,一年加起来也买不了几平米,找个女朋友也那么难,即使找到了,她还总是跟你说,为什么别人挣的都比你多,你每天不停的写着代码,每天不停的掉头发,每

2012-06-08 20:10:26 7883

转载 内存分配 与 const

http://blog.csdn.net/junz_1986/article/details/5426198一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注

2012-06-08 15:58:18 563

原创 char *p 与 extern char*p区别

1. 首先要明白数组和指针是怎么访问的    1. 数组访问形式 char a[] = "abcdefg";c = a[i]; //i=0~6      编译器符号表示一个地址 假设  a 值 9980         运行时 取i的值      取地址(9980+i)的内容    2. 指针访问形式char *p;char c = *p;

2012-06-08 15:32:25 1821 2

转载 一些VC的快捷键以及调试方法技巧

http://topic.csdn.net/u/20090719/10/27630615-0946-4211-9ca0-01cc5d4061e9.html1.检测程序中的括号是否匹配   把光标移动到需要检测的括号(如大括号{}、方括号[]、圆括号()和尖括号 2.查看一个宏(或变量、函数)的宏定义   把光标移动到你想知道的一个宏上,就比如说最常见的DEC

2012-06-04 16:19:11 390

原创 空格

"\" 转义字符\newline可用于延续当前行,但是如果\ newline 中间有空格,那么这个错误很难发现,因为结果将是(\ )所以尽量少用 z = y+++x;    //z = y++ +x;

2012-05-31 10:07:22 354

原创 安静的改变

C中 类型转换当执行算术运算时,操作数如果类型不同,就会发生转换,数据类型向精度更高,长度更长的方向转换。eg:int d = -1;unsigned int t = 5;if (d < t){ printf("...\n"); //这里永远不会执行因为-1变成了unsigned 结果最大}

2012-05-30 15:04:29 363

30天自制操作系统

30 天自制操作系统 光盘

2014-07-09

ucos 在 linux x86 上的移植

将 ucos 移植到 linux x86 上.

2014-05-07

C、C++笔试题

C、C++笔试题

2012-11-21

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除