<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Sep 18, 2024, 2:47 PM ron minnich <<a href="mailto:rminnich@gmail.com">rminnich@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I noticed there are kexec talks this year at Linux Plumbers. Kexec, kernel boots kernel, has had a 25 year gestation in Linux, but it looks like it's finally coming together, driven by need.</div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Yes. LinuxBoot is fun... trick can be to slim the kernel + inird down enough to fit in the NOR flash so it can be the second stage payload rather than UEFI... i hacked FreeBSD's boot loader to be a Linux binary and use kexec.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Thereby hangs a tale.</div><div><br></div><div>in 1977, I was working at udel with Ed Szurkowski, the first sysadmin of the Unix systems we got in 1976 (first machine was an 11/70). Ed was a gifted engineer and did all kinds of neat work on v6. He later went to the Labs once he got his PhD and I lost track of him.</div><div><br></div><div>Ed got tired of watching the bootstrap slowness, and wrote a system call that did the following:</div><div>1. load kernel in memory from system call argument</div><div>2. put special signature in low memory telling bootstrap "look in memory"</div><div>3. reboot via reset.</div><div><br></div><div>Now, this works, because back then, ROM boot code did not zero memory. Memory was unchanged across reset. So the bootstrap could find the magic bits and start the kernel.</div><div><br></div><div>I've lost the code, I carried the listings for decades but finally dumped them. A shame.</div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">I saw similar code that would jump to location 0 to do the reset...  it formed the basis of an interview question i used for two decades.. </div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>But I'm wondering: is Ed's work in 1977 the first "kernel boots kernel" or was there something before?</div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">I've seen references to older mainframe systems doing that, but my quick searches can't find a references to this, apart from the Chain command in BASIC.</div><div dir="auto"><br></div><div dir="auto">Warner </div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
</blockquote></div></div></div>