Chinaunix首页 | 论坛 | 博客
  • 博客访问: 317659
  • 博文数量: 78
  • 博客积分: 1322
  • 博客等级: 中尉
  • 技术积分: 680
  • 用 户 组: 普通用户
  • 注册时间: 2010-04-14 13:24
文章分类
文章存档

2012年(20)

2011年(55)

2010年(3)

分类: LINUX

2012-02-12 22:44:54

Linux的3.2

于2011年1月4日发布的Linux 3.2

摘要:本次发布包括支持ext4的块大小大于4KB和1MB,提高大文件的性能; BTRFS已经更新更快的洗涤,自动备份重要的文件系统元数据和手工检查文件系统的工具;过程调度增加了支持的CPU时间设置的上限;重存在的的桌面reponsiveness写入已得到改善,TCP已经更新,包括算法,从而加快了恢复后丢失的数据包的连接;分析工具“PERF顶部“增加了现场检查任务和库的支持和注解的汇编代码,增加了”自动精简配置的存储设备映射的支持,并已添加一个新的architeture:从高通公司六角DSP处理器。也可在此版本中的其他司机和小的改进和修正。

  1. 在Linux 3.2中的突出特点
    1. ext4的:支持更大的数据块大小
    2. BTRFS:更快的清理,树根,详细腐败的消息,手工检查元数据的自动备份
    3. 过程带宽控制器
    4. 新架构:六角
    5. 精简配置和快照中的Device Mapper递归
    6. 的I / O型少脏的节流,减少文件系统写回页面回收
    7. TCP减少比例税率
    8. 改进的实时分析工具“PERF顶部”
    9. 交叉内存重视
  2. 驱动程序和特定于体系结构的变化
  3. 文件系统
  4. 内存管理
  5. 联网
  6. 设备映射
  7. 电源管理
  8. 虚拟化
  9. 加密
  10. 安全
  11. 跟踪/分析
  12. 各种核心变化

1。在Linux 3.2中的突出特点 1.1。ext4的:支持更大的数据块大小

推荐LWN文章:提高EXT4:bigalloc,内嵌数据,元数据校验

在ext4文件系统块的最大尺寸一直是4 KB x86系统。但是,现代硬盘的存储容量正在快速增长,与硬盘的大小,块大小增加使用这种体积小的开销。小的块大小有许多小文件的用户受益,因为空间将更加有效地使用,但将受益较大的块大小的人使用大文件。

ext4支持高达1MB大小的块大小,从而大大减少所花费的时间做整体拨款,并有更小的碎片。这些新的块大小必须设置在创建时,使用的mkfs-C选项(需要的e2fsprogs 1.42)。此功能是不向后兼容老版本的内核。代码:(提交1234567891011121314151617)

1.2。BTRFS:更快的清理,树根,详细腐败的消息,手工检查元数据的自动备份

推荐LWN文章:BTRFS在LinuxCon欧洲的更新

擦洗读预

清理检查所有文件系统的使用预读以提高性能校验的过程。平均磁盘带宽测试卷上的利用率从70%提高到90%。另一个卷上,测试运行时间的推移,从89秒到43秒。代码:(提交1234)

登录过去树根

BTRFS将存储在大部分树根在过去四年提交有关文件系统的超级块信息。“安装选项”-O恢复已被用于允许用户使用根历史记录时,文件系统是无法读取树的树根,程度树的根,设备树的根或csum根。编号:(提交)

详细腐败消息

BTRFS也总是有“回参考”,可以找到哪些文件或B树实际引用一个给定的块,但到现在为止那些引用步行一直是一个手动过程。已加入遵循这些backrefs的代码,作为结果的改进消息。例如,在上写下了一个文件在磁盘上的块,开始擦洗,而不是仅仅告诉,块xxyyzz是坏的,现在的内核会打印:代码:(提交12)

  • BTRFS:开发为/ dev / SDE部门2474832,5根,inode的32583偏移0,长度为4096,链接1(路径default/kernel-0/Makefile)5085110272逻辑错误校验,

手动检查文件系统

