模块打包方式和加载时机
来源:互联网 发布:揭阳诚佳电子淘宝 编辑:程序博客网 时间:2024/05/22 01:42
打包:
模块无论是编译进内核还是不编译进内核,一般都是打包在firmware文件里。当然可以后面手动通过usbnet等方式把没编译进内核的模块手动放到内核里,但主要是调试这么用,产品里很少这么用。
对于编译进内核的模块,是编译进vmlinux.bin里的。对于没有编译进内核的模块,是一个单独的.ko文件。
模块的加载:
对于编译进内核的模块:
在kernel启动过程中函数start_kernel里,调用rest_init,在rest_init里创建kernel_init内核线程,
在内核线程kernel_init里,do_pre_smp_initcalls()负责调用early_initcall的函数,do_basic_setup()负责调用所有从pure_initcall到late_initcall_sync的所有函数。
大部分模块加载都是在do_basic_setup函数加载的。
对于没有编译进内核的模块,是kernel启动之后使用insmod加载的。
一种是在rcS等脚本里添加命令,启动之后马上加载;
一种是在需要的时候在代码里加载。
- 模块打包方式和加载时机
- AssetBundle打包和各种加载方式
- Struts加载时机和加载顺序
- JVM > 类加载的时机和过程
- Java 类加载时机和顺序
- Unity3D Shader加载时机和预编译
- Unity3D Shader加载时机和预编译
- Java 类加载时机和机制
- 反射_类的加载概述和加载时机
- 反射-类的加载概述和加载时机
- java中类的加载和加载时机
- AssetBundle打包和加载
- Lua自定义方式加载模块
- ubuntu/debian 模块加载方式
- Lua自定义方式加载模块
- 05、模块加载方式介绍
- 【webpack】 模块加载器兼打包工具
- 模块加载和卸载
- Linux下Mongodb安装和启动配置.txt
- Response.Write("<script>alert('验证码不正确');</script>"); 丢失样式表解决方案
- Struts2+Mybatis+Spring整合增删改查实例
- Linux下Mongodb的主从配置
- JS中document对象详解
- 模块打包方式和加载时机
- 学习笔记 SVN简易使用手册详解
- 面试题
- SVN简易使用手册
- 技术牛人如何发财致富?
- Xcode 4 安装 Cocos2d 详细教程
- hibernate oracle 主键 自增
- Ibatis 特殊符号处理
- Wacom Inkling数字笔:将白纸变成手写板