Hmm... the trick would be to find the warm start boot rom address, or even the cold start address, then somehow find where the live kernel image is in ram and poke into that a whole pile of machine code instructions to jump to the warm start address. To do this you'd be using the built in echo command and hopefully sticking stuff into something like /proc/kcore.
Finding the address is going to be a matter of looking up the specs for the CPU and hoping like hell they didn't use a bootstrap rom (ie one that's banked out when the system's finished with it). EG at reset a 6502 looks up a vector at 0xFFFE as a 16 bit address then does a JMP to that address. You're really going to need another live machine to do some peeking on to find where you need to poke stuff. On Sun, 23 Dec 2001, Jeff Waugh wrote: > Holy cow! Krazy Sunday Linux Challenge! > > Your challenge, should you choose to accept it is: > > Reboot a linux-mipsel machine using only... a running root bash process. > > You may not execute any program [1], you may not use the switch [2]. > > - Jeff > > [1] FATAL: kernel too old > [2] Miles and miles away, even by one of those fancy-schmancy car thingies. > > -- ---<GRiP>--- Web: www.arcadia.au.com/gripz Phone/fax: 02 4950 1194 Mobile: 0408 686 201 -- SLUG - Sydney Linux User Group Mailing List - http://slug.org.au/ More Info: http://lists.slug.org.au/listinfo/slug