由于以前的功能的一部分,还增加了一些代码,允许从用户空间的公用文件系统的手动检查。找到属于程度5085110272的文件,你可以运行:代码:(提交)

  • BTRFS检查逻辑5085110272到/ mnt

    或找到inode编号32583名:

    BTRFS检查inode的32583到/ mnt

性能改进

性能改进的避难所在一些领域已经完成,特别是随机写入工作负载。

1.3。过程带宽控制器

推荐LWN文章:CFS带宽控制

进程调度划分可用的CPU需要运行的所有进程之间的带宽。有没有限制,每个进程得到多少CPU的带宽,如果有免费的带宽可用,因为所有的进程都应该尽可能想。但很显然,一些像谷歌公司有一些情况下,这个CPU的带宽无限的分配可能会导致不可接受的利用率或延迟变化。

CPU带宽控制,解决了这个问题,允许设置一个明确的上限,允许CPU带宽。被指定为一组PF进程允许的带宽使用配额和期限。在每个“期间”(微秒),一组只消耗“配额”微秒的CPU时间。当CPU带宽消费的一组超过此限制(这期间),属于其层次结构的任务将是节流,并不得再次运行,直至今后一个时期。文件:文件/调度/调度bwc.txt的代码:(提交12345678910111213141516)

1.4。新架构:六角

推荐LWN文章:即将来临的 DSP架构

高通公司的六角主页

六角处理器是一个跨多种应用的高性能和低功耗设计的通用数字信号处理器。它融合数字支持,并行性,和广泛的DSP计算引擎,先进的系统架构,一个现代的微处理器。

代码:弓/六角

1.5。精简配置和快照中的Device Mapper递归

通常情况下,多个用户可配置的存储容量是低效的。例如,如果10个用户需要10 GB的每一个,你将需要100 GB的存储容量。然而,这些用户很可能不会使用,存储空间。让我们假设,平均而言,他们只用50%分配给他们的空间,只有50 GB将被使用,和其他50 GB将得到充分利用。

自动精简配置允许分配给所有用户结合系统的总存储容量超过存储容量。在前面的例子中,你可以买,只有50 GB的存储空间,让每个用户有10 GB理论框架的存储空间(共100 GB),并没有问题,因为你买的50 GB的足够多,以满足实际需求存储。如果用户增加的需求,您可以添加更多的存储容量。精简配置,您可以优化您的存储投资和避免过度配置。

Linux的3.2增加了自动精简配置在DM层的实验性支持。用户将能够创造出多个精简配置卷的存储池。薄提供DM的目标中包含的另一个显着的特点是支持任意深度的递归快照(快照快照快照...),从而避免了与深度降解。编号:(提交123)

1.6。的I / O型少脏的节流,减少文件系统写回页面回收

推荐LWN文章:没有I / O脏节流

“写回”是从RAM写入缓冲数据到磁盘的过程,在这方面的限​​制意味着阻止进程的时间,以避免它们创造新的数据,需要编写,直到目前的数据已经被写入到磁盘。

一个回写代码的关键部分是决定多少待写入的数据,可以举行RAM。在这个内核,算法,以使该决定已被重写(检查LWN文章更多的细节)。作为一个结果,IO的目的和CPU的争论应可大为减少。用户会发现系统反应更加灵敏,在沉重的回写“killall月”将立即生效。用户还可以发现有其循环内的write()系统调用的工作量非常平滑的暂停时间,并在NFS,JBOD和并发月。锁争用和弹跳缓存并发IO的工作量已大为改善。代码:(提交1234567891011121314)

也一直努力页收回,在许多情况下,这也提高了性能,以减少文件系统写回。代码:(提交1234567)

1.7。TCP减少比例税率

推荐LWN文章:LPC:净走得更快

TCP试图实现最大带宽的网络链接,增加发送速率,直到开始丢失数据包的网络链接。当一个数据包丢失,TCP减慢它试图再次以缓慢的速度增加。

