linux内核
文章平均质量分 86
lzuzhp06
这个作者很懒,什么都没留下…
展开
-
解剖linux内核之工具
HaiPeng(lzuzhp@gmail.com) 要能够深入到linux内核,需要必备的三个工具:一是编译内核;二是使用qemu+gdb调试内核;三是使用syetmtap探测内核。一、编译linux内核:Linux开源的一个重要体现就是用户可以根据自己的实际需要配置自己的Linux系统,一般的Linux发行版本为了能够保证在大多数机器上运行,因此会编译进许多对最终用户原创 2011-11-03 20:21:21 · 3711 阅读 · 8 评论 -
解剖linux内核之进程
HaiPeng(lzuzhp@gmail.com) 一台PC机,CPU是核心,对于操作系统,管理CPU的那部分便是OS的核心,这就是进程管理,我就认为“得进程管理者得linux内核”,OS的其他资源(内存、磁盘、网络等)都要提供该该资源的操作函数来供进程来使用。打印内核中的所有进程通过ulk我们知道,linux内核的所有进程是通过双向链表串在一起的,而且每一个进程都有一原创 2011-11-03 20:32:59 · 1795 阅读 · 1 评论 -
解剖linux内核之内存
结束了对内核进程的剖析,接下来将要开始对内核资源(从os角度)的剖析。OS为了更好地管理资源,会对真实的资源进行虚拟化,例如针对内存有虚拟内存(虚拟线性地址空间),针对与文件系统有虚拟文件系统(VFS层);为了更好的使用该资源会首先对资源进行抽象(即定义资源的数据结构)然后基于此在定义操作(函数)。因此,我们读内核,要遵从“虚实结合,一动一静”的原则,虚与实的结合往往便是掌握内核的关键,动与静可以原创 2011-11-09 15:05:24 · 1160 阅读 · 0 评论 -
解剖linux内核之文件系统
虚实结合文件系统主要分为两个部分:vfs和ext2(以ext2为例),一虚一实,vfs是在机子启动的时候在内存中建立的,机子关掉便不存在了,是虚的;ext2是在磁盘介质上的,是磁盘在格式化的时候确定的,机子关机后仍然在磁盘上存在。在磁盘上的ext2文件系统那个的格式如下:Ext2中与superblock对应的结构体是 struct ext2_super_bloc原创 2011-11-09 19:41:01 · 1569 阅读 · 0 评论 -
优化linux内核pick_next_task函数
linux3.3.7的pick_next_task函数的源码如下:static inline struct task_struct *pick_next_task(struct rq *rq){ const struct sched_class *class; struct task_struct *p; /* * Optimization: we know that if原创 2012-10-17 16:13:41 · 1859 阅读 · 2 评论