自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

转载 Linux 汇编语言开发指南

Linux 汇编语言开发指南 http://www.ibm.com/developerworks/cn/linux/l-assembly/ 尤其是  七、GCC 内联汇编 , 很实用!

2011-08-24 19:59:32 1115 0

原创 python 中的新玩意: 生成器

1、 什么是生成器生成器是执行一个带 yield 语句的函数所返回的对象def foo(): yield 1 yield 2 f = foo() 其中, type(foo) 是 function, 而 type(f) 是 generaotr生成器对象,实现了 __iter__() ...

2010-11-18 20:20:00 228 1

原创 python 学习: 迭代器

1、 什么是迭代器迭代器就是提供  next() 方法的对象2、 如何使用迭代器for v in it:python 的 for 语句可对迭代器进行处理,它自动调用迭代器的 next() 方法进行遍历,并在遇到 StopIteration 异常后终止循环3、 有哪些迭代器?list, dict, ...

2010-11-18 20:18:00 166 0

原创 python 内存泄露的诊断

对于一个用 python 实现的,长期运行的后台服务进程来说,如果内存持续增长,那么很可能是有了“内存泄露”一、内存泄露的原因对于 python 这种支持垃圾回收的语言来说,为什么会有内存泄露了?通常来说,有以下三种原因:1、 所用到的用 C 语言开发的底层模块中出现了内存泄露。2、 代码中用到了...

2010-11-09 17:16:00 6521 0

原创 ELF 可执行程序在运行阶段寻找动态库的路径顺序

 Linux 上 ELF 格式的可执行程序,在程序启动阶段,会加载  ld.so 这个动态库(比较奇妙的是,它也可以直接被执行,动态库/可执行程序 二合一?),并通过它来加载其它需要的动态库。ld.so  manual page 中介绍了运行阶段寻找动态库的顺序 :         ld.so  ...

2009-02-23 16:21:00 1989 0

原创 gcc 在编译阶段寻找动态库的路径顺序

摘自 ld manual page            The linker uses the following search paths to locate required shared libraries:           1.  Any directories specified ...

2009-02-23 16:18:00 3510 0

转载 GLIB 常用数据结构介绍 (3)

数组概念到目前为止我们已经介绍了两类有序集合:GSList 和 GList。它们非常相似,因为都依赖于指针来从一个元素链接到下一个条目,或者,在 GList 中,链接到前一个条目。不过,有另外一类不使用链接的有序集合;它的功能与 C 数组多少有些类似。它叫做 GArray,提供一个具备索引的单一类...

2009-01-20 17:19:00 3860 0

转载 GLIB 常用数据结构介绍 (4)

队列概念队列是另一个便利的数据结构。一个 队列 会保存一列条目,而且访问形式通常是向最后添加条目,从最前删除条目。当需要按到达顺序进行处理时,这很有实用。标准队列的一个变种是“双端队列(double-ended queue)”,或者说是 dequeue,它支持在队列的两端进行添加或者删除。不过,在...

2009-01-20 17:14:00 3019 0

转载 GLIB 常用数据结构介绍 (2)

 哈希表概念到目前为止,本教程只介绍了有序容器,在其中插入的条目会保持特定次序不变。哈希表 是另一类容器,也称为“映射”、“联合数组(associative array)” 或者“目录(dictionary)”。正如语文辞典使用一个定义来关联一个词,哈希表使用一个 键(key) 来唯一标识一个 值...

2009-01-20 17:10:00 4789 1

转载 GLIB 常用数据结构介绍 (1)

