Linux内核的主要模块

  1. 进程调度SCHED

    进程调度指的是系统对进程的多种状态之间转换的策略。分别是:SCHED_OTHER、SCHED_FIFO、SCHED_RR。

  2. 内存管理MMU

    内存管理是多个进程间的内存共享策略。在Linxu系统中,内存管理的主要概念是虚拟内存。

    没个进程的虚拟内存有不同的地址空间,多个进程虚拟内存不会冲突。虚拟内存的大小通常是物理内存的2倍。

  3. 虚拟文件系统

    Linxu系统下支持多中文件系统,最常用的是ext2和ext3,2中系统之间可以相互转换。

  4. 网络接口

    网络接口分为网络协议和网络驱动程序,网络协议是一种网络传输的通信标准,网络驱动程序则是对硬件的驱动程序。

  5. 进程间通信

    进程间的通信方式主要有管道方式、信号方式、消息队列、共享内存和套接字等方式。

Linux内核的主要模块

时间: 2024-11-05 14:45:02

Linux内核的主要模块的相关文章

解析 Linux 内核可装载模块的版本检查机制

转自:http://www.ibm.com/developerworks/cn/linux/l-cn-kernelmodules/ 为保持 Linux 内核的稳定与可持续发展,内核在发展过程中引进了可装载模块这一特性.内核可装载模块就是可在内核运行时加载到内核的一组代码.通常 , 我们会在两个版本不同的内核上装载同一模块失败,即使是在两个相邻的补丁级(Patch Level)版本上.这是因为内核在引入可装载模块的同时,对模块采取了版本信息校验.这是一个与模块代码无关,却与内核相连的机制.该校验机

linux内核hello world模块编写

#include <linux/module.h> #include <linux/kernel.h> #include <linux/init.h> int param = 0; /* 设备模块注册时执行的初始化函数 */ static int __init initialization_module(void) { printk("Hello world.\n"); printk("param = %d.\n", param)

Linux内核通知链模块

通知链描述 大多数内核子系统都是相互独立的,因此某个子系统可能对其它子系统产生的事件感兴趣.为了满足这个需求,也即是让某个子系统在发生某个事件时通知其它的子系统,Linux内核提供了通知链的机制.通知链表只能够在内核的子系统之间使用,而不能够在内核与用户空间之间进行事件的通知. 通知链表是一个函数链表,链表上的每一个节点都注册了一个函数.当某个事情发生时,链表上所有节点对应的函数就会被执行.所以对于通知链表来说有一个通知方与一个接收方.在通知这个事件时所运行的函数由被通知方决定,实际上也即是被通

【Linux操作系统】Linux内核插入卸载模块

打开终端 输入:mkdir moduleTest,创建一个放置文件的文件夹 进入文件夹,cd moduleTest 创建文件:nano hello.c,文件内容如下: #include <linux/init.h> #include <linux/module.h> MODULE_LICENSE("Dual BSD/GPL"); static int hello_init(void){ printk(KERN_ALERT"Hello, xiaoming

linux内核学习资料链接

1. 内核学习方法,编译.调试等常见问题1.1 关于编译升级内核到2.6.0的一些问题 作者:ommm        http://linux.chinaunix.net/bbs/thread-281831-1-5.html 1.2 VMWare Workstation 6.0调试Linux Kernel,竟如此方便 作者:albcamus        http://linux.chinaunix.net/bbs/thread-896214-1-5.html 1.3 基于S3C2410的Lin

linux 内核升级2 转

linux内核升级 一.Linux内核概览 Linux是一个一体化内核(monolithic kernel)系统. 设备驱动程序可以完全访问硬件. Linux内的设备驱动程序可以方便地以模块化(modularize)的形式设置,并在系统运行期间可直接装载或卸载. 1. linux内核 linux操作系统是一个用来和硬件打交道并为用户程序提供一个有限服务集的低级支撑软件. 一个计算机系统是一个硬件和软件的共生体,它们互相依赖,不可分割. 计算机的硬件,含有外围设备.处理器.内存.硬盘和其他的电子设

Linux内核源码分析方法

  一.内核源码之我见 Linux内核代码的庞大令不少人“望而生畏”,也正因为如此,使得人们对Linux的了解仅处于泛泛的层次.如果想透析Linux,深入操作系统的本质,阅读内核源码是最有效的途径.我们都知道,想成为优秀的程序员,需要大量的实践和代码的编写.编程固然重要,但是往往只编程的人很容易把自己局限在自己的知识领域内.如果要扩展自己知识的广度,我们需要多接触其他人编写的代码,尤其是水平比我们更高的人编写的代码.通过这种途径,我们可以跳出自己知识圈的束缚,进入他人的知识圈,了解更多甚至我们一

【转】6.4.6 将驱动编译进Linux内核进行测试

原文网址:http://www.apkbus.com/android-98520-1-1.html 前面几节都是将Linux驱动编译成模块,然后动态装载进行测试.动态装载驱动模块不会随着Android系统的启动而自动装载,因此Android系统每次启动都必须使用insmod或modprobe命令装载Linux驱动模块. 对于嵌入式系统(包括嵌入式Android.嵌入式Linux等)一般都采用将Linux驱动编译进内核的方式.这样做虽然没有动态装载灵活,但Linux驱动会随着Android的启动而

LINUX 内核文档地址

Set colors for man pages: 设置方法比较简单,打开/etc/bash.bashrc(需要root权限)或者~/.bashrc文件加入如下内容: # Set colors for man pagesman() {env \LESS_TERMCAP_mb=$(printf “\e[1;31m”) \LESS_TERMCAP_md=$(printf “\e[1;31m”) \LESS_TERMCAP_me=$(printf “\e[0m”) \LESS_TERMCAP_se=$