stringtranslate.com

Asignación de letras de unidad

Símbolo del sistema de MS-DOS con la letra de unidad C como parte del directorio de trabajo actual .
Administrador de archivos que muestra el contenido de la unidad C.

En el almacenamiento de datos informáticos , la asignación de letras de unidad es el proceso de asignar identificadores alfabéticos a los volúmenes . A diferencia del concepto de puntos de montaje UNIX , donde los volúmenes reciben nombres y se ubican arbitrariamente en un único espacio de nombres jerárquico, la asignación de letras de unidad permite múltiples espacios de nombres de nivel más alto. La asignación de letras de unidad es, por tanto, un proceso de uso de letras para nombrar las raíces del "bosque" que representa el sistema de archivos; cada volumen contiene un "árbol" independiente (o, para sistemas de archivos no jerárquicos, una lista independiente de archivos).

Origen

El concepto de letras de unidad, tal como se utiliza hoy en día, presumiblemente [ cita necesaria ] debe sus orígenes a la familia de sistemas operativos VM de IBM , que se remonta a CP/CMS en 1967 (y su predecesor de investigación CP-40 ), a través de Digital Investigación (DRI) CP/M . El concepto evolucionó a través de varios pasos:

La importante capacidad de directorios jerárquicos dentro de cada letra de unidad estaba inicialmente ausente en estos sistemas. Esta era una característica importante de UNIX y otros sistemas operativos similares, donde las unidades de disco duro contenían miles (en lugar de decenas o cientos) de archivos. El aumento de las capacidades de almacenamiento de las microcomputadoras condujo a su introducción, seguida finalmente por nombres de archivos largos . En los sistemas de archivos que carecen de tales mecanismos de denominación, la asignación de letras de unidad resultó ser un principio de organización sencillo y útil.

Sistemas operativos que utilizan la asignación de letras de unidad

Orden de asignación

MS-DOS/PC DOS desde la versión 5.0 y sistemas operativos posteriores, asigna letras de unidad según el siguiente algoritmo: [4]

  1. Asigne la letra de unidad A: a la primera unidad de disquete (unidad 0) y B: a la segunda unidad de disquete (unidad 1). Si solo hay un disquete físico, la unidad B: se asignará a una unidad de disquete fantasma asignada a la misma unidad física y se asignará dinámicamente a A: o B: para facilitar las operaciones con archivos de disquete. Si no hay una unidad de disquete física presente, DOS 4.0 asignará A: y B: a la unidad inexistente, mientras que DOS 5.0 y versiones posteriores invalidarán estas letras de unidad. Si hay más de dos unidades de disquete físicas, las versiones de DOS anteriores a la 5.0 asignarán letras de unidad posteriores, mientras que DOS 5.0 y superiores reasignarán estas unidades a letras de unidad superiores en una etapa posterior; vea abajo.
  2. Asigne una letra de unidad a la primera partición primaria activa reconocida en el primer disco duro físico . DOS 5.0 y superior garantizarán que se convierta en la unidad C: , de modo que la unidad de arranque tendrá la unidad A: o C: .
  3. Asigne letras de unidad posteriores a la primera partición primaria en cada unidad de disco duro física sucesiva (las versiones de DOS anteriores a la 5.0 buscarán sólo dos discos duros físicos, mientras que DOS 5.0 y superiores admiten ocho discos duros físicos).
  4. Asigne letras de unidad posteriores a cada partición lógica reconocida presente en la primera partición extendida, comenzando con el primer disco duro y continuando con las unidades de disco duro físicas sucesivas.
  5. DOS 5.0 y superior: asigne letras de unidad a todas las particiones primarias restantes, comenzando con el primer disco duro y continuando con las unidades de disco duro físicas sucesivas.
  6. DOS 5.0 y superior: asigne letras de unidad a todas las unidades de disquete físicas más allá de la segunda unidad de disquete física.
  7. Asigne letras de unidad posteriores a cualquier controlador de dispositivo de bloque cargado en CONFIG.SYS mediante instrucciones DEVICE , por ejemplo, discos RAM .
  8. Asigne letras de unidad posteriores a cualquier unidad cargada dinámicamente mediante instrucciones CONFIG.SYS INSTALL , en AUTOEXEC.BAT o posterior, es decir, unidades de disco óptico adicionales ( MSCDEX , etc.), unidades de tarjeta PCMCIA / PC , unidades USB o Firewire o unidades de red .

