DOS

De El Museo de los 8 Bits
Ir a la navegación Ir a la búsqueda

DOS es una familia de sistemas operativos para PC. El nombre son las siglas de Disk Operating System (sistema operativo de disco). Fue creado originalmente para computadoras de la familia IBM PC, que utilizaban los procesadores Intel 8086 y 8088, de 16 bits y 8 bits, respectivamente, siendo el primer sistema operativo popular para esta plataforma. Contaba con una interfaz de línea de comandos en modo texto ó alfanumérico, vía su propio intérprete de órdenes, command.com. Probablemente la más popular de sus variantes sea la perteneciente a la familia MS-DOS, de Microsoft, suministrada con buena parte de los ordenadores compatibles con IBM PC, en especial aquellos de la familia Intel, como sistema operativo independiente o nativo, hasta la versión 6.22 (bien entrados los 90), frecuentemente adjunto a una versión de la interfaz gráfica Ms Windows de 16 bits, como las 3.1x.

En las versiones nativas de Windows, basadas en NT (y éste a su vez en OS/2 2.x) (véase Windows NT, 2000, 2003, XP o Vista) MS-DOS desaparece como sistema operativo (propiamente dicho) y entorno base, desde el que se arrancaba el equipo y sus procesos básicos y se procedía a ejecutar y cargar la inferfaz gráfica o entorno operativo de Windows. Todo vestigio del mismo queda relegado, en tales versiones, a la existencia de un simple intérprete de comandos, denominado Símbolo del Sistema, ejecutado como aplicación mediante cmd.exe, a partir del propio entorno gráfico (elevado ahora a la categoría de sistema).

Esto no es así en las versiones no nativas de Windows, que sí están basadas en MS-DOS, cargándose a partir del mismo. Desde los 1.0x a las versiones 3.1(1), de 16 bits, Ms Windows tuvo el planteamiento de una simple aplicación de interfaz o entorno gráfico, complementaria al propio intérprete de comandos, desde el que era ejecutado. Fue a partir de las versiones de 32 bits, de nuevo diseño y mayor potencia, basadas en Windows 95 y 98, cuando el MS-DOS comienza a ser deliberadamente camuflado por el propio entorno gráfico de Windows, durante el proceso de arranque, dando paso, por defecto, a su automática ejecución, lo que acapara la atención del usuario medio y atribuye al antiguo sistema un papel más dependiente y secundario, llegando a ser por muchos olvidado y desconocido, y paulatinamente abandonado por los desarrolladores de software y hardware, empezando por la propia Microsoft (esta opción puede desactivarse alterando la entrada BootGUI=1 por BootGUI=0, del archivo de sistema, ahora de texto, MSDOS. SYS). Sin embargo, en tales versiones, Windows no funcionaba de forma autónoma, como sistema operativo. Tanto varias de las funciones primarias o básicas del sistema como su arranque se debían, aún en las versiones de 32 bits, a los distintos módulos y archivos de sistema que componían el modesto armazón del DOS, requiriendo aquéllas un mínimo de los archivos básicos de este, para poder ejecutarse (tales como IO.SYS, DRVSPACE. BIN, EMM386.EXE e HIMEM. SYS).

Existen varias versiones de DOS. El más conocido de ellos es el MS-DOS, de Microsoft (de ahí las iniciales MS). Otros sistemas son el PC-DOS, de IBM, el DR-DOS, de Digital Research, que pasaría posteriormente a Novell (Novell DOS 7.0), luego a Caldera y finalmente a DeviceLogics y, más recientemente, el FreeDOS, de licencia libre y código abierto, según los estándares GNU/Linux. Éste último, puede hacer las veces, en su versión para Linux/UNIX, de emulador del DOS bajo sistemas de este tipo.

Con la aparición de los sistemas operativos gráficos, del tipo Windows, en especial aquellos de 32 bits, del tipo Windows 95, el DOS ha ido quedando relegado a un segundo plano, hasta verse reducido al mero intérprete de órdenes, y a las líneas de comandos (en especial en ficheros de tipo .PIF y .BAT), como ocurre en los sistemas derivados de Windows NT.


Características

