Linux内核启动流程分析(二)

Linux内核启动流程分析(二)

ID:44416570

大小:550.64 KB

页数:20页

时间:2019-10-21

Linux内核启动流程分析(二)_第1页
Linux内核启动流程分析(二)_第2页
Linux内核启动流程分析(二)_第3页
Linux内核启动流程分析(二)_第4页
Linux内核启动流程分析(二)_第5页
资源描述:

《Linux内核启动流程分析(二)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、S3C2410Linux2.6.35.7启动分析(第二阶段)接着上面的分析,第一阶段的代码跳转后,会进入笫二阶段的代码。第二阶段的代码是从archarmkerne1head.S开始的。内核启动第二阶段主要完成的工作有,cpuID检查,machineID(也就是开发板ID)检查,创建初始化页表,设置C代码运行环境,跳转到内核第一个真正的C函数startkernel开始执行。这一阶段涉及到两个重要的结构体:(1)一个是structproc_info_list主要描述CPU相关的信息,定义在文件archarminclude

2、asmprocinfo.h中,与其相关的函数及变量在文件arch/arm/mm/proc_arm920.S中被定义和赋值。(2)另一个结构体是描述开发板或者说机器信息的结构体structmachine_desc,定义在archarmincludeasmmacharch.h文件中,其函数的定义和变量的赋值在板极相关文件arch/arm/mach-s3c2410/mach~smdk2410.c中实现,这也是内核移植非常重要的一个文件。该阶段一般由前面的解压缩代码调用,进入该阶段要求:MMU=off,D-cache=off

3、,I-cache=dontcare,rO=0,rl=machineid.所有的机器ID列表保存在arch/arm/tools/mach-types文件中,在编译时会将这些机器ID按照统一的格式链接到基本内核映像文件vmlinux的_arch_info_begin和_arch_info_end之间的段中。存储格式定义在include/asm-arm/mach/arch,h文件中的结构体structmachine_desc{}。这两个结构体的内容最终会被连接到基本内核映像vmlinux中的两个段内,分别是*(.proc.info,in

4、it)和*(.arch.info,init),可以参考下面的连接脚本。链接脚本:arch/arm/kernel/vmlinux.IdsjfjTrHTjI•I•qfflA^llyI*7*SECTIONS・-TEXTADDR;・init:{/♦初始化代码段*/_stext=・;_sinittext=・:*(.init.text)_einittext=・;_proc_info_begin=・;♦(.proc.info,init)jwoc—inro’nd=・;_arch.info.begin=・;♦{.arch・info・init)__a

5、rch_info_end=・;tagtable_begi!i=・:♦(.taglist,init)__tagtable_end=・:・=ALIGN<16);__setup_start=・;*(.init.setup)__setup_end=・;__early_begin=・;*(・earl>param・init)__early_end=・;__initcall_start=・;♦(.iuitcalll.init)♦(.initcall2.init)*(.initcall3.init)*(.initcalU.init)*(.ini

6、tcall5.init)♦(.initeal16.init)♦(.initcall7.init)__initcall_end二・;__con_initeall_start=・;*(.con_initcall.init)_con_initeall_end二・;_security」ni=・:♦(.security_initrail,init)_security_initeall_ond=・;・=ALIGN(32);__initramfs_start=・;usr/built-in・o(・init・__initramfs_en(i=・;・

7、=ALIGN(64):__P^r_cpu_start=・;*{・data・perepu)__P

8、1.kernel运行的史前时期和内存布局在amr平台K,zImage,bin压缩镜像是由bootloader加载到物理内存,然后跳到zlmage.bin里一段程序,它专门于将被压缩的kernel解压缩到KERNEL_RAM_PADDR开始的一段内存

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。