SlideShare una empresa de Scribd logo
1 de 61
Capitulo 22: Windows XP
	Objetivo del capitulo Explorar los principios en los que se basa el diseño de Windows XP y los componentes específicos que forman el sistema Comprender como Windows XP puede ejecutar programas diseñados para otros sistemas operativos. Proporcionar unas explicaciones detalladas del sistema de archivos de Windows XP Ilustrar los protocolos de red soportados en Windows XP Analizar la interfaz disponible para los programadores de sistemas y aplicaciones.
Windows XP El 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: Seguridad Fiabilidad Facilidad de uso Compatibilidad de aplicaciones Altas prestaciones Aplicabilidad
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 POSIX Originalmente, 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.0 Historia
Principios de diseño Seguridad: 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-2 Portabilidad: 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 XP Capas del sistema de módulos Modo protegido: Los niveles principales son el nivel HAL, el KERNEL y el subsistema ejecutivo Modo usuario: se clasifican en dos categorías: -Los subsistemas de entorno -Subsistemas de protección
Arquitectura de XP
“Componentes del sistema”Kernel El 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 subprocesos El 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ón El 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 interrupciones XP mantiene una tabla de despacho de interrupciones separada para cada procesador Todas 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 ejecutivo XP 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 objetos El 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 archivos XP utiliza un espacio de nombres abstracto y conecta los sistemas de archivos como dispositivos Cada objeto está protegido por una lista de control de acceso.
Gestor de memoria virtual El 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 4KB El gestor VM de XP utiliza un proceso en dos pasos para asignar la memoria al usuario 1.- reserva una parte del espacio virtual de direcciones del proceso 2.-confirma la asignación, asignando espacio de memoria virtual
Disposición de las tablas de paginas
Gestor de memoria virtual El 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 paginas El bit valido/invalido es cero
Gestor de procesos Provee servicios para crear, eliminar, y el uso de las discusiones yprocesos
Funcionalidad de llamadas a procedimientos locales El 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/S El 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 cargado Gestiona los búferes para las solicitudes de E/S
E/S  de archivo
Monitor de referencia de seguridad La 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ón Cada 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ía El 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 entorno Los 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 subsistemas El 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 archivos La estructura fundamental del sistema de archivos XP (NTFS) es un volumen ,[object Object],- Sobre la base de una partición de disco lógica.
Sistema de archivos-Diseño interior NTFS 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ón En 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 archivos Este 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 
Seguridad La 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 fallos FtDisk es el controlador  de disco tolerante a fallos de Windows XP Cuando 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 cifrado NTFS 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 montaje Los 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 red Windows 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 red El protocolo SMB fue introducido por primera vez en MS-DOS el sistema emplea el protocolo para enviar solicitudes 770 XP 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 red XP 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 distributivo Aunque 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 servidores En 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 servidor Para mejorar las prestaciones y la seguridad, los redirectores y servidores se ejecutan en modo kernel.
Acceso a un archivo remoto La 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/S El gestor de E/S detecta que el acceso se refiere a un archivo remoto e invoca un controlador denominado proveedor múltiple UNC El 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 remoto Los controladores de red del sistema remoto reciben la solicitud y la pasan al controlador de servidor El controlador del servidor entrega la solicitud al controlador apropiado del sistema de archivos local Se invoca el controlador de dispositivo apropiado para acceder a los datos Los resultados se devuelven al controlador del servidor, el cual los envía al redirector solicitante
Dominios XP 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/IP En 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.14 Windows 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 nombre En WINS, dos o mas servidores WINS mantienen una base de datos dinámica de correspondencias entre nombres y direcciones IP WINS 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 Kernel El 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 XXX XP proporciona 3 formas para compartir objetos entre los procesos Un 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-Handle Este campo crea un descriptor heredable Se crea el proceso hijo pasando un valor TRUE al argumento bInheritHandle de la función CreatePorcedure
Gestión de procesos La API Win32 utiliza cuatro clases de prioridad 1. 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_CLASS XP 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 procesos El Kernel ajusta la prioridad de una hebra dinámicamente, dependiendo de si la hebra eta limitada por E/S o por CPU Para 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 mutex Además, puede conseguirse la sincronización de hebras utilizando las funciones WaitForSingleObject() y WaitForMultiplesObjects ()
Gestión de procesos Una 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 vez Este 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 interprocesos Las aplicaciones API Win32 gestionan la comunicación interprocesos de varias formas distintas. Una forma es compartiendo objetos de Kernel Otra posible forma consiste en pasar mensajes, una técnica que resulta especialmente popular en las aplicaciones GUI Windows Una hebra puede enviar un mensaje a otra hebra o a una ventana Una hebra puede enviar datos dentro del mensaje
Gestión de memoria Memoria 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 memoria Los 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

