Port-vax archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Netboot on Vax



On 2014-01-03 19:48, Martin Husemann wrote:
I don't understand why /usr/mdec/boot should not work if loaded at 0
and started there.

It do work. The problem is that the ELF header says that it starts at 1000 (if I remember right), and the mopd reads the binary and sends it over MOP, telling the load address to use (where to put it in memory). So it does not actually end up being placed at address 0.

Certainly the old version I have installed on my mop server (and which I used
to boot a vaxstation) starts just the same as the -current one.

However, it starts by relocating itself:

[...]

Yes. I know. That is what happens when it runs. The problem with the default setup of things is that when the boot program switched to using ELF, mopd also started handling the fact that it didn't actually use address 0 as the start address, and that was passed on. But the actual transfer address of the executable (where to start running) was not passed on the the MOP boot, so a mismatch turned up.

(Or if I remember it wrong, and was the load address that failed to take effect, but the transfer address did, but I don't think I mixed them up that way.)

There was/is a hack which makes mopd send out the image to be loaded to address 0 instead of what the ELF header says, and just using that makes it work. But it's a hack. The proper thing is obviously to actually pass the correct transfer address.

        Johnny



Home | Main Index | Thread Index | Old Index