SlideShare una empresa de Scribd logo
Capitulo 22:Windows XP
	Objetivo del capituloExplorar los principios en los que se basa el diseño de Windows XP y los componentes específicos que forman el sistemaComprender como Windows XP puede ejecutar programas diseñados para otros sistemas operativos.Proporcionar unas explicaciones detalladas del sistema de archivos de Windows XPIlustrar los protocolos de red soportados en Windows XPAnalizar la interfaz disponible para los programadores de sistemas y aplicaciones.
Windows XPEl sistema operativo Windows XP es un sistema operativo multitarea apropiativo de 32/64-bits para los microprocesadores.Los objetivos clave del sistema operativo son la:SeguridadFiabilidadFacilidad de usoCompatibilidad de aplicacionesAltas prestacionesAplicabilidad
En 1988 Microsoft decidió comenzar de nuevo y desarrollar un SO portable basado en una nueva tecnología que soporta la interfaz de programación de aplicaciones tanto de OS/2 como de POSIXOriginalmente, el equipo de desarrollo pretendía usar para NT la API OS/2 como entorno nativo, pero durante el desarrollo NT fue modificado para utilizar la API Windows de 32 bits como resultado de la popularidad de Windows 3.0Historia
Principios de diseñoSeguridad: Los objetivos de seguridad de Windows XP requerían algo mas que una simple adherencia a los estándares que permitieron que Windows NT 4.0 recibiera una clasificación de seguridad C-2Portabilidad: Un SO es portable si se le puede desplazar de una arquitectura hardware a otra con un numero de cambios relativamente pequeño
Fiabilidad: XP utiliza la protección de hardware para la memoria virtual, y los mecanismos de protección de software para el funcionamiento de los recursos del sistema.Compatibilidad: las aplicaciones que siguen el estándar IEEE 1003.1 (POSIX) estándar puede ser cumplido para funcionar en XP sin cambiar el código fuente.Rendimiento: Los Subsistemas de XP pueden comunicarse entre sí a través de mensajes de alto rendimiento 
Arquitectura XPCapas del sistema de módulosModo protegido: Los niveles principales son el nivel HAL, el KERNEL y el subsistema ejecutivoModo usuario: se clasifican en dos categorías:-Los subsistemas de entorno-Subsistemas de protección
Arquitectura de XP
“Componentes del sistema”KernelEl Kernel de XP proporciona la base para el ejecutivo y para los distintos subsistemas.El kernel permanece cargado en memoria y su ejecución nunca puede ser desalojada.Responsabilidades principales:-Planificación de hebras-Tratamiento de interrupciones-Excepciones-Sincronización del procesador a bajo nivel-Recuperación después de un fallo de alimentación.
El kernel esta orientado a objetos, utiliza dos conjuntos de objetos:-Despachador de Kernel: sus principales responsabilidades son la planificación de hebras, la implementación de primitivas de sincronización, la gestión de temporizadores, las interrupciones de software.-Hebras y planificación: XP utiliza procesos y hebras para estructurar el código ejecutable.
Kernel-proceso y subprocesosEl proceso tiene un espacio de direcciones de memoria virtual (como una prioridad de base) Cada hebra tiene su propio estado, incluyendo una prioridad, la afinidad del procesador, y la información contable. Cada hebra tiene su propio estado, incluyendo una prioridad, la afinidad del procesador, y la información contable.Los seis posibles estados de las hebras son: preparada, lista, en ejecución, en espera. En transición y terminada
Kernel-ProgramaciónEl despachador utiliza un esquema de prioridades de 32 niveles para determinar el orden de ejecución de las hebras.Las prioridades se dividen en dos clases:La clase variable contiene hebras cuyas prioridades van de 0 a 15 mientras que la clase de tiempo real contiene hebras cuyas prioridades están comprendidas entre 16 y 31
Kernel-Programación (Cont.)Las decisiones de planificación se toman cuando una hebra entra en el estado de preparada o de espera, cuando una hebra termina o cuando una aplicación modifica la prioridad o la afinidad del procesador de una cierta hebra.XP no es un sistema operativo de tiempo real estricto, porque no garantiza que una hebra de tiempo real pueda comenzar a ejecutarse dentro de un limite de tiempo concreto.
Niveles de solicitud de interrupción de Windows XP
Tabla de despacho de interrupcionesXP mantiene una tabla de despacho de interrupciones separada para cada procesadorTodas las interrupciones con un nivel igual o inferior estarán bloqueadas hasta que el IRQL sea reducido por una hebra de nivel del Kernel.XP aprovecha esta propiedad y utiliza las interrupciones software para realizar llamadas APC y DPC, para realizar funciones del sistema tales como la sincronización de hebras con la terminación de las operaciones E/S
Sistema ejecutivoXP proporciona un conjunto de servicios utilizado por todos los subsistemas de entorno.Los servicios se agrupan: -Gestor de objetos-Gestor de memoria virtual-Gestor de procesos-Monitor de referencia de seguridad.Los objetos son manipulados por un conjunto estándar de métodos: namely create, open, close, delete, query name, parseand security.
Gestor de objetosEl gestor de objetos mantiene el entorno de nombres de XP. A diferencia de UIX que asocia el espacio de nombres del sistema con el sistema de archivosXP utiliza un espacio de nombres abstracto y conecta los sistemas de archivos como dispositivosCada objeto está protegido por una lista de control de acceso.
Gestor de memoria virtualEl componente ejecutivo que gestiona el espacio virtual de direcciones, la asignación de memoria física y la paginación es el gestor de memoria virtual (VM virtual memory)El gestor VM en XP utiliza un esquema de gestión basado en pagina con un tamaño de  pagina de 4KBEl gestor VM de XP utiliza un proceso en dos pasos para asignar la memoria al usuario1.- reserva una parte del espacio virtual de direcciones del proceso2.-confirma la asignación, asignando espacio de memoria virtual
Disposición de las tablas de paginas
Gestor de memoria virtualEl diseño del gestor VM asume que el hardware subyacente da soporte a la traducción de direcciones virtuales a físicas.-Utiliza un esquema  de gestion basado en pagina con un tamaño de pagina de 4KB e-Un número entero de 10 bits puede representar todos los valores de 0 a 1023, por lo tanto, puede seleccionar cualquier entrada en el directorio de la página, o en una tabla de páginas.Esta propiedad se utiliza cuando se traduce un indicador de la dirección virtual a una dirección libre en la memoria física.
Traducción de direcciones virtuales a físicas en la arquitectura IA32
Entrada de la tabla de paginas del archivo de paginasEl bit valido/invalido es cero
Gestor de procesosProvee servicios para crear, eliminar, y el uso de las discusiones yprocesos
Funcionalidad de llamadas a procedimientos localesEl SO utiliza la funcionalidad de llamada a procedimiento local (LPC, local procedurecall) para intercambiar solicitudes y resultados entre los procesos cliente y servidor dentro de una misma maquina.Cuando se crea un canal LPC, debe especificarse una de tres posibles técnicas de paso de mensajes-1.-la primer técnica es adecuada para mensajes de pequeño tamaño (hasta un par de cientos de bytes)-2.-la segunda técnica se emplea para mensajes de mayor tamaño-3.-La tercera técnica utiliza las API que leen y escriben directamente en el espacio de direcciones de un proceso
Gestor de  E/SEl gestor de E/S es responsable de los sistemas de archivos, controladores de dispositivos y controladores de red.Se encarga de controlar que controladores de dispositivo, controladores de filtrado y sistemas de archivos se han cargadoGestiona los búferes para las solicitudes de E/S
E/S  de archivo
Monitor de referencia de seguridadLa centralización de la gestión de las entidades del sistema en el gestor de objetos permite a Windows XP utilizar un mecanismo uniforme para llevar a cabo las validaciones de acceso en tiempo de ejecuciónCada vez que un proceso abre un descriptor de un objeto, el monitor de referencia de seguridad comprueba el testigo de seguridad del proceso y la lista de control de acceso del objeto para ver si el proceso tiene los derechos necesarios
Gestores plug-and-play y de administración de energíaEl SO utiliza el gestor plug-and-play para reconocer los cambios en la configuración hardware y adaptarse a los mismos.El gestor PnP gestiona la configuración dinámica de la forma siguiente: en primer lugar, obtiene una lista de dispositivos de cada controlador de bus (ej: PCI, USB)
Subsistemas de entornoLos subsistemas de entorno son procesos en modo usuario apilados sobre los servicios ejecutivos nativos de Windows XP y que permiten a XP desarrollar programas desarrollados para otros SO.Windows XP utiliza el subsistema API Win32 como el principal entorno de operación.El entorno MS-DOS no tiene la complejidad de los otros subsistemas de entorno de XP
Entornos de subsistemasEl entorno de ejecución Win16 se proporciona mediante una VDM que incorpora un software adicional denominado Windows on Windows (WOW32 para las aplicaciones de 16 bits)El subsistema POSIX está diseñado para ejecutar aplicaciones siguiendo el estándar POSIX POSIX.1 que se basa en el modelo de UNIX.
Sistema de archivosLa estructura fundamental del sistema de archivos XP (NTFS) es un volumenCreado por la utilidad de administrador de disco de XP - Sobre la base de una partición de disco lógica.
Sistema de archivos-Diseño interiorNTFS utiliza números lógicos de cluster como direcciones de disco.Un archivo en NTFS no es un simple flujo de bytes como en MS-DOS o UNIX en lugar de ello, es un objeto estructurado compuesto de atributos con tipo.Todos los archivos NTFS se describen mediante uno o mas registros dentro de una matriz almacenada en un archivo especial denominado tabla maestra de archivos.
RecuperaciónEn muchos sistemas de archivos simples, un fallo de alimentación en el instante incorrecto puede dañar las estructuras de datos del sistema de archivos tan gravemente que el volumen completo resulta corrompido.Antes de una estructura de datos se modifica, la operación escribe una Log Record que contiene rehacer y deshacer la información.Después de la estructura de datos se ha modificado, una confirmación de registro se escribe en el registro para indicar que la operación tuvo éxito.Después de un accidente, las estructuras del sistema de archivos de datos se puede restaurar a un estado coherente de la transformación de los registros.
Recuperación de archivosEste esquema no garantiza que todos los datos del archivo de usuario puedan ser recuperados después de un accidente, al igual que los datos del sistema de archivos las estructuras  están en buen estado y reflejan un estado coherenteantes del accidente.El registro se almacena en el archivo de metadatos 
SeguridadLa seguridad de un volumen NTFS se deriva del modelo de objetos de Windows XP.Cada archivo NTFS hace referencia a un descriptor de seguridad, que contiene el testigo de acceso del propietario del archivo y una lista de control de acceso, que indica los privilegios de acceso concedidos a cada usuario que tenga acceso al archivo.
Gestión de volúmenes y tolerancia a fallosFtDisk es el controlador  de disco tolerante a fallos de Windows XPCuando se instala, proporciona diversas maneras de combinar múltiples unidades de disco en un único volumen lógico, para mejorar las prestaciones, la capacidad o la fiabilidad.
Conjunto de volúmenes con dos unidades
Conjunto de distribución en bandas con dos discos
Conjunto de distribución en bandas con paridad, utilizando tres discos
Conjunto espejo con dos unidades de disco
Compresión y cifradoNTFS puede comprimir los datos de archivos individuales o todos los archivos de datos de un directorio.Para comprimir un archivo, NTFS divide los datos del archivo en unidades de compresión, que son bloques de 16 clusters contiguos.Cuando se escribe cada unidad de compresión, se aplica un algoritmo de compresión de datos.Si el resultado cabe en menos de 16 clusters, se almacena la versión comprimida.
Puntos de montajeLos puntos de montaje son un tipo de enlace simbólico específicos de los directorios de NTFS proporcionan un mecanismo para que los administradores organicen los volúmenes de disco de una forma mas flexible que utilizando nombres globales.
Conexión de redWindows XP permite utilizar tanto redes entre iguales (peer-to-peer) como redes cliente-servidor.También dispone de funcionalidades para la gestión de red-Los componentes de red de Windows XP proporcionan mecanismos de transporte de datos, comunicación interprocesos, compartición de archivos atreves de la red y envió de trabajos a impresoras remotas.
Interfaces de redEl protocolo SMB fue introducido por primera vez en MS-DOS el sistema emplea el protocolo para enviar solicitudes 770XP implementa los protocolos de transporte como controladores.El protocolo NetBIOS es una interfaz de abstracción hardware para redes, análoga a la interfaz de abstracción hardware BIOS desarrollada para las maquinas de tipo PC que ejecutan MS-DOS
Interfaces de redXP utiliza NetBEUI cuando quiere compartir recursos en estas redes.XP emplea TCP/IP para conectarse con una amplia variedad de sistemas operativos y plataformas hardware.El protocolo PPTP es un protocolo proporcionado por Windows XP para poder comunicar módulos de servidor de acceso remoto que se ejecuten en maquinas de servidor XP con otros sistemas cliente que este conectado a través de internet.
Mecanismos de procesamiento distributivoAunque XP no es un sistema operativo distribuido, si que permite utilizar aplicaciones distribuidas. Entre los mecanismos que dan soporte al procesamiento distribuido en XP podemos citar NetBIOS, las popes con nombre y los buzones de correo, los sockets de Windows, el mecanismo RPC, el lenguaje de definición de interfaces de Microsoft y finalmente COM
Redirectores y servidoresEn XP una aplicación puede utilizar la API de E/S de Windows XP para acceder a archivos de una computadora remota como si fueran locales.Un redirector es el objeto del lado cliente que re-envía las solicitudes de E/S relativas a archivos remotos, solicitudes que serán satisfechas por un servidorPara mejorar las prestaciones y la seguridad, los redirectores y servidores se ejecutan en modo kernel.
Acceso a un archivo remotoLa aplicación invoca al gestor de E/S para solicitar que se abra un archivo con un nombre de archivo en formato UNC estándar.El gestor de E/S construye un paquete de solicitudes de E/SEl gestor de E/S detecta que el acceso se refiere a un archivo remoto e invoca un controlador denominado proveedor múltiple UNCEl MUP envía el paquete de solicitud de E/S asíncronamente a todos los redirectores registrados.Un redirector que pueda satisfacer la solicitud responderá al MUP.El redirector envía la solicitud de red al sistema remoto.
Acceso a un archivo remotoLos controladores de red del sistema remoto reciben la solicitud y la pasan al controlador de servidorEl controlador del servidor entrega la solicitud al controlador apropiado del sistema de archivos localSe invoca el controlador de dispositivo apropiado para acceder a los datosLos resultados se devuelven al controlador del servidor, el cual los envía al redirector solicitante
DominiosXP es un grupo de estaciones de trabajo y servidores XP que comparte una política de seguridad y una base de datos de usuarios comunes.La versiones anteriores de NT utilizaban la idea de controladores de dominio principales y de reserva, ahora todos los servidores de un dominio son controladores de dominio.
Resolución de nombre de redes TCP/IPEn una red IP, la resolución de nombres es el proceso de convertir un nombre de computadora en una dirección IP como por ejemplo traduciendo www.bell-labs.com a 135.104.1.14Windows XP proporciona varios métodos de resolución de nombres, incluyendo WINS, resolución de nombre de difusión, DNS un archivo de HOSTS y un archivo LMHOSTS
Resolución de nombreEn WINS, dos o mas servidores WINS mantienen una base de datos dinámica de correspondencias entre nombres y direcciones IPWINS utiliza el protocolo DHCP actualiza automáticamente las configuraciones de direcciones en la base de datos WINS, sin que el usuario o el administrador  intervengan.
Acceso a los objetos de KernelEl kernel de XP proporciona muchos servicios que los programas de aplicación puedan utilizar.Un proceso obtiene acceso a un objeto de Kernel denominado XXX llamando a la función Create XXX para abrir un descriptor de XXXXP proporciona 3 formas para compartir objetos entre los procesosUn proceso hijo herede un descriptor del objeto
Cuando el padre invoca a la función CreateXXX suministra una estructura SECURITIES_ATTRIBUTES con el campo bInherit-HandleEste campo crea un descriptor heredableSe crea el proceso hijo pasando un valor TRUE al argumento bInheritHandle de la función CreatePorcedure
Gestión de procesosLa API Win32 utiliza cuatro clases de prioridad1. IDLE_PRIORITY_CLASS (nivel de prioridad 4)2. NORMAL_PRIORITY_CLASS (nivel de prioridad 8)3. HIGH_PRIORITY_CLASS (nivel de prioridad 13)4. REALTIME_PRIORITY_CLASS (nivel de prioridad 24)XP tiene una regla especial de planificación para los procesos de la clase NORMAL_PRIORITY_CLASSXP distingue entre el proceso de primer plano que esta actualmente seleccionado en la pantalla y los procesos de segundo plano que no están actualmente seleccionados.
Gestión de procesosEl Kernel ajusta la prioridad de una hebra dinámicamente, dependiendo de si la hebra eta limitada por E/S o por CPUPara sincronizar el acceso concurrente a los objetos compartido por parte de las hebras, el kernel proporciona objetos de sincronización como semáforos y objetos mutexAdemás, puede conseguirse la sincronización de hebras utilizando las funciones WaitForSingleObject() y WaitForMultiplesObjects ()
Gestión de procesosUna fibra es un codigo en modo usuario que se planifica de acuerdo con un algoritmo de planificación definido por el usuario.Solo esta permitido que se ejecute una fibra cada vezEste mecanismo se incluye en XP para facilitar la tarea de portar las aplicaciones UNIX heredadas que hubieran sido escritas para un modelo de ejecución basado en fibras
Comunicación interprocesosLas aplicaciones API Win32 gestionan la comunicación interprocesos de varias formas distintas. Una forma es compartiendo objetos de KernelOtra posible forma consiste en pasar mensajes, una técnica que resulta especialmente popular en las aplicaciones GUI WindowsUna hebra puede enviar un mensaje a otra hebra o a una ventanaUna hebra puede enviar datos dentro del mensaje
Gestión de memoriaMemoria virtual:Una aplicación invoca VirtualAlloc() para reservar o confirmar memoria virtual y VirtualFree() para anular la reserva o liberar la memoria.Una aplicación puede utilizar la memoria mediante la asignación de memoria de un archivo en su espacio de direcciones- proceso de varias etapas- dos procesos comparten la memoria mediante la asignación de la misma en su archivo de memoria virtual
Cúmulos de memoriaLos cúmulos de memoria proporcionan una tercera forma de utilización de memoria por parte de las aplicaciones.Cuando un proceso API Win32 se inicializa, se crea con un cumulo de memoria predeterminado de un 1 MB.Las funciones que utilizan datos globales o estáticos no suelen funciona adecuadamente en entornos multihebra
Fin del capitulo 22