La actualidad más candente

Reporte windows8
Reporte windows8Reporte windows8
Reporte windows8Ell Bobby
 
Arquitectura de los sistemas operativos
Arquitectura de los sistemas operativosArquitectura de los sistemas operativos
Arquitectura de los sistemas operativosfresjunior
 
So 03-estructura del so-6x1
So 03-estructura del so-6x1So 03-estructura del so-6x1
So 03-estructura del so-6x1Javier Magne
 
Clase 1 conceptos básicos de los SO
Clase 1  conceptos básicos de los SOClase 1  conceptos básicos de los SO
Clase 1 conceptos básicos de los SOTensor
 
Arquitectura del sistema operativo windows
Arquitectura del sistema operativo windowsArquitectura del sistema operativo windows
Arquitectura del sistema operativo windowsAlexito Pico
 
Capitulo 22 windows XP
Capitulo 22 windows XPCapitulo 22 windows XP
Capitulo 22 windows XPJorge Alberto
 
Arquitectura sistemas operativos
Arquitectura sistemas operativosArquitectura sistemas operativos
Arquitectura sistemas operativosvichesito85
 
Arquitectura y caracteristicas de los sistemas operativos windows
Arquitectura y caracteristicas de los sistemas operativos windowsArquitectura y caracteristicas de los sistemas operativos windows
Arquitectura y caracteristicas de los sistemas operativos windowsslipkdany21
 
Arquitectura del sistema operativo windows
Arquitectura del sistema operativo windowsArquitectura del sistema operativo windows
Arquitectura del sistema operativo windowsflaviosimbana07
 
Arquitectura General del Sistema Operativo Linux
Arquitectura General del Sistema Operativo LinuxArquitectura General del Sistema Operativo Linux
Arquitectura General del Sistema Operativo Linuxjcfarit
 
Que es el kernel o nucleo
Que es el kernel o nucleoQue es el kernel o nucleo
Que es el kernel o nucleoHugo Ramirez
 
Guia de los Sistemas Operativos
Guia de los Sistemas OperativosGuia de los Sistemas Operativos
Guia de los Sistemas OperativosAlexis Petit
 
DEFINICIÓN DE WINDOWS XP Y ARQUITECTURA
DEFINICIÓN DE WINDOWS XP Y ARQUITECTURADEFINICIÓN DE WINDOWS XP Y ARQUITECTURA
DEFINICIÓN DE WINDOWS XP Y ARQUITECTURArosamelosa
 
Bii t03 - sistemas operarivos. windows, linux y unix
Bii t03 - sistemas operarivos. windows, linux y unixBii t03 - sistemas operarivos. windows, linux y unix
Bii t03 - sistemas operarivos. windows, linux y unixnuria garcia
 

La actualidad más candente (20)

Qué es el kernel
Qué es el kernelQué es el kernel
Qué es el kernel
 
Reporte windows8
Reporte windows8Reporte windows8
Reporte windows8
 
Arquitectura de los sistemas operativos
Arquitectura de los sistemas operativosArquitectura de los sistemas operativos
Arquitectura de los sistemas operativos
 
So 03-estructura del so-6x1
So 03-estructura del so-6x1So 03-estructura del so-6x1
So 03-estructura del so-6x1
 
Clase 1 conceptos básicos de los SO
Clase 1  conceptos básicos de los SOClase 1  conceptos básicos de los SO
Clase 1 conceptos básicos de los SO
 
Arquitectura del sistema operativo windows
Arquitectura del sistema operativo windowsArquitectura del sistema operativo windows
Arquitectura del sistema operativo windows
 
