DOS (sigla de Disk Operating System, "Sistema Operativo de Disco" o "Sistema Operativo en Disco") es una familia desistemas operativos para computadoras personales (PC). Creado originalmente para computadoras de la familia IBM PC, que utilizaban los procesadores Intel 8086 y 8088, de 16 bits, siendo el primer sistema operativo popular para esta plataforma. Contaba con una interfaz de línea de comando en modo texto o 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, deMicrosoft, 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, frecuentemente adjunto a una versión de la interfaz gráfica deWindows de 16 bits, como las 3.1x.
En las versiones nativas de Microsoft Windows, basadas en NT (y este a su vez enOS/2 2.x) (véase Windows NT, 2000, 2003, XPo Vista o Windows 7) 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 mediantecmd.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 los1.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 enWindows 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 deben 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 aquellas 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:
- MS-DOS, de Microsoft, es el más conocido.
- PC-DOS, de IBM.
- DR-DOS, de Digital Research, que pasaría posteriormente a Novell (Novell DOS 7.0), luego a Caldera y finalmente a DeviceLogics.
- FreeDOS, es el más recientemente, de licencia libre y código abierto. Puede hacer las veces, en su versión para GNU/Linux y UNIX, de emulador del DOS bajo sistemas de este tipo.
Con la aparición de los sistemas operativos con interfaz gráfica de usuario (GUI), del tipoWindows, 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.

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áficas y Shoot 'em up subjetivos, entre otros). Por sí solo 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ús 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 discodemasiado 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 98), ó elNTFS, propio de Windows de tipo NT. Originalmente, por limitaciones del software, no podía manejar más de 64KB de memoriaRAM. 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 lamemoria 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 realde 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, que ya no se basan ni parten de MS-DOS, mediantecmd.exe, esto pasa también en Windows MEa pesar de estar aún basado en la antigua arquitectura 9x. También existen, para sistemas actuales, emuladores comoDOSBox, o entornos de código abierto como el FreeDOS, comunes ambos en GNU/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 y GNU/Linux.
Ó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
oRENAME
: renombra archivos.DEL
oERASE
: borra uno o varios archivos (con posibilidad de recuperarlos mediante la ordenUNDELETE
, presente en las últimas versiones nativas del DOS, salvo que el lugar del archivo o archivos borrados hubiese sido utilizado con posterioridad).MD
oMKDIR
: crea un nuevo directorio.CD
oCHDIR
: cambia el directorio actual por el especificado.RD
oRMDIR
: borra un directorio vacío.ATTRIB
: permite asignar o quitar atributos de archivos (tales como+A
: ya modificado,+H
: oculto,+R
: de solo lectura, ó+S
, archivo especial del sistema, o a la inversa).TREE
: muestra gráficamente la estructura de directorios de una unidad o ruta de acceso.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 las entradas.FC
oCOMP
: 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
oEDIT
: permite editar archivos, guardando los cambios efectuados en el sistema.VOL
: muestra la etiqueta del volumen y el número de serie del disco.VERIFY
: comunica a Windows si debe comprobar que los archivos se escriben de forma correcta en un disco.CD..
: retrocede a la rama anterior.
Algunas de estas órdenes admiten el uso de parámetros, también llamados modificadores.