You are on page 1of 20

Instituto Normal de Enseñanza Técnica PROFESORADO DE INFORMÁTICA Segundo año, grupo Interior

Proyecto Obligatorio “Análisis de la familia Windows NT”

Asignatura: Organización del Computador y Sistemas Operativos Docente: Juan Pablo Sales Alumnos: Nelly Berrueta Sebastián De Los Ángeles Rosario Corbo

Fecha de entrega: 12 de Noviembre de 2010

INDICE

HISTORIA DE WINDOWS .................................................................................... pág 1

WINDOWS NT Y DESARROLLO DE WINDOWS 2000 ........................................ pág 5

PRINCIPIOS DE DISEÑO DEL SISTEMA ............................................................ pág 7

EL SISTEMA DE ARCHIVOS NTFS ................................................................... pág 13

BIBLIOGRAFÍA ............................................................................................... pág

1

no era un sistema operativo completo. teniendo como sistema operativo el MS-DOS en su versión 1. Sólo los cuadros de diálogo podían aparecer en otras ventanas. tamaño y capacidades. Microsoft sacó al mercado Windows 1.0 y se haría un poco más popular que su antecesor y presentaba varias mejoras en la interfaz de usuario y en la gestión de memoria e 2 .. El surgimiento de la GUI de Windows En 1985 y siguiendo el ejemplo del sistema Apple Lisa.Historia de Windows Windows es el sistema operativo que comercializa la compañía Microsoft con sede en Seattle. Bill Gates cuando todavía era estudiante conoció a Paul Allen y años más tarde en 1975 crearon su propia empresa "Micro-soft" que finalmente el 26 de noviembre de 1976 recibió el nombre "Microsoft". Gates compra el software a otra empresa. consistía en 8 Kb de código residente en la memoria. Dos años más tarde llegó Microsoft Windows 2. la IBM PC . Tanto este como la versión 2.. resultando apenas una capa gráfica que funcionaba sobre el entorno DOS y dependía de este para la mayoría de sus funciones.0 (compitió con el sistema operativo de Apple). Con el paso de los años y de las diferentes versiones.0 no permitía la superposición de ventanas. un comienzo que podemos definir como modesto: este sistema operativo enfocado en el uso de consola de comandos de 16 bits que funcionaba en modo real y para un solo usuario.0 (1987) no fueron la gran cosa. Así que Microsoft no podía incluir en Windows cosas como la papelera de reciclaje o la superposición de las ventanas. este tenía ciertas limitaciones. las interfaces poseían limitada capacidad de uso. Windows 1. En 1980 IBM está trabajando en el que sería su gran éxito. esto se debía a que Apple Computer ya contaba con esta característica. pero su uso seguiría siendo orientado hacia el uso de la línea de comandos. MS-DOS ganaría poder.0. lo rebautiza con el nombre de MS-DOS y le vende la licencia de uso a IBM. Es lógico entender entonces que uno de los principales problemas que tuvo fue Apple. La novedad del momento era su Interfaz Gráfica de Usuario (GUI). El primer objetivo fue desarrollar las versiones del lenguaje de programación BASIC para el equipo Altair y el primer logro fue el MS-DOS. En su lugar fueron mosaico en todas las ventanas. Hacia 1981 el concepto PC se materializa en el modelo IBM 5150. que para proteger su sistema operativo impedía que Microsoft plagiara su producto. necesita un software para su proyecto y se lo encarga a Microsoft.

Apariencia de la Interfaz Gráfica de Usuario de Windows 3. Paralelamente. la cual incluía capacidades de red. Esta versión y en especial las que la sucedieron. Intel 80286. cada uno tenía acceso al código del otro. a pesar del avance . 3 .1 y Windows for Workgroups. Como ambos equipos cooperaban entre sí en el desarrollo de sus sistemas operativos para PC. y el entorno gráfico y cualquier otra aplicación que corriera desde él trabajaba sobre el mismo espacio de memoria.11. el cual se encargaba del control del hardware y del sistema de archivos. Windows 3. posteriormente llamada Windows 3. Y se convertiría en un duro rival para el Macintosh de Apple. Microsoft siguió trabajando y para 1990 lanzaron Windows 3. También podía hacer uso de memoria expandida. Presentaba mejoras en la interfaz de usuario y en la multitarea. lo cual podía ser altamente riesgoso si alguno de los mismos presentara un error.x seguía siendo un sistema dependiente de un entorno DOS instalado previamente. constituyeron un gran éxito de mercado.1 Sin embargo. Microsoft e IBM trabajaban conjuntamente en el desarrollo de otro sistema operativo el OS/2. Además también soportaba memoria virtual y multitarea. en cuyo caso era muy posible que todo el sistema se viniera abajo.introdujo nuevos métodos abreviados de teclado.0. la 3. OS/2 tenía una ventaja importante sobre Windows y es que aprovechaba mucho mejor la capacidad del procesador del momento.