Capitulo 22 windows XP
Capitulo 22 windows XPCapitulo 22 windows XP
Capitulo 22 windows XP
 
Arquitectura sistemas operativos
Arquitectura sistemas operativosArquitectura sistemas operativos
Arquitectura sistemas operativos
 
Arquitectura y caracteristicas de los sistemas operativos windows
Arquitectura y caracteristicas de los sistemas operativos windowsArquitectura y caracteristicas de los sistemas operativos windows
Arquitectura y caracteristicas de los sistemas operativos windows
 
Arquitectura del sistema operativo windows
Arquitectura del sistema operativo windowsArquitectura del sistema operativo windows
Arquitectura del sistema operativo windows
 
Arquitectura General del Sistema Operativo Linux
Arquitectura General del Sistema Operativo LinuxArquitectura General del Sistema Operativo Linux
Arquitectura General del Sistema Operativo Linux
 
Que es el kernel o nucleo
Que es el kernel o nucleoQue es el kernel o nucleo
Que es el kernel o nucleo
 
Guia de los Sistemas Operativos
Guia de los Sistemas OperativosGuia de los Sistemas Operativos
Guia de los Sistemas Operativos
 
Taller so
Taller soTaller so
Taller so
 
arquitectura-de-linux
arquitectura-de-linuxarquitectura-de-linux
arquitectura-de-linux
 
DEFINICIÓN DE WINDOWS XP Y ARQUITECTURA
DEFINICIÓN DE WINDOWS XP Y ARQUITECTURADEFINICIÓN DE WINDOWS XP Y ARQUITECTURA
DEFINICIÓN DE WINDOWS XP Y ARQUITECTURA
 
Bii t03 - sistemas operarivos. windows, linux y unix
Bii t03 - sistemas operarivos. windows, linux y unixBii t03 - sistemas operarivos. windows, linux y unix
Bii t03 - sistemas operarivos. windows, linux y unix
 
Practica4
Practica4Practica4
Practica4
 
Lizet
LizetLizet
Lizet
 
Mac osx
Mac osxMac osx
Mac osx
 

Similar a Capitulo 222 (20)

Fundamentos De Las Computadoras 2006
Fundamentos De Las Computadoras 2006Fundamentos De Las Computadoras 2006
Fundamentos De Las Computadoras 2006
 
Sistemas operativos [Incompleto]
Sistemas operativos [Incompleto]Sistemas operativos [Incompleto]
Sistemas operativos [Incompleto]
 
sistema operativo Windows
 sistema operativo Windows sistema operativo Windows
sistema operativo Windows
 
prueba
pruebaprueba
prueba
 
Sistema operativo
Sistema operativoSistema operativo
Sistema operativo
 
Sistemaoperativo 101120071653-phpapp02
Sistemaoperativo 101120071653-phpapp02Sistemaoperativo 101120071653-phpapp02
Sistemaoperativo 101120071653-phpapp02
 
Capítulo 5 it essentials
Capítulo 5 it essentialsCapítulo 5 it essentials
Capítulo 5 it essentials
 
Historia so
Historia soHistoria so
Historia so
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
S.O. de computadoras, villares y conde
S.O. de computadoras, villares y condeS.O. de computadoras, villares y conde
S.O. de computadoras, villares y conde
 
Dany
DanyDany
Dany
 
Dany
DanyDany
Dany
 
Dany
DanyDany
Dany
 
Act 2
Act 2Act 2
Act 2
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Jacqueline CH y Diana U
Jacqueline CH y Diana UJacqueline CH y Diana U
Jacqueline CH y Diana U
 
Sebas
SebasSebas
Sebas
 
Sebas
SebasSebas
Sebas
 

