文章目录
- 一、Linux 内核特性
-
- 1、Linux 内核组织形式
- 2、Linux 进程调度
- 3、Linux 内核线程
- 4、Linux 内核多平台虚拟内存管理
- 5、Linux 虚拟文件系统
- 6、Linux 内核模块机制
- 7、Linux 定制系统调用
- 8、Linux 网络模块架构
一、Linux 内核特性
1、Linux 内核组织形式
Linux 内核组织形式 : 整体式结构 ;
Linux 内核 由很多 过程 组成 , 每个 过程 都可以进行 独立编译 ,
然后将独立编译的 内核模块 , 链接形成一个单独的 目标程序 ,
每个过程 , 对其它 过程 , 都是可见的 ,
这种组织形式 内部结构简单 , 并且 工作效率 高 ;
从 开发角度 看 , 基于 过程 结构 , 开发人员可以参与 整体 Linux 内核的开发过程 , 这是一个 开放式的结构 , 允许任何开发人员对其进行 修改 ;
2、Linux 进程调度
Linux 进程调度 简单 , 高效 ,
Linux 采用了 动态优先级 的调度方式 ;
3、Linux 内核线程
Linux 支持 内核线程 , 即 守护进程 , 其 运行效率 高于 普通线程 ;
内核线程 在 后台运行 , 不需要与 命令行终端结合 ;
4、Linux 内核多平台虚拟内存管理
Linux 内核支持 多平台 虚拟内存管理 ,
内存管理 与 硬件平台 相关性很高 , 不同的硬件平台 , 使用的内存管理方式是不同的 ,
Linux 内核为了保证 内存管理 的通用性 , 同时还要 兼容不同的硬件平台 ,
Linux 内核提供了 虚拟内存管理 机制 , 提供 统一的内存管理接口 , 可以将 Linux 内核很容易移植到新的硬件平台中 ;
5、Linux 虚拟文件系统
Linux 虚拟文件系统 , 英文全程 Virtual File System , 简称 VFS ;
虚拟文件系统 ( VFS ) 为 逻辑文件系统 ( FAT32 , NFTS , EXT2/3/4 ) 提供 统一的标准接口 , 也为 硬件设备 提供了 标准接口 ;
6、Linux 内核模块机制
Linux 模块机制 可以使得 Linux 内核能够 保持独立 , 并且 很容易 进行扩充 , 可以任意 添加 / 卸载 内核模块 ;
如 : 新增加了一个设备 , 设备驱动程序就是一个内核模块 , 可以 动态的安装该设备驱动程序内核模块 ; 移除设备后 , 也可以动态卸载内核模块 ;
在之前的博客 【Linux 内核】编译 Linux 内核 ⑦ ( 安装内核模块 | 安装内核 | 重启系统 | 查看当前内核版本 ) 中 , 编译完内核之后 , 直接将内核安装到 Ubuntu 操作系统中 , 替换了之前的内核 ;
7、Linux 定制系统调用
系统调用是 操作系统 提供的 可以 调用 内核功能的接口 ,
Linux 允许开发者 开发 自己的系统调用 , 然后将 系统调用 加载到 内核模块中 ,
动态增加 系统调用 , 可以满足用户特殊需求 ;
8、Linux 网络模块架构
Linux 内核网络模块 , 符合 面向对象思想架构 , 使得 内核 支持多种协议 , 支持多种网卡驱动程序 ;