① 什么叫做内核编译,为什么要进行内核编译呢
对开源操作系统(主要是指linux)的内核源代码在本机进行有针对性的编译,就叫做内核编译。
编译内核的目的主要是改变内核的默认选项,比如内核原来不支持某硬件,原因是内核的相应选项默认状态是disactivated,需要改变。
当然,也有人把新版的linux装在旧机子上。这样,许多在内核里activated的硬件,他没有,将来也不需要。那么,就可以在内核里去掉。以及一些服务、特殊的功能等等,如果用不着,比如机子是服务器的话,最好在内核里关掉,"精兵简政"。这是以系统安全和提高效率为目的。
有专门的工具对其进行编译。这个问题不是几句话能说明白的。看你的提问就知道你是刚刚学习这些内容,建议不要好高骛远,先把c语言学好,然后再研究这些东西。
欢迎访问我的论坛:)
http://www.chinesebloger.com
期待您的支持:)
② 编译linux内核和编译linuxROM有什么区别
如果我没理解错的话,你的“linux
内核”是针对PC,intel处理器;“linux
ROM”是针对移动设备(比如adnroid
内核),ARM处理器。那区别就是编译器把内核翻译成intel能懂的机器语言,还是arm能懂得,他们架构完全不一样以及使用完全不同的指令集。
//////////////////////////////////////////////////////////////////////////////
android内核是指google
基于linux
kernel定制的操作系统内核,主要添加了一些android设备驱动,是具备跨平台能力的源码;android
ROM是指编译好的整个android操作系统,不光光是内核了,还有外围的一些库,等等;andriod源码是指整个android
操作系统的源码,包括内核,各种库,java层封装,sdk等等。
③ Linux的内核编译是什么意思
所有的软件现在基本都是用高级语言编写的,Linux 内核也不例外。Linux 内核是用 C 语言写的。
但高级语言编写的程序有个问题就是,源代码是不能直接运行的。要么用解释语言解释运行(功能限制很大,应用环境限制也很大),要么就是通过编译器经解释编译链接后成为计算机可以直接运行的计算机语言,也就是一般成为的二进制程序。
Linux的内核编译就是用编译器把 Linux 的内核源代码编译成可以被计算机运行的二进制代码的行为。
当然 Linux 内核并不完全都是 C 语言写的,还有一部分汇编语言,但汇编语言也需要编译的。