Más contenido relacionado

PPTX
Kernel De Windows
DOCX
Arquitectura de los sistemas operativos
PDF
Kernel de los sistemas operativos
DOCX
El kernel en los sistemas operativos
PPTX
PDF
Kernel de Windows PDF
PPSX
Arquitectura sistema operativo-conceptos_b_sicos_sobre_s.o2
PPTX
Dionisio 123
Kernel De Windows
Arquitectura de los sistemas operativos
Kernel de los sistemas operativos
El kernel en los sistemas operativos
Kernel de Windows PDF
Arquitectura sistema operativo-conceptos_b_sicos_sobre_s.o2
Dionisio 123

La actualidad más candente (20)

DOCX
Qué es el kernel
PDF
Reporte windows8
PPTX
Arquitectura de los sistemas operativos
PDF
So 03-estructura del so-6x1
PPTX
Clase 1 conceptos básicos de los SO
PPTX
Arquitectura del sistema operativo windows
PPTX
Capitulo 22 windows XP
PPTX
Arquitectura sistemas operativos
PPTX
Arquitectura y caracteristicas de los sistemas operativos windows
PPTX
Arquitectura del sistema operativo windows
PDF
Arquitectura General del Sistema Operativo Linux
PPTX
Que es el kernel o nucleo
PPTX
Guia de los Sistemas Operativos
DOCX
Taller so
DOC
arquitectura-de-linux
DOCX
DEFINICIÓN DE WINDOWS XP Y ARQUITECTURA
PDF
Bii t03 - sistemas operarivos. windows, linux y unix
DOCX
Practica4
DOCX
Lizet
PPTX
Mac osx
Qué es el kernel
Reporte windows8
Arquitectura de los sistemas operativos
So 03-estructura del so-6x1
Clase 1 conceptos básicos de los SO
Arquitectura del sistema operativo windows
Capitulo 22 windows XP
Arquitectura sistemas operativos
Arquitectura y caracteristicas de los sistemas operativos windows
Arquitectura del sistema operativo windows
Arquitectura General del Sistema Operativo Linux
Que es el kernel o nucleo
Guia de los Sistemas Operativos
Taller so
arquitectura-de-linux
DEFINICIÓN DE WINDOWS XP Y ARQUITECTURA
Bii t03 - sistemas operarivos. windows, linux y unix
Practica4
Lizet
Mac osx
Publicidad

