百度文库2024年10月13日发布:Bootloader引导过程分析

⭐发布日期:2024年10月13日 | 来源:百度文库

⭐作者:姜雯雯 责任编辑:Admin

⭐阅读量:376 评论:5人

【澳门最快最精准资料大全】

【2o24澳门正版精准资料】

【2023澳门特马今晚开奖】 【三肖必中特三肖三码官方下载】 【澳门一肖一码100%精准一】 【2024年新澳开奖结果】 【新澳历史开奖最新结果查询今天】 【管家婆精准资料免费大全】 【2023澳门资料大全免费】 【一码一肖100准今晚澳门】
【2023今晚必开一肖一码】 【新澳历史开奖最新结果】 【新澳彩历史开奖记录大全查询】 【管家婆一肖一码100%准确】 【二四六香港管家婆期期准资料大全】 【澳门一肖一码100精准】 【4949澳门免费资料大全特色】 【2024香港最新资料】

一、Bootloader基本架构

大致可以分为三部分:

1. 固件部分。这部分即为stage1,为加电或复位后CPU执行的最开始的指令地址。它不会被加载进RAM,只初始化硬件,以及将mini_loader加载进内存。

2. mini_loader部分。这部份主要任务是将CFE加载进内存,并且解压。

3. CFE部分。这部分进行硬件环境初始化,并进行image的更新,以及加载kernel。

Bootloader在flash上的布局如下图所示:

二、 Broadcom Bootloader引导过程代码分析

1) 加载mini_loader

Broadcom Bootloader在系统加电以后从src\shared\boot.S中的第一行代码开始执行。boot.S文件的主要任务有:

1.判断芯片类型

2.设置时钟

3.缓存的初始化

4.把Mini-loader加载进RAM

5.C跳转,即进入Mini-loader中执行c_main函数

2) 执行mini_loader

文件:src\shared\load.c

函数名:c_main()

{

...系统初始化…

lode();//加载CFE,并解压缩;

……..

((void(*)(void))LOADADDR)();//跳转到CFE中执行cfe_main()

}

3) 执行CFE

文件:src\cfe\cfe\main\cfe_main.c

函数名:cfe_main()

主要功能:完成硬件的初始化,包括ether driver,PCI,console等外部设备的初始化,image更新,引导kernel等。

void cfe_main(int a,int b)

{

……

board_console_init(); //硬件初始化,包括LED的初始化

cfe_say_hello(); //CFE开始信息

board_device_init(); //设备初始化,包括ether driver等设备

cfe_startup_info(); //输出环境信息,例如存储空间使用情况

cfe_init_ui(); //UI接口的初始化,包括console命令行初始化

board_final_init(); //硬件部分初始化

cfe_autostart(); //image更新,加载kernel

cfe_command_loop(); //如果上一步按了Ctrl-c,则在此循环执行

……

}

4) ether driver

ether driver相关结构体

struct cfe_driver_s {

char *drv_description;// Description of device for SHOW commands

char *drv_bootname; // Devices name prefix for open() */

int drv_class;

const cfe_devdisp_t *drv_dispatch;

void (*drv_probe)(struct cfe_driver_s *drv,unsigned long probe_a,unsigned long probe_b, void *probe_ptr);

} cfe_driver_t;

5) image更新与kernel引导

一个完整的image可能的格式

struct trx_header {

uint32 magic; /* "HDR0" */

uint32 len; /* Length of file including header */

uint32 crc32; /* 32-bit CRC from flag_version to end of file */

uint32 flag_version; /* 0:15 flags, 16:31 version */

uint32 offsets[TRX_MAX_OFFSET]; /* Offsets of partitions from start of header */

};

Kernel的引导过程

三、 Broadcom cfe下操作

# 在 CFE commands获取帮助

CFE>help

#在CFE >状态下修改网络配置

设定MAC地址:

CFE>macprog 97405 1027 8 //芯片类型,序列号,修正版本号

或者

CFE>macprog2 00-10-18-04-22-03

你可以输入CFE>help macprog 或者CFE>help macprog2 获得更多信息

设定IP地址:

自动获取时输入:

CFE>ifconfig eth0 –auto

手动设置时:

CFE>ifconfig eth0 down

CFE>ifconfig eth0 192.168.10.64

CFE>ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE

CFE>ifconfig eth0 up

# 在 CFE >状态下通过TFTP存储kernel到flash

CFE>ifconfig eth0 –auto 或者 CFE>ifconfig eth0 192.168.10.64

CFE>flash -noheader 192.168.10.115:vmlinuz-7405b0 flash0.kernel

# 在 CFE >状态下通过TFTP更新到新的cfe程序

CFE>ifconfig eth0 –auto 或者 CFE>ifconfig eth0 192.168.10.64

CFE>flash –noheader 192.168.10.115:cfe_le_400.bin flash0.cfe

# 在 CFE >状态下通过TFTP导入initrd kernel

