[ipxe-devel] uncompressed (patchable) image?

Alessandro Salvatori sandr8 at gmail.com
Tue Nov 8 23:49:44 UTC 2011


more on my progress... i suspected these images might have been just too
large. so with the help of ruby-elf and/or objdump, i stripped the source
tree from anything i don't necessarily need. this way i got an image that
is less than 1/10th of the size and that seems to come up... :)

thank you, thank you!
-Alessandro-
 Here i am, A young man,
 A crashing computer program,
 Here is a pen, write out my name...

(from: The Servant - Orchestra)



On Tue, Nov 8, 2011 at 15:02, Alessandro Salvatori <sandr8 at gmail.com> wrote:

> actually i hit the very same issues without patching the embedded script
> image... seems that the problem is with uncompressed images...
>
> thanks!
> -Alessandro-
>  Here i am, A young man,
>  A crashing computer program,
>  Here is a pen, write out my name...
>
> (from: The Servant - Orchestra)
>
>
>
> On Tue, Nov 8, 2011 at 14:54, Alessandro Salvatori <sandr8 at gmail.com>wrote:
>
>> the #define COMPRESS 0 seems to do the trick, and after that I can easily
>> patch the embedded script.
>>
>> is there some integrity check? the patched ipxe.iso prints a bunch of
>> colored garbage on the console and then reboots. i assume it has a bogus
>> bzImage kernel container and that might be doing some checksumming.
>>
>> the ipxe.dsk instead hangs after emitting "Loading ROM image" and 89
>> dots...
>>
>> i guess if the ipxe.dsk worked, it could be used as an eltorito image for
>> an otherwise empty cdrom, hence bypassing any issue with the bzImage
>> container in the iso?
>>
>> thanks!
>>
>> -Alessandro-
>>  Here i am, A young man,
>>  A crashing computer program,
>>  Here is a pen, write out my name...
>>
>> (from: The Servant - Orchestra)
>>
>>
>>
>> On Tue, Nov 8, 2011 at 03:43, Michael Brown <mbrown at fensystems.co.uk>wrote:
>>
>>> On Tuesday 08 Nov 2011 10:52:33 Alessandro Salvatori wrote:
>>> > would it be easily possible to create non-zbin bootable images (rom,
>>> iso,
>>> > usb or dsk)?
>>> >
>>> > i was thinking of having a script as an embedded image, and having
>>> > placeholders in it that could be "patched" with the desired values
>>> just in
>>> > time.
>>> >
>>> > alas, the compression gets in the way of easily patching the values
>>> in...
>>> > but the fact that my dsk image takes only 80kB out of 1440 available
>>> makes
>>> > me wonder if i couldn't do without the compression :-)
>>>
>>> There's no easily-accessible way to create non-compressed images, but
>>> you can
>>> try hacking it by setting
>>>
>>>  #define COMPRESS 0
>>>
>>> in arch/i386/prefix/libprefix.S.  This code path isn't used very often,
>>> and may
>>> not be functional.
>>>
>>> A cleaner solution would probably be to add code to lkrnprefix.S to
>>> allow iPXE
>>> to pick up and use an initrd image as though it were an embedded image.
>>>  There
>>> are some complications in doing this, primarily relating to memory
>>> allocation.
>>> (initrd images are typically placed at the top of memory, which is
>>> exactly
>>> where iPXE will try to install itself, so there's a good chance that
>>> iPXE will
>>> overwrite the initrd image.)  This would give you a solution for .iso
>>> images
>>> (which are based upon .lkrn images); similar schemes could be devised for
>>> other image formats.
>>>
>>> Michael
>>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ipxe.org/pipermail/ipxe-devel/attachments/20111108/e6d0bdcd/attachment.htm>


More information about the ipxe-devel mailing list