int main(int argc, char** argv) { GSList* list = NULL; list = g_slist_append(list, "second"); list = g_slist_prepend(list, "first"...

2009-01-20 17:08:00 5604 0

原创 使用 libevent 容易犯的一个错误

使用 libevent 的一个代码片段如下:struct event ev_accept;event_set(&ev_accept, listen_fd, EV_READ|EV_PERSIST, on_accept, NULL);event_add(&ev_accept, NULL...

2008-10-10 17:36:00 3257 2

原创 对 C++ 引用的理解

 仅仅是记录一下心得; 接触 C++ 是很久以前的事情,但此后一直很少使用,因此对 C++ 的很多语言特性理解很肤浅; 例如,一直就有点迷惑,“为什么有了指针,C++ 还要引入引用” ? 网上搜索一下,一般的答案是 “引用是将引用者作为被引用者的一个别名”; 我试着从编译器的角度来理解这个“别名”...

2008-07-26 17:23:00 1409 0

原创 Linux 下查看 IPC 使用情况的方法

1. SYS-V 方法可以通过 ipcs 命令来查看 SYS-V 相关的 IPC 使用情况 2. POSIX 方法 1). message queueLinux 提供了 mqueue 的文件系统类型,可以通过它来观察到 POSIX 消息队列的使用情况 $ mkdir /dev/mqueue $ m...

2008-06-18 20:24:00 1857 0

原创 用 inotify 监视文件系统的变化

可以用 Linux 2.6 kenel 提供的 inotify 机制来监控文件系统的变化,例如增加文件,删除文件,修改文件等 下面是一个例子程序,可用来监控一个目录,如果在此目录下进行创建文件、删除文件、修改文件的操作,会有提示信息打印到屏幕上 #include sys/inotify.h>...

2008-05-12 20:21:00 2913 0

转载 [高性能技术] 使用异步 I/O 大大提高应用程序的性能

使用异步 I/O 大大提高应用程序的性能转自: http://www.ibm.com/developerworks/cn/linux/l-async/Linux® 中最常用的输入/输出(I/O)模型是同步 I/O。在这个模型中,当请求发出之后,应用程序就会阻塞,直到请求满足为止。这是很好的一种解决...

2008-05-09 18:55:00 1387 0

原创 关于“惊群”的讨论

“惊群”问题可以在 > 中看到,下面这个帖子对这个问题做了一些讨论,有时间需要看一下内核代码来更深入的了解一下http://www.chinaunix.net/jh/23/946261.html

2008-05-09 18:53:00 1423 0

原创 “堆碎片”以及解决方法

 最近用 C 开发一个服务器软件,代码需要频繁的分配内存,并且用到的第三方库 GLIB 和 libCurl 也有不同的内存分配方式。在开发过程中,发现一个问题,就是在压力测试下,程序耗用内存一直增长,直到用完 3G 的虚存空间,从而 malloc 失败;而我的代码中,内存使用完后都是及时释放的,不...

2008-05-08 17:22:00 2398 0

转载 ld 中文使用手册完全版(译)

[Linux命令] ld 中文使用手册完全版(译) 使用ld ******** 本文档介绍GNU连接器ld的2.14版本. 本文档在GNU自由文档许可证下发行.在"GNU自由文档许可证"一章中有关于本许可证的一份拷贝. 概述 ******** ld把一定量的目标文件跟档案文件连...

2008-01-28 21:01:00 3698 0

转载 linux系统locale的设定

locale 是国际化与本土化过程中的一个非常重要的概念,个人认为,对于中文用户来说,通常会涉及到的国际化或者本土化,大致包含三个方面:看中文,写中文,与 window中文系统的兼容和通信。从实际经验上看来,locale的设定与看中文关系不大,但是与写中文,及window分区的挂载方式有很密切的关...

2008-01-04 11:12:00 7300 0

转载 [高性能技术] 高效异步IO的设计开发

高效异步IO的设计开发转自: http://hippoweilin.mobile.spaces.live.com/arc.aspx      高效异步IO,按我理解起来应该不光要达到程序运行时的高效,当然也要达到开发效率的高效,其中还包括很重要一点就是质量,对于很多从未做过异步IO的人来说,初次尝...

2007-11-27 11:45:00 2440 0

转载 [高性能技术] 用ab 测 Apache 压力

用ab测apache压力转自: http://www.cublog.cn/u/20996/showart.php?id=212035以前安装好APACHE总是不知道该如何测试APACHE的性能,现在总算找到一个测试工具了。就是APACHE自带的测试工具AB(apache benchmark).在A...

2007-11-27 11:29:00 1414 0

转载 未来手机操作系统的格局分析

未来手机操作系统的格局分析转自: 由于移动操作系统的重要性被越来越多的人所关注,然而目前的市场统计资料又似是而非,所以 只能从基本面上进行分析。基本的事实就是智能电话的份额逐年增加,其中主流的操作系统依次是:Symbian, Microsoft Windows Mobile, Linux, RIM...

2007-11-14 19:23:00 989 1

转载 拨云见日 关注七项Linux内核发展方向

拨云见日 关注七项Linux内核发展方向转自: http://news.csdn.net/n/20071101/110151.html对于一个Linux的企业用户来说,它的内核开发可能显得过于复杂了,有许多人在维护不同的代码,而且有更多志愿者在提交代码,这种乱花渐欲迷人眼式的“热闹”景象却让我们很...

2007-11-01 14:25:00 959 0

转载 [高性能技术] The C10K problem

The C10K problemIts time for web servers to handle ten thousand clients simultaneously, dont you think? After all, the web is a big place now. And co...

2007-10-30 21:49:00 2188 0

转载 [高性能技术] Linux2.6内核epoll介绍(0.1版本)

[高性能技术] Linux2.6内核epoll介绍(0.1版本)转自: http://mechgouki.blogdriver.com/mechgouki/601157.html[作者]:滕昱,2005/3/30,0.1版本[版权声明]:此文档遵循GNU自由文档许可证(GNU Free Docum...

2007-10-30 21:31:00 2202 0

原创 Linux 自带的 watchdog 的简介

Linux 自带了一个 watchdog 的实现,用于监视系统的运行,包括一个内核 watchdog module 和一个用户空间的 watchdog 程序内核 watchdog 模块:内核 watchdog 模块通过 /dev/watchdog 这个字符设备与用户空间通信。用户空间程序一旦打开 ...

2007-10-29 10:10:00 11358 1

转载 在Linux下构造高性能、高可用、高可伸缩性的服务集群

 在Linux下构造高性能、高可用、高可伸缩性的服务集群转自: http://www.ibm.com/developerworks/cn/linux/cluster/l-lvsinst/index2.html随着Internet技术的迅猛发展,网络技术、性能的不断提高,高可伸缩性、高可用性、可管理...

2007-10-26 19:33:00 1949 0

原创 【流浪者的 C++ 专栏】(1):对C++ 中的Deque的一点探究

C++类模板提供了许多容器共开发者使用,其中deque就是其中一中容器。大家可以猜猜下列容器使用的最终输出是否如同你的本意。#include #include  using namespace std;const int max_v = 10; deque d; void print(){   d...

2007-10-20 19:43:00 1173 0

原创 版权申明

版权申明本博客注明为原创的文章均出自小马哥本人,如需转载、引用其中的部分文字,请注意以下几点: 1)请在转载(引用)的内容开始添加小马哥署名,并提供本博客中相应文章的链接。如你的作品为非电子读物或纯文本,请给出链接的url。 2)请勿用于商业用途。 3)如果愿意,请给我邮件:rstevens200...

