精品Linux内核ppt,Linux内核.ppt

62e50291a81fc54b507f33cb80033297.gif Linux内核.ppt

(17页)

0dfa8740a7cc599824541c3110d41a45.gif

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!

19.90 积分

Linux内核 Linux内核配置与编译,Linux内核移植,mtd设备最简单的嵌入式系统SDRAM0x300000000x00x40000000x002000000x00500000Linux内核重要子系统系统调用接口进程管理内存管理虚拟文件系统网络堆栈设备驱动程序内核版本号Linux版本号统一采用的格式为x.y.zx:目前发布的Kernel主版本 y:偶数则为稳定版本;奇数则为测试版本或叫开发中的版本 z:错误修补的次数 例如:linux-2.6.30.4_20100531.tar.bz2烧写出厂镜像烧写内核:zImage_Q43_2.6.30.4_20100531.bin  到nand flash  0x00200000地址烧写文件系统:root_qt_4.5_2.6.30.4_256MB_20100601.bin到nand flash 0x00500000地址编译内核镜像1.解压缩包: #cp /mnt/hgfs/linux-2.6.30.4_20100531.tar.bz2 #tar –jxvf linux-2.6.30.4_20100531.tar.bz2 -C /2. 内核目录位于:/opt/EmbedSky/linux-2.6.30.4arch/体系结构相关的代码,例如:arch/i386,arch/arm,arch/ppc drivers/各种设备驱动程序,例如:drivers/char drivers/block …Documentation/内核文档fs/文件系统,例如:fs/ext3/ fs/jffs2 …include/内核头文件: include/asm是体系结构相关的头文件,它是include/asm-arm、include/asm-i386等目录的链接。include/linux是Linux内核基本的头文件init/Linux初始化,例如:main.cipc/进程间通信的代码kernel/Linux内核核心代码(这部分很小)lib/各种库子程序,例如:zlib, crc32 mm/内存管理代码net/网络支持代码,主要是网络协议sound声音驱动的支持scripts/内部或者外部使用的脚本usr/用户的代码内核源码结构内核配置系统Linux内核的配置系统由三个部分组成,分别是:   Makefile:       分布在 Linux 内核源代码中的 Makefile,定义 Linux 内核的编译规则; 配置文件(.config): 内核配置文件,包含由用户选择的配置选项,用来存放内核配置后的结果.  配置工具: make menuconfig(基于文本选单的配置界面,字符终端下推荐使用) make xconfig(基于图形窗口模式的配置界面,Xwindows下推荐使用) make config (基于文本的最传统的配置界面,不推荐使用)Makefile顶层 Makefile:是整个内核配置、编译的总体控制文件。arch/*/Makefile:位于各种 CPU 体系目录下的 Makefile,如 arch/arm/Makefile,是针对特定平台的 Makefile。各个子目录下的 Makefile:比如 drivers/Makefile,负责所在子目录下源代码的管理make menuconfigmake menuconfig:Y-将该功能编译进内核。N-不将该功能编译进内核。M-将该功能编译成可以在需要时动态插入到内核中的模块。驱动程序配置选项 几乎所有Linux的设备驱动程序都在“Device Drivers”菜单下,它对设备驱动程序加以归类,放到子菜单下。下面解释常用的一些菜单项的内容。(1)“Generic Driver Options”菜单对应drivers/base目录的配置选项,包含Linux驱动程序基本和通用的一些配置选项。(2)“Memory Technology Devices (MTD)”菜单对应drivers/mtd目录的配置选项,包含MTD设备驱动程序的配置选项。(3)“Parallel port support”菜单对应drivers/parport目录的配置选项,包含并口设备驱动程序。(4)“Plug and Play support”菜单对应drivers/pnp目录的配置选项,包含计算机外围设备的热拔插功能。(5)“Block devices”菜单对应drivers/block目录的配置选项,包含软驱、RAMDISK等驱动程序。(6)“ATA/ATAPI/MFM/RLL support”菜单对应drivers/ide目录的配置选项,包含各类ATA/ATAPI接口设备驱动。(7)“SCSI device support”菜单对应drivers/scsi目录的配置选项,包含各类SCSI接口的设备驱动。(8)“Network device support”菜单对应drivers/net目录的配置选项,包含各类网络设备驱动程序。驱动程序配置选项( 9)“Input device support”菜单对应drivers/input目录的配置选项,包含USB键盘鼠标等输入设备通用接口驱动。(10)“Character devices”菜单对应drivers/char目录的配置选项,包含各种字符设备驱动程序。这个目录下的驱动程序很多。串口的配置选项也是从这个子菜单调用的,但是串口驱动所在的目录是drivers/serial。(11)“I2C support”菜单对应drivers/i2c目录的配置选项,包含I2C总线的驱动。(12)“Multimedia devices”菜单对应drivers/media目录的配置选项,包含视频/音频接收和摄像头的驱动程序。(13)“Graphics support”菜单对应drivers/video目录的配置选项,包含Framebuffer驱动程序。(14)“Sound”菜单对应sound目录的配置选项,包含各种音频处理芯片OSS和ALSA驱动程序。(15)“USB support”菜单对应drivers/usb目录的配置选项,包含USB Host和Device的驱动程序。(16)“MMC/SD Card support”菜单对应drivers/mmc目录的配置选项,包含MMC/SD卡的驱动程序。对于特定的目标板,可以根据外围设备选择对应的驱动程序选项,然后才能在Linux系统下使用相应的设备。编译内核在内核目录下:#cp config_EmbedSky_W43  .config编译内核:#make uImage 编译好的内核位于arch/arm/boot/下烧写uImage镜像到nand flash的0x00200000地址。在Uboot命令行设置启动命令:tftp 30000000 uImageBootm 30000000Linux MTD介绍MTD(memory technology device内存技术设备)是用于访问memory设备(ROM、flash)的Linux的子系统。MTD的主要目的是为了使新的memory设备的驱动更加简单,为此它在硬件和上层之间提供了一个抽象的接口。MTD字符驱动程序允许直接访问flash器件,通常用来在flash上创建文件系统,也可以用来直接访问不频繁修改的数据。 MTD块设备驱动程序可以让flash器件伪装成块设备,实际上它通过把整块的erase block放到ram里面进行访问,然后再更新到flash,用户可以在这个块设备上创建通常的文件系统。linux系统定义出MTD的块设备(主设备号31)和字符设备(设备号90).嵌入式Linux+yaffs2SDRAM0x300000000x380000000x37000000bootargsnand readmtdblock2实践交叉编译运行和NFS 关 键 词: linux 内核

524d6daf746efaa52c3c71bbfe7ba172.gif  天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值