精华内容
下载资源
问答
  • Linux内核模块管理

    2021-01-20 14:51:10
     2.9.1 内核模块存放位置  Linux内核模块文件命名方式通常为<模块名称.ko>,CentOS 6.3系统内核模块被集中存放在/lib/modules/`uname -r`/[1]目录下(uname -r获得信息为当前内核
  • Linux内核和硬件管理

    2014-06-17 20:20:48
    1、内核是什么2、如何管理内核模块 内核模块存放位置 arch:存储于硬件平台相关模块 crypto:存储是Linux内核提供加密算法模块 drivers:存储硬件设备驱动程序 fs:存放与文件系统有关模块 lib:各种模块...

    1、内核是什么

    2、如何管理内核模块

        内核模块存放位置

        wKioL1OgMtPweyDtAAEupa2YmlA036.jpgspacer.gif

        arch:存储于硬件平台相关的模块

        crypto:存储的是Linux内核提供的加密算法模块

        drivers:存储硬件设备的驱动程序

        fs:存放与文件系统有关的模块

        lib:各种模块所需要用到的链接库

        net:存储网络相关的模块

        sound:存放声卡驱动程序的目录

        查看模块信息 modinfo

    wKiom1OgMy2SwbXXAAIY5af-bpM538.jpg

         模块文件名filename

         模块的作者author

         模块的说明description

         模块的版权说明license

         模块的参数parameter

         查看已加载的模块

         wKiom1OgNAehhtLtAAAyVcyocWo621.jpgspacer.gif

         module:模块名称

         size:模块加载到内存时占用的体积大小,单位字节bytes

         used by:有哪些模块正在使用这个模块

        

         手动加载模块

          # insmod /lib/modules/2.6.18-238.el5/kernel/drivers/char/watchdog/softdog.ko 

         手动卸载模块

         #rmmod 会删除指定的模块,以及该模块所依赖的任何不使用的模块

         wKiom1OgNDSSG-BNAAAd_6FmyFE147.jpg

    spacer.gif

     

         -s代表要将卸载模块的信息,记录到系统日志服务器

           

         解决模块相依性

         modprobe

         -C:指定内核模块配置文件的位置

         -r:卸载模块

         -l:显示模块文件路径名称

         -a:显示所有模块文件路径名称

         -c:按照现在的模块状态产生设置值

        

        三个模块的依赖关系 lp、parport、parport_pc

        wKiom1OgNFKhWzONAABsmGrGObU079.jpg

    spacer.gif

         产生模块相依性数据

         depmod

         什么时候需要执行depmod

        例如:使用depmod产生模块相依赖关系

        [root@test1 ~]# ll /lib/modules/2.6.18-238.el5/

        总计 1404

        lrwxrwxrwx 1 root root 44 05-06 04:30 build -> ../../../usr/src/kernels/2.6.18-238.el5-i686

        drwxr-xr-x 2 root root 4096 2010-12-20 extra

        drwxr-xr-x 9 root root 4096 05-06 04:30 kernel

        -rw-r--r-- 1 root root 299708 05-06 04:30 modules.alias

        -rw-r--r-- 1 root root 69 05-06 04:30 modules.ccwmap

        -rw-r--r-- 1 root root 222365 05-06 04:30 modules.dep

        -rw-r--r-- 1 root root 147 05-06 04:30 modules.ieee1394map

        -rw-r--r-- 1 root root 375 05-06 04:30 modules.inputmap

        -rw-r--r-- 1 root root 2699 05-06 04:30 modules.isapnpmap

        -rw-r--r-- 1 root root 74 05-06 04:30 modules.ofmap

        -rw-r--r-- 1 root root 234333 05-06 04:30 modules.pcimap

        -rw-r--r-- 1 root root 589 05-06 04:30 modules.seriomap

        -rw-r--r-- 1 root root 142699 05-06 04:30 modules.symbols

        -rw-r--r-- 1 root root 396941 05-06 04:30 modules.usbmap

        lrwxrwxrwx 1 root root 5 05-06 04:30 source -> build

        drwxr-xr-x 2 root root 4096 2010-12-20 updates

        drwxr-xr-x 2 root root 4096 2010-12-20 weak-updates

        [root@test1 ~]# rm -f /lib/modules/2.6.18-238.el5/modules.*

        [root@test1 ~]# ll /lib/modules/2.6.18-238.el5/

        总计 40

        lrwxrwxrwx 1 root root 44 05-06 04:30 build -> ../../../usr/src/kernels/2.6.18-238.el5-i686

        drwxr-xr-x 2 root root 4096 2010-12-20 extra

        drwxr-xr-x 9 root root 4096 05-06 04:30 kernel

        lrwxrwxrwx 1 root root 5 05-06 04:30 source -> build

        drwxr-xr-x 2 root root 4096 2010-12-20 updates

        drwxr-xr-x 2 root root 4096 2010-12-20 weak-updates

        [root@test1 ~]# depmod

        [root@test1 ~]# ll /lib/modules/2.6.18-238.el5/

        总计 1360

        lrwxrwxrwx 1 root root 44 05-06 04:30 build -> ../../../usr/src/kernels/2.6.18-238.el5-i686

        drwxr-xr-x 2 root root 4096 2010-12-20 extra

        drwxr-xr-x 9 root root 4096 05-06 04:30 kernel

        -rw-r--r-- 1 root root 299708 05-16 14:57 modules.alias

        -rw-r--r-- 1 root root 69 05-16 14:57 modules.ccwmap

        -rw-r--r-- 1 root root 222365 05-16 14:57 modules.dep

        -rw-r--r-- 1 root root 147 05-16 14:57 modules.ieee1394map

        -rw-r--r-- 1 root root 375 05-16 14:57 modules.inputmap

        -rw-r--r-- 1 root root 2699 05-16 14:57 modules.isapnpmap

        -rw-r--r-- 1 root root 74 05-16 14:57 modules.ofmap

        -rw-r--r-- 1 root root 234333 05-16 14:57 modules.pcimap

        -rw-r--r-- 1 root root 589 05-16 14:57 modules.seriomap

        -rw-r--r-- 1 root root 142699 05-16 14:57 modules.symbols

        -rw-r--r-- 1 root root 396941 05-16 14:57 modules.usbmap

        lrwxrwxrwx 1 root root 5 05-06 04:30 source -> build

        drwxr-xr-x 2 root root 4096 2010-12-20 updates

        drwxr-xr-x 2 root root 4096 2010-12-20 weak-updates

         配置内核模块配置文件

         # vim /etc/modprobe.conf

         alias 模块别名

         options 模块默认参数

         install  

         remove

         include

        

        配置内核参数

        wKiom1OgNKCg4mgHAABFUNSdRcs564.jpg

    spacer.gif

        使用sysctl工具配置内核参数

        查看、修改、配置文件、调用

        升级内核

        手动安装新版kernel RPM文件

        yum 升级内核

        

        硬件管理

        管理设备文件

            设备文件类型:块设备b、字符设备c

            设备文件识别号码:主要号码、次要号码

            wKiom1OgNMjDu3O4AAD3HbxmrMY890.jpg

    spacer.gif

            手动建立设备文件:mknod

            

            使用makedev建立设备文件

            通过udev自动建立设备文件

            udev的组件

            udev运行原理

            配置udev

        监控硬件设备

            内核事件信息

                #dmesg

                查看日志/var/log/dmesg

            通过/proc/相关信息

                #cat /proc/*    

                devices:Linux已驱动的硬件设备列表

                cpuinfo:存储内核检测到的CPU信息

                diskstats:提供磁盘的状态信息

                interrupts:Linux硬件的IRQ中断信息会存储在这里

                iomem:硬件设备的IO地址信息

                mdstat:存储多重磁盘设备的信息

                meminfo:内存的使用状况信息

                partitions:所有磁盘的分区信息                        

            硬件浏览器  图形界面下查看

            # rpm -ivh /media/Server/pyparted-1.8.1-4.el5.i386.rpm

                Preparing... ########################################### [100%]

                  1:pyparted ########################################### [100%]

            [root@test1 Server]# rpm -ivh /media/Server/hwbrowser-0.30-3.el5.noarch.rpm

                Preparing... ########################################### [100%]

                  1:hwbrowser ########################################### [100%]

        管理PCI设备

            查看PCI设备信息:lspci

            配置PCI设备:setpci

        管理声卡设备

            设置声卡

            设置声卡音量

        管理热插拔设备

            管理USB设备

            lsusb

            cat  /proc/bus/usb/devices

            管理PCMCIA设备

            PC机内存卡国际联合会

    如何区分内核的版本

    内核的组件:

    内核镜像文件

    内核模块

    initrd镜像文件

    RHEL提供的内核rpm:

    内核:

    1、软件包kernel,普通版本内核

    2、软件包kernel-PAE 使用超过4G大小的内存时候使用的内核

    3、软件包kernel-xen xen虚拟化系统使用的内核

    工具和文件:

    kernel-doc:Linux内核说明书

    kernel-util:Linux内核的管理工具,以及与内核有关的服务

    spacer.gif

    2:主要版本号码

    6:次要版本号码,奇数:开发中的版本  偶数:稳定的版本

    18:修正版本号

    238.el5:Linux产品厂商所定义的版本编号

    # uname -a

    Linux test1.cdpc.com 2.6.18-238.el5 #1 SMP Sun Dec 19 14:24:47 EST 2010 i686 i686 i386 GNU/Linux

    其他详细参数  uname


    转载于:https://blog.51cto.com/madsstudy/1427446

    展开全文
  • Linux的目录结构

    2014-01-16 16:22:00
    / 是根目录 ~是主目录 bin 存放二进制可执行文件(Is,cat,...lib 存放根文件系统中程序运行所需要共享库及内核模块 mnt 系统管理员安装临时文件系统安装点 opt 额外安装等可选应用程序包所放置的位置 p...

     

    / 是根目录

    ~是主目录


    bin 存放二进制可执行文件(Is,cat,mkdir等)


    boot 存放用于系统引导时使用的各种文件


    dev 用于存放设备文件


    etc 存放系统配置文件


    home 存放所有用户文件等根目录


    lib 存放根文件系统中的程序运行所需要的共享库及内核模块


    mnt 系统管理员安装临时文件系统的安装点


    opt 额外安装等可选应用程序包所放置的位置


    proc 虚拟文件系统,存放当前内存的映射


    root 超级用户目录


    sbin 存放二进制可执行文件,只有root才能访问


    tmp 用于存放各种临时文件


    usr 用于存放系统应用程序,比较重要的目录,/usr/local本地管理员软件安装目录


    var 用于存放运行时需要改变数据的文件

    转载于:https://www.cnblogs.com/zhangwei595806165/p/3522745.html

    展开全文
  • / 是根目录 ~是主目录 bin 存放二进制可执行文件(Is,cat...lib 存放根文件系统中程序运行所需要共享库及内核模块 mnt 系统管理员安装临时文件系统安装点 opt 额外安装等可选应用程序包所放置的位置 proc...

    / 是根目录

    ~是主目录


    bin 存放二进制可执行文件(Is,cat,mkdir等)


    boot 存放用于系统引导时使用的各种文件


    dev 用于存放设备文件


    etc 存放系统配置文件


    home 存放所有用户文件等根目录


    lib 存放根文件系统中的程序运行所需要的共享库及内核模块


    mnt 系统管理员安装临时文件系统的安装点


    opt 额外安装等可选应用程序包所放置的位置


    proc 虚拟文件系统,存放当前内存的映射


    root 超级用户目录


    sbin 存放二进制可执行文件,只有root才能访问


    tmp 用于存放各种临时文件


    usr 用于存放系统应用程序,比较重要的目录,/usr/local本地管理员软件安装目录


    var 用于存放运行时需要改变数据的文件

    转载于:https://www.cnblogs.com/zjzsky/p/3461187.html

    展开全文
  • EBB-17、模块管理

    2013-07-08 08:12:50
    一、模块1、什么是模块 模块(modules)是包含了linux内核核心部分以外的外围设备或外围功能,他们被封装成模块文 件,供Linux内核来动态的进行挂接和调用。... 其他的目录是外围内容存放的目录 主要的文件存放在/...

    一、模块

    1、什么是模块

      模块(modules)是包含了linux内核核心部分以外的外围设备或外围功能,他们被封装成模块文

      件,供Linux内核来动态的进行挂接和调用。

    2、模块(modules)的位置:

    1)/lib/modules

    clip_p_w_picpath002

      其中build/和source/目录是内核编译的相应的源代码文件存放的位置。

      其他的目录是外围内容存放的目录


      主要的文件存放在/kernel目录下

      arch 对一些硬件平台方面支持的模块,例如CPU

      crypto 对一些加密方面功能的模块

      drivers 硬件方面的驱动,例如显卡、硬盘、硬件驱动器等

      fs 文件系统驱动

      lib 库的调用

      net 网络设备、网络功能、网络协议、防火墙等

      sound 声音系统方面

    clip_p_w_picpath004

    2)/boot/下的initrd-2.6.18-194.el5.img

    clip_p_w_picpath006

    3)*.ko


    3、模块的管理

    1)lsmod 查看当前系统模块的使用情况

    clip_p_w_picpath008

      Module 模块名称

      Size 模块大小,单位是字节

      Use by 该模块被其他多少个程序或模块所调用

    2)模块之间是有依赖关系的

      lsmod | grep lp

    clip_p_w_picpath010

      lp模块的加载依赖于parport_pc


    3)手动加载或卸载模块

    (1)手动卸载模块

        rmmod 模块名称

        remmod lp

    clip_p_w_picpath012

    (2)手动加载模块

        insmod 模块的绝对路径或者存储位置

        insmod /lib/modules/2.6.18-194.el5/kernel/drivers/char/lp.ko

    clip_p_w_picpath014

        注意事项:<1>模块的依赖关系

                  <2>模块文件的具体保存位置

        查找命令modinfo

        modinfo 模块名称

    clip_p_w_picpath016

    (3)测试模块之间的依赖关系

     <1>首先找到相应模块的具体保存位置,并记录下来

        modinfo parport_pc

    clip_p_w_picpath018

        modinfo ppdev

    clip_p_w_picpath020

     <2>rmmod parport

    clip_p_w_picpath022

        提示错误:该模块正在被其他的模块调用,所以不能卸载。因此需要按顺序卸载

     <3>依次执行 rmmod lp

                 rmmod parport_pc

                 rmmod ppdev

                 rmmod parport

     <4>执行lsmod | grep parport_pc 查看无显示,确认已经卸载

     <5>手动加载insmod /lib/modules/2.6.18-194.el5/kernel/drivers/char/lp.ko

    clip_p_w_picpath024

        出现这种错误表示模块依赖性不完整,无法加载。

        所以要按顺序安装

     <6>由于目录较长,我们指定一个变量

        MODULESDIR=/lib/modules/2.6.18-194.el5/kernel/*

     <7>执行insmod $MODULESDIR/parport/parport.ko加载 parport模块,lsmod |grep parport检测安

        装成功

    clip_p_w_picpath026

     <8>依次执行insmod $MODULESDIR/parport/parport_pc.ko

                insmod $MODULESDIR/char/ppdev.ko

                insmod $MODULESDIR/char/lp.ko

    clip_p_w_picpath028

    (4)实际中linux启动时,使用modprobe命令调用insmod的使用

     <1>首先依次执行rmmod lp

                    rmmod ppdev

                    rmmod parport_pc

                    rmmod parport

        卸载lp、ppdev、parport_pc、parport模块

    clip_p_w_picpath030

     <2>然后执行modprobe lp,自动将lp使用需要的依赖的模块加载。

        modprobe命令不会还原模块挂接,而只是帮助用户自动解决模块挂接所产生的依赖关系

    clip_p_w_picpath032

        然后继续modprode ppdev 还原模块挂接

    clip_p_w_picpath010[1]

    <3> modprobe自动挂接并解决模块依赖关系的原理:

        在/lib/modules/2.6.18-194.el5/目录下有个特殊文件

        modules.dep

    clip_p_w_picpath034

        vi modules.dep查看该文件的内容,文件内容是相应的模块以及相应模块依赖关系的声明

    clip_p_w_picpath036

        modprobe依据modules.dep文件描述的模块依赖关系实现自动加载相应的模块。


    4、如果modprobe文件丢失、误删除等,

      depmod命令会自动检测当前系统运行状态下系统各种模块的之间的依赖挂接,并且将相应模块之间

      的依赖关系写入到对应的文件中,重新建立modules的一系列文件

    clip_p_w_picpath038

      当linux系统中安装新的硬件、驱动之后,执行depmod -a命令将新的硬件模块信息更新到modules  

      相应的记录文件中。

      depmod -a 重建模块依赖关系

      其他的文件保存的内容

      vi modules.alias

    clip_p_w_picpath040

      alias别名是把相应的硬件的编码和名称做的一个别名的映射。


    二、kernel modules挂接过程

    clip_p_w_picpath042

    1、kudzu 读取当前系统中相应硬件的信息。

      参数

    clip_p_w_picpath044

      kudzu -p --class=network

    clip_p_w_picpath046

      每次开机kudzu会把所有的分类全部查一遍,然后将查找到内容与/etc/sysconfig/ hwconf文件的

      内容进行比对。hwconf文件保存的是上一次系统启动之后发现的硬件信息。如果出现不同,发现新

      的硬件时,则会读取相应硬件的支持列表(modules.alias文件),如果列表文件不存在,提示用

      户,系统无法驱动该硬件;如果存在表示系统支持该硬件,然后查询驱动模块信息(modules.dep

      文件);加载启用,将新硬件的内容更新到hwconf文件。

    模块挂接过程总结:

    vmlinuz(内核加载) --> initrd.img的模块 --> rc.sysinit

    --> rc(启动服务) --> kudzu (发现硬件的信息) --> 通过比

    对/etc/sysconfig/hwconf判断是否有新的硬件 --> 如果有新

    硬件判断modules.alias文件记录的相应内容和对应硬件的识

    别信息 --> modules.dep找到对应硬件的模块及相应依赖的模块信息 --> modprobe加载相应的模块 --> 模块加载成功之后,将新硬件的内容更新到/etc/sysconfig/hwconf并记录下来。

    注意内核判断硬件类型,不是根据总线,而是根据相应硬件的信息。

    2、加载多个同种类型的驱动的时候如何分辨:

      vi /etc/modprobe.conf

      定义了使用modprobe自动挂接模块时对模块下达的相应的参数,这些参数可以更改模块挂接的相应  

      不同的指令

    clip_p_w_picpath048

      alias eth1 vmxnet当我们挂接一个模块叫做vmnet的时候,把对应的硬件的名称alias成eth1来操  

      作,当我们对应eth1来操作时就是对应这个模块来操作

      options snd-card-0 index=0添加参数

      remove snd-ens1371{..} 当我们卸载这些模块挂接的时候同时执行{ }内的命令

      在什么动作的时候同时执行那些命令


    3、当系统不支持新硬件时,如何安装驱动,分两种情况:

    1)内核中存在设备相应的驱动,我们只需要把该驱动加载

      例如,/usr/src/kernels/2.6.18-194.el5-i686/fs/下的reiserfs文件系统,内核中有相应的驱

      动,但是redhat内核中默认没有编译,所以不能使用。

    clip_p_w_picpath050

      如果需要使用,将reiserfs编译成模块的方式,在编译内核的时候,我们只需要编译需要的相应

      模块。


      首先,我们需要下载内核,

      注意下载的内核版本与当前系统使用内核的版本必须一致,否则可能会导致编译的模块无法使用。

     (1)usname –r查看当前系统使用的内核版本

    clip_p_w_picpath052

     (2)登陆ftp://ftp.redhat.com/找到相应的内核下载目录,下载相应内核

    clip_p_w_picpath054

     (3)清空/usr/src/redhat/SPECS和/SOURCES下的文件,确保这两个文件无数据,然后安装下载的

          内核

    clip_p_w_picpath056

     (4)组装内核的源代码

    clip_p_w_picpath058

     (5)执行cd ..切换到上一层目录

    clip_p_w_picpath060

     (6)执行mv linux-2.6.18.i6868/ /usr/src/kernels/,将相应的源代码移动到/usr/src/kernels/

    clip_p_w_picpath062

      (7)make menuconfig进入linux内核的选项页面

    clip_p_w_picpath064

         Reiserfs support我们可以选择 * 编译到内核内部,但是选择 * 必须重新编译一次内核;所

         以选择M编译成模块。

         其子选项都是[]表示表示只能编译进内核内部,不能编译成模块,所以不选。

    (8)现在执行make prepare

                 make modules_prepare

         按照.config文件所记录的对linux内核相应选项,生成相应的makefile文件,在各个子目录和

         子文件中生成makefile文件,按照makefile文件的描述编译出需要的模块。

    clip_p_w_picpath066

    clip_p_w_picpath068

    clip_p_w_picpath070

    clip_p_w_picpath072

    (9)执行make M=fs/reiserfs/ 编译mudules模块

         M是make命令下达的参数,编译mudules模块的目录位置

    clip_p_w_picpath074

         显示执行的操作都是[M],reiserfs的编译,

         第二部部分创建的是我们需要的模块文件

    (10)使用模块

         reiserfs模块文件应该放在

         /lib/modules/2.6.18-194.el5/kernel/fs/,当前显示没有reiserfs目录,因为系统内核编译

         时未编译reiserfs模块。

    clip_p_w_picpath076

     <1>执行mkdir reiserfs创建,然后将编译的结果拷贝

        到/lib/modules/2.6.18194.el5/kernel/fs/reiserfs/目录下

    clip_p_w_picpath078

     <2>执行insmod命令加载使用

    clip_p_w_picpath080

        lsmod | grep reiserfs显示模块正常挂接

        现在通过编译内核指定模块增加内核功能的操作完成。


    存在的缺陷:

    <1>现在如果我们卸载reiserfs模块

    <2>使用modprobe命令加载reiserfs模块,显示失败

    原因:modprobe是依据modules.dep文件描述的模块依赖关系实现自动加载相应的模块。目前我们所做

         的模块加载没有更新到modules.dep文件。所以当linux系统中安装新的硬件、驱动之后,执行

         depmod -a命令将新的硬件模块信息更新到modules相应的记录文件中。

    <3>执行depmod –a命令更新,然后执行modprobe reiserfs加载,显示成功


    2)内核中没有指定驱动或功能模块,如何增加驱动或相应功能模块

    (1)更新内核的目录内容

        创建模块对应的目录,拷贝相应的文件,在程序的调用,直接读到对应的头文件或库文件或者其

        他类型信息。

    (2)更新/lib/modules的内容

        编译出来的模块拷贝到/lib/modules,系统就可以调用手动加载最后不要忘记depmod -a更新

    转载于:https://blog.51cto.com/wangjifu/1243073

    展开全文
  • linux系统目录结构

    千次阅读 2011-08-05 13:51:18
    目录默认下存放的是Linux的启动文件和内核,引导程序文件。 initramfs-* 系统启动时的模块供应的主要来源,启动系统所需加载的虚拟磁盘 System.map-* System.map文件是一个索引文件,它记录了kernel中的...
  • Linux目录详解

    2019-12-02 20:24:15
    目录 /bin 存放二进制可执行文件 常用命令一般都在这 /etc 存放系统管理和配置.../lib 存放跟文件系统中程序运行所需要共享库及内核模块 /tmp 用于存放各种临时文件 /var 用于存放运行时需要改变数据文件 ...
  • 这个目录存放了PHP对各个服务器抽象层代码, 例如命令行程序实现,Apachemod_php模块实现以及fastcgi实现等等。 在各个服务器抽象层之间遵守着相同约定,这里我们称之为SAPI接口。 每个SAPI实现都是一个_...
  • linux2.6内核成功编译 1) 需要工具: (1) 模块工具:modutils-2.4.21-23.src.rpm //负责加载模块,在2.4之前是不需要单独编译 //模块存放位置:/lib/modules/内核版本目录/kernel/drivers //lsmod: ...
  • linux2.6内核成功编译 1) 需要工具: (1) 模块工具:modutils-2.4.21-23.src.rpm //负责加载模块,在2.4之前... //模块存放位置:/lib/modules/内核版本目录/kernel/drivers //lsmod: 查看已经加载模块 ...
  • /proc 文件系统是一种内核和内核模块用来向进程 (process) 发送信息机制 (所以叫做 /proc)。这个伪文件系统让你可以和内核内部数据结构进行交互,获取 有关进程有用信息,在运行中 (on the fly) 改变设置 (通过...
  • Linux内核源码+电子书

    热门讨论 2011-02-21 15:13:10
    9.2.7 Ext2的目录项及文件的定位 9.3 文件的访问权限和安全 9.4 链接文件 9.5 分配策略 9.5.1 数据块寻址 9.5.2 文件的洞 9.5.3 分配一个数据块 第十章 模块机制 10.1 概述 10.1.1 什么是模块 10.1.2 为...
  • 9.2.7 Ext2的目录项及文件的定位 9.3 文件的访问权限和安全 9.4 链接文件 9.5 分配策略 9.5.1 数据块寻址 9.5.2 文件的洞 9.5.3 分配一个数据块 第十章 模块机制 10.1 概述 10.1.1 什么是模块 10.1.2 为...
  • PHP内核分析(二)

    2015-03-11 14:35:35
    这个目录存放了PHP对各个服务器抽象层代码, 例如命令行程序实现,Apachemod_php模块实现以及fastcgi实现等等。 在各个服务器抽象层之间遵守着相同约定,这里我们称之为SAPI接口。 每个SAPI实现都是...
  • Linux目录结构(重要) 在linux系统中,无盘符概念,都是文件/目录 自己软件安装位置: /usr/local 系统配置:/etc ...lib 存放跟文件系统中程序运行所需要共享库及内核模块 mnt 系统管理员安装临时文件系统
  • 这个目录存放了PHP对各个服务器抽象层代码, 例如命令行程序实现,Apachemod_php模块实现以及fastcgi实现等等。 在各个服务器抽象层之间遵守着相同约定,这里我们称之为SAPI接口。 每个SAPI实现都是一...

空空如也

空空如也

1 2 3 4
收藏数 69
精华内容 27
关键字:

内核模块存放的目录位置是