晚上浏览网页的时候, 发现了一些好东西, 尤其是看到了赵珂的blog,真的不错。
也找到了一些资料, 比如kernel的performance ,什么的。
Anatomy of the Linux kernel ,好在, 文章的后面提供了很多的链接, 非常不错。
Anatomy of the Linux slab allocator
Going further
This article just scratched the surface of the Linux kernel architecture and its features and capabilities. You can check out the Documentation directory that's provided in every Linux distribution for detailed information about the contents of the kernel. Be sure to check out the Resources section at the end of this article for more detailed information about many of the topics discussed here.
Resources
Learn
- The GNU site describes the GNU GPL that covers the Linux kernel and most of the useful applications provided with it. Also described is a less restrictive form of the GPL called the Lesser GPL (LGPL).
- UNIX, MINIX and Linux are covered in Wikipedia, along with a detailed family tree of the operating systems.
- The GNU C Library, or glibc, is the implementation of the standard C library. It's used in the GNU/Linux operating system, as well as the GNU/Hurd microkernel operating system.
- uClinux is a port of the Linux kernel that can execute on systems that lack an MMU. This allows the Linux kernel to run on very small embedded platforms, such as the Motorola DragonBall processor used in the PalmPilot Personal Digital Assistants (PDAs).
- "Kernel command using Linux system calls" (developerWorks, March 2007) covers the SCI, which is an important layer in the Linux kernel, with user-space support from glibc that enables function calls between user space and the kernel.
- "Inside the Linux scheduler" (developerWorks, June 2006) explores the new O(1) scheduler introduced in Linux 2.6 that is efficient, scales with a large number of processes (threads), and takes advantage of SMP systems.
- "Access the Linux kernel using the /proc filesystem" (developerWorks, March 2006) looks at the /proc file system, which is a virtual file system that provides a novel way for user-space applications to communicate with the kernel. This article demonstrates /proc, as well as loadable kernel modules.
- "Server clinic: Put virtual filesystems to work" (developerWorks, April 2003) delves into the VFS layer that allows Linux to support a variety of different file systems through a common interface. This same interface is also used for other types of devices, such as sockets.
- "Inside the Linux boot process" (developerWorks, May 2006) examines the Linux boot process, which takes care of bringing up a Linux system and is the same basic process whether you're booting from a hard disk, floppy, USB memory stick, or over the network.
- "Linux initial RAM disk (initrd) overview" (developerWorks, July 2006) inspects the initial RAM disk, which isolates the boot process from the physical medium from which it's booting.
- "Better networking with SCTP" (developerWorks, February 2006) covers one of the most interesting networking protocols, Stream Control Transmission Protocol, which operates like TCP but adds a number of useful features such as messaging, multi-homing, and multi-streaming. Linux, like BSD, is a great operating system if you're interested in networking protocols.
- "Anatomy of the Linux slab allocator" (developerWorks, May 2007) covers one of the most interesting aspects of memory management in Linux, the slab allocator. This mechanism originated in SunOS, but it's found a friendly home inside the Linux kernel.
- "Virtual Linux" (developerWorks, December 2006) shows how Linux can take advantage of processors with virtualization capabilities.
- "Linux and symmetric multiprocessing" (developerWorks, March 2007) discusses how Linux can also take advantage of processors that offer chip-level multiprocessing.
- "Discover the Linux Kernel Virtual Machine" (developerWorks, April 2007) covers the recent introduction of virtualization into the kernel, which turns the Linux kernel into a hypervisor for other virtualized operating systems.
- Check out Tim's book GNU/Linux Application Programming for more information on programming Linux in user space.
- In the developerWorks Linux zone, find more resources for Linux developers, including Linux tutorials, as well as our readers' favorite Linux articles and tutorials over the last month.
- Stay current with developerWorks technical events and Webcasts.
Get products and technologies
- Order the SEK for Linux, a two-DVD set containing the latest IBM trial software for Linux from DB2®, Lotus®, Rational®, Tivoli®, and WebSphere®.
- With IBM trial software, available for download directly from developerWorks, build your next development project on Linux.
Discuss
About the author
![](https://i-blog.csdnimg.cn/blog_migrate/c6ccbc96c20bebb0d73e8e6368158ef5.gif) | ![M. Tim Jones](https://i-blog.csdnimg.cn/blog_migrate/4c6fa361b60ef9bebe46d9b7b5a2d933.jpeg) | ![](https://i-blog.csdnimg.cn/blog_migrate/c6ccbc96c20bebb0d73e8e6368158ef5.gif) | M. Tim Jones is an embedded software engineer and the author of GNU/Linux Application Programming, AI Application Programming (now in its second edition), and BSD Sockets Programming from a Multilanguage Perspective. His engineering background ranges from the development of kernels for geosynchronous spacecraft to embedded systems architecture and networking protocols development. Tim is a Consultant Engineer for Emulex Corp. in Longmont, Colorado. |
Linux 内核剖析
Improving Linux kernel performance and scalability
IBM Linux技术中心: Linux内核相关的出版物
开源项目: 性能分析工具perfmon2
kernel编程
以前看到的linux kernel学习的,不过都是2.4 kernel的。
KernelAnalysis-HOWTO
下面是linus对kernel发展前景的讨论:
kernel的开发在改变,
Linux正在变得越来越好。但是对于Linux这样一个庞大而分散的社区,有时候很难给出一个 Linux向何处去的清晰图像。kernel version 2.6接下来会有什么,什么时候有kernel 3.0? Linus近来在做什么?他在Linux基金会干的是全职么(确实是),他还为kernel写代码吗—不了,近两年来Linus主要在维护代码。他确实还在写代码,但主要是工具类的,比如git(源代码控制管理系统)。
问:你认为什么时候需要kernel version 3.0?它将与 2.6.x有何不同?
Linus:我们一点也不期待3.0.x。我们只希望在引入优美的重大的新功能时无需以破坏性的方式冲击底层代码,也不会对其它任何旧有功能造成破坏。市场销售有句名言:“你必须增加版本号以显示你的产品正变得越来越好。”我们仅仅希望按照我们需要的方式进行改进,你不太可能看到所谓的“Get the new-and-improved version 3!”的宣传口号。
问:你业余时间做什么?
Linus:我将所有的时间都花在电脑上,我现在单手写代码,因为我家的孩子(puppy)喜好坐在我腿上。当我不和电脑和家人呆在一起时,我会读书。
问:读什么类型的书?
Linus:多数是看一些通俗读物,比如恐怖小说,科幻类,幻想类,惊险类等等。严肃读物主要是生物领域,尤其是遗传方面。Richard Dawkins是我心目中的英雄,我特别喜欢读他的《自私的基因》。
采访中Linus还谈到到了许多趣事,比如游戏,在开发Linux之前他玩过著名的横版游戏《波斯王子》,后来还玩过新一代的《时之砂》,不过他觉得《时之砂》系列的主题过于严肃。Linus说他以后可能不会再去玩游戏了,
今天看得blog地址:
<script type="text/javascript">$writeLang("title");</script> 上次访问的页面
| | |