Similar a Capitulo 222 (20)

PPTX
Jacqueline CH y Diana U
PPT
Sistemas Operativos
PDF
Informe de sistemas operativos
PDF
PPTX
PPTX
PPTX
PPT
Sistemas operativos software
PPTX
Uc1 ec2
PPTX
Sistemas operativos tarea 3
PPT
sistema operativos
PDF
rojas landa vanessa.pdf
PDF
Sistemas operativos
PPTX
Trabajo
PPTX
Trabajo
PPTX
Sistemas operativos
DOCX
Sistemas operativos
PPTX
Diapositivas
PPTX
Kekekekeviiiinnnnnn
PPTX
windows
Jacqueline CH y Diana U
Sistemas Operativos
Informe de sistemas operativos
Sistemas operativos software
Uc1 ec2
Sistemas operativos tarea 3
sistema operativos
rojas landa vanessa.pdf
Sistemas operativos
Trabajo
Trabajo
Sistemas operativos
Sistemas operativos
Diapositivas
Kekekekeviiiinnnnnn
windows
Publicidad

Capitulo 222

  • 2. Objetivo del capituloExplorar los principios en los que se basa el diseño de Windows XP y los componentes específicos que forman el sistemaComprender como Windows XP puede ejecutar programas diseñados para otros sistemas operativos.Proporcionar unas explicaciones detalladas del sistema de archivos de Windows XPIlustrar los protocolos de red soportados en Windows XPAnalizar la interfaz disponible para los programadores de sistemas y aplicaciones.
  • 3. Windows XPEl sistema operativo Windows XP es un sistema operativo multitarea apropiativo de 32/64-bits para los microprocesadores.Los objetivos clave del sistema operativo son la:SeguridadFiabilidadFacilidad de usoCompatibilidad de aplicacionesAltas prestacionesAplicabilidad
  • 4. En 1988 Microsoft decidió comenzar de nuevo y desarrollar un SO portable basado en una nueva tecnología que soporta la interfaz de programación de aplicaciones tanto de OS/2 como de POSIXOriginalmente, el equipo de desarrollo pretendía usar para NT la API OS/2 como entorno nativo, pero durante el desarrollo NT fue modificado para utilizar la API Windows de 32 bits como resultado de la popularidad de Windows 3.0Historia
  • 5. Principios de diseñoSeguridad: Los objetivos de seguridad de Windows XP requerían algo mas que una simple adherencia a los estándares que permitieron que Windows NT 4.0 recibiera una clasificación de seguridad C-2Portabilidad: Un SO es portable si se le puede desplazar de una arquitectura hardware a otra con un numero de cambios relativamente pequeño
  • 6. Fiabilidad: XP utiliza la protección de hardware para la memoria virtual, y los mecanismos de protección de software para el funcionamiento de los recursos del sistema.Compatibilidad: las aplicaciones que siguen el estándar IEEE 1003.1 (POSIX) estándar puede ser cumplido para funcionar en XP sin cambiar el código fuente.Rendimiento: Los Subsistemas de XP pueden comunicarse entre sí a través de mensajes de alto rendimiento 
  • 7. Arquitectura XPCapas del sistema de módulosModo protegido: Los niveles principales son el nivel HAL, el KERNEL y el subsistema ejecutivoModo usuario: se clasifican en dos categorías:-Los subsistemas de entorno-Subsistemas de protección
  • 9. “Componentes del sistema”KernelEl Kernel de XP proporciona la base para el ejecutivo y para los distintos subsistemas.El kernel permanece cargado en memoria y su ejecución nunca puede ser desalojada.Responsabilidades principales:-Planificación de hebras-Tratamiento de interrupciones-Excepciones-Sincronización del procesador a bajo nivel-Recuperación después de un fallo de alimentación.
  • 10. El kernel esta orientado a objetos, utiliza dos conjuntos de objetos:-Despachador de Kernel: sus principales responsabilidades son la planificación de hebras, la implementación de primitivas de sincronización, la gestión de temporizadores, las interrupciones de software.-Hebras y planificación: XP utiliza procesos y hebras para estructurar el código ejecutable.
  • 11. Kernel-proceso y subprocesosEl proceso tiene un espacio de direcciones de memoria virtual (como una prioridad de base) Cada hebra tiene su propio estado, incluyendo una prioridad, la afinidad del procesador, y la información contable. Cada hebra tiene su propio estado, incluyendo una prioridad, la afinidad del procesador, y la información contable.Los seis posibles estados de las hebras son: preparada, lista, en ejecución, en espera. En transición y terminada
  • 12. Kernel-ProgramaciónEl despachador utiliza un esquema de prioridades de 32 niveles para determinar el orden de ejecución de las hebras.Las prioridades se dividen en dos clases:La clase variable contiene hebras cuyas prioridades van de 0 a 15 mientras que la clase de tiempo real contiene hebras cuyas prioridades están comprendidas entre 16 y 31
  • 13. Kernel-Programación (Cont.)Las decisiones de planificación se toman cuando una hebra entra en el estado de preparada o de espera, cuando una hebra termina o cuando una aplicación modifica la prioridad o la afinidad del procesador de una cierta hebra.XP no es un sistema operativo de tiempo real estricto, porque no garantiza que una hebra de tiempo real pueda comenzar a ejecutarse dentro de un limite de tiempo concreto.
  • 14. Niveles de solicitud de interrupción de Windows XP
  • 15. Tabla de despacho de interrupcionesXP mantiene una tabla de despacho de interrupciones separada para cada procesadorTodas las interrupciones con un nivel igual o inferior estarán bloqueadas hasta que el IRQL sea reducido por una hebra de nivel del Kernel.XP aprovecha esta propiedad y utiliza las interrupciones software para realizar llamadas APC y DPC, para realizar funciones del sistema tales como la sincronización de hebras con la terminación de las operaciones E/S
  • 16. Sistema ejecutivoXP proporciona un conjunto de servicios utilizado por todos los subsistemas de entorno.Los servicios se agrupan: -Gestor de objetos-Gestor de memoria virtual-Gestor de procesos-Monitor de referencia de seguridad.Los objetos son manipulados por un conjunto estándar de métodos: namely create, open, close, delete, query name, parseand security.
  • 17. Gestor de objetosEl gestor de objetos mantiene el entorno de nombres de XP. A diferencia de UIX que asocia el espacio de nombres del sistema con el sistema de archivosXP utiliza un espacio de nombres abstracto y conecta los sistemas de archivos como dispositivosCada objeto está protegido por una lista de control de acceso.
  • 18. Gestor de memoria virtualEl componente ejecutivo que gestiona el espacio virtual de direcciones, la asignación de memoria física y la paginación es el gestor de memoria virtual (VM virtual memory)El gestor VM en XP utiliza un esquema de gestión basado en pagina con un tamaño de pagina de 4KBEl gestor VM de XP utiliza un proceso en dos pasos para asignar la memoria al usuario1.- reserva una parte del espacio virtual de direcciones del proceso2.-confirma la asignación, asignando espacio de memoria virtual
  • 19. Disposición de las tablas de paginas
  • 20. Gestor de memoria virtualEl diseño del gestor VM asume que el hardware subyacente da soporte a la traducción de direcciones virtuales a físicas.-Utiliza un esquema de gestion basado en pagina con un tamaño de pagina de 4KB e-Un número entero de 10 bits puede representar todos los valores de 0 a 1023, por lo tanto, puede seleccionar cualquier entrada en el directorio de la página, o en una tabla de páginas.Esta propiedad se utiliza cuando se traduce un indicador de la dirección virtual a una dirección libre en la memoria física.
  • 21. Traducción de direcciones virtuales a físicas en la arquitectura IA32
  • 22. Entrada de la tabla de paginas del archivo de paginasEl bit valido/invalido es cero
  • 23. Gestor de procesosProvee servicios para crear, eliminar, y el uso de las discusiones yprocesos
  • 24. Funcionalidad de llamadas a procedimientos localesEl SO utiliza la funcionalidad de llamada a procedimiento local (LPC, local procedurecall) para intercambiar solicitudes y resultados entre los procesos cliente y servidor dentro de una misma maquina.Cuando se crea un canal LPC, debe especificarse una de tres posibles técnicas de paso de mensajes-1.-la primer técnica es adecuada para mensajes de pequeño tamaño (hasta un par de cientos de bytes)-2.-la segunda técnica se emplea para mensajes de mayor tamaño-3.-La tercera técnica utiliza las API que leen y escriben directamente en el espacio de direcciones de un proceso
  • 25. Gestor de E/SEl gestor de E/S es responsable de los sistemas de archivos, controladores de dispositivos y controladores de red.Se encarga de controlar que controladores de dispositivo, controladores de filtrado y sistemas de archivos se han cargadoGestiona los búferes para las solicitudes de E/S
  • 26. E/S de archivo
  • 27. Monitor de referencia de seguridadLa centralización de la gestión de las entidades del sistema en el gestor de objetos permite a Windows XP utilizar un mecanismo uniforme para llevar a cabo las validaciones de acceso en tiempo de ejecuciónCada vez que un proceso abre un descriptor de un objeto, el monitor de referencia de seguridad comprueba el testigo de seguridad del proceso y la lista de control de acceso del objeto para ver si el proceso tiene los derechos necesarios
  • 28. Gestores plug-and-play y de administración de energíaEl SO utiliza el gestor plug-and-play para reconocer los cambios en la configuración hardware y adaptarse a los mismos.El gestor PnP gestiona la configuración dinámica de la forma siguiente: en primer lugar, obtiene una lista de dispositivos de cada controlador de bus (ej: PCI, USB)
  • 29. Subsistemas de entornoLos subsistemas de entorno son procesos en modo usuario apilados sobre los servicios ejecutivos nativos de Windows XP y que permiten a XP desarrollar programas desarrollados para otros SO.Windows XP utiliza el subsistema API Win32 como el principal entorno de operación.El entorno MS-DOS no tiene la complejidad de los otros subsistemas de entorno de XP
  • 30. Entornos de subsistemasEl entorno de ejecución Win16 se proporciona mediante una VDM que incorpora un software adicional denominado Windows on Windows (WOW32 para las aplicaciones de 16 bits)El subsistema POSIX está diseñado para ejecutar aplicaciones siguiendo el estándar POSIX POSIX.1 que se basa en el modelo de UNIX.
  • 31. Sistema de archivosLa estructura fundamental del sistema de archivos XP (NTFS) es un volumenCreado por la utilidad de administrador de disco de XP - Sobre la base de una partición de disco lógica.
  • 32. Sistema de archivos-Diseño interiorNTFS utiliza números lógicos de cluster como direcciones de disco.Un archivo en NTFS no es un simple flujo de bytes como en MS-DOS o UNIX en lugar de ello, es un objeto estructurado compuesto de atributos con tipo.Todos los archivos NTFS se describen mediante uno o mas registros dentro de una matriz almacenada en un archivo especial denominado tabla maestra de archivos.
  • 33. RecuperaciónEn muchos sistemas de archivos simples, un fallo de alimentación en el instante incorrecto puede dañar las estructuras de datos del sistema de archivos tan gravemente que el volumen completo resulta corrompido.Antes de una estructura de datos se modifica, la operación escribe una Log Record que contiene rehacer y deshacer la información.Después de la estructura de datos se ha modificado, una confirmación de registro se escribe en el registro para indicar que la operación tuvo éxito.Después de un accidente, las estructuras del sistema de archivos de datos se puede restaurar a un estado coherente de la transformación de los registros.
  • 34. Recuperación de archivosEste esquema no garantiza que todos los datos del archivo de usuario puedan ser recuperados después de un accidente, al igual que los datos del sistema de archivos las estructuras  están en buen estado y reflejan un estado coherenteantes del accidente.El registro se almacena en el archivo de metadatos 
  • 35. SeguridadLa seguridad de un volumen NTFS se deriva del modelo de objetos de Windows XP.Cada archivo NTFS hace referencia a un descriptor de seguridad, que contiene el testigo de acceso del propietario del archivo y una lista de control de acceso, que indica los privilegios de acceso concedidos a cada usuario que tenga acceso al archivo.
  • 36. Gestión de volúmenes y tolerancia a fallosFtDisk es el controlador de disco tolerante a fallos de Windows XPCuando se instala, proporciona diversas maneras de combinar múltiples unidades de disco en un único volumen lógico, para mejorar las prestaciones, la capacidad o la fiabilidad.
  • 37. Conjunto de volúmenes con dos unidades
  • 38. Conjunto de distribución en bandas con dos discos
  • 39. Conjunto de distribución en bandas con paridad, utilizando tres discos
  • 40. Conjunto espejo con dos unidades de disco
  • 41. Compresión y cifradoNTFS puede comprimir los datos de archivos individuales o todos los archivos de datos de un directorio.Para comprimir un archivo, NTFS divide los datos del archivo en unidades de compresión, que son bloques de 16 clusters contiguos.Cuando se escribe cada unidad de compresión, se aplica un algoritmo de compresión de datos.Si el resultado cabe en menos de 16 clusters, se almacena la versión comprimida.
  • 42. Puntos de montajeLos puntos de montaje son un tipo de enlace simbólico específicos de los directorios de NTFS proporcionan un mecanismo para que los administradores organicen los volúmenes de disco de una forma mas flexible que utilizando nombres globales.
  • 43. Conexión de redWindows XP permite utilizar tanto redes entre iguales (peer-to-peer) como redes cliente-servidor.También dispone de funcionalidades para la gestión de red-Los componentes de red de Windows XP proporcionan mecanismos de transporte de datos, comunicación interprocesos, compartición de archivos atreves de la red y envió de trabajos a impresoras remotas.
  • 44. Interfaces de redEl protocolo SMB fue introducido por primera vez en MS-DOS el sistema emplea el protocolo para enviar solicitudes 770XP implementa los protocolos de transporte como controladores.El protocolo NetBIOS es una interfaz de abstracción hardware para redes, análoga a la interfaz de abstracción hardware BIOS desarrollada para las maquinas de tipo PC que ejecutan MS-DOS
  • 45. Interfaces de redXP utiliza NetBEUI cuando quiere compartir recursos en estas redes.XP emplea TCP/IP para conectarse con una amplia variedad de sistemas operativos y plataformas hardware.El protocolo PPTP es un protocolo proporcionado por Windows XP para poder comunicar módulos de servidor de acceso remoto que se ejecuten en maquinas de servidor XP con otros sistemas cliente que este conectado a través de internet.
  • 46. Mecanismos de procesamiento distributivoAunque XP no es un sistema operativo distribuido, si que permite utilizar aplicaciones distribuidas. Entre los mecanismos que dan soporte al procesamiento distribuido en XP podemos citar NetBIOS, las popes con nombre y los buzones de correo, los sockets de Windows, el mecanismo RPC, el lenguaje de definición de interfaces de Microsoft y finalmente COM
  • 47. Redirectores y servidoresEn XP una aplicación puede utilizar la API de E/S de Windows XP para acceder a archivos de una computadora remota como si fueran locales.Un redirector es el objeto del lado cliente que re-envía las solicitudes de E/S relativas a archivos remotos, solicitudes que serán satisfechas por un servidorPara mejorar las prestaciones y la seguridad, los redirectores y servidores se ejecutan en modo kernel.
  • 48. Acceso a un archivo remotoLa aplicación invoca al gestor de E/S para solicitar que se abra un archivo con un nombre de archivo en formato UNC estándar.El gestor de E/S construye un paquete de solicitudes de E/SEl gestor de E/S detecta que el acceso se refiere a un archivo remoto e invoca un controlador denominado proveedor múltiple UNCEl MUP envía el paquete de solicitud de E/S asíncronamente a todos los redirectores registrados.Un redirector que pueda satisfacer la solicitud responderá al MUP.El redirector envía la solicitud de red al sistema remoto.
  • 49. Acceso a un archivo remotoLos controladores de red del sistema remoto reciben la solicitud y la pasan al controlador de servidorEl controlador del servidor entrega la solicitud al controlador apropiado del sistema de archivos localSe invoca el controlador de dispositivo apropiado para acceder a los datosLos resultados se devuelven al controlador del servidor, el cual los envía al redirector solicitante
  • 50. DominiosXP es un grupo de estaciones de trabajo y servidores XP que comparte una política de seguridad y una base de datos de usuarios comunes.La versiones anteriores de NT utilizaban la idea de controladores de dominio principales y de reserva, ahora todos los servidores de un dominio son controladores de dominio.
  • 51. Resolución de nombre de redes TCP/IPEn una red IP, la resolución de nombres es el proceso de convertir un nombre de computadora en una dirección IP como por ejemplo traduciendo www.bell-labs.com a 135.104.1.14Windows XP proporciona varios métodos de resolución de nombres, incluyendo WINS, resolución de nombre de difusión, DNS un archivo de HOSTS y un archivo LMHOSTS
  • 52. Resolución de nombreEn WINS, dos o mas servidores WINS mantienen una base de datos dinámica de correspondencias entre nombres y direcciones IPWINS utiliza el protocolo DHCP actualiza automáticamente las configuraciones de direcciones en la base de datos WINS, sin que el usuario o el administrador intervengan.
  • 53. Acceso a los objetos de KernelEl kernel de XP proporciona muchos servicios que los programas de aplicación puedan utilizar.Un proceso obtiene acceso a un objeto de Kernel denominado XXX llamando a la función Create XXX para abrir un descriptor de XXXXP proporciona 3 formas para compartir objetos entre los procesosUn proceso hijo herede un descriptor del objeto
  • 54. Cuando el padre invoca a la función CreateXXX suministra una estructura SECURITIES_ATTRIBUTES con el campo bInherit-HandleEste campo crea un descriptor heredableSe crea el proceso hijo pasando un valor TRUE al argumento bInheritHandle de la función CreatePorcedure
  • 55. Gestión de procesosLa API Win32 utiliza cuatro clases de prioridad1. IDLE_PRIORITY_CLASS (nivel de prioridad 4)2. NORMAL_PRIORITY_CLASS (nivel de prioridad 8)3. HIGH_PRIORITY_CLASS (nivel de prioridad 13)4. REALTIME_PRIORITY_CLASS (nivel de prioridad 24)XP tiene una regla especial de planificación para los procesos de la clase NORMAL_PRIORITY_CLASSXP distingue entre el proceso de primer plano que esta actualmente seleccionado en la pantalla y los procesos de segundo plano que no están actualmente seleccionados.
  • 56. Gestión de procesosEl Kernel ajusta la prioridad de una hebra dinámicamente, dependiendo de si la hebra eta limitada por E/S o por CPUPara sincronizar el acceso concurrente a los objetos compartido por parte de las hebras, el kernel proporciona objetos de sincronización como semáforos y objetos mutexAdemás, puede conseguirse la sincronización de hebras utilizando las funciones WaitForSingleObject() y WaitForMultiplesObjects ()
  • 57. Gestión de procesosUna fibra es un codigo en modo usuario que se planifica de acuerdo con un algoritmo de planificación definido por el usuario.Solo esta permitido que se ejecute una fibra cada vezEste mecanismo se incluye en XP para facilitar la tarea de portar las aplicaciones UNIX heredadas que hubieran sido escritas para un modelo de ejecución basado en fibras
  • 58. Comunicación interprocesosLas aplicaciones API Win32 gestionan la comunicación interprocesos de varias formas distintas. Una forma es compartiendo objetos de KernelOtra posible forma consiste en pasar mensajes, una técnica que resulta especialmente popular en las aplicaciones GUI WindowsUna hebra puede enviar un mensaje a otra hebra o a una ventanaUna hebra puede enviar datos dentro del mensaje
  • 59. Gestión de memoriaMemoria virtual:Una aplicación invoca VirtualAlloc() para reservar o confirmar memoria virtual y VirtualFree() para anular la reserva o liberar la memoria.Una aplicación puede utilizar la memoria mediante la asignación de memoria de un archivo en su espacio de direcciones- proceso de varias etapas- dos procesos comparten la memoria mediante la asignación de la misma en su archivo de memoria virtual
  • 60. Cúmulos de memoriaLos cúmulos de memoria proporcionan una tercera forma de utilización de memoria por parte de las aplicaciones.Cuando un proceso API Win32 se inicializa, se crea con un cumulo de memoria predeterminado de un 1 MB.Las funciones que utilizan datos globales o estáticos no suelen funciona adecuadamente en entornos multihebra