
Páginas
: intro 1 2 3 4 5 6 7 8 9 10 11
(capítulos 8 y 10 no disponibles online)
9. LOS
SUBSISTEMAS DE ENTORNO
9.1 EL ENTORNO
MS-DOS
9.2
EL ENTORNO WINDOWS 16 BITS
9.3 EL SUBSISTEMA
WIN 32
9. LOS SUBSISTEMAS
DE ENTORNO
Windows NT está dise ado para permitir a diferentes
tipos de aplicaciones ejecutarse correctamente en el
mismo escritorio gráfico. Se pueden ejecutar
aplicaciones escritas para otros sistemas operativos
y API´s(41) existentes,
por ejemplo MS-DOS, OS/2 1.x, Windows 3.xx, POSIX y
Win32.
Windows NT soporta los diferentes tipos de aplicaciones
a través del uso de SUBSISTEMAS DE ENTORNO, que
SON PROCESOS WINDOWS NT QUE EMULAN DIFERENTES ENTORNOS
DE SISTEMAS OPERATIVOS.
Cada subsistema se ejecuta como un proceso
independiente en modo usuario, con cada subsistema
protegido de los errores que puedan aparecer en los
otros subsistemas de entorno si los hubiere. Las aplicaciones
son también procesos en modo usuario, por lo
que no pueden afectar a ningún subsistema o al
Executive de Windows NT.
Para que quede más claro: si por ejemplo necesitamos
ejecutar una aplicación dise ada para Windows
3.1 bajo Windows NT, lo que hace NT es "crear"
en una zona de memoria, bajo modo usuario, una emulación
de PC con Windows 3.1. Cuando ha creado el PC con Windows
3.1 lo que hace es colocar en otra zona de memoria,
también en modo usuario, la aplicación
a ejecutar bajo esa emulación de Windows 3.1.
De esta forma, estando tanto el sistema operativo emulado
y la aplicación asociada en modo usuario, Windows
NT se asegura de que ninguno de ellos interfiere con
otro entorno o aplicación que haya en memoria,
ya que los tiene plenamente "vigilados" con
su Micronúcleo y Administrador de Procesos.

9.1 EL ENTORNO
MS-DOS
Las aplicaciones basadas en MS-DOS se ejecutan en
Windows NT en un proceso llamado Máquina DOS
Virtual NT o NTVDM (NT Virtual DOS Machine).
NTVDM es una aplicación Windows de 32 bits
que simula un ordenador 486 ejecutando MS-DOS. Cada
aplicación MS-DOS se ejecuta en un proceso separado.
Se pueden ejecutar infinidad de procesos NTVDM ya que
cada uno se localiza en su propio rango de direcciones
de memoria. Esta protección de direcciones de
memoria (aportada por el Administrador de Procesos)
permite proteger a las aplicaciones unas de las otras
y la los procesos NTVDM´s de ellas mismas y del
resto del sistema operativo.
En caso de que Windows NT se esté ejecutando
en un ordenador basado en un procesador 486 o superior
(plataforma x86), lo que NT hace es colocar el proceso
en memoria y ejecutarlo directamente, es decir, se ahorra
la emulación de la máquina 486. De esta
forma el proceso MS-DOS se ejecuta directamente, excluyéndose
sólamente las operaciones de E/S, que deben ser
emuladas para poder comunicarlas con Windows NT Executive).
En caso de que Windows NT se esté ejecutando
en una máquina RISC, la emulación en memoria
de la máquina 486 se convierte en obligatoria
ya que la plataforma RISC es incompatible con los programas
dise ados para plataformas x86.

9.2 EL ENTORNO
WINDOWS 16 BITS
Las aplicaciones Windows 16 bits también
se ejecutan en una NTVDM(42)
(Máquina DOS virtual en NT). Al igual que ocurre
con aplicaciones DOS, Windows NT emula una máquina
486 para ejecutar estos programas en una máquina
RISC.
Windows NT ejecuta las aplicaciones Windows 16 bits
como subprocesos de un único proceso NTVDM con
un espacio de direcciones compartido (todos los procesos
tienen acceso a todas las direcciones del proceso NTVDM).
LA NTVDM Win 16 es un proceso dividido en subprocesos
donde cada uno de ellos es una aplicación Windows
de 16 bits. Este proceso único es multitarea.
Esta característica permite, en un equipo con
varios procesadores, la ejecución de un proceso
de la NTVDM Win 16 (una aplicación Win 16) junto
con subprocesos de otros procesos que haya en ejecución.
Para que quede más claro: es posible ejecutar
a la vez una aplicación Windows 16 bits junto
con subprocesos de otros procesos que haya en memoria,
ya sean Win NT , MS-DOS o Win 16.
Para profundizar un poco más: ya sabemos que
se puede ejecutar una aplicación Win 16 junto
con subprocesos de otros procesos que haya en memoria.
Pues bien, NO se ejecuta al completo toda la aplicación
junto con los mencionados subprocesos. Lo que hace Windows
NT es compartir la ejecución de un subproceso
de la aplicación Win 16 junto con los demás
subprocesos ya mencionados. De esta forma, sólo
un subproceso de la aplicación Win 16 se está
compartiendo con los restantes subprocesos. Windows
NT se encargará de ejecutar por medio de prioridades
el resto de los subprocesos de la aplicación
Win 16.

9.3 EL SUBSISTEMA
WIN 32
Win32 es el subsistema de entorno nativo de Windows
NT. Antes de la versión 4.0 este subsistema incluía
gráficos, gestión de ventanas, soporte
de mensajes en formato ventana y controladores gráficos.
Ahora estas funciones se han movido hacia Windows NT
Executive para ejecutarlas en modo núcleo. El
resto de las funciones de Win32 (en modo usuario) conocidas
como LA CONSOLA y FUNCIONES DE ENTORNO MISCELANEAS soportan
aplicaciones Windows de 32 bits:
- La consola proporciona soporte de ventanas
de texto, cierre del sistema y gestión de errores
(pantalla azul de detención del núcleo).
- Las funciones de entorno misceláneas
constan de funciones especializadas para las aplicaciones
Windows de 32 bits, tales como crear y borrar procesos
Para resumir Win32 diremos que Windows NT se divide
en dos partes: Windows NT Executive (la parte en modo
núcleo) y el subsistema Win32 (la parte en modo
usuario).

(41)CADA SISTEMA OPERATIVO POSEE UN CONJUNTO
DE API´s EXISTENTES PARA COMUNICAR EL NUCLEO DE
DICHO SISTEMA OPERATIVO CON LAS APLICACIONES QUE HAYA
EN MEMORIA. LAS API´s, POR TANTO, SON DIFERENTES
EN CADA SISTEMA OPERATIVO.(Pulsa atrás en el
navegador)
(42)La NTVDM Win 16 también es conocida
como WOW, de Win 16 On Win 32.(Pulsa atrás en
el navegador)
|