您现在的位置是:群英 > 服务器 > 系统运维
Linux内核模块有哪些,分别是什么用途
Admin发表于 2022-05-09 16:50:011393 次浏览
这篇文章给大家介绍了“Linux内核模块有哪些,分别是什么用途”的相关知识,讲解详细,步骤过程清晰,对大家进一步学习和理解“Linux内核模块有哪些,分别是什么用途”有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路一起来学习一下吧。


linux有5大模块:1、进程调度模块,主要是对进程用的处理机进行管理和控制;2、进程间通信模块,主要用于控制不同进程间在用户空间的同步、数据共享和交换;3、内存管理模块,采用先进的虚拟存储机制,实现对多进程的存储管理;4、文件系统模块等。

本教程操作环境:linux5.9.8系统、Dell G3电脑。

Linux 内核包含有五大子模块:进程调度模块、进程间通信模块、内存管理模块、文件系统模块、网络接口模块。

一、进程调度模块

  Linux以进程作为系统资源分配的基本单位,并采用动态优先级的进程高级算法,保证各个进程使用处理机的合理性。进程调度模块主要是对进程使用的处理机进行管理和控制。

【进程创建】:

  在Linux环境编程时,一般采用fork()/vfork()函数(fork 是 创建一个子进程,并把父进程的内存数据copy到子进程中;vfork是 创建一个子进程,并和父进程的内存数据share一起用)来创建新的进程,当然,那是在用户空间的函数,它会调用内核中的clone()系统调用,由clone()函数继续调用do_fork()完成进程的创建。

fork()/vfork()/_clone--->clone()--->do_fork()--->copy_process()

【进程撤销】:

  进程终止后,需要通知内核以便内核释放进程所拥有的资源,包括内存、打开文件以及其他资源,如信号量。进程终止的一般方式是调用exit()库函数,该函数释放C函数库所分配的资源,执行编程者所注册的每个函数,并结束从系统回收进程的那个系统调用。

【进程切换】:

  进程切换又称为任务切换、上下文切换。它是这样一种行为,为了控制进程的执行,内核挂起当前在CPU上运行的进程,并恢复以前挂起的某个进程的执行。
  在本质上,每个进程切换由两部分组成:

  • 切换页全局目录以安装一个新的地址空间;
  • 切换内核态堆栈和硬件上下文,因为硬件上下文提供了内核执行新进程所需要的所有信息,包括CPU寄存器,主要有switch_to()函数完成。

【进程调度】:

  现代的Linux中,调度算法可以在固定时间内(与可运行进程数量无关)选中要运行的进程。首先,我们必须知道进程可以分为实时进程与普通进程。每个LInux进程总是按照如下的调度类型被调度:先进先出的实时进程、时间片轮转的实时进程、普通的分时进程。调度算法根据进程是普通进程还是实时进程而有很大不同。

二、进程间通信模块

  进程间通信主要用于控制不同进程之间在用户空间的同步、数据共享和交换。由于不同的用户进程拥有不同的进程空间,因此进程间的通信要借助于内核的中转来实现。一般情况下,当一个进程等待硬件操作完成时,会被挂起。当硬件操作完成,进程被恢复执行,而协调这个过程的就是进程间的通信机制

  进程间通信模块保证了Linux支持多种进程间通信机制,包括管道、命名管道、消息队列、信号量和共享内存等。

三、内存管理模块

  Linux的内存管理模块采用先进的虚拟存储机制,实现对多进程的存储管理。它提供了十分可靠的存储保护措施,对进程赋予不同的权限,用户不能直接访问系统的程序和数据,保证了系统的安全性。同时,为每个用户进程分配一个相互独立的虚拟地址空间。

四、文件系统模块

  Linux 的文件系统模块采用先进的虚拟文件系统(VFS)技术,屏蔽了各种文件系统的差别,为处理各种不同的文件系统提供了统一的接口,支持多种不同的物理文件系统达90多种。同时,Linux把各种硬件设备看作一种特殊的文件来处理,用管理文件的方法管理设备,非常方便、有效。

五、网络接口模块

  Linux具有最强大的网络功能。网络接口模块通过套接字(Socket)机制实现计算机之间的网络通信,并采用网络层次模型提供对多种网络协议和网络硬件设备的支持。

  网络接口提供了对各种网络标准的实现和各种网络硬件的支持。网络接口一般分为网络协议和网络驱动程序。网络协议部分负责实现每一种可能的网络传输协议。网络设备驱动程序则主要负责与硬件设备进行通信,每一种可能的网络硬件设备都有相应的设备驱动程序


到此这篇关于“Linux内核模块有哪些,分别是什么用途”的文章就介绍到这了,感谢各位的阅读,更多相关Linux内核模块有哪些,分别是什么用途内容,欢迎关注群英网络资讯频道,小编将为大家输出更多高质量的实用文章!

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

标签: Linux内核模块
相关信息推荐
2021-12-28 18:56:43 
摘要:移动云计算怎样理解?随着云计算的快速发展,我们生活中接触到的云计算也越来越多,其中一些朋友对于移动云计算的比较好奇,想要学习移动云计算,对此这篇就给大家来详细的介绍一下移动云计算及其需要学习的内容。
2022-05-09 16:50:00 
摘要:linux错误日志在“/var/log/”目录下,它是系统日志文件的保存位置。系统的两种错误日志:1、messages,它是核心系统日志文件,其中包含了系统启动时的引导信息,以及系统运行时的其他状态消息;2、btmp,记录着错误登陆的日志。
2022-05-10 11:13:33 
摘要:linux默认编码是“UTF-8”格式,可以通过在终端中执行“locale”命令来进行查看,显示结果为““LANG=en_US.UTF-8”。如果想要修改编码格式,可以使用vi命令打开i18n文件,修改“LANG”项的编码值,保存配置即可。
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部