VIVI Boot Loader的初始化过程与实现解析

需积分: 9 0 下载量 74 浏览量 更新于2024-07-23 收藏 338KB PDF 举报
"vivi-boot loader" Boot Loader是操作系统启动前的一个关键组件,负责初始化硬件、加载内核和设置启动参数。在嵌入式系统中,Boot Loader的重要性尤为突出,因为它们需要根据特定硬件平台进行定制。VIVI是一个针对SMDK2410(基于S3C2410处理器)开发系统的Boot Loader实例。 Boot Loader的启动过程分为两个阶段:Stage1和Stage2。这两个阶段的设计使得Boot Loader能够灵活地适应不同的硬件环境,并且在有限的资源下高效运行。 1. Stage1(通常由汇编语言编写): - **硬件初始化**:这是Boot Loader首先执行的任务,主要目的是为Stage2和后续的Kernel运行创建必要的硬件环境。这包括: - **中断屏蔽**:关闭所有中断,防止在Boot Loader运行期间被中断处理,保证程序连续执行。 - **设置CPU速度和时钟频率**:根据硬件配置调整CPU的工作模式和频率。 - **RAM初始化**:配置内存控制器,确保内存能够正常工作。 - **LED初始化**(如果存在):通过GPIO控制LED状态,显示系统运行情况。 - **关闭CPU内部cache**:提高初始化阶段的速度和稳定性,防止数据不一致。 2. Stage2(通常由C语言编写): - **加载Kernel和根文件系统映像**:Stage1会将Kernel和根文件系统的映像从非易失性存储(如Flash)读取到RAM中,准备供Kernel使用。 - **设置启动参数**:配置内核启动所需的参数,例如内存布局、设备树等。 - **调用内核**:一旦所有前期工作准备就绪,Stage2将控制权传递给Kernel,开始OS的执行。 在VIVI Boot Loader的实现中,`head.S`代表Stage1,主要包含上述的硬件初始化工作;而`main()`函数则是Stage2的起点,负责更复杂的操作,如加载Kernel映像和根文件系统映像。 为了更好地理解VIVI,可以参考以下资源: 1. 《嵌入式系统BootLoader技术内幕》:詹荣开著,提供了Boot Loader的深入分析。 2. "Getting started with VIVI":Janhoon Lyu著,介绍如何开始使用VIVI。 3. 《嵌入式设备上的Linux系统开发》:A. Santhanam著,涵盖嵌入式Linux开发的多个方面。 4. "Linux system development on an embedded device":同样由A. Santhanam著,专注于嵌入式Linux开发。 5. VIVI相关资料:可在http://www.mizi.com/developer/s3c2410x/index.html找到更多信息。 6. SMDK2410的硬件和软件/Linux相关资料:Samsung官方提供的文档和说明。 Boot Loader与Kernel之间的交互涉及到很多底层细节,例如内存管理、设备驱动等。了解Boot Loader的工作原理对于开发和调试嵌入式系统至关重要。在Linux中,还涉及到MTD(Memory Technology Device)子系统,用于管理非易失性存储设备,以及JFFS2(Journaling Flash File System 2),一种专为闪存设计的日志文件系统。这些技术在嵌入式Linux环境中发挥着关键作用。如果有任何疑问或发现错误,可以通过邮件(如jonesxu@gmail.com)进行交流。
2019-07-10 上传
vivi万能小偷程序只需要输入目标站地址就能全自动采集,高智能的采集程序,支持98%的单级域名站点,规则制作十分简单,菜鸟也能制作采集规则,采集不求人。 vivi万能小偷程序功能简介 后台配置采集节点,输入目标站地址即可全自动智能转换自动全站采集 支持https、支持POST获取、支持搜索 全自动分析,内外链接自动转换、图片地址、css、js,自动分析CSS内的图片使得页面风格不丢失 广告标签,方便在规则里直接替换广告代码 替换支持系统标签,如:{网站标题}、{域名}、{网站地址}。方便在规则里直接替换 主体区域截取,自定义采集区域 多条采集规则一键切换,支持导入导出 内置强大替换和过滤功能,标签过滤、站内外过滤、字符串替换、等等 IP屏蔽功能,屏蔽想要屏蔽IP地址让它无法访问 蜘蛛访问记录 vivi万能小偷程序高级功能 url过滤功能,可过滤屏蔽不采集指定链接 伪原创,近义词替换有利于seo 伪静态,url伪静态化,有利于seo 自动缓存自动更新,可设置缓存时间达到自动更新,css缓存 简繁体互转 代理IP、伪造IP、随机IP、伪造user-agent、伪造referer来路、自定义cookie,以便应对防采集措施 url地址加密转换,个性化url,让你的url地址与众不同 关键词内链功能 ftp上传需使用二进制上传方式,方法请百度 data文件夹需要读写权限 首次使用程序请到后台进行相关设置,否则出现错位、空白等现象 程序使用环境 php5.2 - php5.5