摘要:本次发布包括支持ext4的块大小大于4KB和1MB,提高大文件的性能; BTRFS已经更新更快的洗涤,自动备份重要的文件系统元数据和手工检查文件系统的工具;过程调度增加了支持的CPU时间设置的上限;重存在的的桌面reponsiveness写入已得到改善,TCP已经更新,包括算法,从而加快了恢复后丢失的数据包的连接;分析工具“PERF顶部“增加了现场检查任务和库的支持和注解的汇编代码,增加了”自动精简配置的存储设备映射的支持,并已添加一个新的architeture:从高通公司六角DSP处理器。也可在此版本中的其他司机和小的改进和修正。
1。在Linux 3.2中的突出特点 1.1。ext4的:支持更大的数据块大小推荐LWN文章:提高EXT4:bigalloc,内嵌数据,元数据校验
在ext4文件系统块的最大尺寸一直是4 KB x86系统。但是,现代硬盘的存储容量正在快速增长,与硬盘的大小,块大小增加使用这种体积小的开销。小的块大小有许多小文件的用户受益,因为空间将更加有效地使用,但将受益较大的块大小的人使用大文件。
ext4支持高达1MB大小的块大小,从而大大减少所花费的时间做整体拨款,并有更小的碎片。这些新的块大小必须设置在创建时,使用的mkfs-C选项(需要的e2fsprogs 1.42)。此功能是不向后兼容老版本的内核。代码:(提交1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17)
1.2。BTRFS:更快的清理,树根,详细腐败的消息,手工检查元数据的自动备份推荐LWN文章:BTRFS在LinuxCon欧洲的更新
擦洗读预清理检查所有文件系统的使用预读以提高性能校验的过程。平均磁盘带宽测试卷上的利用率从70%提高到90%。另一个卷上,测试运行时间的推移,从89秒到43秒。代码:(提交1,2,3,4)
登录过去树根BTRFS将存储在大部分树根在过去四年提交有关文件系统的超级块信息。“安装选项”-O恢复已被用于允许用户使用根历史记录时,文件系统是无法读取树的树根,程度树的根,设备树的根或csum根。编号:(提交)
详细腐败消息BTRFS也总是有“回参考”,可以找到哪些文件或B树实际引用一个给定的块,但到现在为止那些引用步行一直是一个手动过程。已加入遵循这些backrefs的代码,作为结果的改进消息。例如,在上写下了一个文件在磁盘上的块,开始擦洗,而不是仅仅告诉,块xxyyzz是坏的,现在的内核会打印:代码:(提交1,2)
-
BTRFS:开发为/ dev / SDE部门2474832,5根,inode的32583偏移0,长度为4096,链接1(路径default/kernel-0/Makefile)5085110272逻辑错误校验,
由于以前的功能的一部分,还增加了一些代码,允许从用户空间的公用文件系统的手动检查。找到属于程度5085110272的文件,你可以运行:代码:(提交)
性能改进性能改进的避难所在一些领域已经完成,特别是随机写入工作负载。
1.3。过程带宽控制器推荐LWN文章:CFS带宽控制
进程调度划分可用的CPU需要运行的所有进程之间的带宽。有没有限制,每个进程得到多少CPU的带宽,如果有免费的带宽可用,因为所有的进程都应该尽可能想。但很显然,一些像谷歌公司有一些情况下,这个CPU的带宽无限的分配可能会导致不可接受的利用率或延迟变化。
CPU带宽控制,解决了这个问题,允许设置一个明确的上限,允许CPU带宽。被指定为一组PF进程允许的带宽使用配额和期限。在每个“期间”(微秒),一组只消耗“配额”微秒的CPU时间。当CPU带宽消费的一组超过此限制(这期间),属于其层次结构的任务将是节流,并不得再次运行,直至今后一个时期。文件:文件/调度/调度bwc.txt的。代码:(提交1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16)
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的目标中包含的另一个显着的特点是支持任意深度的递归快照(快照快照快照...),从而避免了与深度降解。编号:(提交1,2,3)
1.6。的I / O型少脏的节流,减少文件系统写回页面回收推荐LWN文章:没有I / O脏节流
“写回”是从RAM写入缓冲数据到磁盘的过程,在这方面的限制意味着阻止进程的时间,以避免它们创造新的数据,需要编写,直到目前的数据已经被写入到磁盘。
一个回写代码的关键部分是决定多少待写入的数据,可以举行RAM。在这个内核,算法,以使该决定已被重写(检查LWN文章更多的细节)。作为一个结果,IO的目的和CPU的争论应可大为减少。用户会发现系统反应更加灵敏,在沉重的回写“killall月”将立即生效。用户还可以发现有其循环内的write()系统调用的工作量非常平滑的暂停时间,并在NFS,JBOD和并发月。锁争用和弹跳缓存并发IO的工作量已大为改善。代码:(提交1,2,3,4,5,6,7,8,9,10,11,12,13,14)
也一直努力页收回,在许多情况下,这也提高了性能,以减少文件系统写回。代码:(提交1,2,3,4,5,6,7)
1.7。TCP减少比例税率推荐LWN文章:LPC:净走得更快
TCP试图实现最大带宽的网络链接,增加发送速率,直到开始丢失数据包的网络链接。当一个数据包丢失,TCP减慢它试图再次以缓慢的速度增加。
这个系统运作良好,但在一些包丢失的情况下,它需要太多的时间来恢复的最大速度。谷歌已经开发出替代的恢复算法,被称为“减少比例税率”,从而提高了延迟和时间来恢复。有关信息,您可以检查[ 1 IETF的草案,两个幻灯片(1,2),或LWN文章。编号:(提交)
1.8。改进的实时分析工具“PERF顶部”现场分析工具“PERF顶部”已被改写和提高。除了漂亮的输出,它的导航能力,而数据采集是怎么回事,和新的能力放大到任务和图书馆。用户甚至可以看到注释的汇编代码,输入打上CALLQ指令ENTER移动所谓函数的注释的汇编代码。这工作递归,所以用户可以探索的汇编代码,任意深度。代码:许多不同的承诺
1.9。交叉内存重视交叉内存重视,增加了两个系统调用的process_vm_readv process_vm_writev,允许读/写从/到另一个进程的地址空间。交叉内存重视背后的基本想法是让节点内通信的MPI程序做的比单拷贝的消息,而通过共享内存双副本的消息。编号:(提交)
2。驱动程序和特定于体系结构的变化所有的驱动程序和体系结构的具体变化可以发现在Linux_3.2_DriverArch页
3。文件系统 4。内存管理 5。联网-
支持IPv6数据包的传输,以及IEEE 802.15.4网络上的IPv6链路本地地址和无状态自动配置地址的形成。欲了解更多信息,请看看IPv6的数据报在RFC4944“压缩格式,在低功耗和有损网络(6LoWPAN的)(提交)
-
NCI的支持。NFC控制器接口(NCI)的标准之间的NFC控制器(NFCC)和设备主机(DH),由NFC论坛定义的通信协议 (提交),(提交)
-
添加netlink的基于CAN路由(提交)
-
新增的ethtool-G支持virtio_net (提交)
-
AF-IUCV:为af_iucv的电流传输机制是在z / VM提供通信设施IUCV。在LPAR的Linux运行时提供相同的支持,HiperSockets运输的AF_IUCV地址族(提交)
-
IPV4:gc_interval sysctl的删除(承诺)
-
桥:允许转发一些本地链路帧,添加一个新的sysfs属性/系统/类/ NET / BRX /桥/ group_fwd_mask的控制帧转发(提交)
-
devfreq:devfreq是1通用DVFS的框架,可以被方式OPP支持的设备登记,以便让以DEVFREQ提供的州长选择1运行频率的方式OPP的名单和与DEVFREQ提供政策依据(COMMIT) ,(提交) ,(提交)
-
提高性能的LZO /纯休眠状态,校验和图像(提交)
-
包括对S390处于休眠状态的图像的存储键(提交)
-
实现每设备PM QoS约束(提交)
-
新增用户空间的配置API (提交)
-
河豚:附加x86_64的大会的执行情况(提交)
-
SHA1:SSSE3基于SHA-1 x86-64的执行情况(提交)
-
Twofish的:新增3路并行x86_64的汇编中实施(提交)
-
EVM的:EVM保护文件的安全性扩展属性(xattrs)对完整性的攻击(提交)
-
PERF的注解:地址- symfs的选项(提交)
-
PERF的脚本:添加下拉监控脚本(提交)
-
PERF的统计:添加-O -附加选项(提交)
-
的PERF:支持设置拆装器样式(提交)
-
PERF的工具: -无ASM-RAW的默认(提交)
-
PERF工具:perf.data自我描述(提交)
-
X86:实现IBS的初始化(提交)
-
PowerPC的:添加的POWER7 stalled-cycles-frontend/backend (提交)
-
通用_file_llseek i_mutex锁使用伤害。做(几乎)无锁generic_file_llseek (提交)
-
初始化:添加根= PARTUUID =%= UUID / PARTNROFF的D支持(提交)
-
IOMMU:添加故障报告机制(提交)
-
循环:总是允许用户空间的分区,并有选择地支持(提交),添加丢弃for循环设备的支持dfaa2ef68e80c378e610e3c8c536f1c239e8d3ef(提交)
-
AIO:批次分配kiocbs的,以提高性能(提交)
-
过程连接:附加COMM变化事件(提交)
-
调试pagealloc附加元件:为highmem网页支持(提交)
-
sysctl的附加 支持的poll() (提交)