为什么我们需要在嵌入式设备中的引导程序? [英] Why do we need a bootloader in an embedded device?

查看:138
本文介绍了为什么我们需要在嵌入式设备中的引导程序?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我对的ARM Cortex-A8内核ELinux工作。

我知道了引导程序如何运作,它做什么工作。但我有一个问题 - 为什么我们需要引导程序,为什么引导程序诞生

为什么我们不能直接在内核加载到RAM从闪存中没有引导程序?如果我们加载它会发生什么?事实上,处理器将不支持它,但是我们为什么下面的程序?


解决方案

  

一个引导装载程序是自测试完成以后加载主操作系统或运行时环境的计算机中的计算机程序


^ <子>从维基百科的文章

所以基本上引导程序是做你想要的正是 - 从闪存的数据复制到操作存储器。它就是这么简单。

如果您想了解更多关于boostrapping操作系统,我强烈建议您阅读文章链接。启动阶段包括,除了测试,还检查外设和其他一些东西。跳过这些步骤才有意义上非常简单的嵌入式设备,这就是为什么他们的引导程序就更为简单:


  

有些嵌入式系统并不需要明显的启动顺序开始运作,并在开机时可以简单地运行存储在ROM业务方案。


<子>同一来源

I'm working with ELinux kernel on ARM cortex-A8.

I know how the bootloader works and what job it's doing. But i've got a question - why do we need bootloader, why was the bootloader born?

Why we can't directly load the kernel into RAM from flash memory without bootloader? If we load it what will happen? In fact, processor will not support it, but why are we following the procedure?

解决方案

A boot loader is a computer program that loads the main operating system or runtime environment for the computer after completion of the self-tests.

^ From Wikipedia Article

So basically bootloader is doing just what you wanted - copying data from flash into operating memory. It's really that simple.

If you want to know more about boostrapping the OS, I highly recommend you read the linked article. Boot phase consists, apart from tests, also of checking peripherals and some other things. Skipping them makes sense only on very simple embedded devices, and that's why their bootloaders are even simpler:

Some embedded systems do not require a noticeable boot sequence to begin functioning and when turned on may simply run operational programs that are stored in ROM.

The same source

这篇关于为什么我们需要在嵌入式设备中的引导程序?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