按标签归档:Fedora

写在KDE 4.5发布之后

Rawhide是Fedora永不冻结的分支,每天都在滚动更新,是一个比Debian Experimental还要激进的版本。我很早就把家里的Fedora更新到Rawhide,为的是体验下一代甚至是下下一代版本的Fedora新特性。 Fedora Rawhide已经指向了Fedora 15了,同时也跟着Fedora 14更新到KDE 4.5。KDE4.0以半成品的状态发布让很多KDE众感到失望。随着及后的版本更新修复,KDE逐渐被打造成一个完美的桌面环境。特别是在KDE 4.2以后,无论是稳定性还是速度,特别是外观,都成熟了。到了KDE 4.4和KDE 4.5,各方面都接近完美了,特别是Oxygen主题,已经和桌面面板融成一体了。KDE不愧为当今Linux最优秀的桌面环境。 Plasma面板是KDE 4.x的一个标志性部件,解决了桌面内容多而杂乱的问题,而且透明玻璃的效果也很时尚。更多的介绍还是看Jeonkwan的《Permalink to 重新认识 KDE4.x — 第二弹:用好KDE不需要疯狂折腾配置: Plasma 简介》。壁纸是Fedora 14的初稿,主题应该跟官方版本差不多。 略带遗憾的是,KWin的Desktop Effect在我的机器上无法启动,丧失了一点趣味。我真不知道这是Fedora打包的Bug,还是KDE自己的Bug,或是Mesa的Bug,总之就Enable Desktop Effect的选项是灰色不可选的。 至于KDE,我也是刚刚重新体验。KDE 4.0当时的糟糕体验对比起KDE 4.5的无与伦比,很难想象这是在同一个框架下打造出来的桌面环境。KDE 5?似乎还没有必要提吧,说不定KDE 4.9的下一个版本是4.10呢。 GNOME应该好好地借鉴KDE的开发经验。GNOME 3.0的不停跳票让人大失所望。GNOME推崇的渐进式进步减少了惊喜的成分。GNOME 3.0发布之初同样会经历KDE 4.0同样漫长而痛苦的修正过程。GNOME还是多努力一下啊!干爸爹! 传统的桌面系统,无论是Windows,还是Mac,包括Linux的GNOME和KDE两个桌面环境,都会面临一个问题。本地应用逐渐转变到网络应用。操作系统的潮流从大而全,慢慢地转变成小而精,而且速度的要求也越来越高。如何解答这个难题?还请关注开发者绘画的未来吧! PS:这是我去洛阳实习的最后一篇网志,因为缺少电脑,所以下一次更新只能留到两周后了。

分类:Linux | 标签:, , | 12 条评论

KVM:Huge Page 回收内存

本篇继续是KVM的软文,XD! Huge Page,巨页是一个很热门的话题,很多大型服务器软件都逐步开始支持使用巨页以减轻内存的开销。在Fedora 12之际,KVM也引入了Huge Page,以增强KVM的性能。 援引自KVM Huage Page Backed Memory的简介,x86 CPU通常使用用4KB页面放置内存,但实际上它们有能力使用巨页完成这个任务(x86_32可以使用4MB页面,x86_64和x86_32 PAE可以使用2MB的页面)。通过把巨页应用在KVM Guest的内存上,页表会使用更少的内存和TLB损耗也会被减少,从而提升了KVM的性能。在KVM Guest的内存上使用巨页确实会有缺点,然而你不再需要交换和Balloon Guest的内存。 应用Huge Page十分简单,首先挂在hugetlbfs文件系统: mount -t hugetlbfs hugetlbfs /dev/hugepages 通过sysctl保留内存给巨页使用,需要搞清楚的这里设定的数字并不是真正的内存容量,而是巨页数量。对应的关系是1 hugepage=2MB RAM,比如: sysctl vm.nr_hugepages=768 此时系统会划分1536MB内存给巨页使用。然后启动qemu-kvm的时候添加-mem-path/dev/hugepages参数。比如: qemu-kvm -m 1024 -drive file=test.img -mem-path /dev/hugepages 使用libvirt和virt-manager管理的KVM虚拟机同样可以巨页,把以下内容加入到/etc/libvirt/qemu虚拟机对应的xml配置文件即可: <memoryBacking> <hugepages/> </memoryBacking> 本人简单地测试了使用巨页和不使用巨页的性能差别,在Windows … 继续阅读

分类:Linux, 虚拟化 | 标签:, , | 2 条评论

KVM-ON-KVM:Nested Virtualization

早前听Fai Wong (lazyfai)说起过KVM可以支持AMD SVM的nested virtualization,凭借着好奇心就折腾来玩玩。nested virtualization有不少学问值得探讨的,这里得感谢lazyfai为本人解答了。 在介绍KVM-ON-KVM前,本人得先说清楚nested paging和nested virtualization 的区别。因为本人在Google搜索KVM的nested virtualization发现很多是关于nested paging,但是实际上两者完全是两码事。还有很多老外都搞不清楚nested virtualization和nested paging,常常以为前者就是后者。 Nested Virtualization:实际就是在一个正在运行的虚拟机内安装多一个虚拟机,并且使之运行,有时也称之为 Nested VMs。 Nested Paging: 其作用就是为了把Guest的内存地址直接映射至Host的系统内存地址上,让CPU能够像读取实体系统的内存地址一样可以直接读取虚拟系统的内存地址。这种方案可以减轻了VMM因为内存地址转换的负担,提升内存读写性能。 从原理上说Nested Paging和Nested Virtualization是毫不相干的,所以本篇文章不会探讨前者。 Nested Virtualization并非KVM一家独有的技术,VMware的虚拟化软件同样支持Nested Virtualization,但是其技术无法无限地Nested下去。其第一层虚拟机必须使用VT-x/AMD-V硬件辅助虚拟化技术,而第二层虚拟机则必须使用传统的二进制软件转换的虚拟化技术。因此无法再运行第三层甚至更多层虚拟机。 相反KVM必须使用硬件辅助虚拟化技术,理论上可以无限地Nested下去,只要机器有足够的速度。KVM的Nested Virtualization暂时只能应用于AMD的处理器上,只要支持AMD-V虚拟化技术,就可以运行Nested Virtualization,包括老旧的K8架构,这与Nested Paging必须运行在K10架构上不同。从qemu-kvm的帮助选项上看出此特性紧限于AMD处理器。至于Intel的处理器什么时候支持Nested Virtualization,KVM说正在做,但是做了很久都还没有突破性消息。 -enable-nesting   enable support for running a VM … 继续阅读

分类:Linux, 虚拟化 | 标签:, , , | 1 条评论