Notas de MS-DOS
MICROSOFT - DISK OPERATING SYSTEM, EL REY MUERTO.
INDICE
1.- Introducción
Introducción a los S.O.
Evolución de los S.O.
MS-DOS
Versiones
Países donde se comercializa
Breve descripción del MS-DOS
Instalación
Estructura del MS-DOS
Estructura básica del sistema
Comandos de ayuda
2.- Interioridades del arranque del sistema
Proceso de arranque
Arranque
Pasos del arranque
Programas implicados en el arranque
3.- Gestión de archivos y directorios
Directorios
Ficheros
Caracteres comodines
Unidad activa y directorio activo
Trayectorias
Atributos
Visualización de atributos
Comandos relacionados
Comandos para directorios
Comandos para gestionar ficheros
Editores
Editor edlin
Editor edit
4.- Ficheros batch
Gestión de mensajes
Gestión de parámetros
Estructuras de control
5.- La memoria
Direccionamiento de la memoria
Rom y ram
Memoria en MS-DOS
La memoria física
Memoria convencional
Memoria superior
U.M.B.
Memoria extendida
E.M.S.
H.M.A.
X.M.S.
Otros tipos de memoria
Shadow
Caché
CMOS-ram
Controladores de memoria
Carga del DOS en memoria alta
Convertir X.M.S. en E.M.S.
Cargar programas en memoria superior
Incremento de la memoria disponible
6.- Arquitectura
Dispositivos
Consola
Puertos paralelos
Puertos serie
Nul
Reloj
Configuración de los dispositivos
Mode
Ctty
Redireccionamiento
Filtros
7.- Gestión de las unidades de disco
Estructura física de un disco
Estructura lógica de un disco
Particiones
Formateo
Comandos relacionados
8.- Copias de seguridad
Realización de una copia
Copia completa
Copia diferencial
Copia incremental o progresiva
Criterios de estrategia
Ficheros de especificaciones
Catálogos de copias de seguridad
Catálogos maestros
9.- Windows
1.
INTRODUCCION.
1.1.
BREVE INTRODUCCIàN A LOS SISTEMAS OPERATIVOS.
Antes de comenzar a hablar del sistema operativo MS-DOS es conveniente hacer
un repaso sobre todos los términos y conceptos que nos puedan ayudar
a la comprensión global del universo de la informática.
Según ISO (Organización Internacional de Normalización),
se define un sistema informático como el sistema compuesto de equipos
y de personal pertinente, que realiza funciones de entrada, proceso, almacenamiento,
salida y control con el fin de llevar a cabo una secuencia de operaciones con
datos.
Las funciones del sistema operativo son básicamente cinco:
- Gestión de recursos del ordenador.
- Control de lo que hace el ordenador y de cómo lo hace.
- Permitir el uso de paquetes o programas software por el usuario.
- Organizar los datos y los programas.
- Permitir la comunicación usuario-máquina.
Un ordenador es una máquina (hardware) que realiza la secuencia de instrucciones
que se le han ordenado (software) y puede modificar esas instrucciones a la
luz de ciertos resultados intermedios.
El hardware es la materia física, el ordenador en sentido estricto,
lo que los hispanoamericanos denominan "cacharrería" o "mecamática".
El software o lógica funcional es el componente lógico de un
sistema informático; se refiere a todo lo que no es materia física,
y que tradicionalmente se ha considerado programación; los manuales sudamericanos
lo llaman "programática". Se puede considerar, en sentido amplio,
el Sistema Operativo, como el conjunto de los programas de control y los programas
de proceso.
El firmware es el conjunto de microprogramas que forman una unidad en un ordenador.
Se define así también a la combinación de software sobre
hardware (normalmente software cableado).
Se conoce como microprograma o microcódigo al con junto de microinstrucciones
de un microprograma que componen el cronograma de una instrucción, dentro
del nivel más interno de programación, rozando la frontera entre
hardware y software.
De forma simplista, un Sistema Operativo se dedica a asignar tareas y coordinar
el funcionamiento interno del ordenador. Para la gestión del sistema
se apoya en un reloj interno (que forma parte del hardware) con el cual se ayuda
el aparato para tomar decisiones simples, de modo secuencial, es decir, toma
una decisión tras haber tomado la anterior.
El Sistema Operativo establece un vínculo entre la máquina y
el usuario y proporciona a éste una guía de control sobre los
recursos de todo el Sistema. Para ayudar a las personas en el manejo de la máquina,
los constructores de equipos han creado una serie de programas de actuación
más o menos estandarizados que liberan al usuario de ciertas tareas y
establecen un entorno más sencillo de trabajo. Estos programas forman
parte del Sistema Operativo y se pueden englobar en estos tres grupos:
-Monitores; forman el software básico, programas que controlan todos
los procesos del ordenador, asignando las prioridades de tratamiento mediante
el control de interrupciones, de operaciones de E/S y flujo de trabajos.
-Traductores, que son software de aplicaciones, programas que permiten la utilización
de lenguajes de programación, transformando las instrucciones simbólicas
de estos lenguajes a instrucciones de máquina, que son las que entiende
el ordenador.
- De servicio, llamados software orientado a máquina, programas que
transfieren la información entre los distintos elementos periféricos
de la configuración del ordenador, la ordenación de los datos
antes o después del tratamiento, la generación de ficheros de
datos, en general, el mantenimiento del sistema de explotación del ordenador.
1.1.1. Evolución de los Sistemas Operativos.
La lógica o software de los ordenadores se ha complicado conforme han
evolucionado éstos. Los primeros ordenadores, a partir de 1944 en que
Aiken construyó el Mark-I, sólo podían programarse en lenguaje
máquina, y puede decirse que el Sistema Operativo aún no existía.
J. V. Neumann fue quien dio el primer paso en la informática y en las
relaciones hombre-máquina con el concepto de programa almacenado, que
consiste en archivar en el ordenador un conjunto de instrucciones máquina
para posteriormente ejecutarlas. La aparición del Assembler, lenguaje
nemotécnico-simbólico, constituyó un gran avance sobre
la primitiva programación en código máquina. La forma de
explotar los sistemas ha ido evolucionando con el tiempo; los más sencillos
funcionaban con monoprogramación. Monoprogramación o monoejecución
es el sistema de explotación en el que se ejecuta solamente un programa
cada vez y no comienza la ejecución de otro hasta terminar con el anterior.
En 1948, con Noam Chomsky, surge la teoría de las gramáticas
generativas transformacionales, que es la base de los traductores de lenguajes.
En 1955 comenzó el desarrollo de los lenguajes de alto nivel, y al mismo
tiempo se empezó a dividir el trabajo entre personas: operadores y programadores.
Las funciones del operador tenían más directamente que ver con
la administración y control de los recursos del Sistema Operativo y la
carga de trabajos, y las de los programadores con la codificación de
los programas.
El monitor es el programa antepasado del Sistema Operativo. Abarca funciones
muy elementales, como visualizar y modificar los contenidos de la memoria principal,
el lanzamiento automático para la ejecución de un programa, la
introducción de puntos de ruptura en los programas para puesta a punto,
etc. Gracias al monitor apareció el concepto de secuencia automática
de trabajos.
Actualmente, al estar superado el concepto de monoprogramación, es frecuente
que tengamos que familiarizarnos con los conceptos de multiprogramación,
tiempo compartido, multiproceso y tiempo real.
Las tendencias de futuro prevén el desarrollo de Sistemas Operativos
con potencialidad de:
- Explotación del proceso en paralelo y de forma concurrente.
- Integración mediante informática corporativa del tratamiento
en distintos Sistemas Operativos de micros, minis y mainframes, a través
de interfaces gráficas de usuario y la arquitectura cliente-servidor.
Hay tres grandes familias de ordenadores con sus respectivos Sistemas Operativos:
los grandes ordenadores o mainframes, que llevan incorporados varios microprocesadores
funcionando a la vez (en paralelo). Los ordenadores de tipo medio (minis), que
tienen de 1 a 4 procesadores muy versátiles funcionando en paralelo.
Y por último los ordenadores personales, que tienen un ordenador más
o menos rápido.
1.2. MS-DOS.
1.2.1. El MS-DOS: distintas versiones.
MS-DOS (Micro Soft Disk Operating System - Sistema Operativo en Disco) es un
sistema patentado por Microsoft Corporation para ordenadores personales PC's.
El Sistema Operativo más difundido con diferencia es MS-DOS, este al
estar diseñado para 16 bits y con la reciente aparición de Windows
95 de Microsoft, de 32 bits y con posibilidades de multitarea, ve peligrar su
supremacía como rey indiscutible del entorno PC.
Aunque la creencia general es que el sistema fue creado por Microsoft Corporation,
esto no es cierto ya que el verdadero creador de este sistema fue Tim Paterson,
un empleado de Seattle Computer Products.
A partir de la aparición en 1981 del IBM-PC de 16 bits en el bus de
direcciones, MS-DOS es el Sistema Operativo más difundido, ya que hay
millones de microordenadores PC's distribuidos por el mundo, convirtiéndose
en un sistema operativo estándar para este tipo de ordenadores; esta
primera versión funcionaba sobre un equipo que disponía de 64
Kb. de memoria y dos disqueteras de 5,25 pulgadas de una cara y con una capacidad
de 160 Kb., la CPU del ordenador era un modelo 8088 de 8 bits y con una velocidad
de 4,7 Mhz.
Este sistema operativo fue patentado por las empresas Microsoft Corporation
e IBM, utilizándose dos versiones similares (una de cada empresa) llamadas
MS-DOS y PC-DOS.
A MS-DOS le acompañan unos números que indican la versión.
Si la diferencia entre dos versiones es la última cifra representa pequeñas
variaciones. Sin embargo, si es en la primera cifra representa cambios fundamentales.
Las versiones comenzaron a numerar por 1.0 en agosto de 1981. En mayo de 1982
se lanzó la versión 1.1 con soporte de disquetes de dos caras.
La versión 2.0 se creó en marzo de 1983 para gestionar el PC-XT,
que incorporaba disco duro de 10 Mb, siendo su principal novedad el soporte
de estructura de directorios y subdirectorios.
En agosto de 1984, con la aparición de los ordenadores del tipo AT,
que empleaban un procesador 80286, funcionaban a 8 Mhz de velocidad y tenían
soporte de disquetes de 5 y cuarto de alta densidad (HD 1,2 Mb), MS-DOS evolucionó
hacia la versión 3.0; esta versión podía ser instalada
en ordenadores más antiguos, pero no se podía realizar la operación
a la inversa.
La versión 3.2 se lanzó en diciembre de 1985, para admitir unidades
de disquete de 3 1/2 (DD 720 Kb y HD 1,44 Mb). La versión 3.3 se lanzó
en abril de 1987 con posibilidades de crear múltiples particiones en
discos duro.
La versión 4.0 apareció en noviembre de 1988 y gestiona discos
duros de particiones de más de 32 MB (hasta 512 MB). Además dispone
de una nueva interface gráfica y soporte de memoria expandida, esta versión
permite además el empleo de la memoria expandida del ordenador (anteriormente
sólo se podían emplear 640 Kb de memoria RAM). Actualizar a la
versión 4.0 desde una versión anterior puede traer dificultades
ya que habrá que reformatear el disco duro bajo la nueva versión
y es posible que algunos programas necesiten funciones de DOS que ya no estén
disponibles.
La versión 5.0 se lanzó en junio de 1991, y proporciona drivers
para gestionar ampliaciones de memoria y se incorpora un editor de pantalla
y un shell bastante potente, además de poder instalarse independientemente
de la versión anterior de sistema operativo.
La versión 6.0 se lanzó en abril de 1993 y como contenía
abundantes errores fue sustituida el mismo año por la versión
6.2. Las mejoras de la versión 6.0 incluyen: herramientas de compresión
de discos, antivirus, programas de copias de seguridad por menú, desfragmentador
de disco y otras utilidades, como por ejemplo un administrador de memoria ampliada,
denominado MemMaker. A finales de 1993 se lanzó la versión 6.2
con mejoras en el duplicador de espacio en disco y la posibilidad de borrar
un directorio independientemente de su contenido entre otras ventajas.
1.2.2. Países en los que se comercializa.
El rey de los sistemas operativos se distribuye a lo largo y ancho de todo
el mundo, en los cinco continentes y en países tan dispares como puedan
ser Estados Unidos, México, Dinamarca, Grecia, Alemania, Australia, Nueva
Zelanda, Israel, Emiratos µrabes Unidos, Italia, Suiza y, sobre todo,
España.
1.2.3. Breve descripción del MS-DOS.
El MS-DOS es un sistema operativo monousuario y monotarea.
Al cumplir las dos condiciones arriba mencionadas el procesador está
en cada momento está dedicado en exclusividad a la ejecución de
un proceso, por lo que la planificación del procesador es simple y se
dedica al único proceso activo que pueda existir en un momento dado.
1.2.4. Instalación.
Para instalar MS-DOS bastará con ejecutar el programa de instalación
que está situado en el disquete número uno de MS-DOS. No es posible
ejecutar MS-DOS desde los disquetes de instalación ya que dichos archivos
están comprimidos.
Instalar detecta el tipo de hardware y de software que contiene el PC y le
comunica a este si no cumple con los requisitos mínimos o si existen
características incompatibles con MS-DOS.
1.2.5. Estructura del MS-DOS.
El sistema operativo MS-DOS tiene una estructura arborescente donde existen
unidades, dentro de ellas directorios y a su vez dentro de ellos tenemos los
ficheros.
Las unidades son las disqueteras y los discos duros.
Los directorios son, dentro de las unidades, carpetas donde se guardan los
ficheros.
Los ficheros son conjuntos de datos y programas.
El DOS tiene unos cien comandos, que para poder ser ejecutados necesitan tres
ficheros:
- IBMBIOS.COM
- IBMDOS.COM
- COMMAND.COM
El IBMBIOS.COM se encarga de las comunicaciones de entrada y salida.
El IBMDOS.COM es el centro de los servicios del ordenador, es conocido también
como kernel o núcleo.
El COMMAND.COM carga y permite ejecutar todos los comandos.
1.3. Estructura básica del sistema.
El MS-DOS contiene cinco elementos fundamentales:
- La ROM-BIOS.- Programas de gestión de entrada y salida entre el Sistema
Operativo y los dispositivos básicos del ordenador.
- La IO.SYS.- Son un conjunto de instrucciones para la transferencia de entrada/salida
desde periféricos a memoria. Prepara el sistema en el arranque y contiene
drivers de dispositivo residentes.
- MSDOS.SYS.- Es el kernel de MS-DOS, en que figuran instrucciones para control
de los disquetes. Es un programa que gestiona los archivos, directorios, memoria
y entornos.
- DBLSPACE.BIN.- Es el controlador del Kernel del compresor del disco duro
que sirve para aumentar la capacidad de almacenamiento del disco, disponible
a partir de la versión 6 del MS-DOS. Este controlador se ocupa de toda
la compresión y descompresión de ficheros y se puede trasladar
desde la memoria convencional a la memoria superior.
- COMMAND.COM.- Es el intérprete de comandos, mediante los cuales el
usuario se comunica con el ordenador, a través del prompt \>. Interpreta
los comandos tecleados y contiene los comandos internos de MS-DOS que no se
visualizan en el directorio del sistema.
Los ficheros IO.SYS, MSDOS.SYS y DBLSPACE.BIN son ocultos, es decir, no se
ven al listar el directorio, y se cargan desde el disco a la memoria del ordenador
al arrancar éste.
1.3.1. Comandos de ayuda.
- En MS.DOS existe una orden llamada HELP que permite ejecutar un programa
en pantalla completa que ofrece ayuda al usuario a nivel de comandos. Este comando
proporciona una referencia completa de los comandos de MS-DOS.
- El comando FASTHELP ejecuta un programa en el cual ofrece ayuda personalizada
para cada orden del MS-DOS. Si se indica sin parámetros, muestra un índice
de todos los comandos de los que puede ofrecer información.
Si se ejecuta HELP o FASTHELP seguido del nombre de un comando, automáticamente
se entra en la ayuda específica para ese comando sin la necesidad de
pasar por el índice.
2.
Interioridades del arranque del sistema operativo.
2.1.
Proceso de arranque del sistema.
2.1.1. Arranque.
Existen 2 maneras de arrancar el sistema: en frío o en caliente.
- En Frío: está apagado y lo arrancamos con el 'ON'. Cachea los
dispositivos de entrada y de salida, teclado, monitor, discos duros, disquetes,
memoria (RAM), etc. Después busca el S.O. y lo carga, primero mira en
la disquetera y si hay disquete con sistema operativo lo arranca; después
mira el disco duro.
- En Caliente: Se ejecuta apagando el ordenador con el botón reset o
con Ctrl+Alt+Supr. No se hacen todos los test anteriores y se carga directamente
del S.O., suele emplearse tras caídas del sistema operativo o bloqueo
del ordenador.
2.1.2. Arrancando.
En el proceso de arranque intervienen distintos archivos cada uno con una misión
específica y que vamos a explicar a continuación detallando posteriormente
el proceso completo.
- Módulo BIOS (Basic Input Output System).- Es específico de
cada fabricante y se encarga de controlar las diversas unidades hardware de
entrada y salida, como el teclado, y su presentación, impresoras, reloj,
etc. Durante la inicialización del sistema el BIOS se lee y se guarda
en la RAM cargando el fichero IO.SYS. Este fichero no se ve al hacer un dir,
ya que tiene el atributo de oculto 'hidden' y el de sistema 'system' que indica
al sistema que no es un archivo normal y no se puede modificar, editar, etc.
El IO.SYS es el Kernel o núcleo del sistema y realiza funciones como
la gestión de ficheros, de los registros de memoria, generación
de otros programas, etc. Es independiente del hardware y contiene una serie
de servicios del sistema.
- EL COMMAND.COM (procesador de órdenes).- se responsabiliza del análisis
gramatical y la gestión de las órdenes del usuario. Se suministra
por defecto con el MS-DOS, pero es posible crearse uno propio poniendo una orden
en el config.sys.
Está dividido en 3 partes:
- Resiente: se carga en la parte baja de la memoria, por encima del núcleo
(Kernel) y del Bios. Gestiona las órdenes Ctrl+Break y se encarga también
de los errores críticos.
- Parte de inicialización: se encarga de procesar el autoexec.bat. Desaparece
después de ejecutarse.
- Porción transitoria: se carga en el extremo superior de la memoria.
Prepara el símbolo para las órdenes del usuario. El Prompt. Ejecuta
las órdenes que le damos al ordenador. Sólo se carga cuando se
necesita.
El Command.com primero mira si la orden recibida es:
- Interna.
- Externa.
- Si es .COM
- Si es .EXE
- Si es .BAT
- CONFIG.SYS.- Es un fichero de sistema. El DOS lo ejecuta antes del autoexec.bat
y contiene comandos de configuración del equipo. Depende de las tareas
puede que necesitemos una configuración distinta. Sin este archivo o
sin algún comando de él el sistema no funciona. Se carga el país
(country), carga los dispositivos (device), establece el máximo de archivos
a abrir a la vez (files), las zonas temporales de memoria (buffers), etc.
.- AUTOEXEC.BAT.- De procesamiento de lotes. Se ejecuta antes de llegar a nosotros.
Inicializa opciones. Cambio de fecha y día, Inicialización del
ratón. Cambia memoria extendida a expandida. Definición de teclado
(keyb).
2.1.3. Pasos del arranque.
1§.- Encendemos el ordenador. Se lee la ROM y el programa BOOTSTRAP.
2§.- Funciona el programa de inicialización llamado BOOTSTRAP (en
ordenadores grandes IPL initial program load). Este programa se encuentra en
la ROM. Este lee el programa de arranque del disco que está situado en
el 1§ sector del disco llamado sector de arranque.
3§.- El bootstrap coge el programa de arranque del disco, lo ejecuta si
existe IO.SYS y DOS.SYS. Si los encuentra es que tiene S.O. y se puede arrancar
el ordenador. Si no da error.
Primero busca en la disquetera y después en el disco duro.
4§.- Si los encuentra transfiere el control al IO.SYS y lo carga en la
parte baja de memoria.
5§.- El IO.SYS (IBMBIOS.COM) está compuesto de 2 partes y las carga:
-La BIOS que controla los periféricos (consola, teclado, etc.).
-El SYSINIT creado por Microsoft que determina la cantidad de memoria contigua
que tiene el sistema. Cargado en la parte baja de la memoria.
6§.- El sysinit se reinstala así mismo en la parte alta de la memoria
y en su lugar carga el Kernel o núcleo (DOS.SYS o IBMDOS.COM). A la vez
comprueba la cantidad de memoria del sistema.
7§.- El Kernel lo primero que hace es mirar el estado de los periféricos.
Comprueba disqueteras, disco duro, inicializa tablas.
8§.- Después interviene de nuevo el Sysinit y llama a los servicios
del Kernel o Dos.sys y ejecuta el Config.sys (configuración del sistema).
Si encuentra algún error lo notifica pero continua.
9§.- El Sysinit vuelve a llamar a los servicios del DOS (servicios Exec)
y le dice que cargue el Command.com.
-1§ Parte Residente que se carga en la parte baja de la memoria por encima
del Kernel y del Bios y gestiona las órdenes de Ctrol+Break y los errores
críticos ('Unidad no preparada', etc.)
-2§.- La Parte de Inicialización que se encarga de procesar el
autoexec.bat y desaparece de la memoria después de ejecutarse.
10§.- Desaparece el sysinit que estaba en la parte alta de la memoria.
ROM
RAM
* Estado de la memoria al final de la carga del S.O.
2.1.4. Programas implicados en el arranque del sistema
2.1.4.1. Bootstrap.
Es el encargado de la inicialización del ordenador. También es
conocido como IPL (initial program load).
El programa bootstrap está programado en Basic.
Es un programa situado en memoria ROM que lo primero que hace es leer el programa
de arranque del disco (situado en el primer sector del disco), que determina
si en el disco están los ficheros IBMBIOS.COM e IBMDOS.COM (si no están
aparece un mensaje indicativo de tal problema - Non Sistem Disk -).
Si encuentra los ficheros ejecuta primero el IBMBIOS.COM, compuesto de dos
partes:
- BIOS: es la parte encargada de controlar los periféricos.
- SYSINIT: Se encarga de determinar la cantidad de memoria contínua
del ordenador.
Después ejecuta el IBMDOS.COM y el SYSINIT se va de la parte baja de
la memoria del ordenador a la parte alta y deja su lugar en la parte baja al
IBMDOS (kernel o núcleo), que lo primero que hace es controlar que los
periféricos funcionen correctamente. Una vez controlados los periféricos,
vuelve el SYSINIT que llama a los servicios del Kernel y ejecuta el fichero
CONFIG.SYS (si una de sus instrucciones no va bien, continúa con las
otras instrucciones, dando el correspondiente mensaje de error).
Por último SYSINIT llama a los servicios del MS-DOS y carga el COMMAND.COM
(parte residente y parte de inicialización). La parte de inicialización
cargará el AUTOEXEC.BAT.
Después de esto, el SYSINIT y la parte de inicialización del
COMMAND.COM se borran de la memoria.
2.1.4.2. BIOS.
Significa Basic Imput Output System.
Es específico de cada fabricante y se encarga de controlar las unidades
hardware de entrada y salida (teclado, impresora, reloj, ...).
El BIOS se lee y se guarda en la RAM cargando el fichero IBMBIOS.COM o IO.SYS.
2.1.4.3. IBMDOS.COM.
Es el kernel o núcleo del sistema.
Sus funciones son gestión de ficheros, gestión de memoria, generación
de otros programas, ...
Es independiente del hardware empleado.
Contiene un conjunto de servicios (funciones del sistema).
2.1.4.4. COMMAND.COM.
Es un interface entre el usuario y el aparato mediante un conjunto de prompts
y mensajes de respuesta a los comandos del usuario.
Es el responsable del análisis gramatical y gestiona las órdenes
del usuario (es el procesador de las órdenes).
El COMMAND.COM también es el encargado de gestionar las interrupciones;
el sistema de interrupciones dispone de una jerarquía sencilla de prioridades
para tratar las interrrupciones ocasionadas por los periféricos, cuando
el tratamiento de una interrupción termina, se devuelve el control al
programa que se estaba ejecutando cuando sucedió la interrupción.
Se ocupa también de tratar los errores que hayan podido producirse durante
la ejecución de un programa, devolviendo el control al programa en que
se produjo el error si ello es posible, y si no al MSDOS.
Gestiona los comandos internos, que dependen directamente de él.
No es obligatorio emplear este, se puede colocar otro creado por el usuario
(aunque se tendría que indicar en el CONFIG.SYS.
Está dividido en tres partes:
- Residente: se carga en la parte baja de la memoria, por encima del kernel
y la BIOS. Controla los errores críticos, el empleo de Ctrl+Break, Ctrl+C,
...
- Sección de inicialización: Se carga por encima de la parte
residente y se encarga de procesar el archivo AUTOEXEC.BAT, después se
borra de la memoria RAM.
- Módulo transitorio: Se carga en la parte alta de la memoria y su finalidad
es preparar el prompt o símbolo del sistema necesario para poder introducir
instrucciones y ejecutarlas. Sólo se carga cuando se necesita y, después
de ejecutar la orden, se descarga.
2.1.4.5. CONFIG.SYS.
El config.sys es un fichero de sistema (propio del sistema operativo), creado
o modificado con cualquier editor de textos.
Se ejecuta antes que el autoexec.bat y contiene una serie de comandos de configuración
del equipo. Algunos de sus parámetros son imprescindibles, entre ellos
el "Files" que indica el n§ de ficheros que se pueden abrir al
mismo tiempo.
No tiene limitación de tamaño y debe estar situado en el directorio
raíz del disco.
Además de los Files existen otros comandos "típicos"
en este archivo:
- Buffers: Zonas intermedias de almacenamiento donde se guardan cosas temporalmente,
para transferir datos. El formato de la orden es: BUFFERS N§ (donde n§
indica el número de buffers que se pueden emplear, normalmente es 10).
- Country: Indica el país en el que se está trabajando, así
se visualizarán los caracteres correctos del país.
- Device: Sirve para cargar características de ratón, teclado,
...
- Break: Indica al DOS si debe controlar la pulsación de las teclas
Ctrl+C o Ctrl+Break.
- Lastdrive: Indica cual es la última letra de unidad de disco que reconocerá
el sistema.
2.1.4.6. AUTOEXEC.BAT.
Es un archivo de procesamiento por lotes.
Sirve para inicializar una serie de funciones no imprescindibles, introducir
datos, activar controles del sistema y cargar programas automáticamente.
El sistema operativo lo ejecuta automáticamente si existe.
No tiene limitación de tamaño y debe estar en el directorio desde
el cual arranca el sistema.
Hay varios comandos que están incluidos usualmente:
- Keybsp: Actualiza el teclado a español.
- Path: Busca un programa en cualquier carpeta que se le haya indicado en este
comando.
- Set: Incluye variables de entorno y su valor correspondiente.
3. Gestión de archivos y directorios.
El MS-DOS controla el sistema de gestión de ficheros del ordenador.
Cada disco dispone de un directorio, que contiene los detalles de todos los
ficheros del disco, así como los nombres de los subdirectorios y de los
ficheros que contenga.
3.1. Directorios.
Zona o división lógica de almacenamiento o otros subdirectorios.
Los directorios constituyen una estructura jerárquica en forma de árbol.
En cualquier momento el usuario está en un determinado directorio y,
a menos que se indique otra cosa, todos los ficheros se buscan o se crean en
este directorio.
Al igual que para los ficheros, la nomenclatura consta de un nombre de 1 a
8 caracteres y una extensión de cero a tres caracteres (aunque se recomienda
no emplearla).
En toda unidad de disco existe el directorio raíz, representado por
una barra (\).
Una ruta está formada por una unidad y uno o varios directorios (C:\DOS)
La unidad activa es la unidad en la que se está trabajando.
Una ruta activa es la ruta en la que se está en un momento determinado,
cuando se arranca el ordenador la ruta activa es el directorio raíz del
disco.
Al crear un directorio automáticamente contiene otros dos subdirectorios:
- El directorio . que hace referencia al directorio en si.
- El directorio .. que referencia al directorio padre.
Esto no se cumple para el directorio raíz ya que este no puede tener
directorio padre.
3.2. Ficheros.
Es un conjunto de datos o programas almacenados bajo un nombre en común.
Debe tener:
- Especificador de fichero.
- Tamaño del fichero.
- Fecha y hora de creación o última modificación del fichero.
- Atributos.
El especificador de fichero es el nombre seguido de una extensión y
separados por un punto; el nombre puede tener de uno a ocho caracteres y la
extensión de cero a tres (el DOS admite desde la A hasta la Z, del 0
al 9 y caracteres especiales (^, $, !, #, %, &, {, }, (, ), -, _, ...).
Extensiones standard de fichero en DOS:
- BAT: fichero de procesamiento por lotes.
- BAK: fichero de copia de seguridad.
- COM: fichero ejecutable de comandos.
- EXE: fichero ejecutable.
- DOC: fichero de documentos.
- TXT: fichero de texto.
- DBF: base de datos.
- HLP: fichero de ayuda.
- SYS: fichero de sistema operativo.
- TMP: fichero temporal creado por otro programa o por un comando.
- BAS: fichero BASIC.
- ASM: fichero en ENSAMBLADOR.
- CBL: fichero en COBOL.
- C: fichero en C.
- PAS: fichero en PASCAL.
- OBJ: fichero objeto de un programa compilado.
- LST: errores que generan otros programas.
3.3. Lenguajes de programación soportados.
Al haber sido el rey de los sistemas operativos para entorno de ordenadores
personales, existe una gran gama de compiladores de lenguajes, como puedan ser
Pascal, Cobol, Clipper, Ensamblador, C, C+, C++, Basic, Fortran, Logo, Ada,
Pilot, Lisp, Rpg y un sinfín de lenguajes más.
3.4. Caracteres comodines.
Son unos caracteres que permiten representar a varios nombres a la vez.
Existen dos comodines: ? y *.
- ?: Representa cualquier caracter válido en el nombre o la extensión
de un fichero. Representa sólo un caracter. Se pueden poner tantos interrogantes
como se desee y cada uno representará un caracter, excepto el último
que puede representar cero o uno.
- *: Representa uno o más caracteres válidos del nombre o la
extensión. Anula los siguientes caracteres que le siguen en el nombre
o la extensión.
3.5. Unidad activa y directorio activo.
Siempre se está en una unidad, que es la unidad activa, y en un directorio,
el directorio activo.
Para cambiar la unidad activa se escribe el nombre de la unidad activa seguida
de los dos puntos y se pulsa el retorno de carro.
3.6. Trayectorias absolutas, relativas y mixtas.
- Trayectoria absoluta: identifica un directorio o un fichero sin tener en
cuenta la unidad activa ni el directorio activo. Todo fichero y directorio tienen
una sola trayectoria absoluta. Se indica el nombre de la unidad, el nombre del
directorio y el nombre del archivo o subdirectorio deseado.
- Trayectoria relativa: depende de la unidad activa y del directorio activo.
Tiene dos partes: la imaginaria (que equivale a la unidad activa y al directorio
activo) y la real; uniéndolas se obtiene la trayectoria absoluta.
- Trayectoria mixta: ni es totalmente independiente de la unidad y directorio
activos ni es totalmente dependiente, depende de uno de los dos.
Una trayectoria completa puede tener como máximo 64 caracteres.
3.7. Atributos.
Permiten asociar a los archivos unas características especiales. Hay
4: de sistema, oculto, de sólo lectura y de archivo, además de
uno especial que indica que el objeto que lo tiene es un directorio.
Pueden estar activados o desactivados.
- De sólo lectura: (read-only). Sirve para proteger un fichero de forma
que sólo se pueda leer y no pueda borrarse ni modificarse.
- De archivo: (archive). Sirve para saber si se ha modificado o no un determinado
fichero. Se activa al crear un programa o modificarlo, aunque se puede desactivar.
Es muy útil para copias de seguridad.
- Oculto: (hidden). Sirve para esconder un fichero para evitar que sea procesado
por órdenes normales del DOS. No se puede borrar ni copiar y no aparece
al hacer un listado del contenido del directorio. Si el fichero es ejecutable
se podrá ejecutar sin problemas y si es un fichero de datos se podrán
visualizar.
- De sistema: (system). Sirve para identificar los ficheros propios del sistema,
usados para cargar el sistema operativo. Se puede activar en cualquier fichero
y este se comportará como un fichero oculto, pero no se pueden ejecutar.
- De directorio: atributo que indica al sistema que es un directorio; no se
puede modificar.
3.7.1. Visualización y modificación de atributos.
Para visualizar ficheros con atributos se usa la orden ATTRIB, que permite
visionar los ficheros con atributos del directorio actual, con el parámetro
/S permitirá visualizar los archivos de todos los subdirectorios.
Para cambiar atributos se usa la orden ATTRIB seguida del nombre del fichero
y el tipo de cambio que se desee:
+/- A: cambia el atributo de modificado.
+/- H: modifica el atributo de oculto.
+/- R: cambia el atributo de sólo lectura.
+/- S: modifica el atributo de sistema.
Otra forma de visualizar los ficheros con atributos es mediante la orden DIR
con el parámetro /A y seguido de la inicial del atributo del que se desee
el listado.
3.8. Comandos para el manejo de ficheros y directorios.
3.8.1. Comandos para directorios.
Existen varios comandos relacionados con el manejo de directorios en MS-DOS,
los más importantes son:
- MD nombre: Sirve para crear un directorio indicando el nombre. Es un comando
interno.
- RD nombre: Borra un directorio, que debe estar vacío. Es un comando
interno.
- DELTREE: Borra un directorio sin necesidad de que esté vacío.
Es un comando externo.
- DIR: Comando que permite visualizar el contenido de un directorio.
- CD: Comando que permite cambiar el directorio activo. Es un comando interno.
- TREE: Comando externo que presenta de forma gráfica la estructura
de directorios de una ruta de acceso; tiene dos parámetros(/F presenta
los nombres de los archivos que cada directorio comprende y /A indica que utilice
caracteres de texto en lugar de caracteres gráficos).
- MOVE: Comando que renombra directorios, excepto el directorio activo.
3.8.2. Gestión de archivos.
Los comandos más usuales para la gestión de archivos son los
que siguen:
- TYPE: Es un comando interno cuya función es mostrar el contenido de
un archivo de texto, no permite el uso de caracteres comodines.
- PRINT: Es un comando externo que imprime un archivo de texto por impresora.
Tiene cuatro parámetros (/T borra la cola de impresión y coloca
un archivo en impresora; /D permite indicar el puerto en el que está
situada la impresora; /Q permite indicar el tamaño de la cola; /U indica
el valor del tiempo a esperar si la impresora no está preparada).
- COPY: Es un comando interno que permite copiar archivos de un lugar a otro.
Tiene un sólo parámetro que es /V y sirve para controlar que la
copia del fichero se hace correctamente.
- MOVE: Permite copiar un fichero de un directorio a otro, borrándolo
del primero. Es un comando externo y tiene como único parámetro
de importancia /Y que indica que si el directorio destino no existe debe crearlo.
- RENAME: Es un comando interno que cambie el nombre de uno o varios archivos,
aunque no permite cambiar a otro directorio.
- DEL, ERASE: Comando interno que elimina los archivos especificados. Su parámetro
más importante es el /P que significa que debe pedir confirmación
antes de borrar un archivo.
- FC: Comando externo que permite comparar de dos formas distintas: con el
parámetro /B realiza una comparación binaria y con el parámetro
/L realiza una comparación línea a línea.
- UNDELETE: Permite recuperar ficheros previamente borrados con la orden DEL.
Es un comando externo y tiene tres parámetros interesantes (/LIST presenta
una lista de archivos recuperables, /ALL recupera todos los archivos sin pedir
confirmación y /DOS crea una lista de archivos eliminados por el DOS
y otra de archivos eliminados por otro motivo).
- XCOPY: Comando externo que permite copiar archivos y directorios. Tiene seis
parámetros importantes: /A copia archivos de origen que tengan atributo
de modificado; /M copia archivos de origen con atributo de modificado y lo desactiva;
/D:FECHA copia los archivos modificados en o después de la fecha indicada;
/P pide confirmación antes de realizar una copia; /S permite la copia
de subdirectorios a menos que estén vacíos y /E copia también
directorios vacíos.
- VERIFY (ON/OFF): Comando interno que le indica al sistema si debe comprobar
que los ficheros son escritos correctamente en el disco.
- DOSKEY: Comando externo residente en memoria que permite visualizar comandos
de MS-DOS introducidos anteriormente.
3.9.
Editores EDLIN y EDIT.
Un editor es un programa de tratamiento de texto con unas características:
- Trabaja en formato ASCII.
- Crea programas de pequeño tamaño.
- Sirven para modificar y crear ficheros ASCII y programas de un determinado
lenguaje de programación.
Hay dos grupos de editores:
- De línea: sólo trabajan con una línea por vez y sólo
se puede modificar la línea activa.
- De pantalla: visualizan el texto en pantallas de línea completa.
3.9.1. El editor EDLIN.
Es el editor de línea del MS-DOS.
Para entrar se escribe el nombre y se indica el archivo.
Todas las líneas van enumeradas y para tratar una habrá que poner
su número.
A partir de la versión 5.0 del DOS ha perdido vigencia y ha llegado
a ser sustituído por el EDIT.
Es un mandato interno.
3.9.2. El editor EDIT.
Es el editor vigente actualmente en el MS-DOS.
Es un mandato interno.
Para utilizar el editor EDIT es necesario que el archivo QBASIC.EXE resida
en el directorio actual o en el directorio especificado en la vía de
acceso de órdenes.
Dentro del EDIT es posible utilizar las opciones del menú para grabar
e imprimir el contenido del archivo actual.
4.
Ficheros Batch de proceso por lotes.
Son archivos de texto sin formato que contienen una sucesión de comandos
del DOS y cuya extensión suele ser .BAT.
Permite ahorrar tiempo ya que ejecuta varias órdenes a la vez.
Se crean con herramientas ASCII o a través del buffer de órdenes
gestionado por DOSKEY.
Se ejecutan poniendo su nombre y dándole al retorno de carro y se interrumpen
con Ctrl+Break.
4.1. Gestión de mensajes.
Hay tres tipos de mensajes en un fichero batch:
- Internos: Son los comentarios que introduce el usuario en el fichero para
explicar detalles de su funcionamiento.
- De llamada a una orden: Son los caracteres que se visualizan en pantalla
al llamar a una orden.
- De salida de una orden: Mensajes particulares que visualiza la orden durante
su ejecución.
Hay tres comandos que controlan los mensajes:
- ø: Sirve para evitar la salida por pantalla del mensaje de llamada
a una orden.
- ECHO(ON/OFF): Controla el eco de las órdenes de las órdenes
del DOS y muestra o no mensajes por pantalla.
- REM: Sirve para introducir comentarios.
4.2. Gestión de parámetros.
Los parámetros son valores que pueden o no ser opcionales y van detrás
de una orden.
Para gestionarlos se emplea % seguido de un número que va desde cero
a nueve (%0 hace referencia al programa que se está ejecutando, desde
%1 hasta %9 indica los parámetros que va a procesar el archivo batch.
4.3. Estructuras de control.
Hay órdenes que permiten alterar el proceso secuencial de ejecución
de un archivo:
- PAUSE: detiene temporalmente la ejecución de un fichero por lotes
hasta que se pulsa una tecla.
- GOTO: desvía el proceso de ejecución de un fichero por lotes
a otra parte del fichero.
- IF: desvía el proceso de ejecución según sea verdadera
o falsa una condición predeterminada.
- CHOICE: muestra en pantalla un mensaje deteniendo la ejecución de
un fichero y espera a que el usuario pulse una tecla. Activa un código
de salida según la tecla pulsada.
- FOR: Repite el mismo proceso un número determinado de veces.
- CALL: Llama a otro programa y lo ejecuta y cuando este termina vuelve al
programa original.
5.
La memoria, la gran estrella del MS-DOS.
5.1.
Direccionamiento de la memoria.
En los microordenadores las celdas de memoria tienen el tamaño de 1
byte (8 bits). La cantidad de memoria que puede utilizar un ordenador viene
dada por el tamaño del bus de direcciones del microprocesador. En los
microordenadores con bus de direcciones de 20 bits sólo se puede direccionar
un máximo de 1 MB. (Cada bit puede valer o ó 1, el máximo
de direcciones accesibles es 2 elevado a 20 = 1.048.576 bytes = 1.024 Kb = 1
MB.)
El tamaño directamente direccionable de memoria en MS-DOS es 1 MB, debido
al tamaño del bus de direcciones de los primeros ordenadores de 20 bits.
Se decidió al construir los ordenadores PC, que los primeros 640 Kb (memoria
convencional) fueran para el Sistema Operativo y los restantes 384 Kb (memoria
superior) se reservaron a la ROM y el hardware. Aunque los posteriores ordenadores
pueden direccionar bastante más de 1 Mb, el MS-DOS no los direcciona
directamente.
5.2. División de la memoria ROM y RAM.
- R.O.M. (Read Only Memory).- No volátil y de sólo lectura. Chip
con conexiones cortadas o hechas fijas de fábrica. Al pasar la corriente
por el mismo sitio tenemos la misma palabra. La información que almacena
es vital para la puesta en funcionamiento del sistema y sus funciones son: testear
la RAM, avisar sonoramente al usuario ante posibles fallos, iniciar la carga
del sistema operativo, configuración de la CMOS, ... . Esta memoria no
se puede borrar ni manipular, aunque existen "versiones" de esta memoria
que si lo permiten (memoria PROM - programable; memoria EPROM - borrable y reprogramable
y memoria EEPROM - borrable y programable).
- R.A.M. (Random Access Memory).- Volátil y de escritura y lectura.
De acceso aleatorio. Cuando se apaga el ordenador desaparece. Memoria de trabajo.
Más rápida que la ROM. Hay de dos tipos: la estática (que
retiene los datos mientras se le suministra corriente) o dinámica (que
va perdiendo los datos lentamente y es necesario refrescarlos).
5.3. Administradores de memoria existentes.
MS-DOS incluye dos administradores de memoria:
- HYMEM: proporciona acceso a la memoria extendida. El programa de instalación
del MS-DOS instalará automaticamente este controlador si se dispone de
un equipo 286 o superior.
- EMM386: proporciona acceso al área de memoria superior y permite usar
memoria extendida para simular memoria expandida. La manera más fácil
de instalar este controlador es mediante la ejecución del programa de
optimización de la memoria, llamado MemMaker.
El MS-DOS no incluye un administrador de memoria expandida debido a que la
tarjeta de memoria expandida requiere de su propio administrador de memoria.
5.4. Memoria en MS-DOS.
El DOS sólo es capaz de manejar un bus de direcciones de 20 bits por
lo que no puede direccionar más de 1 Mb de memoria.
5.4.1. La memoria físicamente.
El esquema de la memoria central es el siguiente:
El RMD o registro de dirección de memoria consta de dos celdas que indican
la fila y la columna de la posición de memoria deseada.
El RM o registro de memoria contiene de forma temporal la información
que se va a escribir o que se ha leído del mapa de memoria.
El MAPA DE MEMORIA es un conjunto de celdas donde se guarda la información.
Los CS o circuitos selectores son los encargados de activar la posición
de la fila y la columna indicados por el RDM.
5.4.2. Memoria Convencional
Son los primeros 640 K y se estableció su uso para la ejecución
de los programas del Dos. Es la memoria más importante y es conveniente
tener la mayor cantidad posible de esta memoria convencional.
De los 640 Kb no todos están libres, el sistema ocupa algunos:
- 2 kb están reservados por el sistema, que coloca el vector de interrupciones.
- 44 kb están ocupados por el núcleo del DOS.
- Las órdenes del CONFIG.SYS.
- Controladores de dispositivos.
- 3 kb los ocupa el COMMAND.COM.
- Programas residentes del usuario.
Todo lo que quede libre es memoria libre para el usuario.
5.4.3. Memoria Superior.
Son los 384 K comprendidos entre los 640k y los 1024 K y se estableció
su uso para cargar los programas de sistema, rutinas de inicialización
y control, memoria de vídeo, la Rom-bios, etc. Esta memoria se divide
en 6 segmentos de 64 k algunos de los cuales, al no estar utilizados se convirtieron
en los UMB. En los segmentos A y B se carga la Memoria de Vídeo, y en
el último (F) se carga la Rom-bios quedando libres los segmentos C, D,E.
Esta memoria también es conocida con el nombre de memoria reservada.
5.4.4. U.M.B. (Upper Memory Blocks).
A partir de la versión 5.0 es posible cargar en los segmentos centrales
de la memoria superior (C,D,E) y se empieza a cargar los controladores de dispositivos
(p.e. ratón) y programas residentes del Dos, liberando así memoria
convencional. Sólo a partir de los 386 y disponiendo de 1 Mb de RAM.
Cuando son ocupados estos bloques se conocen como bloques de memoria superior.
5.4.5. Memoria Extendida.
Es la que hay por encima de 1024Kb. Propia de los 286 o superiores ya que los
inferiores no pueden direccionar más de 1 Mb. El inconveniente de esta
memoria es que no se puede utilizar desde el Dos ya que sólo direcciona
1 Mb. Han ido surgiendo técnicas para acceder a esta memoria como Ramdrive.sys
que crea un 'disco duro' en memoria Ram.
Se define en el Config.sys mediante la instalación del driver Himem.sys
lo que además nos permite utilizar los 64 k de memoria alta de la que
hablaremos después.
5.4.6. Memoria Expandida (E.M.S.).
Fue el truco más importante para resolver el problema de memoria de
MS-DOS. Mediante esta el MS-DOS consigue utilizar hasta 32 Mb en cualquier tipo
de PC. Consiste en instalar chips de Ram en el ordenador y estos se configuran
como memoria expandida mediante unos interruptores en la placa madre o modificando
el setup.
La memoria que se configura como expandida deja de tener una posición
en el mapa de direcciones. La utilización de esta memoria se realiza
mediante un sistema llamado 'Mapeo'.
El Mapeo consiste en coger una página de 64 K contiguos de los segmentos
C,D o E de la memoria superior, lo que se denomina 'Marco de Página',
y se divide en 4 trozos de 16 K llamados 'páginas'. Se intercambia el
Marco de página por 4 páginas lógicas de la memoria expandida.
A esta acción se la denomina ' Mapeo'.
Los inconvenientes de este método son su velocidad al tener que mapear
páginas, la mayor complicación para el programador al no poder
utilizar datos contiguos en más de 64k o mejor de 16 k debido al intecambio.
Normalmente son programas largos los que utilizan la expandida.
La ventaja es que es un método totalmente independiente de la capacidad
del ordenador.
5.4.7. Memoria Alta (H.M.A.).
Son las primeras 64 Kb de direcciones de memoria extendida entre 1.024 Kb y
1.088 Kb definidas al instalarse Himem.sys. En esta memoria sólo se puede
cargar un programa. Normalmente se suele usar para cargar el núcleo de
MS-DOS.
Basado en el método del DOS para direccionar, el DOS construye una dirección
de 20 bits mediante dos n§ de 16 bits cada uno (segmento y desplazamiento).
El segmento hace referencia a un bloque aleatorio de 64 Kb y el offset indica
la celda exacta dentro de este bloque de 64 Kb; a esto se le llama direccionamiento
segmentado.
Los números se representan en hexadecimal y van separados por dos puntos.
Como con el segmento se puede direccionar hasta 1024 Kb, se puede emplear el
offset para conseguir 64 Kb más de memoria, llamada memoria alta y su
dirección sería la de FFFF:FFFF.
Esta memoria no se puede emplear en el 8088 ya que el bus de direcciones no
puede direccionar más de 20 bits.
5.4.8. Memoria extendida (XMS).
Memoria por encima de 1024 Kb y fuera del rango de direcciones del DOS.
Salió al mercado en 1988 y fue deesarrollada por Lotus, Intel, Microsoft
y AST.
. Es necesaria la presencia de un administrador de memoria extendida, como
HYMEM.SYS
Programas como MS-WINDOWS requieren memoria extendida.
5.4.9. Otros tipos de Memoria.
5.4.9.1. Memoria Shadow.
Es una técnica para optimizar la velocidad y consiste en traspasar las
rutinas Rom-Bios que están en la Rom a la memoria Ram de forma que el
sistema gana en velocidad. El EMM386 puede desactivar esta memoria en casos
muy especiales.
5.4.9.2. Memoria Caché.
No es una nueva memoria con dirección física propia, sino que
es la convencional, extendida o expandida que será utilizada por los
programas caché. Existen dos tipos de memoria caché:
1 - La de Disco: utiliza memoria Ram para almacenar aquellos sectores que se
utilizan con más frecuencia y no tener que ir a leerlos físicamente.
Se crea con los Buffers metiendo la información en memoria convencional.
La orden Smartdrv crea también caché de disco y permite hacerlo
con memoria convencional, extendida o expandida.
2 - La de Memoria: son memorias ultrarrápidas que permiten que se vayan
almacenando los datos más utilizados.
5.4.9.3. CMOS-RAM.
En los 286 o superiores existe un programa de configuración SETUP en
los que el usuario puede configurar las características generales del
ordenador. Fecha y hora, n§ y tipo de unidades de disquetes y disco duro,
ram instalada, ... . Esta información se almacena en la llamada Cmos-Ram
que sólo son 64 bytes almacenados en un chip motorola. La CMOS puede
ser manipulada para la optimización del sistema.
5.5. Carga del MS-DOS en memoria alta.
A partir de la versión 5.0 es posible cargar en memoria alta el núcleo
del sistema operativo.
Es necesario un ordenador 286 o superior.
Hay que realizar dos operaciones: cargar HYMEM.SYS e indicar que el núcleo
se cargará en memoria superior con la orden DOS=HIGH.
Además del núcleo también los buffers se cargan en memoria
alta (caben hasta 45 buffers en los 20 Kb que quedan en memoria alta tras cargar
el núcleo de 44 Kb)
5.6. Convertir memoria extendida en expandida.
En los 386 ya es posible cargar EMS mediante XMS, mediante un controlador llamado
EMM386.EXE que tiene dos funciones:
- Convertir memoria extendida en expandida.
- Gestionar los bloques de memoria superior.
Hay dos métodos de conversión:
- Estático: que toma memoria extendida como expandida hasta que se apaga
el ordenador. En la versión 5.0 de MS-DOS sólo se permite este
método.
- Dinámico: Crea una especie de memoria dinámica sin configurar
que se empleará como memoria extendida o expandida según las necesidades.
Si un programa puede emplear tanto memoria extendida como expandida es conveniente
que emplee memoria extendida.
5.7. Cargar programas en memoria superior.
DOS permite cargar controladores de dispositivos y programas residentes en
bloques de memoria superior. Para crear bloques se necesita un 386 como mínimo
y 384 Kb de memoria extendida y seguir los pasos siguientes:
- Instalar HYMEM.SYS.
- Instalar EMM386.EXE con los parámetros NOEMS o RAM, que permite crear
bloques de memoria superior.
- Activar DOS=UMB, para indicarle al sistema que puede emplear memoria superior.
- Cargar controladores de dispositivos con DEVICEHIGH.
- Cargar programas residentes con LOADHIGH.
5.8. Incrementación de la memoria disponible.
Pueden surgir problemas de ejecución de programas si la memoria disponible
es muy justa o insuficiente, por lo que conviene optimizar al máximo
la gestión de la memoria.
Para ver el estado de la memoria de un ordenador basta con ejecutar la orden
mem, que presenta un resumen de la configuración de memoria de un sistema,
indicando la cantidad de los tipos de memoria disponible y la cantidad ocupada.
5.8.1. Aumento de la memoria convencional.
La mayoría de programas requieren memoria convencional para poder ejecutarse.
Si un programa no puede ejecutarse y el sistema muestra un mensaje advirtiendo
de la falta de memoria, posiblemente el problema radique en que no haya suficiente
memoria convencional.
Existen varias maneras de aumentar la memoria convencional:
- Ejecutar MS-DOS en el área de memoria alta si el PC tiene memoria
extendida.
- Simplificar los archivos CONFIG.SYS Y AUTOEXEC.BAT para que no coloquen programas
residentes en memoria que sean innecesarios.
- Si el equipo del que se dispone es un 386 o superior se podrá ejecutar
el programa MEMMAKER que transfiere controladores de dispositivos y otros programas
residentes en memoria desde la memoria convencional al área de memoria
superior.
- Ejecutar el MS-DOS en el área de memoria alta.
5.8.2. Aumento de la memoria extendida.
Si no está activada la memoria extendida, habrá que cargar los
controladores de esta memoria en el archivo CONFIG.SYS, como controlador válida
suele emplearse el administrador de memoria extendida HIMEM.SYS.
Si la memoria extendida está activada pero es empleada por completo:
- Reducir la memoria extendida asignada a cada programa que emplee esta memoria,
la cantidad de memoria se indica en los archivos CONFIG.SYS o AUTOEXEC.BAT.
- Si el CONFIG.SYS contiene una línea de comandos para el controlador
EMM386 que no incluya el modificador de noems, colocarle el modificador min=0,
esto provocará que al arrancar el sistema no se reserve memoria extendida
para ser utilizada como memoria expandida simulada (aunque si un programa necesitase
de esta memoria, EMM386 podría proporcionar memoria expandida a aquellas
aplicaciones que lo solicitasen).
- Si se está utilizando RAMDrive (que crea una unidad RAM con cierta
cantidad de memoria y la trata como espacio en disco), conviene cambiar a SMARTDrive
(que instala un caché de disco que reduce el número de operaciones
de lectura y escritura a base de introducir información en la memoria
RAM). Para agregar SMARTDrive basta con agregar el comando smartdrv al final
del archivo AUTOEXEC.BAT.
- Si MS-WINDOWS no se inicia debido a que no hay suficiente memoria extendida
disponible, hay que desactivar la línea de comandos para EMM386 y dos=high
en el archivo CONFIG.SYS.
5.8.3. Aumento de la memoria expandida.
Algunos programas requieren memoria expandida adicional para poder ser ejecutados.
Si surgen problemas de este tipo, he aquí posibles soluciones:
- Asegurarse que esta memoria esté activa, con el controlador EMM386
en el CONFIG.SYS.
- Si se está empleando EMM386 con el modificador noems, no habrá
memoria expandida disponible, para evitar esto bastaría con cambiar este
modificador por el de ram en el CONFIG.SYS.
- Si CONFIG.SYS o AUTOEXEC.BAT inician programas que emplean memoria expandida,
reducir la cantidad de memoria expandida asignada a cada programa. Para hacer
esto es necesario consultar la documentación que acompaña a cada
programa.
6. Arquitectura.
6.1.
Dispositivos.
El MS-DOS gestiona cinco dispositivos:
- Consola
- Puertos paralelos
- Puertos serie
- Comando nulo
- Dispositivo de reloj
6.1.1. Consola.
La consola está formada por elementos unidireccionales.
El teclado es empleado para la entrada de datos y el monitor para la salida
de estos.
Su nombre lógico es CON.
6.1.2. Puertos paralelos.
Son puertos bidireccionales y se llaman paralelos porque transmiten byte a
byte.
Normalmente se utilizan para la impresora.
El standard en puertos paralelos ha de cumplir la especificación Centronics.
El MS-DOS puede reconoces tres puertos paralelos:
- PRN o LPT1
- LPT2
- LPT3
6.1.3. Puertos serie.
Son puertos también bidireccionales pero transmites bit a bit.
Son los más versátiles y polivalentes y se utilizan para conectar
dispositivos de entrada como pueden ser ratones, modems, scanners, ...
Siguen el standard RS-232C, que en los AT suele tener 9 pins y en los XT 25
pins.
El MS-DOS puede soportar hasta nueve puertos serie.
6.1.4. Dispositivo NUL.
Sirve para desviar mensajes del DOS.
6.1.5. Reloj.
El DOS asume que existe un reloj y se le referencia por CLOCK$.
6.2. Configuración de los dispositivos.
La importancia de estos dispositivos es que pueden usarse en el sistema operativo.
Hay tres comandos que permiten usarlos:
- MODE
- CTTY
- COPY
6.2.1. MODE.
Podría resultar útil o necesario cambiar los datos de los dispositivos,
estos datos se configuran con la orden MODE.
- Configuración de la velocidad del teclado:
MODE CON RATE = n DELAY = m (donde n es la velocidad de repetición y
m el retraso)
- Configuración del monitor:
MODE tipo(,numlineas) (donde tipo indica las columnas y numlineas indica el
número de líneas.
- Configuración de puertos paralelos:
MODE LPTn (COLS = m) (LINES =n) (donde n es el n§ de puerto paralelo,
m es el número de columnas -80 ó 132- y ñ es el número
de líneas -6 ó 8).
- Configuración de puertos serie:
MODE COMn (BAUD = m) (donde n es el puerto serie deseado y m la velocidad de
transmisión).
6.2.2. CTTY.
Este comando permite cambiar el dispositivo standard de entrada/salida a otro
dispositivo válido de e/s.
Su sintaxis es:
CTTY periférico
donde periférico es el nombre lógico del dispositivo: LPTn, COMn,
CON, ...
p.e. ctty LPT1 traspasaría el dispositivo de e/s desde la consola al
dispositivo asociado al puerto paralelo y para devolver como dispositivo de
e/s al teclado y la pantalla se debería emplear ctty CON.
Es un mandato interno.
6.3. Redireccionamiento.
Todos los programas que procesan datos tienen asociado un dispositivo de entrada
y uno de salida.
MS-DOS soporta tres símbolos de redireccionamiento para cambiar está
entrada o salida:
- <: redireccionamiento de entrada.
- >: redireccionamiento de salida.
- >>: redireccionamiento de salida con adición.
Donde el redireccionamiento de entrada indica al ordenador que en lugar de
entrar datos por teclado lo haga por otro camino; el redireccionamiento de salida
lo que hace que en lugar de salir datos por pantalla salgan por otro dispositivo
y el redireccionamiento con adición dirige la salida a un fichero ya
existente y escribe a continuación de lo que hay sin machacarlo.
6.4. Filtros.
El DOS permite aplicar filtros a sus comandos y órdenes mediante el
símbolo de tubería o pipeline (|), aunque sólo hay tres
órdenes que lo admiten:
- MORE: que todo lo que recibe lo almacena en un fichero temporal y lo va mostrando
pantalla a pantalla, haciendo una pausa intermedia.
- SORT: recibe un conjunto de datos y los devuelve ordenados según el
primer carácter de la fila.
- FIND: busca una cadena de caracteres en un fichero.
7.
Gestión de las unidades de disco.
7.1.
Estructura física de un disco.
Un disco es un conjunto de circunferencias concéntricas, donde cada
circunferencia en una pista subdividida en sectores y todas las pistas tienen
los mismos sectores, aunque sean pistas de diferente tamaño.
Los discos duros tienen entre cuatro y veinte caras y en lugar de pistas se
habla de cilindros (que es el conjunto de un mismo número de pista en
todas las caras). Los disquetes tienen 80 pistas.
El n§ de sectores por pista en un disquete define la densidad del disco
y normalmente un sector contiene 512 bytes.
7.2. Estructura lógica de un disco.
La estructura lógica de un disco se crea con el formateo del mismo,
que divide el disco en cuatro zonas:
- Sector de arranque.
- FAT.
- Directorio raíz.
- Datos del usuario.
El MS-DOS no entiende más que de clusters y no de sectores. Un cluster
es un conjunto de uno o más sectores consecutivos y el n§ de sectores
tiene que ser potencia de 2.
- Sector de arranque: Se localiza en el sector cero del disco y ocupa un sólo
sector. Tiene un programa que permite cargar DOS en memoria. Guarda información
relativa al disco.
- FAT: (file allocation table) Da a conocer al sistema operativo que ficheros
contiene y en que sectores. Es una tabla en la que cada posición de la
misma indica el estado de cada cluster del disco; cada cluster puede tener uno
de estos tres valores:
- 0 indica que el cluster está vacío
- el gusanillo que indica que es el último clúster del fichero
- cualquier otro valor indica el siguiente cluster de un fichero.
- Directorio raíz: Ocupa un número fijo de sectores, justo detrás
de la fat. Para cada entrada de elemento del directorio raíz tenemos
32 bits (nombre, extensión, tamaño, fecha, atributos y cluster
de comienzo). Para cada subdirectorio existe una tabla de fat. Está limitado
(en disco duro a 32 sectores y en disquete a 7 sectores).
- Datos del usuario: resto del disco (+/- un 98% del disco).
7.2.1. Funcionamiento de la F.A.T.
Como antes hemos indicado, la fat es la encargada de indicar al sistema operativo
que ficheros contiene y como los contiene ya que los ficheros pueden estar completamente
particionados en cuanto a su almacenamiento se refiere.
Cuando el sistema operativo busca un fichero lo que hace es encontrar en el
directorio activo la entrada del archivo, coge el cluster de inicio del fichero
y lo lee y examina en la fat el valor de la posición obtenida, si no
es un gusanillo (que indica que es el último cluster del fichero), irá
a la posición indicada ya que es la siguiente parte del fichero, y así
sucesivamente hasta que encuentre el caracter de fin de fichero.
7.2.2. Particiones de un disco duro.
Una partición es una división lógica del disco duro que
permitirá la existencia de ficheros independientes uno de otro. No se
puede hacer sobre disquetes.
Un disco duro tiene que tener por lo menos una partición y como máximo
cuatro, una de ellas activa y será de la que arranque el ordenador.
Aunque MS-DOS soporte cuatro particiones, realmente sólo acepta dos:
- Partición primaria: es obligatoria y contiene el sistema operativo,
es la partición activa y se designa por una sola letra.
- Partición extendida: Sirve para separar el disco en unidades lógicas,
que no son realmente particiones. Es opcional.
Con el comando FDISK se pueden visualizar las particiones existentes y modificarlas
o eliminarlas.
7.2.3. Formateo de un disco.
Siempre hay que formatear un disco antes de emplearlo por primera vez.
Un formateo consiste en preparar un disco para que el MS-DOS pueda utilizarlo
para almacenar archivos, borrando todos los datos existentes en el disco.
Sintaxis: FORMAT unidad: /Q /U /S /V:etiqueta /F:tamaño
donde unidad indica la unidad a formatear, q indica que se desea un formateo
rápido, u indica que no se desea un formateo completo, s indica que se
copien los archivos de arranque del sistema después de formatear el disco,
v:etiqueta permite indicar la etiqueta que se desea dar al disco y f:tamaño
permite avisar del tamaño al que debe formatear el disco.
7.2.4. àrdenes relacionadas con discos.
- SYS: transmite el sistema operativo a un disquete formateado.
- DISKCOPY: permite copiar un disquete a otro, aunque sólo sirve para
disquetes iguales.
- DISKCOMP: permite comparar dos disquetes sector por sector. Los disquetes
deben ser iguales.
- CHKDSK: comprueba la integridad de los datos almacenados en el disco.
- DEFRAG: defragmenta y optimiza el disco, almacenando los ficheros en clusters
secuenciales, lo que optimiza el rendimiento del sistema. Es un comando externo.
- SCANDISK: comprueba la integridad de los datos almacenados basándose
en el estado del disco que almacena estos datos.
8. Copias de seguridad.
8.1.
Realizar copias de seguridad.
Se aconseja realizar copias de seguridad de los ficheros más importantes
de una forma periódica.
Se suelen hacer de noche ya que necesita que no haya ningún programa
en marcha.
En MS-DOS versión 6 hay dos programas de copias de seguridad, uno para
windows y otro para DOS, las dos versiones son idénticas y totalmente
compatibles.
La primera vez que se desee emplear el backup el sistema nos indicará
que primero debe ser configurado y realizar la prueba de compatibilidad para
saber si realiza copias correctas y consiste en detectar el hardware instalado
y realizar una copia de seguridad y comprobar que está copia es correcta.
Hay tres tipos de copias de seguridad:
- completa
- diferencial
- progresiva
Si se empieza con copia diferencial deberán realizarse copias diferenciales
hasta la siguiente copia completa, exactamente igual que con copias progresivas.
8.1.1. Copia de seguridad completa.
También llamada full backup.
Realiza una copia de todos los ficheros seleccionados y se suele hacer sobre
conjuntos muy grandes de archivos.
Cada vez que se realiza da comienzo un ciclo de copias de seguridad que no
finalizará hasta que se realice otra copia completa de los archivos.
8.1.2. Copia de seguridad diferencial.
En este tipo se copian exclusivamente aquellos ficheros que han sufrido cambios
desde la copia de seguridad completa; siempre copia si se sufrieron cambios
en la copia completa, de tal forma que cada vez que se haga esta copia diferencial
se copiarán los ficheros modificados desde la completa, aunque ya se
hubieran copiado en una diferencial anterior.
8.1.3. Copia de seguridad progresiva.
También conocida como incremental backup.
La primera vez que se ejecuta copia las diferencias respecto a la copia completa,
las siguientes veces sólo copia las modificaciones existentes desde la
última copia progresiva.
8.1.4. Criterios para elegir estrategia.
Si se trabaja habitualmente con los mismos ficheros conviene usar la copia
diferencial, por el contrario si se emplean distintos ficheros conviene realizar
copias progresivas (que son más útiles si se desean conservar
todas las versiones de un mismo archivo).
8.2. Ficheros de especificaciones.
Las copias de seguridad se basan en los ficheros de especificaciones cuya misión
es almacenar la configuración activa del programa en un momento determinado.
Un fichero de especificaciones guardan datos acerca de:
- lista de ficheros afectados por las copias de seguridad.
- opciones generales del programa de backup.
- unidad donde se realiza la copia de seguridad.
- tipo de copia a utilizar.
- operaciones de compresión, verificación, ...
8.3. Catálogos de copias de seguridad.
Cada vez que se realice una copia de seguridad se crea un catálogo,
que es un fichero con información de los ficheros que resultan afectados
por la copia de seguridad, tal como;
- estructura
- tamaño
- fecha de la copia
- atributos de los ficheros
- nombre del fichero de especificaciones
- ...
Se guarda en dos sitios, en el último disquete de la copia y en el disco
duro.
Su extensión indica el tipo de copia de seguridad (.FUL, .INC, .DIF).
8.4. Catálogos maestros.
Catálogos asociados con un fichero de especificaciones.
Tienen extensión .CAT y el mismo nombre que el fichero de especificaciones.
Contienen el nombre de los catálogos individuales que se han empleado.
9.
MS-WINDOWS.
El MS-DOS soporta una nueva capa de software de sistema que permite a los usuarios
interactuar con varios programas a la vez y permite el empleo de una forma gráfica,
este software es el MS-WINDOWS.
Este software crea una ventana en la pantalla para cada programa que esté
activo. Usando un ratón el usuario mueve el puntero a una ventana particular
para interactuar con el programa que se está ejecutando en esa ventana.
La ventana puede cambiarse de tamaño o moverse por la pantalla, disponiéndose
las distintas ventanas abiertas en la forma en que se desee.
Los programas que se ejecutan bajo MS-WINDOWS disponen de interfaces de usuario
standard y utilizan menús desplegables.
Los datos pueden transferirse de un programa a otro.
REALIZADO POR BERNARDO PIÑA VELTMAN.
Pep Cardona. Junio 1996. Palma de Mallorca.