- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
详解?Linux 系统内核
Linux 内核是一种开源的类 Unix 操作系统宏内核。
Linux?内核是?Linux?操作系统的主要组件,也是计算机硬件与其进程之间的核心接口。它负责两者之间的通信,还要尽可能高效地管理资源。之所以称为内核,是因为它在操作系统中就像果实硬壳中的种子一样,并且控制着硬件的所有主要功能。内核的用途主要有以下?4?项工作:
内存管理:追踪记录有多少内存存储了什么以及存储在哪里
进程管理:确定哪些进程可以使用中央处理器、何时使用以及持续多长时间
设备驱动程序:充当硬件与进程之间的调解程序/解释程序
系统调用和安全防护:从流程接受服务请求
在正确实施的情况下,内核对于用户是不可见的,它在自己的小世界(称为内核空间)中工作,并从中分配内存和跟踪所有内容的存储位置。用户所看到的内容则被称为用户空间。这些应用通过系统调用接口(SCI)与内核进行交互。
Linux系统内核概述
1. 内核简介
单内核体系设计、但充分借鉴了微内核设计体系的优点,为内核引入模块化机制。
Linux?内核的重要组成部分,主要有以下几部分:
kernel
内核核心,一般为?bzImage
通常在?/boot?目录下,名称为?vmlinuz-VERSION-RELEASE
kernel object
内核对象,一般放置于?/lib/modules/VERSION-RELEASE/
[ ]?==?N?== 不编译进内核
[M]?==?M?== 编译为模块文件
[*]?==?Y?== 编译进内核
辅助文件(ramdisk)
initrd
initramfs
2. 内核模块
2.1 uname 命令
使用格式
uname [OPTION]...
参数解释
-n?显示节点名称
-r?显示VERSION-RELEASE
-s?内核名称
-v?内核版本
-n?节点名
-m?硬件名称
-i?硬件平台
-p?处理器类型
-o?操作系统
#?uname?-mi686#?uname?-r2.6.32-573.22.1.el6.i686#?uname?-aLinux?MyServer?2.6.32-573.22.1.el6.i686?...?i686?i386?GNU/Linux
2.2 lsmod 命令
显示由核心已经装载的内核模块
命令定义
显示的内容来自于:?/proc/modules?文件。
使用?lsmod?命令时,常会采用类似?lsmod | grep -i ext4?这样的命令来查询系统是否加载了某些模块。
#?cat?/proc/modulesiptable_filter?2173?0?-?Live?0xed9b2000ip_tables?9567?1?iptable_filter,?Live?0xed9a9000ext3?203718?1?-?Live?0xed962000jbd?65315?1?ext3,?Live?0xed904000xenfs?4360?1?-?Live?0xed8e6000ipv6?271097?14?-?Live?0xed88e000xen_netfront?15871?0?-?Live?0xed7d9000ext4?339812?2?-?Live?0xed764000jbd2?75927?1?ext4,?Live?0xed6d9000mbcache?6017?2?ext3,ext4,?Live?0xed6b7000xen_blkfront?19209?5?-?Live?0xed69f000dm_mirror?11969?0?-?Live?0xed68d000dm_region_hash?9644?1?dm_mirror,?Live?0xed67e000dm_log?8322?2?dm_mirror,dm_region_hash,?Live?0xed672000dm_mod?84711?11?dm_mirror,dm_log,?Live?0xed64e000
#?lsmod?|?grep?ext4ext4??????????????????339812??2jbd2???????????????????75927??1?ext4mbcache?????????????????6017??2?ext3,ext4
字段含义
第 1 列:表示模块的名称
第 2 列:表示模块的大小
第 3 列:表示依赖模块的个数
第 4 列:表示依赖模块的内容
#?lsmodModule??????????????????Size??Used?byiptable_filter??????????2173??0ip_tables???????????????9567??1?iptable
文档评论(0)