Windows NT

3.4302158273077 (695)
Publicado por daryl 21/04/2009 @ 12:10

Tags : windows nt, windows, sistema operativo, informática, tecnología

últimas noticias
Windows 7, preparado para borrar el rastro de Vista - Público
Menudo artículo; pura propaganda. Para empezar, el nombre es falso. Windows 7 ni es Windows ni es 7. Su verdadero nombre es Windows NT 6.1; lo que significa que es un Vista ligeramente mejorado. Ah, y en cuestión de seguridad dicen que es peor....
Virus informáticos en hospitales públicos - soitu.es
Las computadoras que controlan cosas como por ejemplo los monitores de las máquinas que realizan resonancias magnéticas, son muy antiguas y ejecutan Windows NT y Windows 2000 en una red local que se supone no tiene acceso a Internet....
Descarga Windows Virtual PC y Windows XP Mode - Geekets
Entre los sistemas operativos preconfigurados se encuentran Windows 98, NT, 2000, 2003, XP, Vista y OS/2. Y aunque la virtualización de sistemas operativos os parezca algo raro suele ser bastante utilizada cuando estas desarrollando aplicaciones (para...
Windows 7 RC, es vulnerable a una falla antigua. - Xombra.com
En antiguas versiones de Windows como son NT, 2000, XP o Vista, el explorador de archivos de Windows (explorer) ocultaba las extensiones de archivo para aquellos documentos con extensiones "conocidas" por el sistema. Esto permitía a los desarrolladores...
Fallo de seguridad en Windows 7 RC - islaBit
En antiguas versiones de Windows NT, 2000, XP o Vista, el explorador de archivos de Windows ocultaba las extensiones de archivos para aquellos documentos con extensiones conocidas por el sistema. Esto permitía a los hacker o los programadores de virus...
Gestión integral de la seguridad en TI - DealerWorld
Según la firma de seguridad F-Secure, a pesar de los esfuerzos de Microsoft por hacer de Windows 7 un sistema operativo seguro, expertos de esta compañía destacan que sigue arrastrando deficiencias en este aspecto. Entre algunas de las deficiencias que...
Software libre en las administraciónes públicas del mundo - Somos Libres
Las Fuerzas Armadas suecas han tomado la decisión de migrar sus servidores desde Windows NT a Red Hat Enterprise Linux. Según el plan, las Fuerzas Armadas suecas comenzarán el reemplazando de Windows NT por Red Hat Enterprise Linux desde el núcleo de...
MICRO FOCUS ACTUALIZA SU SOLUCIÓN LIANT - Computing.es
La línea de producto Liant RM/COBOL de Micro Focus incluye herramientas integradas que permiten a las organizaciones mantener un único set de fuentes que utilizan las aplicaciones para llegar a plataformas como Unix y Windows NT....
Q. Can I have Windows NT 4 BDC's in my Windows 2008 and Server ... - Windows IT Pro
You can have NT 4 BDCs (but never NT 4 PDCs) in Windows 2000 and Windows Server 2003 domains, but starting with Server 2008 domain controllers (DCs) there can't be any NT 4 BDCs in the domain if you add a Server 2008 DC. Windows 2000 and Server 2003...
Jay Miner : El padre del Commodore Amiga - FayerWayer
En comparación, los usuarios de IBM PC sólo la conocieron con Linux en el año 91 y mas tarde con Windows NT. El chip de video era capaz de manejar 32 colores de una paleta de 4096 a una resolución de 320×200, o incluso más si se sacaba provecho a las...

Windows NT

Windows NT (Nueva Tecnología) es una familia de sistemas operativos producidos por Microsoft, de la cual la primera versión fue publicada en julio de 1993. Al principio fue diseñado para ser un poderoso sistema operativo multiusuario, basado en lenguaje de alto nivel, independiente del procesador, con rasgos comparables con Unix. Su intención fue la de complementar las versiones de consumidor de las Windows que estaban basadas en el MS-DOS. NT era la primera versión totalmente en 32 bits de Windows, mientras que sus colegas orientados al consumidor, Windows 3.1x y Windows 9x, eran de 16-bit/32-bit híbridos. Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows Home Server y Windows 7 están basados sobre el sistema de Windows NT, aunque ellos no estén marcados como Windows NT.

Previamente a la aparición del famoso Windows 95 la empresa Microsoft concibió una nueva línea de sistemas operativos orientados a estaciones de trabajo y servidores de red. Un sistema operativo con interfaz gráfica propia, estable y con características similares a los sistemas de red UNIX. Las versiones publicadas de este sistema son: 3.1, 3.5, 3.51 y 4.0. Además, Windows NT se distribuía en dos versiones, dependiendo de la utilidad que se le fuera a dar: Workstation para ser utilizado como estación de trabajo y Server para ser utilizado como servidor.

Cuando el desarrollo comenzó en noviembre de 1988, Windows NT (usando modo alterado) fue conocido como OS/2 3.0, la tercera versión del sistema operativo desarrollado en conjunto entre Microsoft e IBM. Adicionalmente al trabajo de las tres versiones de OS/2, Microsoft continuó desarrollando paralelamente un ambiente Windows basado en DOS y con menos demanda de recursos (usando modo real). Cuando Windows 3.0 fue liberado en mayo de 1990, fue tan exitoso que Microsoft decidió cambiar la API por la todavía no liberada NT OS/2 (como era conocida) de una API de OS/2 a una API extendida de Windows. Esta decisión causó tensión entre Microsoft e IBM, y la colaboración se vino abajo. IBM continuó el desarrollo de OS/2 por su cuenta, mientras Microsoft continuó trabajando en el recién nombrado Windows NT.

Microsoft contrató a un grupo de desarrolladores de Digital Equipment Corporation liderados por Dave Cutler para construir Windows NT, y muchos elementos que reflejan la experiencia de DEC con los VMS y RSX-11. El SO fue diseñado para correr en múltiples arquitecturas, con el núcleo separado del hardware por una capa de abstracción de hardware. Las APIs fueron implementadas como subsistemas por encima de la indocumentada API Nativa; esto permitió la futura adopción de la Windows API. Originalmente un micronúcleo fue diseñado, subsecuentes liberaciones han integrado más funciones para mejorar el rendimiento del núcleo. Windows NT fue el primer sistema operativo en usar Unicode internamente.

La familia de los sistemas operativos Windows NT de Microsoft está constituida por versiones como Windows Vista, Windows Server 2003, Windows XP, Windows 2000 y Windows NT. Todos tienen multitarea apropiativa y son sistemas operativos reentrantes que han sido diseñados para trabajar tanto con ordenadores con un sólo procesador como ordenadores de multiprocesamiento simétrico que en inglés es el Symmetrical Multi Processor o SMP. Para procesar las peticiones de entrada/salida (en inglés Input/Output, I/O) acude a una dirección de paquetes de E/S que utiliza peticiones (IRPs) y E/S asíncrona. A partir de Windows XP, Microsoft comenzó a desarrollar sistemas operativos que soportaban 64-bits. Antes sus sistemas operativos estaban basados en un modelo de 32-bits.

El modo núcleo de la línea de Windows NT está compuesto por subsistemas capaces de pasar peticiones de E/S a los drivers apropiados usando el gestor de E/S. Dos subsistemas crean la capa del modo usuario de Windows 2000: el subsistema de Entorno (ejecuta aplicaciones escritas para distintos tipos de sistemas operativos), y el subsistema Integral (maneja funciones específicas de sistema de parte del subsistema de Entorno). El modo núcleo en Windows 2000 tiene acceso total al hardware y a los recursos del sistema del ordenador. El modo núcleo impide a los servicios del modo usuario y las aplicaciones acceder a áreas críticas del sistema operativo a las que no deberían tener acceso.

El Executive se relaciona con todos los subsistemas del modo usuario. Se ocupa de la entrada/salida, la gestión de objetos, la seguridad y la gestión de procesos. El núcleo se sitúa entre la Capa de Abstracción de Hardware y el Executive para proporcionar sincronización multiprocesador, hilos y programación y envío de interrupciones, y envío de excepciones.

El núcleo también es responsable de la inicialización de los drivers de dispositivos al arrancar. Hay tres niveles de drivers en el modo núcleo: drivers de alto nivel, drivers intermedios y drivers de bajo nivel. El Modelo de Drivers de Windows (en inglés Windows Driver Model, WDM) se encuentra en la capa intermedia y fue diseñado principalmente para mantener la compatibilidad en binario y en código fuente entre Windows 98 y Windows 2000. Los drivers de más bajo nivel también son un legado de los drivers de dispositivos de Windows NT que controlan directamente un dispositivo o puede ser un bus hardware PnP.

El modo usuario está formado por subsistemas que pueden pasar peticiones de E/S a los drivers apropiados del modo núcleo a través del gestor de E/S (que se encuentra en el modo núcleo). Dos subsistemas forman la capa del modo usuario de Windows 2000: el subsistema de Entorno y el subsistema Integral.

El subsistema de entorno fue diseñado para ejecutar aplicaciones escritas para distintos tipos de sistemas operativos. Ninguno de los subsistemas de entorno puede acceder directamente al hardware, y deben solicitar el acceso a los recursos de memoria a través del Gestor de Memoria Virtual que se ejecuta en modo núcleo. Además, las aplicaciones se ejecutan a menor prioridad que los procesos del núcleo. Actualmente hay tres subsistemas de entorno principales: un subsistema Win32, un subsistema OS/2 y un subsistema POSIX.

El subsistema de entorno Win32 puede ejecutar aplicaciones Windows de 32-bits. Contiene la consola además de soporte para ventanas de texto, apagado y manejo de errores graves para todos los demás subsistemas de entorno. También soporta Máquinas Virtuales de DOS (en inglés, Virtual DOS Machine, VDM), lo que permite ejecutar en Windows aplicaciones de MS-DOS y aplicaciones de 16-bits de Windows 3.x (Win16). Hay una VDM específica que se ejecuta en su propio espacio de memoria y que emula un Intel 80486 ejecutando MS-DOS 5. Los programas Win16, sin embargo, se ejecutan en una VDM Win16. Cada programa, por defecto, se ejecuta en el mismo proceso, así que usa el mismo espacio de direcciones, y el VDM de Win16 proporciona a cada programa su propio hilo de ejecución para ejecutarse. Sin embargo, Windows 2000 permite a los usuarios ejecutar programas Win16 en una VDM de Win16 separada, lo que permite al programa ser una multitarea prioritaria cuando Windows 2000 ejecute el proceso VDM completo, que contiene únicamente una aplicación en ejecución. El subsistema de entorno de OS/2 soporta aplicaciones de 16-bits basadas en caracteres y emula OS/2 1.x, pero no permite ejecutar aplicaciones de 32-bits o con entorno gráfico como se hace en OS/2 2.x y posteriores. El subsistema de entorno de POSIX sólo soporta aplicaciones que cumplan estrictamente el estándard POSIX.1 o los estándards de ISO/IEC asociados.

El subsistema integral se encarga de funciones específicas del sistema operativo de parte del subsistema de entorno. Se compone de un subsistema de seguridad, un servicio de terminal y un servicio de servidor. El subsistema de seguridad se ocupa de los recibos de seguridad, permite o deniega acceso a las cuentas de usuario basándose en los permisos de los recursos, gestiona las peticiones de comienzo de sesión e inicia la autenticación, y determina qué recursos de sistema necesitan ser auditados por Windows 2000. También se encarga del Directorio Activo (en inglés, Active Directory). El servicio de terminal es una API al redirector de red, que proporciona el acceso a la red al ordenador. El servicio de servidor es una API que permite al ordenador proporcionar servicios de red.

El modo núcleo de Windows 2000 tiene un acceso completo al hardware y a los recursos del sistema del ordenador y ejecuta su código en un área de memoria protegida. Controla el acceso a la planificación, priorización de hilos, gestión de memoria y la interacción con el hardware. El modo núcleo impide que los servicios y las aplicaciones del modo usuario accedan a áreas críticas del sistema operativo a las que no deberían tener acceso, deben pedir al núcleo que realice esas operaciones en su nombre.

El modo núcleo está formado por servicios executive, que a su vez están formados por varios módulos que realizan tareas específicas, drivers de núcleo, un núcleo y una Capa de Abstracción del Hardware o HAL.

El Executive se relaciona con todos los subsistemas del modo usuario. Se encarga de la Entrada/Salida, la gestión de objetos, la seguridad y la gestión de procesos. Está dividido informalmente en varios subsistemas, entre los que se encuentran el Gestor de Caché, el Gestor de Configuración, el Gestor de Entrada/Salida, las Llamadas a Procedimientos Locales, el Gestor de Memoria, el Gestor de Objetos, la Estructura de Procesos, y el Monitor de Referencias de Seguridad. Todos juntos, los componentes pueden ser llamados Servicios Executive (nombre interno Ex). Los Servicios del Sistema (nombre interno Nt), por ejemplo las llamadas al sistema, se implementan en este nivel también, excepto unas pocas que son llamadas directamente dentro de la capa del núcleo para obtener un mejor rendimiento.

El Gestor de Objetos (nombre interno Ob) es un subsistema especial del Executive por el cual todos los otros subsistemas del Executive, especialmente las llamadas al sistema, deben pasar para obtener acceso a los recursos de Windows 2000. Esto hace que sea esencialmente un servicio de infraestructuras de gestión de recursos.

El gestor de objetos se usa para evitar la duplicación de la funcionalidad de la gestión de objetos de recursos en los otros subsistemas del executive, que potencialmente podría llevar a errores y complicar el diseño de Windows 2000. Para el gestor de objetos, cada recurso es un objeto, independientemente de si el recurso es un recurso físico (como un sistema de ficheros o un periférico) o un recurso lógico (como un fichero). Cada objeto tiene una estructura o tipo de objeto que el gestor de objetos debe conocer.

La creación de objetos es un proceso realizado en dos fases, creación e inserción. La creación provoca la asignación de un objeto vacío y la reserva de los recursos necesarios por el gestor de objetos, como por ejemplo un nombre (opcional) en el espacio de nombres. Si la creación se realiza correctamente, el subsistema responsable de la creación rellena los datos del objeto. Finalmente, si el subsistema considera que la inicialización fue correcta, avisa al gestor de objetos para que inserte el objeto, que hace que sea accesible a través de su nombre (opcional) o una cookie llamada puntero. Desde ese momento, la vida del objeto es controlada por el gestor de objetos, y es obligación del subsistema mantener el objeto en funcionamiento hasta que sea marcado por el gestor de objetos para su liberación.

El propósito de los punteros es similar al de los descriptores de fichero de UNIX, en los que cada uno representa una referencia a un recurso del núcleo a través de un valor oscuro. De forma similar, abrir un objeto a partir de su nombre está sujeto a comprobaciones de seguridad, pero trabajar a través de uno ya existente sólo está limitado al nivel de acceso necesario cuando el objeto fue abierto o creado. De manera diferente a los descriptores de fichero de UNIX, múltiples punteros de Windows pueden referenciar al mismo objeto (mientras que los descriptores de fichero pueden ser duplicados, los duplicados referencian al mismo nodo de fichero, pero a una única descripción de fichero).

Los tipos de objeto definen los procedimientos de los mismos y sus datos específicos. De esta forma, el gestor de objetos permite a Windows 2000 ser un sistema operativo orientado a objetos, ya que los tipos de objetos pueden ser considerados como clases polimórficas que definen objetos. Sin embargo, la mayoría de los subsistemas, confían en la implementación por defecto para todos los tipos de objeto de los procedimientos.

Cada uno de los objetos que se crean guardan su nombre, los parámetros que se pasan a la función de creación del objeto, los atributos de seguridad y un puntero a su tipo de objeto. El objeto también contiene un procedimiento para cerrarlo y un contador de referencias para indicar al gestor de objetos cuántos objetos lo referencian. De esta forma, el gestor de objetos, determina si el objeto puede ser destruido cuando se le envía una petición para borrar el objeto. Todos los objetos nombrados se encuentran en el objeto jerárquico del espacio de nombres.

El kernel se encuentra entre el HAL y el Executive y proporciona sincronización multiprocesador, hilos y envío y planificación de interrupciones, gestión de interrupciones y envío de excepciones, también es responsable de la inicialización de drivers de dispositivos que son necesarios en el arranque para mantener el sistema operativo funcionando. Esto es, el núcleo realiza casi todas las tareas de un micronúcleo tradicional, la distinción estricta entre el Executive y el núcleo son los mayores restos en este último del diseño original del micronúcleo, y que la documentación histórica del diseño se refiere al componente del núcleo como "el micronúcleo".

El núcleo a menudo interactúa con el gestor de procesos . El nivel de abstracción es tal que el núcleo nunca llama al gestor de procesos, únicamente se permite al revés (salvo para un puñado de casos, sin llegar aún hasta el punto de una dependencia funcional).

Windows 2000 utiliza los drivers de dispositivo del modo núcleo para permitirle interactuar con los dispositivos hardware. Cada uno de los drivers tienen rutinas de sistema bien definidas y rutinas internas que exporta al resto de sistemas operativos. Todos los dispositivos son vistos por el modo usuario como un objeto fichero en el gestor de Entrada/Salida, a través del gestor de E/S mismo, los dispositivos son vistos como objetos de dispositivo, que él define tanto como objetos fichero, dispositivo o driver. Los drivers del modo núcleo se encuentran en tres niveles: drivers de alto nivel, drivers intermedios y drivers de bajo nivel. Los drivers de alto nivel, como drivers de sistemas de ficheros para FAT y NTFS, dependen de drivers intermedios. Los drivers intermedios se componen de funciones drivers — o drivers principales para un dispositivo — que opcionalmente son intercalados entre filtros de drivers de bajo y alto nivel. Las funciones driver dependen de un driver de bus — o un driver que sirve a un controlador de bus, adaptador o puente — que puede tener un filtro driver de bus opcional que se encuentra entre él mismo y la función driver. El Modelo de Drivers de Windows (en inglés Windows Driver Model, WDM) se encuentra en la capa intermedia. El nivel más bajo de drivers son también herencia de los drivers de dispositivo de Windows NT que controlan un dispositivo directamente o que pueden ser un bus hardware PnP. Esos drivers de bajo nivel controlan directamente el hardware y no se basan en otros.

La Capa de Abstracción de Hardware, o HAL (en inglés Hardware Abstraction Layer), es una capa que se encuentra entre el hardware físico del ordenador y el resto del sistema operativo. Fue diseñado para ocultar las diferencias de hardware y por tanto proporciona una plataforma consistente en la cual las aplicaciones pueden ejecutarse. La HAL incluye código dependiente del hardware que controla los interfaces de E/S, controladores de interrupciones y múltiples procesadores.

En particular, la "abstracción hardware" no implica abstraer el conjunto de instrucciones, que generalmente se engloba bajo el concepto más amplio de portabilidad. La abstracción del conjunto de instrucciones, cuando es necesario (como para gestionar varias revisiones del conjunto de instrucciones del x86, o la emulación de un coprocesador matemático inexistente), es realizada por el núcleo.

A pesar de su propósito y su posición dentro del diseño de la arquitectura, el HAL no es una capa que se encuentre completamente debajo del núcleo de la misma forma que el núcleo se encuentra debajo del Executive: todas las implementaciones conocidas del HAL dependen de alguna manera del núcleo, o incluso del Executive. En la práctica, esto significa que el núcleo y las variaciones del HAL se distribuyen conjuntamente, generados específicamente para trabajar juntos.

Al principio



Windows NT 4.0

Own windows logo nt.svg

Windows NT 4.0 fue la cuarta versión del sistema operativo de Microsoft Windows NT, lanzado en 1996. Es un sistema Windows de 32-bit disponible para estaciones de trabajo y versiones para servidores con un interfaz gráfico similar a Windows 95. Las letras NT provienen de la designación del producto como "Nueva Tecnología" (New Technology) según Bill Gates, pero nunca más tuvo un significado especial.

Mientras que ofrecía mayor estabilidad que Windows 95, era menos flexible desde la perspectiva de un ordenador de sobremesa. Mucha de la estabilidad se consiguió gracias a la virtualización del Hardware y teniendo aplicaciones que accedían al sistema a través de las APIs en lugar de usar directamente el hardware como se hacía en MS-DOS, una práctica que continuó con Windows 95. El uso de las APIs en lugar de usar el hardware directamente requiere mucho más trabajo que debe ser realizado por el ordenador, y algunas aplicaciones, como los juegos, que hacen un uso importante del hardware, funcionan más despacio. Mientras que la mayoría de los programas escritos para la API Win32 funcionan por igual en Windows 95 y Windows NT, un pobre soporte de DirectX, provoca que la mayoría de los juegos en 3D no lo hagan.

Con la salida de Windows 2000, Windows NT 4.0 se quedó obsoleto, pero todavía su uso está muy extendido (a fecha de 2005) a pesar de los esfuerzos de Microsoft por persuadir a los comerciantes para que se actualicen a nuevas versiones de Windows.

La característica más resaltable es que en las versiones para estaciones de trabajo y servidores Windows NT 4.0 han ganado la interfaz de Windows 95. Las ediciones para servidores de Windows NT 4.0 además incorporan un Servidor Web, IIS 2.0. Además soporta de forma nativa los plugins y extensiones de Microsoft Frontpage, una aplicación para la creación de sitio web y su mantenimiento. Otras características importantes son Microsoft Transaction Server para aplicaciones en red, y Microsoft Message Queue Server (MSMQ), para mejorar las comunicaciones.

Al principio



Arquitectura de Windows NT

La familia de los sistemas operativos Windows NT de Microsoft está constituida por versiones como Windows Vista, Windows Server 2003, Windows XP, Windows 2000 y Windows NT. Todos tienen multitarea apropiativa y son sistemas operativos reentrantes que han sido diseñados para trabajar tanto con ordenadores con un sólo procesador como ordenadores de multiprocesamiento simétrico que en inglés es el Symmetrical Multi Processor o SMP. Para procesar las peticiones de entrada/salida (en inglés Input/Output, I/O) acude a una dirección de paquetes de E/S que utiliza peticiones (IRPs) y E/S asíncrona. A partir de Windows XP, Microsoft comenzó a desarrollar sistemas operativos que soportaban 64-bits. Antes sus sistemas operativos estaban basados en un modelo de 32-bits.

El modo núcleo de la línea de Windows NT está compuesto por subsistemas capaces de pasar peticiones de E/S a los drivers apropiados usando el gestor de E/S. Dos subsistemas crean la capa del modo usuario de Windows 2000: el subsistema de Entorno (ejecuta aplicaciones escritas para distintos tipos de sistemas operativos), y el subsistema Integral (maneja funciones específicas de sistema de parte del subsistema de Entorno). El modo núcleo en Windows 2000 tiene acceso total al hardware y a los recursos del sistema del ordenador. El modo núcleo impide a los servicios del modo usuario y las aplicaciones acceder a áreas críticas del sistema operativo a las que no deberían tener acceso.

El Executive se relaciona con todos los subsistemas del modo usuario. Se ocupa de la entrada/salida, la gestión de objetos, la seguridad y la gestión de procesos. El núcleo se sitúa entre la Capa de Abstracción de Hardware y el Executive para proporcionar sincronización multiprocesador, hilos y programación y envío de interrupciones, y envío de excepciones.

El núcleo también es responsable de la inicialización de los drivers de dispositivos al arrancar. Hay tres niveles de drivers en el modo núcleo: drivers de alto nivel, drivers intermedios y drivers de bajo nivel. El Modelo de Drivers de Windows (en inglés Windows Driver Model, WDM) se encuentra en la capa intermedia y fue diseñado principalmente para mantener la compatibilidad en binario y en código fuente entre Windows 98 y Windows 2000. Los drivers de más bajo nivel también son un legado de los drivers de dispositivos de Windows NT que controlan directamente un dispositivo o puede ser un bus hardware PnP.

El modo usuario está formado por subsistemas que pueden pasar peticiones de E/S a los drivers apropiados del modo núcleo a través del gestor de E/S (que se encuentra en el modo núcleo). Dos subsistemas forman la capa del modo usuario de Windows 2000: el subsistema de Entorno y el subsistema Integral.

El subsistema de entorno fue diseñado para ejecutar aplicaciones escritas para distintos tipos de sistemas operativos. Ninguno de los subsistemas de entorno puede acceder directamente al hardware, y deben solicitar el acceso a los recursos de memoria a través del Gestor de Memoria Virtual que se ejecuta en modo núcleo. Además, las aplicaciones se ejecutan a menor prioridad que los procesos del núcleo. Actualmente hay tres subsistemas de entorno principales: un subsistema Win32, un subsistema OS/2 y un subsistema POSIX.

El subsistema de entorno Win32 puede ejecutar aplicaciones Windows de 32-bits. Contiene la consola además de soporte para ventanas de texto, apagado y manejo de errores graves para todos los demás subsistemas de entorno. También soporta Máquinas Virtuales de DOS (en inglés, Virtual DOS Machine, VDM), lo que permite ejecutar en Windows aplicaciones de MS-DOS y aplicaciones de 16-bits de Windows 3.x (Win16). Hay una VDM específica que se ejecuta en su propio espacio de memoria y que emula un Intel 80486 ejecutando MS-DOS 5. Los programas Win16, sin embargo, se ejecutan en una VDM Win16. Cada programa, por defecto, se ejecuta en el mismo proceso, así que usa el mismo espacio de direcciones, y el VDM de Win16 proporciona a cada programa su propio hilo de ejecución para ejecutarse. Sin embargo, Windows 2000 permite a los usuarios ejecutar programas Win16 en una VDM de Win16 separada, lo que permite al programa ser una multitarea prioritaria cuando Windows 2000 ejecute el proceso VDM completo, que contiene únicamente una aplicación en ejecución. El subsistema de entorno de OS/2 soporta aplicaciones de 16-bits basadas en caracteres y emula OS/2 1.x, pero no permite ejecutar aplicaciones de 32-bits o con entorno gráfico como se hace en OS/2 2.x y posteriores. El subsistema de entorno de POSIX sólo soporta aplicaciones que cumplan estrictamente el estándard POSIX.1 o los estándards de ISO/IEC asociados.

El subsistema integral se encarga de funciones específicas del sistema operativo de parte del subsistema de entorno. Se compone de un subsistema de seguridad, un servicio de terminal y un servicio de servidor. El subsistema de seguridad se ocupa de los recibos de seguridad, permite o deniega acceso a las cuentas de usuario basándose en los permisos de los recursos, gestiona las peticiones de comienzo de sesión e inicia la autenticación, y determina qué recursos de sistema necesitan ser auditados por Windows 2000. También se encarga del Directorio Activo (en inglés, Active Directory). El servicio de terminal es una API al redirector de red, que proporciona el acceso a la red al ordenador. El servicio de servidor es una API que permite al ordenador proporcionar servicios de red.

El modo núcleo de Windows 2000 tiene un acceso completo al hardware y a los recursos del sistema del ordenador y ejecuta su código en un área de memoria protegida. Controla el acceso a la planificación, priorización de hilos, gestión de memoria y la interacción con el hardware. El modo núcleo impide que los servicios y las aplicaciones del modo usuario accedan a áreas críticas del sistema operativo a las que no deberían tener acceso, deben pedir al núcleo que realice esas operaciones en su nombre.

El modo núcleo está formado por servicios executive, que a su vez están formados por varios módulos que realizan tareas específicas, drivers de núcleo, un núcleo y una Capa de Abstracción del Hardware o HAL.

El Executive se relaciona con todos los subsistemas del modo usuario. Se encarga de la Entrada/Salida, la gestión de objetos, la seguridad y la gestión de procesos. Está dividido informalmente en varios subsistemas, entre los que se encuentran el Gestor de Caché, el Gestor de Configuración, el Gestor de Entrada/Salida, las Llamadas a Procedimientos Locales, el Gestor de Memoria, el Gestor de Objetos, la Estructura de Procesos, y el Monitor de Referencias de Seguridad. Todos juntos, los componentes pueden ser llamados Servicios Executive (nombre interno Ex). Los Servicios del Sistema (nombre interno Nt), por ejemplo las llamadas al sistema, se implementan en este nivel también, excepto unas pocas que son llamadas directamente dentro de la capa del núcleo para obtener un mejor rendimiento.

El Gestor de Objetos (nombre interno Ob) es un subsistema especial del Executive por el cual todos los otros subsistemas del Executive, especialmente las llamadas al sistema, deben pasar para obtener acceso a los recursos de Windows 2000. Esto hace que sea esencialmente un servicio de infraestructuras de gestión de recursos.

El gestor de objetos se usa para evitar la duplicación de la funcionalidad de la gestión de objetos de recursos en los otros subsistemas del executive, que potencialmente podría llevar a errores y complicar el diseño de Windows 2000. Para el gestor de objetos, cada recurso es un objeto, independientemente de si el recurso es un recurso físico (como un sistema de ficheros o un periférico) o un recurso lógico (como un fichero). Cada objeto tiene una estructura o tipo de objeto que el gestor de objetos debe conocer.

La creación de objetos es un proceso realizado en dos fases, creación e inserción. La creación provoca la asignación de un objeto vacío y la reserva de los recursos necesarios por el gestor de objetos, como por ejemplo un nombre (opcional) en el espacio de nombres. Si la creación se realiza correctamente, el subsistema responsable de la creación rellena los datos del objeto. Finalmente, si el subsistema considera que la inicialización fue correcta, avisa al gestor de objetos para que inserte el objeto, que hace que sea accesible a través de su nombre (opcional) o una cookie llamada puntero. Desde ese momento, la vida del objeto es controlada por el gestor de objetos, y es obligación del subsistema mantener el objeto en funcionamiento hasta que sea marcado por el gestor de objetos para su liberación.

El propósito de los punteros es similar al de los descriptores de fichero de UNIX, en los que cada uno representa una referencia a un recurso del núcleo a través de un valor oscuro. De forma similar, abrir un objeto a partir de su nombre está sujeto a comprobaciones de seguridad, pero trabajar a través de uno ya existente sólo está limitado al nivel de acceso necesario cuando el objeto fue abierto o creado. De manera diferente a los descriptores de fichero de UNIX, múltiples punteros de Windows pueden referenciar al mismo objeto (mientras que los descriptores de fichero pueden ser duplicados, los duplicados referencian al mismo nodo de fichero, pero a una única descripción de fichero).

Los tipos de objeto definen los procedimientos de los mismos y sus datos específicos. De esta forma, el gestor de objetos permite a Windows 2000 ser un sistema operativo orientado a objetos, ya que los tipos de objetos pueden ser considerados como clases polimórficas que definen objetos. Sin embargo, la mayoría de los subsistemas, confían en la implementación por defecto para todos los tipos de objeto de los procedimientos.

Cada uno de los objetos que se crean guardan su nombre, los parámetros que se pasan a la función de creación del objeto, los atributos de seguridad y un puntero a su tipo de objeto. El objeto también contiene un procedimiento para cerrarlo y un contador de referencias para indicar al gestor de objetos cuántos objetos lo referencian. De esta forma, el gestor de objetos, determina si el objeto puede ser destruido cuando se le envía una petición para borrar el objeto. Todos los objetos nombrados se encuentran en el objeto jerárquico del espacio de nombres.

El kernel se encuentra entre el HAL y el Executive y proporciona sincronización multiprocesador, hilos y envío y planificación de interrupciones, gestión de interrupciones y envío de excepciones, también es responsable de la inicialización de drivers de dispositivos que son necesarios en el arranque para mantener el sistema operativo funcionando. Esto es, el núcleo realiza casi todas las tareas de un micronúcleo tradicional, la distinción estricta entre el Executive y el núcleo son los mayores restos en este último del diseño original del micronúcleo, y que la documentación histórica del diseño se refiere al componente del núcleo como "el micronúcleo".

El núcleo a menudo interactúa con el gestor de procesos . El nivel de abstración es tal que el núcleo nunca llama al gestor de procesos, únicamente se permite al revés (salvo para un puñado de casos, sin llegar aún hasta el punto de una dependencia funcional).

Windows 2000 utiliza los drivers de dispositivo del modo núcleo para permitirle interactuar con los dispositivos hardware. Cada uno de los drivers tienen rutinas de sistema bien definidas y rutinas internas que exporta al resto de sistemas operativos. Todos los dispositivos son vistos por el modo usuario como un objeto fichero en el gestor de Entrada/Salida, a través del gestor de E/S mismo, los dispositivos son vistos como objetos de dispositivo, que él define tanto como objetos fichero, dispositivo o driver. Los drivers del modo núcleo se encuentran en tres niveles: drivers de alto nivel, drivers intermedios y drivers de bajo nivel. Los drivers de alto nivel, como drivers de sistemas de ficheros para FAT y NTFS, dependen de drivers intermedios. Los drivers intermedios se componen de funciones drivers — o drivers principales para un dispositivo — que opcionalmente son intercalados entre filtros de drivers de bajo y alto nivel. Las funciones driver dependen de un driver de bus — o un driver que sirve a un controlador de bus, adaptador o puente — que puede tener un filtro driver de bus opcional que se encuentra entre él mismo y la función driver. El Modelo de Drivers de Windows (en inglés Windows Driver Model, WDM) se encuentra en la capa intermedia. El nivel más bajo de drivers son también herencia de los drivers de dispositivo de Windows NT que controlan un dispositivo directamente o que pueden ser un bus hardware PnP. Esos drivers de bajo nivel controlan directamente el hardware y no se basan en otros.

La Capa de Abstracción de Hardware, o HAL (en inglés Hardware Abstraction Layer), es una capa que se encuentra entre el hardware físico del ordenador y el resto del sistema operativo. Fue diseñado para ocultar las diferencias de hardware y por tanto proporciona una plataforma consistente en la cual las aplicaciones pueden ejecutarse. La HAL incluye código dependiente del hardware que controla los interfaces de E/S, controladores de interrupciones y múltiples procesadores.

En particular, la "abstracción hardware" no implica abstraer el conjunto de instrucciones, que generalmente se engloba bajo el concepto más amplio de portabilidad. La abstracción del conjunto de instrucciones, cuando es necesario (como para gestionar varias revisiones del conjunto de instrucciones del x86, o la emulación de un coprocesador matemático inexistente), es realizada por el núcleo.

A pesar de su propósito y su posición dentro del diseño de la arquitectura, el HAL no es una capa que se encuentre completamente debajo del núcleo de la misma forma que el núcleo se encuentra debajo del Executive: todas las implementaciones conocidas del HAL dependen de alguna manera del núcleo, o incluso del Executive. En la práctica, esto significa que el núcleo y las variaciones del HAL se distribuyen conjuntamente, generados específicamente para trabajar juntos.

Al principio



Source : Wikipedia