Linux 小知识翻译 - 「模块」

简介:

说起module(模块),有的像「可热插拔的零部件」的意思。

在讨论Linux时提到的模块一般是指可以组装到内核中的模块。

模块这个概念是在硬件和程序设计领域中广泛使用的概念。我们这次说的模块特指Linux内核中的模块。

 

内核模块简单来说就是「作为内核程序主体的一个小配件来使用的程序」,也就是说,只有模块是什么也做不了的。安装到内核中才能起作用。

 

比如有一个新的设备或者一个新的功能想要追加到内核中时,就可以用模块的方式来实现。(设备驱动最好考虑用内核模块的方式来提供)

此时,如果把相应的模块直接放到内核本体中,这里不是以模块方式,而是直接把模块代码放到内核代码中。那么,因为不知道何时需要何种设备,所以要把很多的驱动程序代码加到内核代码中,

内核的代码量会变的非常庞大。不仅如此,内核的内存使用量会很大。而且但有新的设备发布的时候,需要把新设备的代码加入到内核中,然后再重新编译内核,这会花费很多的时间。

 

如果以「模块」方式来使用的话,那么只要将必要的设备以及功能的代码加入到内核中,内核会很紧凑。而且有新的设备或功能发布时,也不用重新编译内核。

 

这样看来,模块方式有很多优点,但也不是没有缺点的。

  1. 存在很多天生就无法用模块方式来实现的功能
  2. 用模块方式在某些场合会导致性能下降

 

管理内核模块的命令是 「modprobe」。这个命令可以用来加载模块。

模块之间有时会存在依赖关系,「modprobe」命令会在加载模块时检查模块的依赖关系,所以建议用「modprobe」命令来加载模块。



本文转自wang_yb博客园博客,原文链接:http://www.cnblogs.com/wang_yb/p/3776960.html,如需转载请自行联系原作者


目录
相关文章
|
机器学习/深度学习 自然语言处理 Linux
【专栏】Linux 中的机器学习:Whisper适用于语音助手、翻译等领域,随着技术发展,其应用前景广阔
【4月更文挑战第28天】本文探讨了在Linux环境下,先进自动语音识别系统Whisper的运用与实现高效ASR。Whisper基于PyTorch,支持多语言识别,具有高准确性和实时性。文中介绍了安装配置Whisper的步骤,包括安装依赖、下载代码、配置环境变量及编译安装。通过数据准备、模型训练和识别,可实现语音识别功能。Whisper适用于语音助手、翻译等领域,随着技术发展,其应用前景广阔。
847 1
|
缓存 安全 Linux
Linux系统查看操作系统版本信息、CPU信息、模块信息
在Linux系统中,常用命令可帮助用户查看操作系统版本、CPU信息和模块信息
4022 23
|
Unix Linux 网络安全
python中连接linux好用的模块paramiko(附带案例)
该文章详细介绍了如何使用Python的Paramiko模块来连接Linux服务器,包括安装配置及通过密码或密钥进行身份验证的示例。
1259 1
|
Ubuntu Linux 开发工具
深入探索Linux内核模块编程
【8月更文挑战第4天】在这篇文章中,我们不仅将探讨Linux内核模块的基础知识,还将通过一个实际的例子来展示如何编写一个简单的内核模块。我们将从理论出发,逐步过渡到动手实践,最终实现一个可以在Linux系统上运行的模块。文章的目标是为读者提供足够的信息和知识,以便他们能够自己编写内核模块,从而对操作系统的内部工作原理有更深入的了解。
|
负载均衡 应用服务中间件 Linux
在Linux中,常用的 Nginx 模块有哪些,常来做什么?
在Linux中,常用的 Nginx 模块有哪些,常来做什么?
|
NoSQL Linux Android开发
内核实验(三):编写简单Linux内核模块,使用Qemu加载ko做测试
本文介绍了如何在QEMU中挂载虚拟分区、创建和编译简单的Linux内核模块,并在QEMU虚拟机中加载和测试这些内核模块,包括创建虚拟分区、编写内核模块代码、编译、部署以及在QEMU中的加载和测试过程。
949 0
内核实验(三):编写简单Linux内核模块,使用Qemu加载ko做测试
|
Linux 开发者
Linux源码阅读笔记18-插入模型及删除模块操作
Linux源码阅读笔记18-插入模型及删除模块操作
|
安全 Linux 开发者
在Linux中,内核模块是什么以及如何加载和卸载它们?
在Linux中,内核模块是什么以及如何加载和卸载它们?
Linux源码阅读笔记19-插入删除模块实战
Linux源码阅读笔记19-插入删除模块实战
|
安全 Linux 数据处理
探索Linux的kmod命令:管理内核模块的利器
`kmod`是Linux下管理内核模块的工具,用于加载、卸载和管理模块及其依赖。使用`kmod load`来加载模块,`kmod remove`卸载模块,`kmod list`查看已加载模块,`kmod alias`显示模块别名。注意需有root权限,且要考虑依赖关系和版本兼容性。最佳实践包括备份、查阅文档和使用额外的管理工具。