From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1GkPjA-0005Gh-7n for mharc-grub-devel@gnu.org; Wed, 15 Nov 2006 13:43:16 -0500 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1GkPj7-0005DZ-5m for grub-devel@gnu.org; Wed, 15 Nov 2006 13:43:13 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1GkPiy-000591-Mj for grub-devel@gnu.org; Wed, 15 Nov 2006 13:43:11 -0500 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GkPiy-00058w-Ik for grub-devel@gnu.org; Wed, 15 Nov 2006 13:43:04 -0500 Received: from [32.97.182.142] (helo=e2.ny.us.ibm.com) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA:32) (Exim 4.52) id 1GkPig-0004pp-1h for grub-devel@gnu.org; Wed, 15 Nov 2006 13:42:48 -0500 Received: from d01relay02.pok.ibm.com (d01relay02.pok.ibm.com [9.56.227.234]) by e2.ny.us.ibm.com (8.13.8/8.12.11) with ESMTP id kAFIgVIn019067 for ; Wed, 15 Nov 2006 13:42:31 -0500 Received: from d01av04.pok.ibm.com (d01av04.pok.ibm.com [9.56.224.64]) by d01relay02.pok.ibm.com (8.13.6/8.13.6/NCO v8.1.1) with ESMTP id kAFIgVHU269986 for ; Wed, 15 Nov 2006 13:42:31 -0500 Received: from d01av04.pok.ibm.com (loopback [127.0.0.1]) by d01av04.pok.ibm.com (8.12.11.20060308/8.13.3) with ESMTP id kAFIgU68019476 for ; Wed, 15 Nov 2006 13:42:30 -0500 Received: from [9.53.41.42] (basalt.austin.ibm.com [9.53.41.42]) by d01av04.pok.ibm.com (8.12.11.20060308/8.12.11) with ESMTP id kAFIgUZZ019467 for ; Wed, 15 Nov 2006 13:42:30 -0500 From: Hollis Blanchard To: The development of GRUB 2 In-Reply-To: <87psbphyu3.fsf@night.trouble.net> References: <1163545104.12931.49.camel@basalt> <87psbphyu3.fsf@night.trouble.net> Content-Type: text/plain Date: Wed, 15 Nov 2006 12:42:25 -0600 Message-Id: <1163616145.8873.35.camel@basalt> Mime-Version: 1.0 X-Mailer: Evolution 2.8.1 Content-Transfer-Encoding: 7bit Subject: Re: multiboot2: make multiboot header optional X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: The development of GRUB 2 List-Id: The development of GRUB 2 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Nov 2006 18:43:13 -0000 On Wed, 2006-11-15 at 09:57 +0100, Johan Rydberg wrote: > Hollis Blanchard writes: > > > For kernels that need to communicate information to GRUB (e.g. > > "vga_mode" from my previous email, or a.out load addresses), the > > multiboot header would be needed for GRUB to locate the parameter area > > within the executable. > > My two cents; > > In MB2 we remove the possibility to communicate options from the > kernel to the boot loader. The loader has one task; loading the > kernel and leave control to it, and possible pass information about > the environment. Nothing more. > > If the operating system kernel is stupid enough to require as special > video mode the user should be aware of that and setup the bootloader > so that it is in that mode before the kernel is started. The only information in the multiboot header is a) the load addresses for a.out and "other" formats, and b) the VGA info. We could certainly drop the VGA info. I don't think it would be a big deal to drop a.out as well; I don't know of any modern OS that uses these, and anyways kernel builds are special. However (and I don't know how reasonable this is), Mac OS X's toolchain will build only Mach-O binaries, so one would be unable to build a kernel that GRUB could load. We could require a Mach-O loader in that case, but I will admit that the "a.out hack" multiboot header fields simplify this problem. If we do require format-specific loaders, the multiboot2 loader could just be renamed to "elf", leaving the legacy i386 multiboot loader intact. To support straight binary kernels with a "binary" loader, the kernel could be loaded at e.g. 0x7c00 (on x86) and passed the multiboot tags. -Hollis