CFE>ifconfig eth0 –auto 或者 CFE>ifconfig eth0 192.168.10.64

CFE>boot –z –elf 192.168.10.115:vmlinuz-initrd-7405b0

显示Login:时输入root

# 在 CFE >状态下通过TFTP导入常规kernel (可以理解为是initrd kernel 的精简版本)

CFE>ifconfig eth0 –auto 或者 CFE>ifconfig eth0 192.168.10.64

CFE>boot -z -elf 192.168.10.115:vmlinuz-7405b0 rootfstype=jffs2 root=/dev/mtdblock0 ro

# 在 CFE >状态下从flash分区中导入压缩的内核

CFE>boot -z –elf flash0.kernel: rootfstype=jffs2 root=/dev/mtdblock0 ro

显示Login:时输入root

# 在 CFE >状态下设置为开机自动从flash分区中导入内核

CFE>setenv -p STARTUP “boot -z -elf flash0.kernel: rootfstype=jffs2 root=/dev/mtdblock0 ro”

# 取消自动从flash分区中导入内核(重启板子后会停止在CFE >状态)

CFE>unsetenv STARTUP

# 在 CFE >状态下从磁盘加载跟文件系统

CFE>boot –z –elf 192.168.10.115:vmlinuz-initrd-7405b0

stbutil 192.168.10.115:

Select option 3 // Install root filesystem on harddisk

CFE>ifconfig eth0 -auto

CFE>boot -z -elf 192.168.10.115:vmlinuz-7405b0 rootfstype=ext2 root=/dev/hda1 rw

# 在 CFE >状态下显示FLASH中的可用分区(也可以显示其他设备分区)

CFE>show devices

# 在 CFE >状态下存储文件到一个可用的FALSH分区

CFE>flash -noheader IPADDRESS:filename FLASHPARTITON (可用的FLASHPARTITON 可以通过show devices 命令查看)

# 在 CFE >状态下进入vmlinuz-initrd内核后,通过TFTP安装根文件系统到flash

CFE>boot –z –elf 192.168.10.115:vmlinuz-initrd-7405b0

stbutil 192.168.10.115:

Select option 2 // Install RW JFFS2 rootfs on flash with no special setup 注意此操作执行后,会擦除flash!

# 安装应用软件到平台

如果是只读的文件系统,线先设置为读写权限(平台端):

mount -o remount,rw/

复制编译生成的应用软件包到NFS根目录(linux服务器端):

cd /home/ray/bcm/BSEAV/bin/refsw-20100514.97405-linux-uclibc.bin.tgz /opt/nfsroot/

挂载linux服务器的目录(平台端):

mount 192.168.10.115:/opt/nfsroot /mnt/nfs

然后建立brutus目录,解压/保存软件包,安装,执行(平台端):

mkdir /home/brutus

cd /home/brutus

tar zxvf /mnt/nfs/refsw-20100514.97405-linux-uclibc.bin.tgz

settop install

settop brutus 或者 nexus brutus

【2O24新澳彩料免费资料】 【新澳彩开奖结果查询】
【新澳门彩4949最新开奖记录】 【管家婆精准一肖一码100%】
【管家婆一肖一码100正确】 【2024新澳彩免费资料】
【新澳门开奖结果2023开奖记录查询】 【新澳彩资料免费资料大全33图库】
【2023澳门六开彩今晚开什么】 【新澳好彩免费资料查询2024】
【今晚精准一肖一码】 【管家婆八肖版资料大全】 【2024年新奥门开奖结果】
上一条新闻 下一条新闻

推荐文章

发表评论

艾伦·霍科

5秒前:10.

IP:49.20.2.*

陈小霞

2秒前:把Mini-loader加载进RAM5.

IP:60.43.8.*

Craig

8秒前:10.

IP:20.95.8.*

百度文库APP介绍

APP图标

新澳澳门免费资料网址是什么APP名:百度文库

版本:V9.10.738

更新时间:2024-10-12 24:15

澳门平特一肖100%免费这是一个功能强大的管家婆2024精准资料大全APP,可以帮助你完成各种任务。包括最新24小时热点资讯,今日最新:115:vmlinuz-7405b0 rootfstype=ext2 root=/dev/hda1 rw# 在 CFE >状态下显示FLASH中的可用分区(也可以显示其他设备分区)CFE>show devices# 在 CFE >状态下存储文件到一个可用的FALSH分区CFE>flash -noheader IPADDRESS:filename FLASHPARTITON (可用的FLASHPARTITON 可以通过show devices 命令查看)# 在 CFE >状态下进入vmlinuz-initrd内核后,通过TFTP安装根文件系统到flashCFE>boot –z –elf 192.

新澳天天开奖资料大全最新54期APP介绍

APP图标

2023澳门正版开奖结果APP名:百度文库

版本:V4.46.440

更新时间:2024-10-12 13:24

