嵌入式linux内核命令 嵌入式linux内核开发

嵌入式linux内核及文件系统的烧写Wrong Image Format for bootm command
当前U-BOOT不支持文件rootfs.cramfs的映像格式 。
嵌入式Linux是课堂练习吧
估计很难啊
搜搜吧每个题目网上都能够找到的
具体的我也没有回答 呵呵
这些问题很简单的
交流的话 还可以要是作业 ??
关于linux和arm嵌入式的关系 。linux是操作系统内核 。arm嵌入式,是说的硬件 。也就是把arm 架构的CPU做的机器,嵌入到某个设备上作为一部分的开发 。操作方法如下:
1、新建一个目录:mkdir embedded_linux,将linux内核解压到该目录下:tar -jxf linux-3.1.1.tar.bz2 -C embedded_linux/ 。
2、内核的配置有三种方式:make config 文本配置方式;make menuconfig 菜单配置方式;make xconfig 图形界面配置方式(需安装qt) 。
3、终端输入命令:make menuconfig,打开内核配置界面 。
4、内核裁剪需要根据项目需求,System V IPC (IPC:Inter Process Communication)是组系统调用及函数库,程序运行必备的,其余根据个人需求包含或删除 。
5、在所有需要的选项配置完毕之后,按Esc退出,选择Yes保存 , 就完成了 。
嵌入式linux需要掌握哪些技能嵌入式linux可以分为两大部分,一是嵌入式linux内核驱动,二是嵌入式linux应用 。内核驱动需要掌握内核的知识,如内存管理、进程调度等等 。linux应用的话则需要掌握进程、进程间通信、线程、线程同步、网络编程等等 。嵌入式linux范围太广 , 初学的话建议从linux应用开始学起,可先熟悉linux下的一些基本命令和shell 。
在嵌入式Linux设备上如何安装一些命令,例如yum等所有嵌入式linux内核命令的命令其实都是程序嵌入式linux内核命令 , 除了 sh 内建的有限的几个命令 。
所以你明白了没嵌入式linux内核命令?想要用 yum ,那就去给你这个嵌入式设备装 yum 程序 。
很多命令都要去针对的编译安装 。嵌入式在开发逻辑上,你需要什么命令 , 就去编译什么命令的支持程序 。而不是去找已经做好的二进制程序 。那是 Linux 用户而不是开发者的想法 。
不过我可以告诉你,嵌入式用 yum 根本不实际 。因为嵌入式 Linux 系统是针对性很强的系统,这种针对性对于嵌入式系统开发者来说,控制软件组成基本是确定的工作 。桌面 Linux 的 yum 是由这个操作系统的制作者们进行系统整体软件组成及管理的一个程序,嵌入式linux内核命令他主要的是提供一个在线软件仓库的功能 。因为 yum 本身是基于 rpm 再开发的类 deb 在线仓库程序 。rpm 本身没有在线软件库的功能功能 。只是一个简单的软件包管理,依赖管理程序 。
但你一个嵌入式系统,却非要去用yum。难道你想做一个基于 arm 的桌面操作系统嵌入式linux内核命令?嵌入式很多情况下,连软件包管理器都不需要 。更何况这种在线软件仓库?
就算你想弄软件仓库 , 那你的软件顶多是应用程序仓库,类似 android 的软件商店就足够了 。根本不需要 yum 这种支持依赖管理等等各种的功能 。而且一套 yum 和 rpm 的支持库,就可以吃掉你的嵌入式设备的大部分存储空间 。而且为了实现 yum 的主要功能你还要去维护一个 yum 软件仓库服务器才行 。
有那功夫自己写一个软件管理器都来得及 。本身嵌入式系统就不需要太多的软件包管理功能 。
请简述嵌入式linux内核的编译过程编译及安装简要步骤:
编辑Makefile版本信息
定义内核特性 , 生成配置文件.config,用于编译:make xconfig
编译内核:make
安装内核:make install
安装模块:make modules_install
具体步骤如下:
内核配置
先定义内核需要什么特性,并进行配置 。内核构建系统(The kernel build system)远不是简单用来构建整个内核和模块 , 想了解更多的高级内核构建选项,你可以查看 Documentation/kbuild 目录内的内核文档 。
可用的配置命令和方式:
make menuconfig
命令:make menuconfig
编译内核
编译和安装内核
编译步骤:
【嵌入式linux内核命令 嵌入式linux内核开发】$ cd /usr/src/linux2.6
$ make
安装步骤 (logged as
$ make install
$ make modules_install
提升编译速度
多花一些时间在内核配置上 , 并且只编译那些你硬件需要的模块 。这样可以把编译时间缩短为原来的1/30 , 并且节省数百MB的空间 。另外,你还可以并行编译多个文件:
$ make -j number
make 可以并行执行多个目标(target)(KEMIN:前提是目标规则间没有交叉依赖项,这个怎么做到的?)
$ make -j 4
即便是在单处理器的工作站上也会很快,读写文件的时间被节省下来了 。多线程让CPU保持忙碌 。
number大于4不见得有效了,因为上下文切换过多反而降低的工作的速度 。
make -j 4*number_of_processors
内核编译tips
查看完整的 (gcc, ld)命令行: $ make V=1
清理所有的生成文件 (to create patches...): $ make mrproper
部分编译:$ make M=drivers/usb/serial
单独模块编译:$ make drivers/usb/serial/visor.ko
最终生成的文件
vmlinux 原始内核镜像 , 非压缩的
arch/arch/boot/zImage zlib压缩的内核镜像(Default image on arm)
arch/arch/boot/bzImage bzip2压缩的内核镜像 。通常很?。愎环湃胍徽湃砼蹋―efault image on i386)
关于嵌入式linux内核命令和嵌入式linux内核开发的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读