old-www/LDP/EVMSUG/html/doshow.html

244 lines
5.6 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML
><HEAD
><TITLE
>How the DOS plug-in is implemented</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="EVMS User Guide"
HREF="index.html"><LINK
REL="UP"
TITLE="The DOS plug-in"
HREF="appxdos.html"><LINK
REL="PREVIOUS"
TITLE="The DOS plug-in"
HREF="appxdos.html"><LINK
REL="NEXT"
TITLE="Assigning the DOS plug-in"
HREF="assigndos.html"></HEAD
><BODY
CLASS="sect1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>EVMS User Guide</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="appxdos.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
>Appendix A. The DOS plug-in</TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="assigndos.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="sect1"
><H1
CLASS="sect1"
><A
NAME="DOShow"
></A
>A.1. How the DOS plug-in is implemented</H1
><P
>The DOS plug-in provides compatibility with DOS partition tables.
The plug-in produces EVMS segment storage objects that map primary partitions
described by the MBR partition table and logical partitions
described by EBR partition tables.
</P
><P
>DOS partitions have names that are constructed from two pieces
of information:</P
><P
></P
><UL
><LI
><P
>The device they are found on.</P
></LI
><LI
><P
>The partition table entry that provided the information.</P
></LI
></UL
><P
>Take, for example, partition name <TT
CLASS="filename"
>hda1</TT
>, which
describes a partition that is found on device <TT
CLASS="filename"
>hda</TT
>
in the MBR partition table.
DOS partition tables can hold four entries.
Partition numbers 1-4 refer to MBR partition records. Therefore, our
example is telling us that partition <TT
CLASS="filename"
>hda1</TT
> is described
by the very first partition record entry in the MBR partition table.
Logical partitions, however, are different than primary partitions.
EBR partition tables are scattered across a disk but are linked together
in a chain that is first located using an extended partition record found
in the MBR partition table.
Each EBR partition table contains a partition record that describes a logical
partition on the disk.
The name of the logical partition reflects its position in the EBR chain.
Because the MBR partition table reserves numerical names 1-4, the very
first logical partition is always named 5.
The next logical partition, found by following the EBR chain, is called 6,
and so forth.
So, the partition <TT
CLASS="filename"
>hda5</TT
> is a logical partition that is
described by a partition record in the very first EBR partition table.
</P
><P
>While discovering DOS partitions, the DOS plug-in also looks for
OS/2 DLAT metadata to further determine if the disk is an OS/2 disk.
An OS/2 disk has additional metadata and the metadata is validated during
recovery.
This information is important for the DOS plug-in to know because an OS/2
disk must maintain additional partition information. (This is why the
DOS plug-in asks, when being assigned to a disk, if the disk is a
Linux disk or an OS/2 disk.) The DOS plug-in needs to know how much
information must be kept on the disk and what kind of questions it should
ask the user when obtaining the information.
</P
><P
>&#13;An OS/2 disk can contain compatibility volumes as well as logical volumes.
A compatibility volume is a single partition with an assigned drive
letter that can be mounted. An OS/2 logical volume is a drive link of 1
or more partitions that have software bad-block relocation at the
partition level.
</P
><P
>&#13;Embedded partitions, like those found on a SolarisX86 disk or a BSD
compatibility disk, are found within a primary partition.
Therefore, the DOS plug-in inspects primary partitions that it has
just discovered to further determine if any embedded partitions exist.
Primary partitions that hold embedded partition tables have partition
type fields that indicate this.
For example, a primary partition of type 0xA9 probably has a BSD partition
table that subdivides the primary partition into BSD partitions.
The DOS plug-in looks for a BSD disk label and BSD data partitions in the
primary partition.
If the DOS plug-in finds a BSD disk label, it exports the BSD partitions. Because
this primary partition is actually just a container that holds the BSD
partitions, and not a data partition itself, it is not exported by the
DOS plug-in.
Embedded partitions are named after the primary partition they were
discovered within. As an example, <TT
CLASS="filename"
>hda3.1</TT
> is
the name of the first embedded partition found within primary partition
<TT
CLASS="filename"
>hda3</TT
>.
</P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="appxdos.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="assigndos.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>The DOS plug-in</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="appxdos.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Assigning the DOS plug-in</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>