
我们俩的联系方式![]()
友情链接导航 |
技术技术 Gears?由 qyb 于 星期三, 2009-07-01 22:13 发表Firefox 的 beta 意味着 feature freeze;对于一个 externsion 开发者来说,从 beta1 开始,就应该跟进自己项目的兼容性,因为这个时候 API 已经稳定,可以放心利用新的特性来作开发了。 但这次 Firefox 从去年10月15日的 beta1 到今天正式发布,中间过去了整整7个半月,Google Gears 没有发布哪怕一个作测试的 3.5 兼容版本。这种行为让人很忧虑该项目是否进入一个“衰退通道”——缺乏公司支持,然后慢慢淡出公众视线。 Gears 是 Google 在桌面方向 的尝试之一,首先是希望增强 Web 应用的离线工作能力,然后调整目标为给主流的浏览器打HTML5的patch,但最后 Google 意识到目前 Web 应用的瓶颈是性能,于是 v8/chrome 横空出世,Gears 备受冷落。而除了 IE 外的主流浏览器最近的升级,Safari4,Firefox 3.5,Opera 10,看起来都在向 HTML5 迈进,Gears 这种统一浏览器功能的努力,到底还有多大实际意义,确实值得怀疑。 当然不论怎么样,Gears 会作为 Chrome 的一个组件存在下去,Google Wave 里演示的那种浏览器和桌面交互的能力,正是 Gears 的支持。另一方面对IE占据95%份额的中国开发者来说,Gears 是我们唯一可期盼的救赎。 现在看来 Gears 开发还算活跃,希望工程师对跨浏览器的热情能一直保持,阿门 ZZ: X / DRM (Direct Rendering Manager) Architectural Overview由 qyb 于 星期二, 2009-06-30 12:35 发表把 freedesktop 的整个 DRI stack 都解释清楚了 注意第一张和第二张的区别 2.4 内核下应用 nginx 的一个问题由 qyb 于 星期五, 2009-06-26 13:07 发表现在还在使用 2.4 内核的服务器应该很少了吧.... 总之,2.4 tmpfs 里的文件,是无法执行 mmap()-like 的操作滴;这就导致使用 nginx 的 sendfile 特性时,出现诡异的 EINVAL 错误, 2.6 内核则一切正常. 最开始是在出错的机器上查看 sendfile manpage,关于 EINVAL 的描述是 Descriptor is not valid or locked. 但显然不是这个原因.. 直到从另外一个地方看到 manpage 描述是: Descriptor is not valid or locked, or an mmap(2)-like operation is not available for in_fd. 以及从网上搜索到很多人抱怨在 CIFS 文件系统下无法使用 apache2 sendfile 的时候才猛然意识到是因为我们把文件放在 tmpfs 里的问题。。。。 TTM,以及 Radeon KMS 已经被合并进入内核由 qyb 于 星期四, 2009-06-18 16:38 发表ATI 的开源3D 驱动 Radeon-rewrite 上周也被合并进入 Mesa 的主干. A卡用户翻身之日马上就要来了.. HP 2230s 的三维加速感应设备开发由 qyb 于 星期四, 2009-06-18 12:37 发表(http://v.blog.sohu.com/u/vw/2802100) 这个设备,就是 HP 宣传的 HP 3D DriveGuard,搜狐 08 年以后采购的笔记本都应该包括该特性,希望这篇文章对同事们利用自己的硬件有帮助.. Linux kernel 从 2.6.28 才开始加入了这个驱动 "LIS3LV02Dx Accelerometer driver”,像我这样用 Fedora 11,或者 Ubuntu 9.04,就可以玩了 关于这个驱动的描述文档见: http://www.mjmwired.net/kernel/Documentation/hwmon/lis3lv02d ,很简单,不断从 /sys/devices/platform/lis3lv02d/position 这个文件里读数据就是了. 在偶的演示里面,切换桌面是用的 libwnck 的 python 封装。开发中才知道在开启立方体桌面特效的模式下(compiz??),只有一个 Workspace(所以才能把一个窗口跨桌面放,因为本质上是在一个workspace里面),立方体的各个面叫做 viewport。好在 wnck 对切换 workspace 以及 viewport 都有支持.. 比较郁闷的一点是位置获得不稳定,经常出现检测到反向移动的乌龙,上面的视频已经表现了这一点,呵呵。 不知道有没有人利用这个特性给 HP 或 Thinkpad (APS主动保护) 开发 wii/iphone 那样的加速感应游戏,这么笨重的设备,体育项目估计也只有举杠铃了 关于 Video由 qyb 于 星期四, 2009-06-18 09:45 发表
configfs 为什么由 qyb 于 星期四, 2009-06-11 09:15 发表上回说到 cgroup 配置是通过特定的文件系统来弄的,这个...配置内核为什么要通过文件系统?就算要用 fs 为什么还去弄一个新的文件系统,现存的 sysfs 还不够吗? 关于第一个问题的答案是这样的。用户和操作系统打交道的标准方式是系统调用,可这 Linux 世界里那么多 developer,那么多 patch,每新开发一个需要用户交互的功能就新增系统调用显然不可行,这里有 Namespace/全局控制的显著难题;即使想在 ioctl 里增加宏定义什么也是同样的困境。通过文件系统路径来控制 Namespace 算一个大家都能接受的方案。 而 sysfs 的问题在于,它只是内核对象的一个视图,你可以去查看甚至修改对象的属性,但是所有的对象都是内核自己创建的,通过 sysfs 无法新建一个内核对象!对于 cgroup 应用来说,管理员需要去配置维护特定的 cgroup 对象,传统的 sysfs 就无能为力了。 这就是 configfs 的由来,它最初是 OCFS2(oracle cluster fs)的一部分,后来独立成为 Linux 的一个标准部件,在 2.6.16 成为 mainline 至于为什么 cgroup 最后没有用现成的 configfs而自己搞了一个新的文件系统,还没有从邮件列表中搜出端倪,待以后去考据罢... Fedora11 on HP2230s由 qyb 于 星期四, 2009-06-11 01:00 发表公司新发的小本,正好配最新的distribution. 才用了差不多一个星期,以后慢慢折腾这个系统吧。现在我的工作模式是笔记本用 Linux,台式机上跑 XP,outlook/office/IE/MSN 啥的都在台式机上用,然后开一个 rdesktop...是不是太装了点? Gears 加入了 Drag & Drop 的功能由 qyb 于 星期一, 2009-06-08 18:12 发表这个 Drag&Drop 是指从桌面环境中拖入文件到浏览器,0.5.21 版本中带了这个功能. 随着 0.5.21 一起发布的,还有另外两个新增的 API 印象中这是第一次 Gears 在 0.x.y 的 y 发布中,升级了新的 API,0.5 的首次发布的 ChangeLog 见 这里 另外很有意思的一点是,Gears 给其它浏览器制作的扩展都自动更新了,但... Chrome 反而还停留在 0.5.19,一点都不 Teamwork,哈哈 关于 cgroup (control group)由 qyb 于 星期一, 2009-06-01 20:56 发表I/O controller 这篇文章提到了 control group,看起来它是 Linux 内核中一个比较重要的概念,于是去找了找资料,给自个科普科普 最早 control group 是叫做 "Containers" (06年9月),利用 configfs 作配置. "Containers" 着眼于资源的分配,有两个重要概念: 它的最可取之处是创建了一个资源分配的框架,其它开发者可以利用这个框架去开发自己的资源分配patch,比如上回提到的磁盘设备。 后来不知道为什么没有采用 configfs,自己搞了一个 container filesystem. 最后在 2.6.24 内核(08年1月)中被正式合并进入主线,被改名为 control group 或简写为 cgroup. 详细介绍在 内核源代码文档目录中的cgroups.txt 。 刚刚进入 2.6.24 的时候,只有 cpusets(绑定cpu/memory node) 和 CFS group scheduling( cpu 带宽分配) 两个资源。2.6.25 又引入了 memory resource. 去搜索一下 cgroup,可以看到有好多有意思的 patch,比如 per cgroup 的 OOM killer,甚至 swap cgroup 等等. |
最新评论
19 小时 30 分钟之前
1 天 13 小时之前
3 天 13 小时之前
4 天 20 小时之前
4 天 21 小时之前
4 天 21 小时之前
4 天 21 小时之前
1 周 18 小时之前
1 周 1 天之前
1 周 1 天之前