Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Drive letter assignment
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
=={{anchor|Floating drive|Load drive}}ASSIGN, JOIN and SUBST in DOS and Windows== Drive letters are not the only way of accessing different volumes. [[DOS]] offers a [[JOIN (DOS command)|JOIN]] command that allows access to an assigned volume through an arbitrary directory, similar to the [[Unix]] ''[[mount (Unix)|mount]]'' command. It also offers a [[SUBST]] command which allows the assignment of a drive letter to a directory. One or both of these commands were removed in later systems like [[OS/2]] or [[Windows NT]], but starting with [[Windows 2000]], both are again supported: The SUBST command exists as before, while JOIN's functionality is subsumed in [[LINKD]] (part of the Windows [[Resource Kit]]). In [[Windows Vista]], the new command [[MKLINK]] can be used for this purpose. Also, Windows 2000 and later support mount points, accessible from the [[Control Panel (Windows)|Control Panel]]. Many operating systems originating from Digital Research provide means to implicitly assign substitute drives, called ''floating drives'' in DRI terminology, by using the CD/CHDIR command in the following syntax: CD N:=C:\SUBDIR [[DOS Plus]]<!-- perhaps Concurrent CP/M-86 as well? --> supports this for drive letters '''N:''', '''O:''', and '''P:'''. This feature is also present in [[Concurrent DOS]]<!-- at least in Concurrent DOS XM and Concurrent DOS 386 since 1987 -->, <!-- perhaps FlexOS as well? -->[[Multiuser DOS]], System Manager 7, and [[REAL/32]], however, these systems extend the concept to all unused drive letters from A: to Z:, except for the reserved drive letter L:.<ref name="DRI_1987_CDOS"/> [[DR DOS]] 3.31 - 6.0 (up to the 1992-11 updates with BDOS 6.7 only<!-- BDOS 7.0 (PalmDOS), BDOS 7.1 (DR DOS 6.0 business update 1993) and higher no longer support this -->) also supports this including drive letter L:. This feature is not available under DR DOS 6.0 (1992 upgrade), PalmDOS 1.0, Novell DOS 7, OpenDOS 7.01, DR-DOS 7.02 and higher. Floating drives are implemented in the BDOS kernel, not in the command line shell, thus they can be used and assigned also from within applications when they use the "change directory" system call. However, most DOS applications are not aware of this extension and will consequently discard such directory paths as invalid. JP Software's command line interpreter 4DOS supports floating drives on operating systems also supporting it. In a similar feature,<!-- not sure about DOS Plus!--> Concurrent DOS<!-- at least Concurrent DOS XM and Concurrent DOS 386 since 1987 -->, Multiuser DOS, System Manager and REAL/32 will dynamically assign a drive letter '''L:''' to the load path of a loaded application, thereby allowing applications to refer to files residing in their load directory under a standardized drive letter instead of under an absolute path.<ref name="DRI_1987_CDOS"/> This [[load drive]] feature makes it easier to move software installations on and across disks without having to adapt paths to overlays, configuration files or user data stored in the load directory or subsequent directories. (For similar reasons, the appendage to the environment block associated with loaded applications under DOS 3.0 (and higher) contains a reference to the load path of the executable as well, however, this consumes more resident memory, and to take advantage of it, support for it must be coded into the executable, whereas DRI's solution works with any kind of applications and is fully transparent to users as well.) In some versions of DR-DOS, the load path contained in the appendage to the environment passed to drivers can be shortened to that of a temporary substitute drive (e.g. <code>SUBST B: C:\DIR</code>) through the <code>[[INSTALL (CONFIG.SYS directive)|INSTALL[HIGH]]]</code>/<code>[[LOADHIGH]]</code> option <code>/D[:loaddrive]</code> (for <code>B:TSR.COM</code> instead of, say, <code>C:\DIR\TSR.COM</code>). This can be used to minimize a driver's effective [[memory footprint]], if the executable is located in a deep subdirectory and the resident driver happens to not need its load path after installation any more.<ref name="Paul_1997_OD-A3"/><ref name="Paul_1997_NWDOSTIP"/><ref name="Paul_1997_SETENV"/><ref name="Paul_2002_COM"/>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)