05.07.2014 Views

here - OSTA - Optical Storage Technology Association

here - OSTA - Optical Storage Technology Association

here - OSTA - Optical Storage Technology Association

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

y all <strong>OSTA</strong> UDF compliant implementations. The algorithm only applies when<br />

reading an illegal FileIdentifier. The original FileIdentifier name on the media<br />

should not be modified. This algorithm shall be applied by any implementation<br />

that performs some form of FileIdentifier translation to meet operating system file<br />

identifier restrictions.<br />

All <strong>OSTA</strong> UDF compliant implementations shall support the UDF translation<br />

algorithms, but may support additional algorithms. If multiple algorithms are<br />

supported the user of the implementation shall be provided with a method to<br />

select the UDF translation algorithms. It is recommended that the default<br />

displayable algorithm be the UDF defined algorithm.<br />

The primary goal of these algorithms is to produce a unique file name that meets<br />

the specific operating system restrictions without having to scan the entire<br />

directory in which the file resides.<br />

C source code for the following algorithms may be found in the appendices of this<br />

document.<br />

NOTE: In the definition of the following algorithms anytime a d-character is<br />

specified in quotes, the Unicode hexadecimal value will also be specified. The<br />

following algorithms reference “CS0 Hex representation”, which corresponds to<br />

using the Unicode values #0030 - #0039, and #0041 - #0046 to represent a value<br />

in hex. In addition, the following algorithms reference “CS0 Base41<br />

representation”, which corresponds to augmenting the CS0 Hex representation to<br />

use #0047 - #005A, #0023, #005F, #007E, #002D and #0040 to represent digits<br />

16-40.<br />

The following algorithms could still result in name-collisions being reported to<br />

the user of an implementation. However, the rationale includes the need for<br />

efficient access to the contents of a directory and consistent name translations<br />

across logical volume mounts and file system driver implementations, while<br />

allowing the user to obtain access to any file within the directory (through<br />

possibly renaming a file).<br />

Some name transformations in section 4.2.2.1 result in two namespaces being<br />

visible at once in a given directory – the space of primary names, those which are<br />

physically recorded in a directory; and the space of generated names, those which<br />

are derived from the primary names. This is distinct from transformations that<br />

take an otherwise illegal name and render it into a legal form, the illegal name not<br />

being considered part of the namespace of the directory on that system. For UDF<br />

implementations using such transforms, the implementation should search a<br />

directory in two passes: pass one should match against the primary namespace and<br />

pass two should match against the generated namespace. A match in the primary<br />

namespace should be preferred to a match against the generated namespace.<br />

UDF 2.01<br />

100<br />

March50 April

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!