Capitulo 222

  • 2. Objetivo del capitulo Explorar los principios en los que se basa el diseño de Windows XP y los componentes específicos que forman el sistema Comprender como Windows XP puede ejecutar programas diseñados para otros sistemas operativos. Proporcionar unas explicaciones detalladas del sistema de archivos de Windows XP Ilustrar los protocolos de red soportados en Windows XP Analizar la interfaz disponible para los programadores de sistemas y aplicaciones.
  • 3. Windows XP El 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: Seguridad Fiabilidad Facilidad de uso Compatibilidad de aplicaciones Altas prestaciones Aplicabilidad
  • 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 POSIX Originalmente, 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.0 Historia
  • 5. Principios de diseño Seguridad: 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-2 Portabilidad: 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 XP Capas del sistema de módulos Modo protegido: Los niveles principales son el nivel HAL, el KERNEL y el subsistema ejecutivo Modo usuario: se clasifican en dos categorías: -Los subsistemas de entorno -Subsistemas de protección
  • 9. “Componentes del sistema”Kernel El 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 subprocesos El 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ón El 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 interrupciones XP mantiene una tabla de despacho de interrupciones separada para cada procesador Todas 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 ejecutivo XP 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 objetos El 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 archivos XP utiliza un espacio de nombres abstracto y conecta los sistemas de archivos como dispositivos Cada objeto está protegido por una lista de control de acceso.
  • 18. Gestor de memoria virtual El 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 4KB El gestor VM de XP utiliza un proceso en dos pasos para asignar la memoria al usuario 1.- reserva una parte del espacio virtual de direcciones del proceso 2.-confirma la asignación, asignando espacio de memoria virtual
  • 19. Disposición de las tablas de paginas
  • 20. Gestor de memoria virtual El 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 paginas El bit valido/invalido es cero
  • 23. Gestor de procesos Provee servicios para crear, eliminar, y el uso de las discusiones yprocesos
  • 24. Funcionalidad de llamadas a procedimientos locales El 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/S El 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 cargado Gestiona los búferes para las solicitudes de E/S
  • 26. E/S de archivo
  • 27. Monitor de referencia de seguridad La 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ón Cada 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ía El 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 entorno Los 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 subsistemas El 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.
  • 32. Sistema de archivos-Diseño interior NTFS 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ón En 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 archivos Este 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. Seguridad La 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 fallos FtDisk es el controlador de disco tolerante a fallos de Windows XP Cuando 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 cifrado NTFS 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 montaje Los 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 red Windows 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 red El protocolo SMB fue introducido por primera vez en MS-DOS el sistema emplea el protocolo para enviar solicitudes 770 XP 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 red XP 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 distributivo Aunque 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 servidores En 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 servidor Para mejorar las prestaciones y la seguridad, los redirectores y servidores se ejecutan en modo kernel.
  • 48. Acceso a un archivo remoto La 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/S El gestor de E/S detecta que el acceso se refiere a un archivo remoto e invoca un controlador denominado proveedor múltiple UNC El 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 remoto Los controladores de red del sistema remoto reciben la solicitud y la pasan al controlador de servidor El controlador del servidor entrega la solicitud al controlador apropiado del sistema de archivos local Se invoca el controlador de dispositivo apropiado para acceder a los datos Los resultados se devuelven al controlador del servidor, el cual los envía al redirector solicitante
  • 50. Dominios XP 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/IP En 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.14 Windows 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 nombre En WINS, dos o mas servidores WINS mantienen una base de datos dinámica de correspondencias entre nombres y direcciones IP WINS 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 Kernel El 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 XXX XP proporciona 3 formas para compartir objetos entre los procesos Un 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-Handle Este campo crea un descriptor heredable Se crea el proceso hijo pasando un valor TRUE al argumento bInheritHandle de la función CreatePorcedure
  • 55. Gestión de procesos La API Win32 utiliza cuatro clases de prioridad 1. 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_CLASS XP 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 procesos El Kernel ajusta la prioridad de una hebra dinámicamente, dependiendo de si la hebra eta limitada por E/S o por CPU Para 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 mutex Además, puede conseguirse la sincronización de hebras utilizando las funciones WaitForSingleObject() y WaitForMultiplesObjects ()
  • 57. Gestión de procesos Una 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 vez Este 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 interprocesos Las aplicaciones API Win32 gestionan la comunicación interprocesos de varias formas distintas. Una forma es compartiendo objetos de Kernel Otra posible forma consiste en pasar mensajes, una técnica que resulta especialmente popular en las aplicaciones GUI Windows Una hebra puede enviar un mensaje a otra hebra o a una ventana Una hebra puede enviar datos dentro del mensaje
  • 59. Gestión de memoria Memoria 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 memoria Los 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