【LINUX内核】LINUX内核编译
1. 下载内核源码的压缩包 linux-2.6.30.5.tar.bz2,有56MB大小
2. 解压出来后这个内核源码的文件夹linux-2.6.30.5,有332MB大小
3. 查看编译所需的最新版本的软件依赖的话,在Documentation/Changes文件里
4. make mrproper
确保内核源文件中没有旧的.o文件与依赖关系
5. make O=/usr/src/kernels/linux-2.6.30.5 menuconfig
配置内核,生成配置文件 .config
6. make O=/usr/src/kernels/linux-2.6.30.5
- -| 花了70分钟左右才在自己的机器上编译完成,在实验室的机器只要30分钟不到
编译完后的/usr/src/kernels/linux-2.6.30.5文件夹大小为1.6GB
只用一个make命令,是否已经包含了 make bzImage 跟 make module ?
7. make O=/usr/src/kernels/linux-2.6.30.5 modules_install
花了两分钟时间安装模块,完成后/usr/src/kernels/linux-2.6.30.5文件夹大小仍为1.6GB
这时/boot目录下多了几个文件:
System.map(软链接,指向后者),
System.map-2.6.30.5;
vmlinuz(软链接,指向后者),
vmlinuz-2.6.30.5
initrd-2.6.30.5.img
有点费解为什么不是在第6步后产生呢?或者只是我看错了?下次再试试就知道了。
8. make O=/usr/src/kernels/linux-2.6.30.5 install
将新的内核写入 /boot/grub/grub.conf
9. make O=/usr/src/kernels/linux-2.6.30.5 clean
/usr/src/kernels/linux-2.6.30.5文件夹便只剩下8.9MB,
而且这个文件夹可以删掉了貌似。是否只需要有/boot目录下的那几个文件(system.map, vmlinuz, initrd)就可以了。why?
相关文档:
例一:发送Signaling Packet:
Signaling Command是2个Bluetooth实体之间的L2CAP层命令传输。所以得Signaling Command使用CID 0x0001.
多个Command可以在一个C-frame(control frame)中发送。
如果要直接发送Signaling Command.需要建立SOCK_RAW类型的L2CAP连接Socket。这样才有机会自己填充Command Code,Identi ......
一:前言
最近在研究android的sensor driver,主要是E-compass,其中用到了Linux input子系统.在网上也看了很多这方面的资料,感觉还是这篇分析的比较细致透彻,因此转载一下以便自己学习,同时和大家分享!
(这篇博客主要是以键盘驱动为例的,不过讲解的是Linux Input Subsystem,可以仔细的研究一下!)
键盘驱动将检 ......
一、引言
想使用Linux已经很长时间了,由于没有硬性任务一直也没有系统学习,近日由于工作需要必须使用Linux下的MySQL。本以为有Windows下使用SQL Server的经验,觉得在Linux下安装MySql应该是易如反掌的事,可在真正安装和使用MySQL时走了很多弯路,遇见很多问题,毕竟Linux 和Windows本身就有很大区别。 ......
//CUdp.h
#ifndef MY_CUDP
#define MY_CUDP
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <unistd.h>
class CUdp{
public:
CUdp(const char* destIP, unsigned short localPort, unsigned short destPort);
CUdp(unsigned int destIP, unsig ......