如何在Ubuntu编译Linux内核
首先需要下载Linux kernel,在www.kernel.org里面下载。然后需要安装kernel-package,fakeroot。这样准备工作就完成了。
下面开始内核的配置。最重要的一点是去掉kenerl hacking选项卡下面的“编译内核带有debug信息”选项,否则编译出来的内核无比庞大
。然后根据个人需要去掉一些驱动。不过必须清楚知道自己在干什么,否则启动不了是很正常的。
因
为大部分机器都是多核的了,所有多个job同时进行能有效地提高效率。可以export变量CONCURRENCY_LEVEL=#(#为工作的数目,十
进制),来设置同时进行的工作数。假如你的U是双核,而又想在编译的时候上上网之类,设置为2。若想全力开工,设置为3。这是因为进程的创建需要一些消
耗,更多的进程才能完整地消耗完CPU。这样执行make-kpkg命令: fakeroot make-kpkg --initrd
--append_to_version=-lin20070227 kernel_image kernel_headers
其中append_to_version选项是个人喜好,还有kernel_image和kernel_headers的位置不能调换。
编译好,双击安装image和headers。重启(必须)
。
最后一部是设置/lib/module/`uname --kernel-release`里面的build符号链接,把它修改为/usr/src/linux-headers-`uname --kernel-release`/
enjoy!
相关文档:
1.1.5 Shell命令和流程控制
在shell脚本中可以使用三类命令:
1)Unix 命令:
虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令。这些命令通常是用来进行文件和文字操作的。
常用命令语法及功能
echo "some text": 将文字内容打印在屏幕上
ls: 文件列表
wc –l filewc -w filewc -c fi ......
进程篇
查看某进程端口号
netstat -anp | grep 80
lsof -i :port
例: 注意":"后,紧跟端口号,没有空格
#lsof -i :443
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
java 2731 root 35u IPv6 7778 TCP *:https (LI ......
linux spi驱动
内核版本:linux-2.6.29
主要的几个结构
platform_device platform_driver s3c24xx_spi spi_master spi_bitbang spi_device spi_driver spidev_data s3c_spi_info
第一步:注册platform_device
在arch/arm/mach-s3c2410/mach-qt2410.c 中注册platform_device ,其中s3c2410_spi_info 作为plat ......
现象说明:
使用Linux控制台进行一些操作,有时会通过Tab键补全命令,也有时通过Backspace删除字符等等操作,这时如果出现错误,系统会发出“滴滴”的响声,很刺耳;
解决方法:
1. 在命令行下输入 xset b off
,可以临时去掉错误提示声音,但下次重启后依旧会有;
2. 把命令
xset ......