Windows se iba asentando en el mercado hasta que. tenía una instalación integrada.0 mientras que Microsoft rebautizaba su proyecto con el nombre de Windows NT. 4 . Una de las mayores ventajas del nuevo Windows era que aunque necesitaba el MS-DOS como base. Microsoft lanza Windows NT basado en un nuevo kernel. el cual introducía un ambiente de trabajo de 32 bits que mantenía su compatibilidad con las aplicaciones desarrolladas para DOS y Windows 3. divergían en como enfocar el futuro de las investigaciones. IBM sacó al mercado el OS/2 2. Debido a los acuerdos entre las dos empresas los productos eran muy parecidos pero Microsoft pisó fuerte con la promoción de Windows NT ("New Technology" -Nueva tecnología). En julio de 1993. Mientras que IBM se inclinaba por el OS/2.En esta época empeoraba el entendimiento entre IBM y Microsoft.x. Windows 95 era en realidad un sistema operativo muy diferente a Windows (aunque trabajó NT se para hacerlo lo más compatible posible con este último). conseguiría mayor aceptación que OS/2. NT era considerado como el sistema operativo profesional y fue la primera versión de Windows verdaderamente multitarea (más tarde fue reestructurado para funcionar como un sistema operativo para el hogar. era un sistema operativo verdaderamente multitarea y también fue el primero en utilizar las capacidades "Plug & Play" (característica del hardware que permite añadir nuevos componentes sin tener que hacer mayores modificaciones al sistema. el cual se auto-adapta a los cambios). en agosto de 1995 con Windows 95. De esta manera el usuario solo tenía que instalar el Windows 95 mientras que con las versiones anteriores había que comprar los dos sistemas por separado instalando Windows por encima del MS-DOS. Microsoft insistía en desarrollar todavía más Windows. Pero las diferencias entre los dos gigantes eran demasiado grandes y finalizaron sus acuerdos. con Windows XP).

detrás de todo el sistema operativo seguía estando DOS. pero muchos de sus problemas básicos fueron posteriormente rectificados con una segunda versión en 1999: Windows 98 Second Edition. Windows Server 2003 (contemporáneo de WinXP. Microsoft se ganaba la confianza del público. “el mercado era de Microsoft”. con una actualización del núcleo de Win 98. se introdujo con nuevas características y un fuerte enfoque en la seguridad. algunas características propias de Windows 2000 que se convertiría en la última versión de Windows en incorporar a MS-DOS (ahora en su versión 8. estaba disponible en varias versiones según el tipo de servidor). en la mayoría de los casos en que se instalaba como actualización de software era difícil de configurar o incluso imposible. La nueva partida de Microsoft tenía que ser un sofisticado Windows 2000 pero el proyecto se retrasaba y para disimular el retraso sacaron con prisas. 5 . Éste eliminaba muchos de los errores que ocasionaba Internet Explorer y además permitía a varios ordenadores conectarse a la vez a una misma conexión de Internet. Para cuando Microsoft lanzó su reemplazo. A partir de entonces vinieron Windows 2000 (el cual sería Windows NT 5. tres años más tarde. el mercado PC era territorio indiscutido de Microsoft.0 si Microsoft no hubiera decidido cambiar la nomenclatura de la serie). Sin embargo. en junio de 1998 Windows 98. el 30 de enero de 2007 Windows Vista (contiene una serie de características nuevas. Windows XP (una versión que se construyó en el kernel de Windows NT y conservó la facilidad de uso de Windows 95 y sus sucesores). La repercusión fue tal que los fabricantes de controladores de dispositivos centraban sus productos en las dos marcas líderes. Este ha sido el producto más criticado de Microsoft hasta la fecha. le permitió sacar del negocio a la gran mayoría de sus competidores. El problema que presentaba es que solo funcionaba bien cuando el sistema venía incorporado de fábrica. una versión inacabada del mismo: Windows Millenium Edition. con especial atención a las características de seguridad). en su estructura básica y aunque reducido en sus funciones. desde un shell rediseñado y la interfaz de usuario da importantes cambios técnicos. en septiembre del 2000.0) como base del sistema. esta versión de Windows resultó un suceso masivo y de gran aceptación. La gran evolución de Internet y la potencia que se conseguía en los equipos. facilitaba la expansión de Intel y Microsoft.Con este nuevo sistema. Sustancialmente fue criticado por su lentitud y por su falta de fiabilidad en comparación con Windows 95.

