点评Linux难称完美的几大命门
所在.
这样,当违背规定的事情发生时,它将带来两个问题:它可能让你无法确认一个问题的真正导致原因(例如它是一个内核的问题还是一个用户应用的问题?);另外你需要花费时间和精力来修复它. 目前有一些方法来临时解决这个问题.对于某些项目来说最迅速有效的办法之一就是用户空间文件系统(Filesystem in Userspace,FUSE),它是Linux系统平台上可加载的内核模块,允许非特权用户创建功能完备的文件系统,而不需要重新编译内核.FUSE模块仅仅提供内核模块的接入口,本身的主要实现代码位于用户空间中.但是,从长期来看,Linux需要一个既稳定又能满足长期增长需要的ABI,并且不会成为造成潜在兼容性问题的老鼠窝. 原生文件版本管理(Native File Versioning ) 原生文件版本管理是另一个可以加入到Linux的功能,但是至今为止还没有被默认加入到Linux中.其概念非常简单:在一个文件当前版本被覆盖或破坏的情况下,用户可根据需要恢复到早期的任何一个版本.Windows用户现在通过影子复制的形式可以体验这个功能,但是在标准的Linux文件系统中目前还没有该功能的具体体现.当然,它不能取代文件备份,但是可以把一个文件回滚到过去某个时刻的功能还是有它的用武之地的. 现在你可以手动的向Linux中增加这个功能.有些不同项目也已经使用略有不同的方式来实现了这个功能,诸如Wayback、ext3cow、copyfs和Tux3等等.尽管有人称这个功能可以通过非内核插件来实现,但是如果能有一个标准的、“内核安全的”方法来实现版本控制,无疑是更好的选择. 我认为,未来的Linux文件系统(或许是即将到来的BTRFS)将完全解决这个问题,但是目前还没有直接的解决方案开始解决这个问题. 音频应用程序编程接口(API) 厨师太多可能熬坏一锅好汤,用这个例子来说明Linux音频实现的现状再恰当不过了.多个音频API和子系统意味着,你可以随便选择一个来满足自己的需要,但是它也同时意味着,你将面临兼容性的问题. 内核级的音频API,也就是ALSA,是多数情况下应用程序的首选.但是除了它之外,还有很多其它音频API,例如最初的PulseAudio,主要用于混合来自多个应用程序的音频;还有JACK,用于实现低延时的专业音频.在今年9月份的Linux Plumber大会上Don Marti很好的总结了该问题所带来的冲突,他表示,“如果有人来问我,‘我想编写一个音频应用程序,我应该使用哪一个API?’我无法给出一个很好的答案.” 简而言之,音频API问题困扰着编程者,也困扰着用户.或者说,任何影响程序员的问题从长期来看也将影响终端用户.PulseAudio或许是最通用的解决方案,其应用范围也最广.但是从长期来看,应用程序开发者需要的是一个内核级的音频访问方式.
图形用户界面问题 对于内核来说,需要增加什么功能自然是Linus和内核开发者说了算.但是对于Linux桌面来说,却没有什么规定可言. 在进一步阐述前,我要解释清楚一个概念.“桌面”不仅仅指那些让非技术用户更轻松使用Linux/FOSS的任何图形化用户界面,而是指一个可以让你更轻松使用和管理系统的图形化用户界面,不管你的技术能力处于哪一级别. 这不是一个将图形化用户界面完全与系统整合在一起的问题.Linux中的内核和桌面开发是以高度并行的方式进行的,它以一个单向引导的方式进行.没有人保证内核开发者会实现对桌面开发者有用的功能,但是桌面开发却根据内核功能来修改自己. 这样,就需要一个指导委员会对所有运行在Linux上的图形化用户界面进行指导,无论创建任何图形化用户界面,不管它们是GNOME,还是KDE或其它尚未发明的桌面,它们都具有对后端内核功能的一致性实现,使它们能够紧密结合内核的功能.内核应该发布一个图形化用户界面可以使用的功能列表,然后图形化用户界面可以通过不同的 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |