• 自动装载模块


    自动装载模块

    除了使用以上命令工具外,内核模块可以在需要的时候自动装载到内核中。使用我们的签名介绍的工具装载模块和卸载模块需要用户的干预,而且处于安全原因只有根用户能使用insmod和rmmod来加载和卸载模块。虽然这样保证了安全,但却带来了不便。例如,当一个用户程序在运行过程中需要使用一个功能,但该功能的模块还没有加载到内核中,这就需要内核有能力自动调度模块到内核地址空间。

      通常,在程序运行过程中如果需要的资源或某个设备驱动程序没有注册,内核会报错。你可以事先用内核函数request_模块申请需要的组件模块。为了使用这个函数,在配置内核时需要激活项Kernel Module Loaderrequest_模块会调用modprobe命令自动装载需要的模块(并调度模块依赖的其他模块)。要自动调度哪些模块需要的配置文件/etc/模块s.conf中设置。

    下面给出了/etc/模块s.conf配置文件的实例。在该文件中它知名了当前网络设备是由模块mylan_cs代码的,为了装载该模块,需要给它传送特定的参数。如果modprobe不能找到模块,printk会给出错误信息。

    /etc/模块s.conf

    #Aliases - specify you hardware

    alias eth0 mylan_cs

    options mylan_cs eht=1 network_name="MyNet" station_name="neo"

    alias char-major-4 serial

    alias char-major-5 serial

    alias char-major-6 lp

    alias char-major-9 st

    alias tty-ldisc-1 slip

    alias tty-ldisc ppp

    虽然这种方式可以自动装载模块,但它也只能调度系统管理员在配置文件中指定的模块。

  • 相关阅读:
    音视频-x624和H.264
    状态机解决复杂逻辑及使用
    任意程序上的蒙版画笔实现
    WPF-3D圆柱体透视
    WPF-3D-Z-buffering 导致的遮盖物体不渲染问题
    WPF3D立方体图形展开动画思路
    解决Prism 8.0 I添加InvokeCommandAction xaml报错问题
    Spark编程基础(Python版)
    前端开发工具fscapture
    修改element ui select选择器 样式
  • 原文地址:https://www.cnblogs.com/newlist/p/2709555.html
Copyright © 2020-2023  润新知