荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: make@bbs.mysite.net-SPAM.no (马克·我来了), 信区: Linux
标  题: Re: Linux bootloader 编写方法 (转)
发信站: 福州大学庭芳苑BBS站 (Tue Mar  1 08:10:44 2005)
转信站: SZU!news.szu.edu.cn!bbsnews.sdu.edu.cn!FZU


Blob, the boot loader

http://www.lart.tudelft.nl/lartware/blob/


LART comes with its own boot loader, blob (Boot Loader OBject). Blob is
copyrighted by Jan-Derk Bakker and Erik Mouw, and released with a slightly
modified GNU GPL license. It's slightly modified because we don't consider the
operating systems that blob boots as a derived work.

Blob can…

initialise the hardware (CPU speed, memory, interrupts, RS232)
boot a linux kernel and provide it with a ramdisk
download a kernel or a ramdisk to the LART
write a freshly downloaded kernel or ramdisk to flash memory
determine the memory layout (and tell the kernel about the results)
give a command line to the kernel
Blob wish list (which is also the to-do list) in no particular order:

Parameter block support
Ethernet support (boot from bootp+tftp)
Memory setting calculation utility
Z-modem download
Using blob on the LART
First connect a terminal (or a terminal emulator like miniterm or Seyon) to the
LART's serial port. Use the following settings for your terminal: 9600 baud, 8
data bits, no parity, 1 stop bit, no start bits (9600 8N1, a pretty standard
setting for Unix systems). If possible, use VT100 terminal emulation. Switch on
the power to the LART. The LART should respond with:

Consider yourself LARTed!
Running from internal Flash.
Starting the memory tester...
Zeroing memory...0xD0000000
Zeroing done. Testing for aliases...
Loading kernel from flash ....... done
Loading ramdisk from flash ............... done

blob version 1.0.0, Copyright (C) 1999 Jan-Derk Bakker and Erik Mouw.
blob comes with ABSOLUTELY NO WARRANTY; read the GNU GPL for details.
This is free software, and you are welcome to redistribute it
under certain conditions; read the GNU GPL for details.

Autoboot in progress, press <enter> to stop ...





If you don't press the <enter> key within 10 seconds, blob will automatically
start the Linux kernel:

Starting kernel ...

Uncompressing Linux...done.
Now booting the kernel
...





However, if you press the <enter> key, you will get the blob prompt:

Autoboot aborted
Type "help" to get a list of commands
blob>






Blob has quite some commands, typing help will show you which:

Help for blob 1.0.0, the LART bootloader
The following commands are supported:
* boot [kernel options]      Boot Linux with optional kernel options
* download {kernel|ramdisk}  Download kernel or ramdisk image to RAM
* flash {kernel|ramdisk}     Copy kernel or ramdisk from RAM to flash
* help                       Get this help
* reload {kernel|ramdisk}    Reload kernel or ramdisk from flash to RAM
* reset                      Reset terminal
* speed                      Set download speed
* status                     Display current status
blob>






Have a look at the blob distribution for more information on the commands.

Getting blob
Get your copy of the blob source here:

blob-2.0.5-pre2.tar.gz 7 Jan 2002 21:37:52 165,485 bytes

The blob-2.0.5-pre2 development snapshot. Nice if you want to port blob to new
architectures. (tar, gz)

blob-2.0.5-pre1.tar.gz 5 Nov 2001 15:16:29 140,969 bytes

The blob-2.0.5-pre1 development snapshot. Nice if you want to port blob to new
architectures. (tar, gz)

blob-2.0.4.tar.gz 30 Aug 2001 21:54:43 94,438 bytes

The blob-2.0.4 source, which fixes a critical bug in blob-2.0.3. (tar, gz)

blob-2.0.3.tar.gz 7 Aug 2001 21:45:45 91,657 bytes

The long-awaited successor to blob-1.0.8-pre2. With features like the ability
to write your own flash, automatic memory detection, and kernel command line
support. LART owners still using older versions of blob should immediately
upgrade to this version for an improved LARTing eXPerience. (tar, gz)

blob-1.0.8-pre2.tar.gz 14 Jul 2000 19:31:13 81,613 bytes