Por fin. el propio Bill Gates ha reconocido en alguna ocasión que es una de las prioridades de su empresa. más dispositivos de red. 6 . más capacidades multimedia. Estamos a finales de los 80's y Microsoft tuvo la idea de que el uso de las PC's se extendería no solo a particulares sino también a empresas. Es también. incompatibles con los requerimientos del mercado al que pretendían alcanzar con este producto. el handicap que tienen que superar.x (WinNT 3. Sus esfuerzos tuvieron fruto y en 1993 presentaron Windows NT 3. nuevos servicios.1 (con un número de versión premeditadamente igual al del sistema de 16 bits que ya se menciono más arriba). el 22 de octubre de 2009 se lanzan al mercado Windows 7 y su equivalente para servidores Windows Server 2008. prefiriendo un entorno al que ya estaban acostumbrados. famoso por ser el padre del WinNT. en parte.1 era un verdadero sistema operativo de 32 bits) el público no respondió favorablemente. El desarrollo estuvo a cargo de un equipo dirigido por David Cutler. Cada nueva versión con mejoras en el diseño. Windows NT y el desarrollo de Windows 2000 Para comprender cómo se llegó al Win2K necesitamos comprender cómo se desarrolló la línea de sistemas operativos a la que pertenece: Windows NT. David Neil Cutler. Al terminar sus estudios en el Olivet College (1965) fue a trabajar a Dupont allí creció su interés por los sistemas operativos y así fue como se fue a una pequeña empresa llamada Agrippa-Ord a desarrollar software para LINC y PDP-8 que fueron las primeras "mini" computadoras. Nació en 13 de marzo de 1942 en Lansing Michigan. Su situación atrae a los fabricantes y compradores pero también a usuarios malintencionados. el precio que tiene que pagar por ser “el estándar”. la estabilidad. Quizás uno de los pocos aspectos en los que el propietario de Microsoft coincide con la crítica es la falta de seguridad. El desafío de Cutler con WinNT era superar las muchas deficiencias en materia de seguridad y de eficiencia presentes en MS-DOS. A pesar de ser un sistema técnicamente muy superior a Win 3. etc… En la actualidad que el software libre está creciendo y haciéndose cada día más popular y se le recrimina a Microsoft que su código sea cerrado. quien desarrollara con anterioridad el sistema operativo VMS para servidores y con el cuál WinNT tiene ciertas similitudes. Hoy en día Cutler es un técnico asociado de Microsoft que entre otras cosas colabora en el desarrollo del sistema operativo de nube Windows Azure. Esto se puede considerar visionario en un momento en que las computadoras usadas por el mundo empresarial eran principalmente los grandes mainframes.

5 (1994). el número "3. El primer lanzamiento fue de MS Windows NT 3. que fue seguido por NT 3.51 (1995). Windows 2000 es la última versión de Windows NT.0 fue el primero en esta línea para implementar la interfaz de usuario de "Windows 95" (y el primero en incluir tiempos de ejecución de 32 bits integrada de Windows 95). NT 3. NT 4.La familia de sistemas Windows NT fue hecha y comercializada por un mayor uso de fiabilidad de negocios. que no incluye la activación de productos de Microsoft y NT 4.1 (1993). y Windows 2000 (2000). Cronograma de los diferentes Sistemas Operativos Windows 7 .1" para que coincida con la versión para Windows.0 (1996).