El DOS carece por completo de interfaz gráfica, y no utiliza el ratón, aunque a partir de ciertas versiones solía incluir controladoras para detectarlo, inicializarlo y hacerlo funcionar bajo diversas aplicaciones de edición y de interfaz y entorno gráfico, además de diversos juegos que tendían a requerirlo (como juegos de estrategia, aventuras gráfricas y shoot'em up subjetivos, entre otros). Por sí sólo es incapaz de detectar el hardware, a menos que las mencionadas controladoras incluyan en su núcleo de sistema, como residentes en memoria, el código, instrucciones y funciones necesarias. En cualquier caso, el intérprete de comandos y la mayoría de sus aplicaciones y mandatos de edición debían o podían ser fácilmente controlados manualmente, a través del teclado, ya fuera mediante comandos, o introduciendo teclas de acceso rápido para activar los distintos menúes y opciones desde el editor (un buen ejemplo de esto último son el editor de texto edit.com, el menú de ayuda help.exe, ó el intérprete de BASIC qbasic.exe, incluidos en las últimas versiones del MS-DOS). Tales opciones siguen, de hecho, encontrándose presentes en los Windows, en versiones muy posteriores.

El DOS no es ni multiusuario ni multitarea. No puede trabajar con más de un usuario ni en más de un proceso a la vez. En sus versiones nativas (hasta la 6.22 en el MS-DOS), no puede trabajar con particiones de disco demasiado grandes, superiores a los 2 GB, que requieren formatos y sistemas de archivos tales como el FAT32, propio de Windows de 32 bits (a partir del 95), ó el NTFS, propio de Windows de tipo NT. Originalmente, por limitaciones del software, no podía manejar más de 64KB de memoria RAM. En las versiones anteriores a la 4.0, el límite, a su vez, era de 32 MB por partición, al no soportar aún el formato FAT16 (desarrollado en 1987). Poco a poco, con las mejoras en la arquitectura de los PC, llegó primero a manejar hasta 640 KB de RAM (la llamada "memoria convencional", ó base), y luego hasta 1 megabyte (agregando a la memoria convencional la "memoria superior" o UMB). Más tarde, aparecieron mecanismos como la memoria expandida (EMS) y la memoria extendida (XMS), que permitían ya manejar varios megabytes.

Desde el punto de vista de los programadores, este sistema operativo permitía un control total de la computadora, libre de las capas de abstracción y medidas de seguridad a las que obligan los sistemas multiusuario y multitarea. Así, hasta la aparición del DirectX, y con el fin de aprovechar al máximo el hardware, la mayoría de videojuegos para PC funcionaban directamente bajo DOS.

La necesidad de mantener la compatibilidad con programas antiguos, hacía cada vez más difícil programar para DOS, debido a que la memoria estaba segmentada, es decir, la memoria apuntada por un puntero tenía como máximo el tamaño de un segmento de 64KB. Para superar estas limitaciones del modo real de los procesadores x86, se recurría al modo protegido de los procesadores posteriores (80386, 80486...), utilizando programas extensores que hacían funcionar programas de 32 bits sobre DOS.

Aunque este sistema operativo sea uno de los más antiguos, aún los entornos operativos Windows de 32 bits, hasta el 98, tenían como plataforma base camuflada u oculta el DOS. Su intérprete de comandos, denominado, por lo general, Command Prompt o Símbolo del Sistema, puede invocarse desde la interfaz como command.com, ó, en versiones posteriores, basadas en NT (así como en Windows ME), que ya no se basan ni parten de MS-DOS, mediante cmd.exe. También existen, para sistemas actuales, emuladores como el DOSBox, o entornos de código abierto como el FreeDOS, comunes ambos en Linux; ello permite recuperar la compatibilidad perdida con ciertas aplicaciones nativas para este antiguo sistema, que ya no pueden funcionar desde los nuevos Windows, basados en NT, o bajo sistemas operativos de arquitectura dispar, como los UNIX/Linux.

Algunas aplicaciones de DOS son usadas en las microempresas, ya que son de mayor utilidad; el mayor campo de uso de estos programas se da en las cajas registradoras.

Órdenes principales

  • DIR: muestra un listado de archivos, que están contenidos en un directorio.
  • TYPE: muestra el contenido de un archivo en pantalla.
  • COPY: copia archivos en otro lugar.
  • REN o RENAME: renombra archivos.
  • DEL o ERASE: borra uno o varios archivos (con posibilidad de recuperarlos mediante la orden UNDELETE, presente en las últimas versiones nativas del DOS, salvo que el lugar del archivo o archivos borrados hubiese sido utilizado con posterioridad).
  • MD o MKDIR: crea un nuevo directorio.
  • CD o CHDIR: cambia el directorio actual por el especificado.
  • RD o RMDIR: borra un directorio vacío.
  • ATTRIB: permite asignar o quitar atributos de archivos (tales como +A: ya modificado, +H: oculto, +R: de sólo lectura, ó +S, archivo especial del sistema, o a la inversa)
  • DELTREE: borra un directorio con todo su contenido, incluidos subdirectorios (apareció en las últimas versiones)
  • CLS: limpia la pantalla.
  • DATE: permite ver y cambiar la fecha.
  • TIME: permite ver y cambiar la hora.
  • LABEL: permite ver y cambiar la etiqueta de una unidad de disco ó volumen.
  • HELP: ofrece ayuda sobre las distintas órdenes.
  • SORT: ordena Datos
  • FC o COMP: compara las diferencias entre el contenido de dos archivos.
  • FIND: busca cadenas de texto dentro del contenido de un archivo.
  • TACS: ordena todos los archivos del cp.
  • EDLIN o EDIT: permite editar archivos, guardando los cambios efectuados.

Algunas de estas órdenes admiten el uso de parámetros, también llamados modificadores.

Uso de modificadores

Modificadores de la orden DIR

  • dir /s

muestra el listado con el contenido de un directorio y de todos sus subdirectorios.

  • dir /p

pausa el texto de salida en pantalla y espera que el usuario pulse una tecla para continuar.

  • dir /w

Ordena el listado a lo ancho de la pantalla.

  • dir /ah

Muestra los archivos ocultos del directorio actual.

  • dir /as

Muestra los archivos de sistema del directorio actual.

  • dir /r

Muestra los archivos marcados "sólo lectura" del directorio actual.

  • dir /on

Muestra los archivos ordenados alfabéticamente.

  • dir /od

Muestra los archivos ordenados por fecha.

Los modificadores pueden combinarse, por ejemplo:

  • dir /p /w /on


Características avanzadas

Ciertas órdenes, como COPY, pueden recibir parámetros que permiten una manipulación de archivos ciertamente avanzada, en particular el modificador /b, que efectúa una copia binaria. Por ejemplo la secuencia :

  • copy /b archivo1 + archivo2 + archivo3 archivo4

copiará el contenido de archivo1, archivo2 y archivo3 en un nuevo archivo, archivo4.


Además, el DOS permitía escribir archivos de proceso por lotes (pequeños scripts para COMMAND. COM), cuya extensión era .BAT, que admitían órdenes como IF, GOTO y CHOICE (que pedía la entrada de un carácter entre los especificados). Así, se podían hacer menús, automatizar tareas, etc.

Ejemplo de salida

 C:\>dir
  Volume in drive C has no label
  Volume Serial Number is 1234-5678
  Directory of C:\
 AUTOEXEC TTZ         1,120  07-26-03  1:03a
 MSDOSS~1 BAK         1,779  01-21-96  7:12p
 SETUP          <DIR>        01-21-96  9:06p
 HIDDEN   TX1        19,296  01-21-96  7:27p
 CONFIG   BAK           122  01-21-96  2:25p
 GAMES          <DIR>        01-21-96  9:06p
 WS_FTP   LOG           128  01-21-96 12:36p
 CONFIG   DOS            50  01-21-96  2:25p
 AUTOEX~2 BAK         1,150  01-22-03  2:13p
 CYGNUS         <DIR>        01-21-96  9:38a
 JAVA           <DIR>        01-21-96  9:40a
 TMP            <DIR>        01-21-96  4:01p
 E              <DIR>        01-21-96  4:23p
 COMMAND  COM        93,890  01-21-96 10:22p
 WINDOWS        <DIR>        01-21-96  8:42p
 MOUSE          <DIR>        01-21-96  8:45p
 BASIC          <DIR>        01-21-96  5:09p
 MASM           <DIR>        01-21-96  5:09p
 CONFIG   SYS           122  01-31-03 11:50p
 PROGRA~1       <DIR>        01-21-96  6:26p
 MYDOCU~1       <DIR>        01-21-96  9:00p
 AUTOEXEC BAT         1,150  07-26-03  1:03a
         10 file(s)     12,056,573 bytes
         12 dir(s)        1,214.84 MB free

cls

Versiones de DOS

Fueron varias las compañías que sacaron versiones del DOS, generalmente muy similares entre sí. PC-DOS y MS-DOS, por ejemplo, empezaron siendo prácticamente idénticos, aunque acabaron siendo muy distintos. Las versiones más conocidas fueron:

Bajo GNU/Linux es posible ejecutar copias de DOS bajo dosemu, una máquina virtual nativa de Linux para ejecutar programas en modo real. Hay otros muchos emuladores para diferentes versiones de UNIX, incluso para plataformas diferentes a la arquitectura de procesador x86.

Enlaces externos

Atribución

Este artículo proviene originalmente de Wikipedia
que lo licencia simultáneamente bajo las licencias

Creative Commons Reconocimiento - CompartirIgual 3.0
y la licencia de documentación libre GNU v.1.2 y posteriores
El Museo de los 8 Bits lo integra en su wiki bajo cc-by-sa-3.0

Creative Commons License
GNU head