摘要: 去年春晚,《不差钱》给搜狐网做了广告,但还稍微有点含蓄;今年春晚,《捐款》明目张胆的给搜狗做广告,以至于引起众怒。搜狐公司桌面应用的三架马车:搜狗搜索,搜狗浏览器,搜狗输入法名声已经越来越响了。在我们实验室,我还没有发现谁没用搜狗输入法,搜狗浏览器因其加速功能(尤其是教育网加速)以及友好的界面也吸引了不少用户,搜狗搜索所不能与google,百度媲美,但发展也比较迅速。记得第一次上搜狐网,我在浏览器中输入了souhu.com,但迎接我的并不是搜狐的主页。google一下才知道搜狐的网址是sohu.com,同样搜狗的主页是sogou.com而不是sougou.com。为什么搜狐在注册sohu,so 阅读全文
posted @ 2013-04-19 14:05 ydzhang 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 最近实验室搞了一些列讲座,阿福师兄关于文件系统的讲座帮我弄清楚了一些以前不清楚的问题,以问答的形式对文件系统常见的问题进行了总结。 Q: 文件系统如何看待底层物理块设备? Ÿ 文件系统把块设备简单的看做线性的组合,即对文件系统而言,块设备是一系列可以读写的块。文件系统不需要知道这些物理设备的实际布局及如何读写,这些是设备驱动的工作。 Q: 跟文件系统相关的系统调用主要有那些? Ÿ 打开文件o... 阅读全文
posted @ 2013-04-19 14:05 ydzhang 阅读(362) 评论(0) 推荐(0) 编辑
摘要: SUN RPC是对socket的封装,其底层适用TCP或是UDP协议来传输数据,本文讨论SUN RPC使用的超时和重传策略。 1. 总超时值:一个客户端等待其服务器的应答的总时间量。TCP和UDP都是用该值; 2. 重试超时:只用于UDP, 是一个客户等待其服务器的应答期间每次重传请求的间隔时间; 注:因TCP是可靠的面向连接的协议,有自己的一套机制来保证端到端的传输可靠性,故使用TCP建立的... 阅读全文
posted @ 2013-04-19 14:05 ydzhang 阅读(1133) 评论(0) 推荐(0) 编辑
摘要: 以前用iozone简单测了下ext3及dnfs的性能,用磁盘测试工具测了一下硬盘的性能。前者在http://blog.chinaunix.net/u2/87570/showart_1944522.html【A】中做了分析;后者在http://blog.chinaunix.net/u2/87570/showart_2191188.html【B】中做了分析。 A中的数据当时让我很吃惊,为什么读写的... 阅读全文
posted @ 2013-04-19 14:05 ydzhang 阅读(1035) 评论(0) 推荐(0) 编辑
摘要: 为什么需要iSCSI ? 1. 解决了SCSI协议在设备数目和连接距离上的限制; 2. 为SAN提供了一种高性价比的传输协议; 3. 与各种存储管理结合起来,提供灵活的备份、镜像、灾难恢复以及次级存储解决方案; 什么是iSCSI ? iSCSI是由IEETF开发的网络存储标准,目的是为了用IP协议将存储设备连接在一起。通过在IP网上传送SCSI命令和数据,ISCSI推动了数据在网际之间的... 阅读全文
posted @ 2013-04-19 14:05 ydzhang 阅读(797) 评论(0) 推荐(0) 编辑
摘要: 使用HD Tune Pro测试了下磁盘的性能,在老大的帮助下把测试的结果弄清楚了。 1. 裸盘的测试(读) 测试结果显示,磁盘速率不断跳跃式的下降,应该是从磁盘的沿着磁盘外道到内道读取数据,由于外圈的线速度远大于内圈,故在外圈速率也会高些,而不断的跳跃则是出现在磁盘磁盘换道的时刻。快结束的时候出现了一个大幅度的下降,因为测试时系统运行着很多其他的应用程序,应该是受到其他进程的影响才出现的。 ... 阅读全文
posted @ 2013-04-19 14:05 ydzhang 阅读(446) 评论(0) 推荐(0) 编辑
摘要: 去年寒假,中国移动推出“两城一家”“优惠”活动。口号是两城一家,实惠到家!畅享移动新生活。资费标准如下: 想到我回家后可能会经常接打电话,觉得这项业务办理了很划算,于是就开通了。的确,在家里,“两城一家”给我省了不少钱,还纳闷移动怎么这么傻,一个月2元的功能费,给我省了这么多钱。 直到前些天,一个亲戚问我,怎么跟我打几次电话,话费用得那么快,我才恍然大悟,移动才不傻呢,傻的永远是消费者... 阅读全文
posted @ 2013-04-19 14:05 ydzhang 阅读(134) 评论(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 阅读(875) 评论(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 阅读(1402) 评论(0) 推荐(1) 编辑
摘要: fuse为开发者提供了两组接口,分别是fuse_lowlevel_ops以及fuse_operations,开发者只需要实现这两组接口的一种即可实现一个用户空间文件系统。 struct fuse_lowlevel_ops的成员如下所示,其中init方法在其它所有方法之前调用,用于初始化文件系统,fuse已经实现,destroy则是在文件系统被卸载时做一些清理工作。用于大多数请求的参数都是fuse... 阅读全文
posted @ 2013-04-19 14:05 ydzhang 阅读(1112) 评论(0) 推荐(1) 编辑