Page 1 of 1

Boot Configuration Structure

Posted: Sat Feb 01, 2014 9:09 pm
by b.zaar
Hi, I've created a System Configuration table to be used by my boot loader and kernel. It's a simple design but I'd like some opinions on it.

The html document can be downloaded here. It works on a block system and is easily extended by creating new blocks in the specs. Any private data can be stored in the table inside a reserved block. I plan to use this alongside the Multiboot 1 structure as some of it overlaps but it also supplies more information than Multiboot 1. It can be passed to the kernel using the ESI register as a pointer and the magic number is stored inside the table.

Any suggestions for other block types would be helpful too.

Re: Boot Configuration Structure

Posted: Sun Feb 02, 2014 5:31 am
by bluemoon
b.zaar wrote:Any private data can be stored in the table inside a reserved block.
As for any specification, you want to provide flexibility but it usually get messy as everyone (if there is any) just implement their own extension and defect the idea of standard interface.

I would suggest to remove such private, or undefined zone, and have enough research so that you got every needed information on the interface at the very beginning.

Re: Boot Configuration Structure

Posted: Sun Feb 02, 2014 2:07 pm
by b.zaar
bluemoon wrote:
b.zaar wrote:Any private data can be stored in the table inside a reserved block.
As for any specification, you want to provide flexibility but it usually get messy as everyone (if there is any) just implement their own extension and defect the idea of standard interface.

I would suggest to remove such private, or undefined zone, and have enough research so that you got every needed information on the interface at the very beginning.
A few reasons for the reserved block:

1. It is difficult to remove a block if it can not be completed for some reason. The reserved block ID is used to free/reserve this block as bad data.
2. I could not possibly foresee every desired/necessary block type. If this spec becomes used by others someone somewhere will create a reason to define their own data block. This could be for a custom piece of hardware they have designed for a PC or for a specialised data block that is used on a microcontroller system. It can also bo used to test a new data block type before it is added to the official spec.
3. The PNG file format (one inspiration for the SCFG design) uses a private data chunk.

Re: Boot Configuration Structure

Posted: Thu Feb 06, 2014 4:47 pm
by b.zaar
A small update to the SCFG specs, a new private data block has been created. The new block will allow private data to be included with less chance of the data being identified incorrectly.

The specification is now also available for reading online.
SCFG Private data block.