Las versiones 4.0 y anteriores de MS-DOS/PC DOS asignan letras a todas las unidades de disquete antes de considerar los discos duros, por lo que un sistema con cuatro unidades de disquete llamaría al primer disco duro E: . A partir de DOS 5.0, el sistema garantiza que la unidad C: sea siempre un disco duro, incluso si el sistema tiene más de dos unidades de disquete físicas.

Aunque no se realiza una reasignación deliberada, las asignaciones de letras de unidad generalmente se fijan hasta el próximo reinicio; sin embargo, Zenith MS-DOS 3.21 actualizará las asignaciones de letras de unidad al restablecer una unidad. Esto puede hacer que las letras de las unidades cambien sin reiniciar si se cambió la partición del disco duro.

MS-DOS en Apricot PC asigna letras a los discos duros, comenzando con A:, antes de considerar las unidades de disquete. Un sistema con dos de cada unidad llamaría a los discos duros A: y B:, y a los disquetes C: y D :.

En el PC-98 japonés , si el sistema se inicia desde un disquete, la versión dedicada de MS-DOS asigna letras a todas las unidades de disquete antes de considerar los discos duros; hace lo contrario si se arranca desde un disco duro, es decir, si el sistema operativo estaba instalado en el disco duro, MS-DOS asignaría esta unidad como unidad "A:" y un disquete potencialmente existente como unidad "B:". . La versión japonesa del programa SETUP de Windows 95 admite una opción especial /ATpara exigir que Windows esté en la unidad C:.

Algunas versiones de DOS no asignan la letra de unidad, que comienza con C:, a la primera partición primaria activa reconocida en el primer disco duro físico, sino a la primera partición primaria reconocida del primer disco duro, incluso si no está configurada como activa. .

Si hay más de una partición extendida en una tabla de particiones, solo se procesan las unidades lógicas del primer tipo de partición extendida reconocida.

Algunas versiones recientes de DR-DOS IBMBIO.COM proporcionan una estructura de configuración previa al arranque, con indicadores de bits para seleccionar (entre otros) entre varias estrategias de asignación de letras de unidad. Estas estrategias pueden ser preseleccionadas por un usuario u OEM o pueden cambiarse mediante un cargador de arranque sobre la marcha al iniciar DR-DOS. Bajo estos problemas, la unidad de arranque también puede ser diferente de A: o C:.

El orden de las letras de la unidad puede depender de si un disco determinado está administrado por un controlador de arranque o por un controlador cargado dinámicamente. Por ejemplo, si el segundo o tercer disco duro es de tipo SCSI y, en DOS, requiere controladores cargados a través del archivo CONFIG.SYS (por ejemplo, la tarjeta controladora no ofrece BIOS integrado o usar este BIOS no es práctico), entonces la primera partición primaria SCSI aparecerá después de todas las particiones IDE en DOS. Por lo tanto, DOS y, por ejemplo, OS/2 podrían tener letras de unidad diferentes, ya que OS/2 carga el controlador SCSI antes. Una solución fue no utilizar particiones primarias en dichos discos duros.

En Windows NT y OS/2 , el sistema operativo utiliza el algoritmo antes mencionado para asignar letras automáticamente a las unidades de disquete , unidades de discos ópticos , el disco de arranque y otros volúmenes reconocidos que de otro modo no son creados por un administrador dentro del sistema operativo. Los volúmenes que se crean dentro del sistema operativo se especifican manualmente y algunas de las letras de unidad automáticas se pueden cambiar. A los volúmenes no reconocidos no se les asignan letras y, por lo general, el sistema operativo no los modifica.

