1. init #!/bin/busybox ash#load modules mao 2013-02-16 14:12:48 echo "************************mao***********************************"insmod /lib/modules/ftmac100.koifconfig eth0 192.168.253.99 ifconfiginsmod /lib/modules/fcap0.koinsmod /lib/modu…
Linux内核支持动态的加载模块运行:比如insmod first_drv.ko,这样就可以将模块加载到内核所在空间供应用程序调用.现在简单描述下insmod first_drv.ko的过程 1.insmod也是一个用户进程 2.insmod进程从命令行中读取要链接的模块名字:first_drv.ko 3.insmod进程确定模块对象代码所在的文件在系统目录树中的位置,即first_drv.ko文件所在的位置 4.insmod进程从文件系统所在的存储区读入存有模块目标代码的文件 5.insmod…
问题: 1. 把编译好的模块放到板子/lib/modules对应文件夹下,并且执行了depmod -a, 比如pl2303.ko, 那么下一次插入pl2303的串口线,是否可以识别,也就是自动加载pl2303驱动? -------------------------------------------------------------------------------------------------------------- 转自:http://blog.csdn.net/hunanch…
一.在ARM linux 下,一般而言,产品在启动的过程中应该加载模块,最简单的方法是修改启动过程的rc脚本(/etc/init.d/rcS),增加ismod /../xxx.ko这个命令.例如:加载/lib/modules/2.6.26.5/s3c2410_buttons) cd /lib/modules/2.6.26.5insmod s3c2410_buttonsmknod /dev/matrix_button c 232 0 其中最后一行表示的意思是在ARM系统中建立设备文件,其主设备号为…
execve系统调用 execve系统调用 我们前面提到了, fork, vfork等复制出来的进程是父进程的一个副本, 那么如何我们想加载新的程序, 可以通过execve来加载和启动新的程序. x86架构下, 其实还实现了一个新的exec的系统调用叫做execveat(自linux-3.19后进入内核) syscalls,x86: Add execveat() system call exec()函数族 exec函数一共有六个,其中execve为内核级系统调用,其他(execl,execle,…
一:linux内核裁剪: 1:编译内核源码: 今天的重点内容是内核驱动的编写,在编写驱动之前首先的了解linux内核源码,linux主要是由五个子系统组成:进程调度,内存管理,文件系统,网络接口以及进程间通信:下面是解压的linux内核源码文件: 下面对linux内核里面的文件进行简单的说明: arch目录中包含于体系结构有关的子目录和文件,arm的相关平台信息在arch/arm目录下. scripts目录中存放着对核心配置的脚本文件. crypto目录中包含着常见的加密算法. drivers目…
转自:https://www.crifan.com/try_use_qemu_emulate_arm_board_to_load_and_run_uboot_kernel_rootfs/ [背景] 手上有一个嵌入式Linux的项目. 已经用交叉编译器arm-xscale-linux-gnueabi去编译了Uboot和kernel: [记录]Ubuntu下用arm-xscale-linux-gnueabi交叉编译uboot [记录]Ubuntu下用arm-xscale-linux-gnueabi交…
下面是以前学习Linux时写的,后来仔细研究rc.sysinit后发现,只需要修改下列地方就可以了,不必这么麻烦的: rc.sysinit中有这样的一段代码: # Load other user-defined modules for file in /etc/sysconfig/modules/*.modules ; do [ -x $file ] && $file done # Load modules (for backward compatibility with VARs) if…
TAG: linux, main, _start DATE: 2013-08-08 原文地址: http://blog.csdn.net/tigerscorpio/article/details/6227730 简介 用户在编写程序时都要定义一个main()函数作为程序运行的入口.程序开始 执行时就 从这个函数开始.当这个函数返回时就表明程序运行结束了.可是用户编写的 程序要 能正确运行远不是这么简单.比如,我们不禁要问main()是由谁调用 的呢?当从 main()返回后又运行到哪里去了呢?C…