.
核心原始码的½压缩与放置目录
鸟哥这里假设你也是下载上述的连½内的文件,然后该文件放置到
/root
底下。由于
Linux
核心原
始码一般½议放置于
/usr/src/kernels/
目录底下,因此你可以这样处理:
[root@study ~]#
tar
-
Jxvf linux
-
3.10.89.tar.xz
-
C /usr/src/kernels/
此时会在
/usr/src/kernels
底下产生一个新的目录,那就是
linux-3.10.89
这个目录啰!
我们在下个小
½会谈到的各项编译与设定,都必须要在这个目录底下½行才行喔!好了,那么这个目录底下的相关
文件有啥咚咚?
底下就来谈谈:
.
核心原始码下的次目录
在上述核心目录下含有哪些重要数据呢?基本上有底下这些东西:
.
arch
:与硬件平台有关的项目,大部分指的是
CPU
的类别,例如
x86, x86_64, Xen
虚拟支持等;
.
block
:与成组设备½相关的设定数据,区块数据通常指的是大量储存媒体!还包括类似
ext3
等文件系
统的支持是否允许等。
.
crypto
:核心所支持的加密的技术,例如
md5
或者是
des
等等;
.
Documentation
:与核心有关的一堆说明文件,若对核心有极大的兴趣,要瞧瞧这里!
.
drivers
:一些硬件的驱动程序,例如显示适配器、网络卡、
PCI
相关硬件等等;
.
firmware
:一些旧式硬件的微½本
(
韧体
)
数据;
.
fs
:核心所支持的
filesystems
,例如
vfat, reiserfs, nfs
等等;
.
include
:一些可让其他过程调用的标头
(header)
定义数据;
.
init
:一些核心初始化的定义功能,包括挂载与
init
程序的呼½等;
.
ipc
:定义
Linux
操作系统内各程序的沟通;
.
kernel
:定义核心的程序、核心状态、线程、程序的排程
(schedule)
、程序的讯号
(signle)
等
.
lib
:一些函式库;
.
mm
:与内存单元有关的各项数据,包括
swap
与虚拟内存等;
.
net
:与网络有关的各项协议数据,还有防火墙模块
(net/ipv4/netfilter/*)
等等;
.
security
:包括
selinux
等在内的安全性设定;
.
sound
:与音效有关的各项模块;
.
virt
:与虚拟化机器有关的信息,目前核心支持的是
KVM (Kernel base Virtual Machine)
这些数据先大致有个印象即可,至少未来如果你想要使用
patch
的方法加入额外的新功能时,
你要
½你的原始码放置于何处?这里就能够提供一些指引了。当然,最好还是跑到
Documentation
那个
目录底下去瞧瞧正确的说明,
对你的核心编译会更有帮助喔!
24.2
核心编译的前处理与核心功能选择
什么?核心编译还要½行前处理?没错啦!事实上,核心的目的在管理硬件与提供系统核心功能,因
此你必须要先找到你的系统硬件,
并且规划你的主机未来的任务,这样才能够编译出适合你这部主
机的核心!所以,整个核心编译的重要工作就是在『挑选你想要的功能』。
底下鸟哥就以自己的一
部主机软
/
硬件环境来说明,½释一下如何处理核心编译啰!