llamado sistema de archivos NT nativo (NTFS). Las capas superiores de NT dependen de la HAL. NT se diseñó de modo que fuera portátil. NT se diseño para resistir defectos y ataques empleando protección por hardware para la memoria virtual y mecanismos de protección por software para los recursos del sistema operativo. Además. Microsoft Windows y POSIX pueden ejecutarse en NT en el entorno apropiado. A fin de facilitar los cambios futuros. programas escritos para MS_DOS. que opera en modo de núcleo o protegido. El ejecutivo NT. y apoya el procesamiento distribuido con llamadas a procedimientos remotos (RPC) según las definiciones de la Open Software Foundation. Al igual que UNIX. La confiabilidad es la capacidad para manejar condiciones de error. Encima del ejecutivo. y eso ayuda a NT a ser portátil. desempeño y soporte internacional. Todo el código que depende del procesador se ha aislado en una biblioteca de enlazado dinámico (DLL. confiabilidad. hardware abstraction layer). proporciona los servicios básicos del sistema. Entre éstos están los subsistemas de entorno o ambiente que emulan diferentes sistemas operativos. NT viene con un sistema de archivos.PRINCIPIOS DE DISEÑO Los objetivos de diseño que Microsoft ha expresado para NT incluyen extensibilidad. para cargar nuevos sistemas de archivos. casi todo el sistema está escrito en C y C++. es posible añadir subsistemas de entorno adicionales sin afectar el ejecutivo. dynamic link library) llamada capa de abstracción de hardware (HAL. La HAL manipula el hardware directamente aislando el resto de NT de las diferencias de hardware entre las plataformas en que se ejecuta. NT se implementó con una arquitectura de capas. que se recupera automáticamente de muchas clases de errores del sistema de 8 . compatibilidad. Un DLL es un archivo que se hace corresponder con el espacio de direcciones de un proceso de modo que todas las funciones de DLL aparecen como si formaran parte del proceso. nuevos tipos de dispositivos de E/S y nuevas clases de soporte para redes mientras el sistema está trabajando. En virtud de la estructura modular. Además NT utiliza controladores cargables en el sistema E/S. transportabilidad. incluida la capacidad del sistema operativo para protegerse a si mismo y a sus usuarios contra software defectuoso o mal intencionado. Así. NT emplea un modelo cliente-servidor como el sistema operativo Mach. no del hardware subyacente. varios subsistemas servidores operan en modo usuario. Un sistema operativo es portátil si se le puede trasladar de una arquitectura de hardware a otra con relativamente pocos cambios. La extensibilidad es una propiedad importante de cualquier sistema operativo que quiera mantenerse al día con los avances en la tecnología de cómputo.

NT Version 3. Primero. Sin embargo la compatibilidad de NT con binarios no es perfecta. NT se diseñó para tener un buen desempeño. mientras que Solaris se ejecutaba en sistemas con hasta 64 procesadores. NT se diseñó con miras al multiprocesamiento simétrico: con un computador multiprocesador. el sistema puede responder rápidamente a sucesos externos.archivos después de una caída del sistema. el sistema de archivos ISO 9660 CD y NTFS. Segundo. Esto se logra mediante dos mecanismos. Windows de 16 bits. Windows de 32 y demás. las versiones de NT para procesadores no Intel cuentan con emulación del conjunto de instrucciones X86 en software. NT puede ejecutar los binarios de muchos programas compilados para Intel X86 ejecutando MS-DOS. La API NLS cuenta con rutinas 9 . por ejemplo. OS/2.51 tiene una clasificación de seguridad C-2 del gobierno de Estados Unidos. incluido el sistema FAT de MSDOS. esas aplicaciones pueden compilarse para ejecutarse en NT sin modificar el código fuente. Además. La escalabilidad actual de NT es limitada en comparación con la de UNIX. los subsistemas de entorno que mencionamos antes manejan las llamadas al sistema para MS-DOS. Esta protección incluye: • • • • • • Login seguro de usuario con medidas anti-engaño Controles de acceso discrecionales Controles de acceso privilegiado Protección del espacio de memoria de cada proceso Puesta a cero de cualquier página de memoria antes de ser mapeadas Auditorías de seguridad NT ofrece compatibilidad en el nivel de fuentes con aplicaciones que siguen el estándar IEEE 1003. Por razones de confiabilidad y seguridad. Por tanto. Además. NT también se diseñó para uso internacional. Estos subsistemas apoyan diversos sistemas de archivos. NT cuenta con soporte para diferentes ubicaciones a través de la API de soporte a idiomas nacionales.1 (POSIX). varios hilos pueden ejecutarse al mismo tiempo. las aplicaciones pueden acceder a los puertos de hardware directamente. NT apoyaba sistemas con hasta ocho CPU. NT prohíbe tal acceso. Lan Manager y Windows de 32 bits. Con excepción del núcleo. En MS-DOS. los hilos en los subsistemas de NT pueden ser desalojados por hilos de mayor prioridad. Los subsistemas que comprenden NT se pueden comunicar entre sí de forma eficiente empleando un recurso de llamadas a procedimientos locales que transfiere mensajes con gran rapidez. el sistema HPFS de OS/2. lo que implica un nivel moderado de protección contra software defectuoso y ataques malintencionados. En 1997. Por tanto.

mutantes. y una gran colección de subsistemas que se ejecutan en modo de usuario. hilos y temporizadores. Una ventaja de este enfoque es que solo se necesita una versión de cada driver. y su ejecución nunca se desaloja. aunque NT reconoce caracteres ANSI convirtiéndolos en caracteres UNICODE antes de manipularlos (conversión de 8 a 16 bits). Un tipo de objeto en NT es un tipo de datos definido por el sistema que tiene un conjunto de atributos (valores de datos) y un conjunto de métodos (funciones u operaciones). El núcleo nunca se pagina a disco. El núcleo desempeña sus funciones usando un conjunto de objetos. sincronización de bajo nivel del procesador y recuperación después de una interrupción del suministro de electricidad. El núcleo está orientado a objetos. CAPA DE ABSTRACCION DE HARDWARE La HAL (hardware abstraction layer) es una capa de software que oculta las diferencias de hardware para que no las perciban los niveles superiores del sistema operativo y NT pueda ser mas portátil. Los subsistemas de modo usuario pertenecen a dos categorías.especializadas para dar formato a fechas. el núcleo y el ejecutivo que se ejecutan en modo protegido. los subsistemas de protección ofrecen funciones de seguridad. se puede ejecutar en todas las plataformas de hardware sin tener que trasladar el código del controlador. Las comparaciones de cadenas están especializadas para tener en cuenta diferentes conjuntos de caracteres. Las capas principales son la capa de abstracción del hardware. HAL también apoya el multiprocesamiento simétrico. cuyos atributos almacenan los datos del núcleo y cuyos métodos realizan las actividades del núcleo. Por ejemplo: sucesos. horas y cantidades monetarias de acuerdo con diversas costumbres nacionales. Por razones de desempeño. El núcleo tiene cuatro obligaciones principales: planificación de hilos. COMPONENTES DEL SISTEMA La arquitectura de NT es un sistema de módulos en capas. Una de las principales ventajas de este tipo de arquitectura es que las interacciones entre los módulos pueden mantenerse sencillas. El primero comprende los objetos despachador (dispatcher) que controlan el despacho y la sincronización en el sistema. el ejecutivo y los drivers de dispositivos utilizan. Los subsistemas de entorno emulan diferentes sistemas operativos. El objeto suceso sirve para registrar la ocurrencia de 10 . Los objetos son de dos tipos. semáforos. NUCLEO El núcleo de NT constituye los cimientos del ejecutivo y los subsistemas. manejo de interrupciones y excepciones. mutexes. HAL exporta una interfaz de máquina virtual que el núcleo. El código de caracteres nativo de NT es UNICODE. los controladores de E/S pueden acceder directamente al hardware.

procesos y perfiles. ejecutándose. La llamada a procedimiento asincrónica sirve para irrumpir en un hilo en ejecución e invocar un procedimiento. El objeto hilo es la entidad que el núcleo ejecuta y se asocia a un objeto proceso. hasta que se agote su cuanto de tiempo o hasta que emita una llamada al sistema bloqueadora. que incluye una prioridad. Cada proceso tiene uno o más hilos. Un hilo esta ejecutándose cuando se ejecuta en un procesador. El objeto de notificación de potencia sirve para invocar una rutina dada automáticamente después de una interrupción en la alimentación eléctrica. en transición y terminado. Un objeto proceso representa el espacio de direcciones virtual y la información de control necesaria para ejecutar el conjunto de hilos asociados a un proceso. digamos para E/S. El mutante proporciona mutua exclusión en modo de núcleo o modo de usuario con la noción de propiedad. Estos objetos incluyen llamadas a procedimientos asincrónicas. El hilo listo con la prioridad más alta se pasa al estado a punto. En un sistema multiprocesador. hasta que termine. el objeto perfil sirve para medir el tiempo consumido por un bloque de código. Un hilo ingresa en el estado terminado cuando termina su ejecución. y el objeto de situación de potencia sirve para verificar si se ha interrumpido la alimentación eléctrica. se mantiene un hilo en el estado a punto para cada procesador. Cada hilo tiene su propio estado. Al igual que muchos otros sistemas operativos modernos. digamos la finalización de una operación de E/S. Un objeto semáforo actúa como contador o compuerta para controlar el numero de hilos que acceden a algún recurso. que son las unidades de ejecución que el núcleo despacha. 11 . El hilo se ejecutará hasta que sea desalojado por uno de más alta prioridad. El mutex. que solo está disponible en modo núcleo proporciona mutua exclusión libre de bloqueos mutuos. esperando. Por último. Los objetos temporizador sirven para medir tiempos e indicar el vencimiento de “tiempos límite” cuando las operaciones tardan demasiado y tienen que interrumpirse. El proceso tiene un espacio de direcciones en memoria virtual e información que incluye una prioridad base y una afinidad por uno o más procesadores.un suceso y sincronizar este último con alguna acción. Un hilo nuevo esta en el estado de transición mientras está esperando los recursos necesarios para ejecutarse. notificación de potencia. interrupciones. una afinidad de procesador e información de contabilidad. Un hilo está en el estado esperando cuando espera una señal. Los seis posibles estados de los hilos son listo. lo que implica que será el siguiente hilo en ejecutarse. Listo significa que espera para ejecutarse. situación de potencia. El objeto interrupción vincula una rutina de servicio de interrupción con una fuente de interrupción. El segundo conjunto de objetos del núcleo comprende los objetos de control. NT maneja los conceptos de procesos e hilos para el código ejecutable. a punto (standby).

falta de alineación de datos. Un hilo que estaba esperando E/S del teclado recibirá un aumento considerable en su prioridad. división de punto flotante entre cero. Cuando un hilo de prioridad variable se libera de una operación de espera. Puede haber planificación cuando un hilo ingresa en el estado listo o de espera. El manejador de trampas puede encargarse de las excepciones sencillas. y permite a los hilos limitados por E/S mantener ocupados los dispositivos de E/S y al mismo tiempo dejar que los hilos limitados por computo usen los ciclos de CPU sobrantes en segundo plano. la ventana actual con la que el usuario está interactuando también recibe un aumento de prioridad para reducir su tiempo de respuesta. Además. punto de ruptura de depurador y paso individual de depurador. El despachador usa una cola para cada prioridad de planificación. Las prioridades se dividen en dos clases: la clase de tiempo real contiene hilos cuya prioridad va de 16 a 31. y si el hilo está en la clase de prioridad variable su prioridad se reduce. mientras que uno que estaba esperando una operación de disco recibirá un aumento moderado. La magnitud del aumento depende de qué estaba esperando el hilo. Sin embargo. este se interrumpe. Este despachador crea un registro de excepción 12 . Esta estrategia tiende a mejorar los tiempos de respuesta de los hilos interactivos que están usando el ratón y las ventanas. Si no encuentra ningún hilo listo. aunque nunca por debajo de la prioridad base. La expropiación proporciona al hilo de tiempo real acceso preferencial a la CPU cuando lo necesita. Si un hilo de tiempo real con prioridad más alta queda listo mientras se está ejecutando un hilo de más baja prioridad. el despachador ejecutará un hilo especial llamado hilo ocioso. instrucción privilegiada. porque no garantiza que un hilo de tiempo real comenzará a ejecutarse dentro de algún límite de tiempo específico. error de lectura de página. cuando un hilo termina o cuando una aplicación modifica la prioridad de un hilo o su afinidad por un procesador. NT no es un sistema operativo de tiempo real duro. el despachador de excepciones del núcleo maneja las demás. desbordamiento hacia infinito o hacia cero de punto flotante . desbordamiento de enteros. y recorre el conjunto de colas de la más alta a la más baja hasta encontrar un hilo que está listo para ejecutarse. el despachador aumenta su prioridad. Varios sistemas operativos de tiempo compartido han adoptado esta estrategia. Cuando se agota el cuanto de tiempo de un hilo. y la clase variable contiene hilos cuya prioridad va de 0 a 15. instrucción no válida. división entera entre cero. La reducción de la prioridad del hilo tiende a limitar el consumo de CPU por parte de los hilos limitados por CPU. éste será desalojado. violación de pagina guardia. NT define varias excepciones independientes de la arquitectura. rebase de cuota de archivo de paginación. que incluyen violación de acceso a memoria.El despachador usa un esquema de prioridades de 32 niveles para determinar el orden de ejecución de los hilos. incluido UNIX. El núcleo también maneja las trampas para excepciones e interrupciones generadas por hardware o software.

El manejo de excepciones es más complejo para los procesos en modo de usuario porque un subsistema de ambiente (como el sistema POSIX) puede establecer un puerto de depurador y un puerto de excepciones para cada proceso que crea. ocurre un error fatal del sistema y se presenta al usuario la temida “pantalla azul de la muerte” que significa un fallo del sistema. gestor de procesos. el despachador intenta encontrar un manejador de excepciones apropiado. Programa del Usuario Win32 El Resto de Windows Función Función Función Monolítico Bus Bus Hardware Abstraction Layer Hardware 13 . el despachador de excepciones se limita a invocar una rutina que localiza el manejador de excepciones correcto. gestor de memoria virtual. Si no se encuentra. EJECUTIVO El ejecutivo presta un conjunto de servicios que todos los subsistemas de entorno pueden usar. Si se registra un puerto de depurador. Si el puerto de depurador no se encuentra o no maneja esa excepción. recurso de llamadas a procedimientos locales. el manejador de excepciones envía la excepción al depurador. Cuando ocurre una excepción en modo núcleo. gestor de E/S y monitor de referencias de seguridad. Los servicios pertenecen a los siguientes grupos: gestor de objetos.que contiene la razón de la excepción y encuentra un manejador de excepciones que puede encargarse de ella.

Cabe mencionar que algunas de las funcionalidades de NTFS son desaprovechadas debido a limitaciones de aplicación del API de Win32. FAT32. FAT16. sistema de archivos de nueva tecnología).EL SISTEMA DE ARCHIVOS NTFS Para poder implementar muchos de los requerimientos de seguridad y desempeño necesarios para el ámbito empresarial en el que se planeaba que WinNT trabajara fue necesario desarrollar además un sistema de archivos dedicado. NTFS (versiones 4 y 5) Sistemas de archivos manejados por diferentes sistemas operativos En teoría esto permitiría a un sistema con WinNT utilizar particiones de disco de hasta 264 bytes (tamaño que en la práctica se reduce considerablemente). mientras que un tamaño de bloque más grande permite obtener mejor desempeño en las transferencias de datos. asi que se desarrolló el NTFS (New Technology File System. FAT32 FAT16. dependiendo del tamaño del volumen en cuestión. NTFS (versión 4) FAT. por este motivo la mayoría de 14 . tablas maestras de archivo). FAT32 FAT. En principio hay cuatro aspectos fundamentales a destacar de NTFS: • • • • Estructura interna Manejo de nombres de archivo Compresión de archivos Encriptación de datos Estructura Interna NTFS esta basado en el uso de bloques (clusters según la terminología usada por la documentación de Microsfot) y MFT’s (Master File Tables. Sistema operativo MS-DOS Windows 95 Windows 95 OSR2 Windows 98 Windows NT4 Windows 2000/XP Tipos de sistemas de archivos admitidos FAT16 FAT16 FAT16. Una partición de NTFS va a estar dividida en bloques de datos cuyo tamaño puede variar entre 512 bytes y 64 KB. no bastaba con mejorar el FAT y sus sucesores usados por la familia MS-DOS. Un tamaño de bloque más pequeño ayuda a disminuir la fragmentación.

Los siguientes registros describen los siguientes archivos de sistema: 3> 4> Datos del volumen: tamaño. en este caso. limitando de esta manera el riesgo de pérdida de datos por daños en los primeros sectores del disco. puede estar ubicada en cualquier parte del disco. Cada uno de estos registros guarda información sobre un archivo o directorio en particular. fechas de modificación. La principal estructura de organización de estos datos es la MFT. esto permite que la MFT crezca según haga falta hasta un máximo de 248 registros. Esta es una innovación con respecto a los sistemas FAT16/FAT32 y una característica de seguridad crítica que permite deshacer cambios hechos al sistema en caso de que sucedan errores críticos al aplicar estos cambios. ubicación en la cual van a guardarse estos datos. Si estos atributos son demasiado grandes como para ser almacenados en la MFT. Si un archivo es demasiado grande.las particiones NTFS utilizan un tamaño de bloque de 4 KB que sería un punto medio entre ambos extremos y sus ventajas. indicando donde están ubicadas los bloques que lo contienen de forma que el sistema pueda ubicarlo. Los registros del MFT son una secuencia de pares consistente en un encabezado con los atributos y un valor. además. lo cual es crítico en caso de que ocurra una falla en los primeros bloques que contienen. describiendo sus atributos (nombre. en su lugar se coloca un puntero a una dirección dentro del disco. eliminación y modificación de archivos y directorios). por este motivo el puntero a ese bloque se graba en el sector de arranque al instalar el sistema. El registro 1 es un duplicado de la primera parte de la MFT. una MFT (denominada registro base) va a apuntar a las MFT que contienen los registros de los bloques. El registro 2 es la bitácora del sistema. versión Atributos definidos para los archivos 15 . Una ventaja de este tipo de estructura es que al ser la MFT un archivo en si misma. Ahora bien. El registro 0 de la MFT se refiere al archivo de la tabla en si. etiqueta. una secuencia linear de registros de 1 KB. se puede hacer necesario el uso de más de una MFT para listar todos los bloques. etc) y una lista de direcciones que indican los bloques en los que la información del archivo esta almacenada. el cual registra todo cambio realizado a la estructura del sistema de archivos (como ser la creación. el sistema operativo también debe poder ubicar el primer bloque de la MFT para poder leerlo.

Atributo Información estándar Nombre del Archivo Descriptores de Seguridad Lista de atributos ID del objeto Reparse point Nombre del volumen Información del Volumen Índice de la raíz Almacenamiento del índice Mapa de bits Logged utility stream Datos Descripción Datos sobre el dueño del archivo.5> 6> 7> 8> 9> Directorio raíz Mapa de bits que representa los bloques usados Cargador de inicialización Lista de bloques defectuosos Descriptores de seguridad de los archivos 10 > Tabla de equivalencias de caracteres 11 > Listas de archivos con configuraciones varias 12 > Reservado para uso futuro (hasta el registro 15) 16 > Primer archivo del usuario Los atributos mencionados en el registro 4 pueden ser de 13 tipos. pero en caso de que no haya suficiente lugar para el contenido del atributo en el encabezado. fechas de modificación. ahora en $Extend$Secure Registros MFT adicionales. lo cual constituye un atributo no-residente (un ejemplo claro de este tipo de atributos es el atributo de datos). y por lo general se encuentran directamente después del encabezado correspondiente. esta se guarda en otro bloque del disco.3 para MS-DOS Obsoleto. lo cual es de gran utilidad para aplicaciones como editores de texto que 16 . Nombre del archivo en Unicode y versión 8. si fueran necesarios Identificador de 64 bits Usado para montar y para links simbólicos Nombre del volumen (solo usado en $Volumen) Versión del volumen (solo usado en $Volumen) Usado en directorios Usado en directorios de gran tamaño Usado en directorios de gran tamaño Controla el envío de datos a la bitácora del sistema Flujo de datos. puede repetirse El último atributo es de especial interés. ya que en NTFS un archivo puede tener varios flujos de datos asociados. en su lugar se encuentra la ubicación del mismo en el disco. etc.

Por ese motivo la elección de tandas de 16 sectores. Esto permite que dos archivos nunca sean encriptados usando la misma clave. Al leer el archivo. lo cual se logra mediante las direcciones de disco: una dirección de disco 0 indica que es la parte final de 16 bloques comprimidos ya que no es una dirección utilizable para el almacenamiento de datos. Encriptación de Archivos: En Win2000 se añade un sistema de encriptación de archivos basado en un driver llamado EFS (Encrypting File System) que se posiciona entre el NTFS y el proceso del usuario.aprovechan estos flujos paralelos para almacenar versiones temporales del archivo mientras esta siendo editado. Un archivo comprimido en NTFS se prepara mediante un análisis que determina si los primeros 16 bloques lógicos del mismo pueden ser almacenados en 16 o menos bloques. El sistema de encriptación funciona mediante una clave de 128 bits que es generada al azar. lo 17 . realiza una serie de llamadas que le permiten acceder a las tablas MFT que contienen las direcciones de los bloques de disco que contienen los datos del archivo. Esta segunda encriptación se realiza con una clave pública cuya ubicación esta dada por información en el registro. Para poder leer un bloque al azar de un archivo comprimido es necesario hacer una descompresión completa del archivo antes. Para garantizar el acceso al archivo la primera vez que el usuario encripta un archivo. Compresión de archivos: NTFS soporta compresión de archivos transparente. se genera una dupla consistente de la clave privada y la clave pública la cual es encriptada mediante una clave derivada de la contraseña del usuario. no los comprime y chequea los siguientes 16 bloques y sucesivamente. La búsqueda de archivos se maneja a nivel del kernel el cual. esto significa que los procesos que usan esos archivos no están al tanto de que los archivos han sido comprimidos y que previo a su uso se los debió descomprimir. al recibir una orden de buscar y abrir un archivo. ya que permite un punto medio entre efectividad al comprimir y rapidez de acceso a los contenidos del archivo. NTFS indaga cuáles bloques están comprimidos y cuáles no. si eso no es posible. Esta clave se usada para encriptar el archivo en cuestión y luego a su vez la clave es encriptada y guardada en el disco para su uso posterior. Manejo de nombres de archivos: Los nombres de archivos en NTFS pueden tener hasta 255 caracteres y las rutas de acceso a los archivos pueden tener hasta 32767 caractéres. permitiendo que el proceso de encriptación sea transparente para los procesos y que NTFS esté apenas involucrado en el proceso.

lo cual asegura en cierta manera que si el equipo o el disco duro son robados. 18 . Este sistema tiene algunas fallas cuando un usuario intenta compartir archivos con otros debido a que no es posible compartir todas las claves necesarias. las claves se mantienen encriptadas. El uso de archivos compartidos no es soportado por EFS. pero nada impide que estos sea posible en el futuro.que permite que el EFS obtenga las claves de desencriptación al iniciarse la sesión del usuario. imposibilitando de esta manera el acceso a los archivos. las cuales guarda mientras el equipo se mantenga encendido y se borran al apagarse el mismo.

S: “SISTEMAS OPERATIVOS MODERNOS”. Tercera Edición. México 2009. 11.BIBLIOGRAFÍA → TANENBAUM. PEARSON EDUCACIÓN.23.S: “SISTEMAS OPERATIVOS MODERNOS”. A. A. P.: “SISTEMAS OPERATIVOS” ADDISON WESLEY LONGMAN. PEARSON EDUCACIÓN. Cap. → TANENBAUM. Y BAERS. 19 . México 2003. A. Cap. Cap. Cap. → SILBERSCHATZ. Segunda Edición. 11. 4. MÉXICO 1999.