Un problema común que ocurre con la asignación de letras de unidad es que la letra asignada a una unidad de red puede interferir con la letra de un volumen local (como una unidad de CD/DVD recién instalada o una memoria USB). Por ejemplo, si la última unidad local es la unidad D: y se habría asignado una unidad de red como E:, entonces a un dispositivo de almacenamiento masivo USB recién conectado también se le asignaría la unidad E:, lo que provocaría una pérdida de conectividad con el recurso compartido de red o con el Dispositivo USB. Los usuarios con privilegios administrativos pueden asignar letras de unidad manualmente para solucionar este problema. [5] Otra condición que puede causar problemas en Windows XP es cuando hay unidades de red definidas, pero en condición de error (como lo estarían en una computadora portátil que opera fuera de la red). Incluso cuando la unidad de red desconectada no es la siguiente letra de unidad disponible, es posible que Windows XP no pueda asignar una unidad y este error también puede impedir el montaje del dispositivo USB. [ cita necesaria ]

Asignaciones comunes

La aplicación del esquema discutido anteriormente en un sistema bastante moderno basado en Windows generalmente da como resultado las siguientes asignaciones de letras de unidad:

Letras de unidad específicas de cada caso:

Cuando no hay una segunda unidad de disquete física, la unidad B: se puede utilizar como una unidad de disquete "virtual" asignada a la unidad física A:, por lo que se le pedirá al usuario que cambie de disquete cada vez que se requiera una lectura o escritura en la que sea el utilizado menos recientemente de A: o B: . Esto permite gran parte de la funcionalidad de dos unidades de disquete en una computadora que tiene solo una. Este concepto de varias letras de unidad que comparten un único dispositivo físico (opcionalmente con diferentes "vistas" del mismo) no se limita a la primera unidad de disquete, sino que también se puede utilizar para otras unidades configurando dispositivos de bloque adicionales para ellas con el estándar DOS DRIVER.SYS en CONFIG.SYS .

A las unidades de red a menudo se les asignan letras hacia el final del alfabeto. Esto se suele hacer para diferenciarlos de las unidades locales: al utilizar letras hacia el final, se reduce el riesgo de un conflicto de asignación. Esto es especialmente cierto cuando la asignación se realiza automáticamente a través de una red (normalmente mediante un script de inicio de sesión).

En la mayoría de los sistemas DOS, no es posible tener más de 26 unidades montadas. Atari GEMDOS admite 16 letras de unidad A: a P: únicamente. La pila de controladores PCMCIA de PalmDOS admite letras de unidad 0: , 1: , 2: , ... para direccionar las ranuras de unidades PCMCIA.