2007-10-18 14:51:00 1213 0

原创 Linux 2.4.30 内核文件系统学习(多图) 1 : 关键数据结构

Linux  2.4.30 内核文件系统学习(多图) 1:  关键数据结构版权申明1.   概述 根据以前学习内核源码的经验,在学习文件系统实现之前,我大概定了个目标:1、  建立一个清晰的全局概念。为将来需要研究代码细节打下坚实基础。2、  只研究虚拟文件系统 VFS 的实现,不研究具体文件系统...

2007-10-14 23:46:00 7355 1

原创 如何写好技术文章?

要把复杂的技术讲清楚,对于我这种文字表达能力、逻辑思维能力一般的人来说,常常觉得很难。根据《金字塔原理》以及王爽先生在《汇编语言》这本书中尝试的方法,我认为可以运用以下几种方法来写作技术文章。1、  确定一个主题。一篇好的技术文章可以没有华丽的文采,但最起码要把目的表达清楚。2、  通过几条线索来...

2007-10-12 19:54:00 754 0

转载 Linux内核的时钟中断机制 (8)

转自: http://www.linuxforum.net/forum/gshowflat.php?Cat=&Board=driver&Number=385219&page=0&view=collapsed&sb=5&o=all&fpart7...

2007-09-28 15:55:00 2196 0

转载 Linux内核的时钟中断机制 (7)

转自 http://www.linuxforum.net/forum/gshowflat.php?Cat=&Board=driver&Number=385219&page=0&view=collapsed&sb=5&o=all&fpart7....

2007-09-28 15:54:00 1003 0

转载 Linux内核的时钟中断机制 (6)

转自 http://www.linuxforum.net/forum/gshowflat.php?Cat=&Board=driver&Number=385219&page=0&view=collapsed&sb=5&o=all&fpart7....

2007-09-28 15:45:00 944 0

转载 Linux内核的时钟中断机制 (5)

转自 http://www.linuxforum.net/forum/gshowflat.php?Cat=&Board=driver&Number=385219&page=0&view=collapsed&sb=5&o=all&fpart7....

2007-09-28 15:42:00 1011 0

原创 Linux内核的时钟中断机制 (4)

转自 http://www.linuxforum.net/forum/gshowflat.php?Cat=&Board=driver&Number=385219&page=0&view=collapsed&sb=5&o=all&fpart7....

2007-09-28 15:36:00 1678 0

转载 Linux内核的时钟中断机制 (3)

转自 http://www.linuxforum.net/forum/gshowflat.php?Cat=&Board=driver&Number=385219&page=0&view=collapsed&sb=5&o=all&fpart7....

2007-09-28 15:34:00 1855 0

转载 Linux内核的时钟中断机制(2)

转自 http://www.linuxforum.net/forum/gshowflat.php?Cat=&Board=driver&Number=385219&page=0&view=collapsed&sb=5&o=all&fpart7....

2007-09-28 15:33:00 997 0

转载 Linux内核的时钟中断机制(1)

转自  http://www.linuxforum.net/forum/gshowflat.php?Cat=&Board=driver&Number=385219&page=0&view=collapsed&sb=5&o=all&fpart第...

2007-09-28 15:26:00 1290 0

原创 睡眠与唤醒(草稿)

睡眠与唤醒 (草稿)1.    调用 nanosleep() 以后发生了什么?nonosleep() 是一个系统调用,在内核中对应的是 sys_nonosleep()sys_nonosleep:    创建一个定时器struct hrtimer_sleeper {    struct hrtime...

2007-09-27 20:32:00 1107 0

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