The latest development release of blob. WARNING: this version is only tested on
the LART, but it should also work on the Intel Assabet. This release is for
blob developers, so they can test if it works with their boards. If you want to
give it a shot, go ahead, but don't be surprised if it doesn't work. This
version works with linux-2.3.99-pre8-rmk1-np1 and up, as well as with previous
linux versions. (tar, gz)

blob-1.0.8-pre1.tar.gz 28 Jun 2000 19:34:20 79,974 bytes

The latest development release of blob. WARNING: this version is not tested at
all! This release is for blob developers, so they can test if it works with
their boards. If you want to give it a shot, go ahead, but don't be surprised
if it doesn't work. This version works with linux-2.3.99-pre8-rmk1-np1 and up,
as well as with previous linux versions. (tar, gz)

blob-1.0.7b.tar.gz 2 Jun 2000 21:03:58 76,099 bytes

The latest development release of blob. It is stable, though. This version
works with linux-2.3.99-pre8-rmk1-np1 and up, as well as with previous linux
versions. (tar, gz)

blob-1.0.6.tar.gz 25 Mar 2000 14:47:40 73,895 bytes

The latest stable release of blob. Contains Johan's experimental clock scaling
code, updated documentation, and the slightly modified license. (tar, gz)

blob-1.0.5.tar.gz 15 Jan 2000 19:52:05 71,775 bytes

This version of blob fixes the flash write bug, and it compiles with the latest
binutils. (tar, gz)

blob-1.0.0.tar.gz 4 Oct 1999 22:45:40 73,507 bytes

The first public version of blob with a bug in the Flash write routine. (tar,
gz)




Or get a precompiled version:

precompiled-blob-2.0.4.gz 30 Aug 2001 21:54:50 7,277 bytes

A precompiled binary of blob-2.0.4. Works directly on a LART. (gz)

precompiled-blob-2.0.3.gz 7 Aug 2001 21:45:45 7,277 bytes

A precompiled binary of blob-2.0.3. Works directly on a LART. (gz)

precompiled-blob-1.0.8-pre2.gz 12 Apr 2001 13:43:54 7,406 bytes

A precompiled binary of blob-1.0.8pre2. Works directly on a LART, though it
should be useful on other SA-1100 platforms, too. YMMV, of course. Get the blob
source for documentation. (gz)

precompiled-blob-1.0.7b.gz 2 Jun 2000 21:08:24 7,365 bytes

A precompiled binary of blob-1.0.7b (the development version). Works directly
on a LART, though it should be useful on other SA-1100 platforms, too. YMMV, of
course. Get the blob source for documentation. (gz)

precompiled-blob-1.0.6.gz 6 Apr 2000 11:00:29 7,365 bytes

A precompiled binary of blob-1.0.6. Works directly on a LART, though it should
be useful on other SA-1100 platforms, too. YMMV, of course. Get the blob source
for documentation. (gz)




 The blob CVS tree is hosted at SourceForge.

Download utility
Richard Green got fed up with the tedious process of sending files to his LART
and wrote a tool to `scratch his itch.' He has released it, free of charge &
guarantees, so here it is:

lartload-0.2.c 1 Feb 2002 18:27:35 19,299 bytes

Lartload Utility to download blob, a kernel or a ramdisk to a LART and
optionally store it in flash.
changes in 0.2:

Just took out a few funnies so it compiles ok with -Wall.
Also added command line option for terminal speed, as requested by Mr. Riker.
Also added -q option, because it looks useful for batch processing and
impatient people.
Yet more - you can now talk to your lart after all the downloads have completed
via a simple (note VERY simple!) terminal emulator.


lartload-0.1.c 28 Jan 2002 23:39:15 15,632 bytes

Lartload Utility to download blob, a kernel or a ramdisk to a LART and
optionally store it in flash.




Questions
Questions about blob should be asked on the LART mailing list.


【 在 pmfsakula (挑起酒旗·美男子北上) 的大作中提到: 】
:
--------------------------------------------------------------------------------
: 范晓炬(xiaoju_f@263.net)
: 联想(北京)有限公司软件设计中心嵌入式研发处开发工程师
: ...................

--

※ 来源:·福州大学庭芳苑BBS bbs.fzu.edu.cn·[FROM: 210.34.50.*]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店