Algunos controladores de red Novell para DOS admiten hasta 32 letras de unidad en versiones de DOS compatibles. Además, Novell DOS 7, OpenDOS 7.01 y DR-DOS 7.02 realmente admiten una LASTDRIVE=32directiva CONFIG.SYS para asignar hasta 32 letras de unidad, denominadas A: a Z: , [: , \: , ]: , ^: , _: y `: . (DR-DOS 7.02-7.07 también admite HILASTDRIVEdirectivas LASTDRIVEHIGHpara reubicar estructuras de unidades en la memoria superior). Algunos programas de aplicación de DOS no esperan letras de unidad más allá de Z: y no funcionarán con ellas, por lo que se recomienda utilizarlas para aplicaciones especiales. fines o unidades de búsqueda.

El procesador de línea de comandos 4DOS de JP Software admite letras de unidad más allá de Z: en general, pero dado que algunas de las letras chocan con las extensiones sintácticas de este procesador de línea de comandos, es necesario escaparlas para poder usarlas como letras de unidad.

Windows 9x (MS-DOS 7.0/MS-DOS 7.1) agregó soporte para LASTDRIVE=32y LASTDRIVEHIGH=32también.

Si se requiere acceso a más sistemas de archivos que Z: en Windows NT, se deben utilizar puntos de montaje de volumen . [11] Sin embargo, es posible montar unidades que no sean letras, como 1:, 2 : o !: usando la SUBSTutilidad de línea de comando en Windows XP o posterior (es decir SUBST 1: C:\TEMP), pero no es compatible oficialmente y puede dañar los programas. que suponen que todas las unidades son de las letras A: a Z: .

ASIGNAR, UNIR y SUBST en DOS y Windows

Las letras de unidad no son la única forma de acceder a diferentes volúmenes. DOS ofrece un comando JOIN que permite el acceso a un volumen asignado a través de un directorio arbitrario, similar al comando de montaje de Unix . También ofrece un comando SUBST que permite la asignación de una letra de unidad a un directorio. Uno o ambos comandos se eliminaron en sistemas posteriores como OS/2 o Windows NT , pero a partir de Windows 2000 , ambos son nuevamente compatibles: el comando SUBST existe como antes, mientras que la funcionalidad de JOIN está incluida en LINKD (parte del recurso de Windows Equipo ). En Windows Vista , se puede utilizar el nuevo comando MKLINK para este fin. Además, Windows 2000 y versiones posteriores admiten puntos de montaje, accesibles desde el Panel de control .

Muchos sistemas operativos originados en Digital Research proporcionan medios para asignar implícitamente unidades sustitutas, llamadas unidades flotantes en la terminología DRI, mediante el uso del comando CD/CHDIR en la siguiente sintaxis:

CD N:=C:\SUBDIR

DOS Plus admite esto para las letras de unidad N:, O : y P :. Esta característica también está presente en DOS concurrente , DOS multiusuario , System Manager 7 y REAL/32 ; sin embargo, estos sistemas extienden el concepto a todas las letras de unidad no utilizadas de A: a Z:, excepto la letra de unidad reservada L:. [7] DR DOS 3.31 - 6.0 (hasta las actualizaciones 1992-11 solo con BDOS 6.7) también admite esto, incluida la letra de unidad L:. Esta característica no está disponible en DR DOS 6.0 (actualización de 1992), PalmDOS 1.0, Novell DOS 7, OpenDOS 7.01, DR-DOS 7.02 y superiores. Las unidades flotantes se implementan en el kernel BDOS, no en el shell de la línea de comandos, por lo que se pueden usar y asignar también desde las aplicaciones cuando usan la llamada al sistema "cambiar directorio". Sin embargo, la mayoría de las aplicaciones de DOS no conocen esta extensión y, en consecuencia, descartarán dichas rutas de directorio como no válidas. El intérprete de línea de comandos 4DOS de JP Software admite unidades flotantes en sistemas operativos que también lo admiten.

En una característica similar, DOS concurrente, DOS multiusuario, System Manager y REAL/32 asignarán dinámicamente una letra de unidad L: a la ruta de carga de una aplicación cargada, permitiendo así que las aplicaciones hagan referencia a archivos que residen en su directorio de carga en una unidad estandarizada. letra en lugar de bajo una ruta absoluta. [7] Esta función de unidad de carga facilita el movimiento de instalaciones de software en y entre discos sin tener que adaptar rutas a superposiciones, archivos de configuración o datos de usuario almacenados en el directorio de carga o directorios posteriores. (Por razones similares, el apéndice del bloque de entorno asociado con las aplicaciones cargadas en DOS 3.0 (y superiores) también contiene una referencia a la ruta de carga del ejecutable; sin embargo, esto consume más memoria residente y, para aprovecharla, el soporte para ello debe estar codificado en el ejecutable, mientras que la solución de DRI funciona con cualquier tipo de aplicación y también es completamente transparente para los usuarios). En algunas versiones de DR-DOS, la ruta de carga contenida en el apéndice al entorno pasa a los controladores se puede acortar a una unidad sustituta temporal (p. ej. SUBST B: C:\DIR) mediante la opción INSTALL[HIGH]/ (para en lugar de, por ejemplo, ). Esto se puede utilizar para minimizar la huella de memoria efectiva de un controlador , si el ejecutable está ubicado en un subdirectorio profundo y el controlador residente ya no necesita su ruta de carga después de la instalación. [12] [13] [14] [15]LOADHIGH/D[:loaddrive]B:TSR.COMC:\DIR\TSR.COM

Ver también

Referencias

  1. ^ DuCharme, Bob (2001). "VM/CMS" (PDF) . "El manual del sistema operativo, o falsifique su camino a través de minis y mainframes ".
  2. ^ Johnson, Herbert R. (4 de enero de 2009). "Historia de CP / M y Digital Research Inc. (DRI)". www.retrotecnología.com . Consultado el 28 de enero de 2009 .
  3. ^ "GEOS".
  4. ^ "Orden en el que MS-DOS y Windows asignan letras de unidad". Soporte en línea del soporte técnico de Microsoft . Microsoft . 17 de abril de 1996. Archivado desde el original el 18 de febrero de 1999 . Consultado el 6 de enero de 2021 .
  5. ^ "Cambiar una letra de unidad". Microsoft . Consultado el 4 de marzo de 2019 .
  6. ^ abc Concurrent DOS 386 - Sistema operativo multiusuario/multitarea - Guía del usuario (PDF) . Investigación Digital .
  7. ^ abcd Concurrent DOS 386 - Sistema operativo multiusuario/multitarea - Manual de referencia (PDF) . Investigación Digital . 1987.
  8. ^ "La unidad U: en MagiC". 2016-03-28. Archivado desde el original el 15 de enero de 2017 . Consultado el 9 de enero de 2017 .
  9. ^ "Portal FreeMiNT - mint.doc". 2000-04-27. Archivado desde el original el 15 de enero de 2017 . Consultado el 9 de enero de 2017 .
  10. ^ "Preguntas frecuentes sobre vinos".
  11. ^ "volúmenes simples". Microsoft TechNet . Archivado desde el original el 26 de marzo de 2007 . Consultado el 1 de diciembre de 2006 .
  12. ^ Paul, Matías R. (2 de octubre de 1997). "Caldera OpenDOS 7.01/7.02 Actualización Alpha 3 IBMBIO.COM README.TXT". Archivado desde el original el 4 de octubre de 2003 . Consultado el 29 de marzo de 2009 .[1]
  13. ^ Paul, Matías R. (30 de julio de 1997). "II.11.iii. Interne Kommandos und Optionen von COMMAND.COM - Hinweise zu internen Kommandos". NWDOS-TIP: consejos y trucos para Novell DOS 7, con un clic para deshacer detalles, errores y soluciones. MPDOSTIP (en alemán) (3 ed.). Archivado desde el original el 4 de noviembre de 2016 . Consultado el 6 de agosto de 2014 .(NB. NWDOSTIP.TXT es un trabajo completo sobre Novell DOS 7 y OpenDOS 7.01 , que incluye la descripción de muchas características e componentes internos no documentados. Es parte de la MPDOSTIP.ZIPcolección aún más grande del autor mantenida hasta 2001 y distribuida en muchos sitios en ese momento. El enlace proporcionado apunta a una versión anterior del NWDOSTIP.TXTarchivo convertida a HTML).
  14. ^ Paul, Matthias R. (27 de mayo de 1997) [1996]. "SETENV v1.11". Archivado desde el original el 15 de febrero de 2009 . Consultado el 29 de julio de 2019 .
  15. ^ Paul, Matías R. (7 de octubre de 2002). "Re: Ejecutar un archivo COM". alt.msdos.programador . Archivado desde el original el 3 de septiembre de 2017 . Consultado el 3 de septiembre de 2017 .[2]

enlaces externos