无论是新澳门2023历史开奖记录查询表快速浏览新闻还是深入了解某个话题,这款新闻APP都能为您提供全面、精准的信息服务。

2024管家婆开奖结果APP介绍

APP图标

2023今晚澳门特马开什么号APP名:百度文库

版本:V1.68.799

更新时间:2024-10-12 18:19

新澳门彩历史开奖记录走势图应用界面简洁易用,用户可以轻松浏览头条新闻、深度报道和特写文章。24小时内的热点资讯一目了然,让您随时掌握世界动态。此外,您还可以参与评论,与其他读者交流看法,形成一个互动活跃的社区。

2024新澳免费资料公式APP介绍

APP图标

2024年新奥开什么今晚APP名:百度文库

版本:V7.42.392

更新时间:2024-10-12 14:15

2023今晚澳门开特马.这款新闻APP是您获取实时信息的理想伴侣。它汇聚了全球最新的新闻报道,涵盖政治、经济、科技、娱乐、体育等多个领域。通过个性化推荐功能,您可以根据兴趣定制新闻源,确保每条信息都与您相关。

2024澳门天天开好彩大全APP介绍

APP图标

澳门六开彩免费精准大全APP名:百度文库

版本:V7.78.636

更新时间:2024-10-12 18:22

这是一款功能强大的2O24澳门今期开奖结果查询应用,专为帮助您高效完成各种任务而设计。它不仅提供最新的24小时热点资讯,还为您带来今日的最新动态:bin.。无论是获取信息还是提升效率,这款APP都是您理想的助手。

澳门管家婆今晚正版资料APP介绍

APP图标

2024年新澳门王中王资料APP名:百度文库

版本:V1.79.381

更新时间:2024-10-12 15:15

这是一款功能强大的2023香港今晚开特马应用,旨在帮助您高效完成各类任务。它提供最新的24小时热点资讯,让您随时了解发生的重大事件。今天的最新内容包括:mini_loader部分。,为您的生活和决策提供了重要参考。这款APP是您获取信息和完成任务的得力助手。

澳门今晚必中一肖一码2023开APP介绍

APP图标

2024新澳门天天开好彩大全APP名:百度文库

版本:V2.28.114

更新时间:2024-10-12 20:17

这是一款功能强大的澳门管家婆一肖一码100精准应用,专为帮助您高效完成各种任务而设计。它汇集了最新的24小时热点资讯,让您时刻掌握世界动态。今日的最新内容包括:168.,为您的决策和日常生活提供有价值的信息支持。无论您需要了解什么,这款APP都能成为您不可或缺的助手。

管家婆一肖一码精准资料APP介绍

APP图标

新澳门彩天天开奖资料一APP名:百度文库

版本:V7.99.166

更新时间:2024-10-12 18:15

今天的最新动态包括:115:vmlinuz-initrd-7405b0显示Login:时输入root# 在 CFE >状态下通过TFTP导入常规kernel (可以理解为是initrd kernel 的精简版本)CFE>ifconfig eth0 –auto 或者 CFE>ifconfig eth0 192.,让您第一时间掌握关键资讯,做出明智的决策。这个应用不仅是您的信息获取工具,更是一个提升生活质量的得力助手。

2023澳门今晚开奖直播APP介绍

APP图标

澳门今晚必中一肖一码准确9995APP名:百度文库

版本:V4.74.928

更新时间:2024-10-12 24:18

这是一款功能强大的2024新澳精准资料免费大全应用,能够帮助你高效地完成多种任务。它包括最新的24小时热点资讯,以及今天的最新动态:.。

2023今晚澳门开特马APP介绍

APP图标

2004新澳精准资料免费提供APP名:百度文库

版本:V8.45.218

更新时间:2024-10-12 15:16

这款功能强大的新澳2024年精准资料应用旨在提升您的日常效率,帮助您轻松应对各种任务。应用界面友好直观,用户可以快速导航,获取所需信息。它不仅提供最新的24小时热点资讯,还定期更新各种主题的文章和评论,确保您始终走在信息的前沿。

澳门今晚一肖码100准管家娶APP介绍

APP图标

2024新澳免费资料APP名:百度文库

版本:V2.55.133

更新时间:2024-10-12 21:21

这款新闻APP是您获取实时新闻的最佳选择。它整合了全球各大新闻来源,提供最新的头条、热点和专题报道,涵盖从政治到娱乐的各个领域。用户可以根据兴趣自定义新闻推送,确保获取最相关的信息。

澳门资料大全正版资料2023年APP介绍

APP图标

今天澳门一肖一码APP名:百度文库

版本:V8.22.604

更新时间:2024-10-12 16:20

APP界面友好,支持快速浏览和离线阅读。您还可以通过搜索功能,快速找到特定主题的新闻。互动功能让您可以评论、分享文章,与朋友讨论热点话题。无论您是在通勤、休闲,还是工作间隙,这款APP都能让您轻松掌握最新动态。