Reliance Edge is designed to handle very basic storage media. It doesn’t require any sort of partition table, and can utilize nearly the entire media. A minimal amount of overhead is required for the Reliance Edge Master Block and two Metaroots, and is placed at the beginning of the media. This can also be referred to as a partitionless disk or superfloppy. If that type of media won’t work in your software design, how can you make Reliance Edge work with media that requires a partition table?
Older versions of Microsoft Windows utilize a Master Boot Record (MBR) to show where partitions are located on the media and how each is formatted. MBR supports only four partition entries, and has since been supplanted by GPT (GUID Partition Table), which can support much larger disks. Since Reliance Edge doesn’t use an MBR, it will appear as “unformatted” media on a Microsoft Windows desktop or Windows Embedded platform.
Theoretically, a fake MBR could be created that lists just one partition on the media, encompassing all of the Reliance Edge available space. The partition ID should be something that the Microsoft Windows software will not recognize as one of its own drives – for example 0x98, formerly used by Datalight’s ROM-DOS for a special partition. A fairly complete list of partition IDs is available on Wikipedia https://en.wikipedia.org/wiki/Partition_type. If a fake MBR is used with Reliance Edge, the block device interface must be modified so that Reliance Edge “skips” the first few sectors of the media and begins the volume at a specified offset on the disk.
Datalight is examining configurable volume offsets as a potential feature of a future release of Reliance Edge. This would allow developers to place one or more Reliance Edge volumes as pseudo-partitions on the disk. The same block device interface could then be used for all volumes without modification. However, it should be clarified that Reliance Edge is only configured at compile-time; this product does not contain the logic to detect and mount real MBR volumes at run-time.
Does your current Edge design require partitions, and if so, what use case are they designed for?