这个系统运作良好,但在一些包丢失的情况下,它需要太多的时间来恢复的最大速度。谷歌已经开发出替代的恢复算法,被称为“减少比例税率”,从而提高了延迟和时间来恢复。有关信息,您可以检查[  1 IETF的草案,两个幻灯片(12),或LWN文章编号:(提交)

1.8。改进的实时分析工具“PERF顶部”

现场分析工具“PERF顶部”已被改写和提高。除了漂亮的输出,它的导航能力,而数据采集是怎么回事,和新的能力放大到任务和图书馆。用户甚至可以看到注释的汇编代码,输入打上CALLQ指令ENTER移动所谓函数的注释的汇编代码。这工作递归,所以用户可以探索的汇编代码,任意深度。代码:许多不同的承诺

1.9。交叉内存重视

交叉内存重视,增加了两个系统调用的process_vm_readv process_vm_writev,允许读/写从/到另一个进程的地址空间。交叉内存重视背后的基本想法是让节点内通信的MPI程序做的比单拷贝的消息,而通过共享内存双副本的消息。编号:(提交)

2。驱动程序和特定于体系结构的变化

所有的驱动程序和体系结构的具体变化可以发现在Linux_3.2_DriverArch页

3。文件系统
  • ext4的

    • 优化ext4_ext_convert_to_initialized()。程序执行追加写入文件通过fallocate(FALLOC_FL_KEEP_SIZE)的预分配,通过直接I / O和使用的memmove函数的次优()执行时,将看到一个内核的CPU消耗大大减少(提交)

    • 优化memmmove在多大程度上/指数插入长度:一个4KB同步追加DIO写的工作量减少25%以上的系统CPU消耗(提交)

    • 删除过时oldalloc (提交)

  • EXT3

  • CIFS的

  • BTRFS

    • 引进安装的选项nospace_cache (提交)(提交)

    • 允许挂接-O subvol =路径/ / subvol的/你/想从的正常fs_tree根相(提交)

    • 允许过量的ENOSPC保留(测试了从45分钟到10秒的速度)(提交)

    • 更聪明提交事务:83 xfstests从445秒到28秒(提交)

  • JFFS2的

  • EXOFS

  • NFS的

  • GFS2的

  • 的squashfs

4。内存管理 5。联网
  • 支持IPv6数据包的传输,以及IEEE 802.15.4网络上的IPv6链路本地地址和无状态自动配置地址的形成。欲了解更多信息,请看看IPv6的数据报在RFC4944“压缩格式,在低功耗和有损网络(6LoWPAN的)(提交)

  • NCI的支持。NFC控制器接口(NCI)的标准之间的NFC控制器(NFCC)和设备主机(DH),由NFC论坛定义的通信协议 (提交)(提交)

  • 添加netlink的基于CAN路由(提交)

  • 新增的ethtool-G支持virtio_net (提交)

  • 蝙蝠侠广告hoc网络:在接收端实现AP隔离(提交),发送方实施AP隔离(提交)

  • AF-IUCV:为af_iucv的电流传输机制是在z / VM提供通信设施IUCV。在LPAR的Linux运行时提供相同的支持,HiperSockets运输的AF_IUCV地址族(提交)

  • IPV4:gc_interval sysctl的删除(承诺)

  • mac80211:实施UAPSD (提交),网闸实施(提交)

  • AF-包:TPACKET_V3支持(提交),TPACKET_V3灵活的缓冲区执行。(提交)

  • 桥:允许转发一些本地链路帧,添加一个新的sysfs属性/系统/类/ NET / BRX /桥/ group_fwd_mask的控制帧转发(提交)

6。设备映射 7。电源管理
  • devfreq:devfreq是1通用DVFS的框架,可以被方式OPP支持的设备登记,以便让以DEVFREQ提供的州长选择1运行频率的方式OPP的名单和与DEVFREQ提供政策依据(COMMIT) ,(提交) (提交)

  • 提高性能的LZO /纯休眠状态,校验和图像(提交)

  • 包括对S390处于休眠状态的图像的存储键(提交)

  • 实现每设备PM QoS约束(提交)

8。虚拟化 9。加密 10。安全
  • EVM的:EVM保护文件的安全性扩展属性(xattrs)对完整性的攻击(提交)

拍击 知世 11。跟踪/分析 12。各种核心变化
阅读(5002) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~