[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: How to exit from linux kernel and return to then grub?
From: |
SevenBits |
Subject: |
Re: How to exit from linux kernel and return to then grub? |
Date: |
Sun, 18 May 2014 13:52:58 -0400 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0 |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 05/18/2014 01:46 PM, Vladimir '?-coder/phcoder' Serbinenko wrote:
> On 18.05.2014 19:16, SevenBits wrote:
>> On 05/18/2014 01:33 AM, Z C wrote:
>>> If I boot into a linux kernel using a grub command like "linux
>>> /vmlinuz; inirtd /initrd; boot", how do I shutdown linux
>>> itself (but do not power off or reboot the computer hardware)
>>> and return back to the grub directly?
>>
>> You can't.
>>
>>
>>> What I meant is something equivalent to the "exit" command in
>>> most shells: If you are within one shell and you enter another
>>> shell, then if you want to quit the second shell and return
>>> back to the first shell, just simply type exit. All env
>>> variables and commands you previous typed in the first shell
>>> are completely intact.
>>
>>> Suppose I am now in the grub shell, and then I boot into a
>>> tiny linux kernel, say, a busybox shell, then what can I do to
>>> exit the second shell (i.e. busybox shell) and return to the
>>> first shell (i.e. grub shell)? Of course I can enter the grub
>>> shell again by simply rebooting the hardware, but this is not
>>> what I want.
>>
>> When Linux boots, the kernel takes over the management of the
>> computer completely. The boot loader is not preserved in memory.
>> Why would it be? The function of the boot loader really is to
>> just boot up the computer and then get the heck out.
>>
>> There are many, many obstacles to implementing something like
>> this. Not to mention the fact that in order to return to GRUB,
>> you would need to set the processor to return from protected mode
>> into real mode. All modern processors can do from real mode to
>> protected mode (which you must do to enabled 32 bit processing).
>>
> Please update your sources. Last CPU that behaved like this is 286.
> 386 and later can switch between modes in any direction.
Hi, yes, I actually realized this and posted an addendum to this
message shortly afterwards. I don't know if you received it, but here
is what I wrote:
> Actually, a correction to what I just said. A processor can return
> from protected mode to real mode. Read more here:
>
> https://en.wikipedia.org/wiki/Protected_mode#Entering_and_exiting_protected_mode
>
> I don't know if GRUB supports this (I would assume so) but
> generally speaking it is still not possible to do what you want
> because the Linux kernel as far as I know does not have the
> functionality that would be required. If you want to try and do
> this, go ahead and attempt it, but the roadblocks will be so large
> that it probably is not worth trying, and just simply rebooting the
> machine is the best way to get to GRUB.
>
> If you tell us what are _trying_ to do, i.e what you need this
> functionality for, perhaps we can suggest an alternative way to
> achieve what you need.
So, yes, I realized after I posted my message that what I said was
wrong. My apologies.
> GRUB itself run in protected (but not paged mode) and switches to
> real mode to call BIOS functions. "Returning" to GRUB would be
> technically feasible but very cumbersome. Original requester didn't
> even tell what his end goal is and it probably can be achieved in
> much less cumbersome way.
My thoughts exactly.
>> So, no. It isn't possible.
>>
>>
>>
>>
>>> _______________________________________________ Grub-devel
>>> mailing list address@hidden
>>> https://lists.gnu.org/mailman/listinfo/grub-devel
>>
>>
>> _______________________________________________ Grub-devel
>> mailing list address@hidden
>> https://lists.gnu.org/mailman/listinfo/grub-devel .
>>
>
>
>
>
> _______________________________________________ Grub-devel mailing
> list address@hidden
> https://lists.gnu.org/mailman/listinfo/grub-devel
>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.14 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
iQEcBAEBAgAGBQJTePN6AAoJEFbRvtGxmFPE7coH/12UTfimb2bONnDsJY3dFbTu
Ti/xJ85n60fk3DFdCZ03ksqXfzGLjCeMHK8CzyhSCsUr7yFSAgB/9wEnxyc1XDDM
4msE6864xWHlzGSwzGkDyzdbbe0GiPIEGeVbgsnACsSF9JzsC3H08Y6bBF6DOF75
hGkgSJff8Su6oGTZPJpRV99MaKdThjgQkU6B7olOpGSbIzhf6/mrlCfTkJh14bdu
PqsnVcdTSR8xkiZjn5aUGRkXapwl2IE+2jE+lmrFZRWDSRsCggykESa7gMUArCvg
aTd66lj1gex6LmmujT9tsxwewYQnBYZC6JcXQB3KamISaJghPhB8eVvA5Ps3V2I=
=G998
-----END PGP SIGNATURE-----