摘要:
使用HD Tune Pro测试了下磁盘的性能,在老大的帮助下把测试的结果弄清楚了。 1. 裸盘的测试(读) 测试结果显示,磁盘速率不断跳跃式的下降,应该是从磁盘的沿着磁盘外道到内道读取数据,由于外圈的线速度远大于内圈,故在外圈速率也会高些,而不断的跳跃则是出现在磁盘磁盘换道的时刻。快结束的时候出现了一个大幅度的下降,因为测试时系统运行着很多其他的应用程序,应该是受到其他进程的影响才出现的。
... 阅读全文
posted @ 2013-04-19 14:05
ydzhang
阅读(474)
评论(0)
推荐(0)
摘要:
去年寒假,中国移动推出“两城一家”“优惠”活动。口号是两城一家,实惠到家!畅享移动新生活。资费标准如下: 想到我回家后可能会经常接打电话,觉得这项业务办理了很划算,于是就开通了。的确,在家里,“两城一家”给我省了不少钱,还纳闷移动怎么这么傻,一个月2元的功能费,给我省了这么多钱。 直到前些天,一个亲戚问我,怎么跟我打几次电话,话费用得那么快,我才恍然大悟,移动才不傻呢,傻的永远是消费者... 阅读全文
posted @ 2013-04-19 14:05
ydzhang
阅读(137)
评论(0)
推荐(0)
摘要:
fuse通过fuse_session_loop来启动守护程序,守护程序最终会调用fuse_dev_readv,fuse_dev_readv调用request_wait,使得进程在fc的waitq队列上睡眠。 代码片段1
static ssize_t fuse_dev_readv(struct file *file, const struct iovec *iov, unsigned long... 阅读全文
posted @ 2013-04-19 14:05
ydzhang
阅读(912)
评论(0)
推荐(0)
摘要:
fuse处理请求的整个流程如下图所示,以unlink操作为例进行说明。其中“>”表示调用,”<”表示返回,[]表示调用中所做的工作。本人结合fuse的源代码,对整个流程进行了分析。 fuse通过fuse_session_loop(或对应多线程的方法)来启动fuse守护程序,守护程序不断的从/dev/fuse上读取请求,并处理。 代码片段1
int fuse_session_loop(st... 阅读全文
posted @ 2013-04-19 14:05
ydzhang
阅读(1507)
评论(0)
推荐(1)
摘要:
fuse为开发者提供了两组接口,分别是fuse_lowlevel_ops以及fuse_operations,开发者只需要实现这两组接口的一种即可实现一个用户空间文件系统。 struct fuse_lowlevel_ops的成员如下所示,其中init方法在其它所有方法之前调用,用于初始化文件系统,fuse已经实现,destroy则是在文件系统被卸载时做一些清理工作。用于大多数请求的参数都是fuse... 阅读全文
posted @ 2013-04-19 14:05
ydzhang
阅读(1209)
评论(0)
推荐(1)
摘要:
对fuse提供的两个选项direct_io及big_writes困惑已久,以前对内核完全不了解,看不懂fuse内核模块的代码,这两天把fuse的代码重新过了一遍,把整个机制弄清楚了,很多细节方面的东西还在学习中。 指定direct_io挂载文件系统时,系统调用到了fuse层后,会跳过页高速缓存,当指定了direct_io后,读写系统调用会使用fuse_direct_io_file_operati... 阅读全文
posted @ 2013-04-19 14:05
ydzhang
阅读(2312)
评论(0)
推荐(0)
摘要:
RPC的xdr(外部数据表示)是为了编码(解码)C语言定义的数据,从而使得RPC传输的数据平台无关性。
xdr对C语言常见的类型编码规则在之前已经说过了,参见http://blog.chinaunix.net/u2/87570/showart_2159266.html,对于说明书test.x定义的定义,最终会被rpcgen翻译成支持C语言支持的类型定义,之后test.x就没有任何作用了。 如在... 阅读全文
posted @ 2013-04-19 14:05
ydzhang
阅读(1729)
评论(0)
推荐(0)
摘要:
测试例子: #include <stdio.h>void print(char *arr){printf("%#x %#x %#x\n", &arr, arr, arr[0]);}int main(){char arr[5] = "abcd";printf("%#x %#x %#x\n", &arr, arr, arr[0]);print(arr);return 0;}
输出: ... 阅读全文
posted @ 2013-04-19 14:05
ydzhang
阅读(189)
评论(0)
推荐(0)
摘要:
根据UNP上介绍,SUN RPC随solaris 2.4提供多线程化的服务器,通过向rpcgen传递-M参数以支持多线程。使得有rpcgen产生的服务器代码线程安全。选项-A让服务器根据处理新客户请求的需要自动创建线程。 但linux下并不支持-A选项,-M只是使rpcgen产生的代码是线程安全的,并不会自动创建线程处理请求。 测试:(rpc -M -C square.x)
服务器端睡眠10... 阅读全文
posted @ 2013-04-19 14:05
ydzhang
阅读(733)
评论(0)
推荐(0)
摘要:
fyf师兄总结的,写得不错,转载一下,顺便给他的blog做做广告
http://blog.sina.com.cn/icemangary 附网上牛人写的一个内存泄露检查工具,对malloc,free进行封装以跟踪内存分配情况,详细的内容见附件中的文档。 文件:
C内存泄露检测工具.rar 大小:
21KB 下载:
下载 (1)被分配的内存总是经过对齐,以适合机器上最大... 阅读全文
posted @ 2013-04-19 14:05
ydzhang
阅读(185)
评论(0)
推荐(0)
浙公网安备 33010602011771号