Generalmente no me gusta re-postear artículos vistos en digg, reddit o similares, pero hoy haremos una excepción para transmitirles un artículo bastante interesante para todos aquellos que, como yo, dieron sus primeros pasos en DOS. El artículo original es un poco más largo, dando un par de detalles técnicos que hemos omitido para facilitar la lectura. Comienza con una pregunta: ¿Por qué DOS usa “\” para separar directorios? He aquí la respuesta, cortesía del blog de Larry Osterman (quien, incidentalmente, es desarrollador de Microsoft):
Hace muchos, muchos meses, Declan Eardly preguntó por qué el caracter “\” fue elegido como el separador para los paths. La respuesta es anterior a mi tiempo, pero sí recuerdo las razones originales.
Todo se inicia con la relación de Microsoft con IBM. Para DOS 1.0, DOS solamente soportaba diskettes.
Muchas de las utilidades de DOS (excepto command.com) fueron escritas para IBM, y utilizaban el caracter “/” como el caracter de “switch”. El caracter de “switch” es el caracter que se utiliza para distinguir opciones de línea de comando - en *nix es “-”, en los sistemas operativos DEC (incluyendo VMS, DECSystem-20 y DECSystem-10) es “/”. Nota: no estoy seguro de si el caracter “/” vino de IBM o de Microsoft - muchos de los desarrolladores originales de MS-DOS eran antiguos programadores de DEC-20, así que es posible que lo hayan traído de su experiencia con DEC.
El hecho de que el caracter “/” creara conflicto con el caracter de path de otro sistema operativo relativamente popular no era demasiado relevante para los desarrolladores originales - después de todo, DOS no soportaba directorios, solamente archivos en un único directorio raíz.
Luego vino DOS 2.0. DOS 2.0 estaba ligado a la PC/XT, cuya principal característica era un disco rígido de 10Mb. IBM pidió a Microsoft que agregara soporte para discos rígidos, y los desarrolladores de MS-DOS lo vieron como una oportunidad para agregar soporte para una API moderna de archivos - agregaron toda una serie de APIs basadas en manejadores al sistema (DOS 1.0 se basaba en una estructura de aplicación controlada llamada una FCB). Agregaron también soporte para paths jerárquicos.





