配置编译内核(Linux kernel)
虽然以前也编译过内核,但是关于内核配置选项特别是有关本机驱动这块还是不熟悉,因为没有通过确定有效的途径知道当前工作正常的内核中到底使用了什么驱动模块来控制硬件,最近看到一本书《Linux kernel in a netshell》,感觉讲的还不错,所以记下笔记。
1.编译内核的工具
gcc
binutils(ld) binutils是gcc的工具链,用来链接目标文件以及汇编。
make
util-linux-ng(fdformat)
module-init-tools(depmod)
tune2fs
NFS(showmount)
udev udev是Linux中用来管理/dev目录的工具,它维护/dev目录下所有的设备文件。
2.下载wget/curl
3.编译
$make defconfig defconfig是i386计算机上的默认配置,也就是Linus Torvalds计算机中的配置。
$make config 最原始的配置方式
$make menuconfig 文本字符界面配置
$make xconfig X Window配置界面
$make 编译Kernel
4.高级编译选项
make -jN N设置为你CPU内核数的两倍,代表编译内核所用的线程数量。
$make drivers/usb/serial 只编译目录drivers/usb/serial,但是不会生成模块映像文件
$make M=drivers/usb/serial 同上,但是会生成模块文件,但是不会影响已经编译好的内核,如果想要改变已经编译好的内核,则需要重新执行
$make
$make drivers/usb/serial/visor.ko 只编译个别文件
$make -O=/path/to/output/ 将输出重定向到另一个目录,注意configure也必须使用-O重定向输出。
$make ARCH=x86_64 defconfig 设置目标计算机体系结构
 
相关文档:
1. HCI层协议概述:
HCI提供一套统一的方法来访问Bluetooth底层。如图所示:
从图上可以看出,Host Controller Interface(HCI) 就是用来沟通Host和Module。Host通常就是PC, Module则是以各种物理连接形式(USB,serial,pc-card等)连接到PC上的bluetooth Dongle。
在Host这一端:application,SDP,L2cap等协议 ......
一:前言
最近在研究android的sensor driver,主要是E-compass,其中用到了Linux input子系统.在网上也看了很多这方面的资料,感觉还是这篇分析的比较细致透彻,因此转载一下以便自己学习,同时和大家分享!
(这篇博客主要是以键盘驱动为例的,不过讲解的是Linux Input Subsystem,可以仔细的研究一下!)
键盘驱动将检 ......
linux下安装apache+php
1.apache
在如下页面下载apache的for linux 的 ......
一、安装SVN默认安装到/usr/local/bin下面
二、创建仓库 svnadmin create /home/svnrepo
/root/svnrepo为所创建仓库的路径,理论上可以是任何目录
三、修改配置文件/home/svnrepo/conf/svnserve.conf
#去掉#[general]前面的#号
[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access = none
......