⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 three.txt

📁 关于Linux嵌入裁减的技术文档
💻 TXT
字号:
  
   

 | 新闻动态 | 基本教程 | 网络教程 | 精品文章 | 软件下载 | Linux内核 | java专区 | C语言编程 | PHP 编程 | MY SQL | linux相册


| 嵌入应用 | 英汉词典 | 认证信息 | 风云人物   合作伙伴:eNet下载 中国Linux教育网 zhaolinux      QQ群:271585997 
 
 
 
首页>Linux 内核>正文
 
Linux内核编译实战 
来源:Linux应用基站   责任编辑:gjb1021   作者:  日期:2006-5-9 6:39:01  点击次数:992    


needusbstorage=
if [ $usb = "1" ]; then
needusbstorage=`LC_ALL=C grep -e "^I.*Cls=08" /sys/bus/usb/devices 2>/dev/null`
action $"Initializing USB 1.1 host controller: " modprobe ohci-hcd 2> /dev/null
action $"Initializing USB HID interface: " modprobe hid 2> /dev/null
action $"Initializing USB keyboard: " modprobe usbkbd 2> /dev/null
action $"Initializing USB mouse: " modprobe usbmouse 2> /dev/null
fi

如果USB总线是2.0的,还需将“ohci-hcd”改为“ehci-hcd”。 

    5)Sysfs问题

解决方法是:

◆ 建立目录/sys:#mkdir /sys

◆ 在/etc/rc.d/rc.sysinit文件中找到“mount -f /proc”,在其下一行加入“mount -f /sys”。

◆ 同样在/etc/rc.d/rc.sysinit文件中找到“action $"Mounting proc filesystem: " mount -n -t proc /proc /proc”,在其下一行加入“action $"Mounting sysfs filesystem: " mount -n -t sysfs /sys /sys”。

◆ 在/etc/fstab文件中加入“none /sys sysfs defaults 0 0”。

◆ 在/etc/init.d/halt的halt_get_remaining函数中找到“awk '$2 ~ /^\/$|^\/proc|^\/dev/{next}”,改为“awk '$2 ~ /^\/$|^\/proc|^\/sys|^\/dev/{next}”。

    6)Hotplug(热插拔)问题

内核对热插拔功能的支持与KMOD内核线程有关。

解决方法是将/etc/rc.sysinit中所有的/proc/ksyms替换为/proc/kallsyms。执行如下命令:

#mv /etc/rc.d/rc.sysinit /etc/rc.d/rc.sysinit.bak
#sed -e 's/\/proc\/ksyms/\/proc\/kallsyms/g' /etc/rc.d/rc.sysinit.bak > /etc/rc.d/rc.sysinit

    7)Glibc问题

用户可以升级Glibc标准库的软件包来解决该问题。因为有些发行版,例如Red Hat 9.0上默认安装的Glibc可能是被Red Hat内核小组修改过的。软件包的下载地址是:

ftp://ftp.rpmfind.net/linux/redhat/...27.9.i386.rpm。

可以连同以下几个软件包一起升级:

ftp://ftp.rpmfind.net/linux/redhat/...2-27.9.i386.rpm

ftp://ftp.rpmfind.net/linux/redhat/...2-27.9.i386.rpm

ftp://ftp.rpmfind.net/linux/redhat/...2-27.9.i386.rpm

如果使用“rpm -Uvh glibc*”失败,请用命令“rpm -e”先删除旧的Glibc,然后用命令“rpm -Uvh --force glibc*”强制安装。

其它问题

大家也许还会遇到其它问题,但是无论遇上什么问题都可以依照下列步骤尝试解决:

    1.内核组件尽可能编译为模块。执行如下命令可以快速重建内核:

#make all modules_install install

    2.软件失败的大多数情况是由于模块名已被更改,而/etc/rc.d/rc.sysinit和/etc/rcX.d/*下的脚本却没有修改这些值而导致的。因此,依次修改相关条目可以改进,但是这也需要相当多的背景知识。如果觉得麻烦,可以把所有加载模块的命令集中在/etc/rc.d/rc.local中。例如:

modprobe eth0
modprobe isofs
modprobe loop
modprobe vfat

同时修改/etc/modoribe.conf文件。具体可参见“man modoribe.conf”获得更多的帮助信息。

    3.如果想知道某模块变更后的名字,可以首先在“make menuconfig”时找到该选项,选择Help找到它的配置名称(CONFIG_*),然后到源代码相关目录下的makefile中寻找CONFIG_*。一般可以找到obj-$(CONFIG_*)一项,其值就是该模块的名字。

本新闻共3页,当前在第3页  1  2  3  
 





 会员名称: 密码:匿名 ·注册·忘记密码? 
 
评论内容:
(最多300个字符)   
   查看评论 

 





 作者笔名 简单内容(共0个评论) 查看全部内容 发表日期 
 
 
 打印本页    关闭窗口  
 
 
 
linux吧学习交流网版权所有 Copyright 2005-2008 陇ICP备05005178号   QQ联系方式:391661813  [本站统计]  
 
   
英 汉 词 典 
位运算符  
字面值  
变量  
成员  
强制转换  
八进制  
声明  
垃圾回收  
更多... 
 

Linux 风云人物 
一个高级黑客给黑客同胞们的 
十大超级老牌黑客:莫里斯 
十大超级老牌黑客之:卡普尔 
十大超级老牌黑客之:雷蒙德 
十大超级老牌黑客之:米特尼 
十大老牌黑客之:约翰.德拉浦 
十大老牌黑客之:斯托曼 
十大超级老牌黑客:丹尼斯.利 
十大老牌黑客之:沃兹尼克 
十大超级老牌黑客之:李纳斯 
更多... 
 
  
  
  
  
 
 
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -