Chinaunix首页 | 论坛 | 博客
  • 博客访问: 607373
  • 博文数量: 197
  • 博客积分: 7001
  • 博客等级: 大校
  • 技术积分: 2155
  • 用 户 组: 普通用户
  • 注册时间: 2005-02-24 00:29
文章分类

全部博文(197)

文章存档

2022年(1)

2019年(2)

2015年(1)

2012年(100)

2011年(69)

2010年(14)

2007年(3)

2005年(7)

分类: LINUX

2011-02-23 23:08:48



1 2.6.35 merge window part 2
  • The and mechanisms have been added to the networking subsystem.
  • The patch set has been merged. This should lead to less memory fragmentation and higher success rates for large allocations.
  • All interrupt handlers are now called with interrupts disabled; see for details on the change.

2 2.6.35 Video4Linux2 enhancements
m2m device 就是一个缓冲区的视频 变换 到另一个缓冲区
So the new memory-to-memory (m2m) infrastructure is designed to enable the creation of V4L2 devices which move video frames from one memory buffer to another, performing some sort of transformation on the way. Frames are fed to the device as if it were an ordinary video output device, with all of the appropriate configuration done to describe the format of those frames. The video input side is, instead, configured with the format the application would like to have. The driver takes frames written to the device by applications, runs them through the processing engine, then makes them available for reading as if it were an ordinary video capture device.

3 One ring buffer to rule them all?
多个机制(perf,ftrace,LTTng)使用统一的ring buffer.

值得注意的是 不需要同步.
A ring buffer is a circular data structure that is often used to hold data that is produced and consumed by separate processes without synchronization.

[RFC] Unified Ring Buffer (Next Generation)









1 Minutes from the Hardware Error Kernel Mini-Summit
the discussion thread 值得一看


2 Augmented red-black trees
augmented rbtrees." Such a tree works very much like an ordinary rbtree, with the exception that it keeps additional information in each node. That information, almost certainly, is a function of any child nodes in the tree - the maximum key value among all children, for example.

问题的起源,首先了解PAT
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/x86/pat.txt;h=17965f927c1583e61281e5701b951253c95bf278;hb=d27554d874c7eeb14c8bfecdc39c3a8618cd8d32

补丁



3 The trouble with the TSC

很多应用程序使用rdstc保证性能,问题是tsc不一定可靠, 内核无法且拒绝提供tsc的具体信息.

需要了解vsyscall
Depending on the hardware, gettimeofday() and clock_gettime() may be implemented as vsyscalls—virtual system calls—rather than standard system calls, which eliminates the user space to kernel transition. Vsyscalls are code that is stored in a special memory region in user space (the vdso region) that may access kernel-maintained data, like clock ticks. Using vsyscalls, the calls are (relatively) fast, but on some hardware (or virtual machines) that requires kernel-space operations to get to a reliable counter, a vsyscall cannot be used, so the calls are slower.


1 Adaptive spinning futexes
Darren Hart has been working on intended to bring adaptive spinning to futexes in an attempt to improve the performance of multi-threaded applications.

The core idea is simple: if a process attempts to acquire a futex which is already owned by another, it will spin in an acquisition loop until the holding process either releases the futex or is scheduled out. If all goes well, the new process will be able to grab the futex quickly and get on with its work in the most efficient way.

2 Uprobes returns - again
which allows the placement of dynamic tracepoints into user-space programs,依然没有进入mainline

3 Detecting idle patterns
The subsystem is charged with putting the CPU into the optimal sleep state when there is nothing for it to do.
进入何种sleep state取决于下次事件触发时间(a)next scheduled timer event 容易确定 (b)device interrupt 如网卡,鼠标等 不容易确定

which maintains an array of the last eight actual sleep periods. Whenever it is time to put the processor to sleep, the standard deviation of those sleep periods is calculated; if it is small, then the average sleep is considered to be a better guide to the expected sleep period than the next timer event.

4 The Next3 filesystem
该文件系统基于ext3实现了snapshots支持,但不可能进入mainline

5 Moving x86 to LMB
目标取代bootmem
LMB is a simple allocator which is meant to do a good-enough job until something more sophisticated can take over.

6 MeeGo and Btrfs
MeeGo will be based on the Btrfs file system by default.


1 Cleancache and Frontswap
目前难以进入mainline

is "a page-granularity victim cache for clean pages,"  Cleancache provides a place where the kernel can put pages which it can afford to lose, but which it would like to keep around if possible. A classic example is file-backed pages which are clean, so they can be recovered from disk if need be.

And when a cleancache-enabled filesystem wishes to access a page in a file on disk, it first checks cleancache to see if it already contains it;

有什么好处呢? 可以减少duplicate copy和进行压缩


更新的



2 Reworking pm_qos
"power management quality of service"
have latency-sensitive parts of the kernel express their requirements, which can then be taken into account by the power management code.

对API的修订
pm_qos hacker Mark Gross has to the API.
阅读(1106) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~