INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACAN DEPARTAMENTO DE INGENIERÍA EN COMPUTACIÓN SISTEMAS OPERATIVOS SOLUCIÓN A LA PRÁCTICA 13. Windows XP Unidad IV, Dispositivos de Entrada / Salida OBJETIVOS PARTICULARES DE LA UNIDAD El alumno describirá las técnicas usadas para el manejo de dispositivos de entrada / salida considerando la diferencia de velocidades entres el CPU y los canales de Entrada / Salida e interfases y espacios de memoria temporal (buffers). OBJETIVO DE LA PRÁCTICA: Comprender las características del sistema operativo Windows XP o similar. 13.1 Que tipo de Sistema Operativo es Windows XP? Describa dos de sus principales características. Respuesta: Es un sistema operativo multitarea interrumpible de 32/64 bits que soporta múltiples usuarios. Características principales: (1) tiene la habilidad para repararse automáticamente de problemas de aplicaciones y del sistema operativo. (2) Experiencia en redes y dispositivos (incluyendo fotografía digital y video) 13.2 Enliste los objetivos de diseño de Windows XP. Describa dos mas detalladamente Respuesta: Los objetivos de diseño incluyen la seguridad, confiabilidad, compatibilidad de aplicaciones con Windows y POSIX, alto rendimiento, extensibilidad, portabilidad y soporte internacional. (1) La confiabilidad fue percibida como un requerimiento estricto e incluyo la verificación extensiva de manejadores, facilidades para atrapar errores de programación en el código a nivel de usuario, y un proceso riguroso de certificación para manejadores de terceros, de aplicaciones y dispositivos. (2) Lograr la mayor eficiencia requirió la revisión de las áreas de problemas previos tales como eficiencia en E/S, cuellos de botella en CPU, y la escalabilidad de multihilos y ambientes multiprocesadores. 13.3 Describa el proceso de arranque para un sistema Windows XP. Respuesta: (1) Mientras el hardware es encendido, el BIOS inicia ejecutandose desde el ROM y carga y ejecuta el cargador de autoarranque desde el disco. (2) el programa NTLDR se carga desde el directorio raíz del dispositivo del sistema identificado y determina cual dispositivo de arranque contiene el sistema operativo. (3) el NTLDR carga la biblioteca HAL, el kernel y el sistema 'hive', (conjunto lógico de valores de los registros). Este sistema indica los manejadores requeridos para el arranque y los carga. (4) Comienza la ejecución del kernel inicializando al sistema y creando dos procesos: el proceso del 1 /4 INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACAN DEPARTAMENTO DE INGENIERÍA EN COMPUTACIÓN sistema que contiene todos los hilos de procesamiento internos (internal worker threads), y el primer proceso de inicialización en modo usuario: SMSS. (5), el proceso SMSS completa la inicialización del sistema estableciendo archivos de paginación y manejadores de dispositivos. (6) SMSS crea dos subprocesos: WINLOGON, el cual arranca el resto del sistema, y CSRSS (el proceso del subsistema WIN32) 13.4 Describa las tres capas principales arquitecturales de Windows XP Respuesta: (1) La capa HAL (Hardware Abstraction Layer) la portabilidad del sistema operativo ocultando las diferencias en hardware desde las capas superiores del sistema operativo. Los detalles administrativos de las facilidades de bajo nivel son provistas por las interfaces HAL, que presenta una interfaz de máquina virtual que es usada por el despachador del kernel, y los manejadores ejecutivo y de dispositivos. (2) La capa del kernel provee la cimentación para las funciones ejecutivas y los sub sistemas de modo usuario. El kernel permanece en memoria y no puede ser interrumpido. Sus responsabilidades son despacho de hilos, y el manejo de interrupciones y excepciones, sincronización del procesador en bajo nivel y recuperación de fallas de energía. (3) La capa ejecutiva provee un conjunto de servicios usados por todos los sub sistemas: administradores de objetos, de memoria virtual, de procesos, de Entrada/ Salida, facilidades de llamadas de procedimientos locales, monitor de seguridad, plug & play de registros y arranque. 13.5 Cuál es la tarea del administrador de objetos? Respuesta: Los objetos presentan un conjunto genérico de interfaces modo kernel a los programas modo usuario. Los objetos son manipulados por el administrador de objetos de la capa ejecutiva. La tarea del administrador de objetos es supervisar el alojamiento y uso de todos los objetos administrados. 13.6 Que tipo de servicios provee el administrador de procesos?, ¿Qué es una llamada de procedimiento local? Respuesta: El administrador de procesos provee servicios para crea, borrar y usar procesos, hilos y tareas. El administrador de procesos también implementa encolamiento y entrega de llamadas de procedimientos asíncronas a los hilos. La llamada de procedimientos local (LPC) es un sistema de paso de mensajes. El sistema operativo usa una LPC para pasar solicitudes y resultados entre procesos cliente y servidor dentro de una máquina, en particular entre los subsistemas de Windows XP. 2 /4 INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACAN DEPARTAMENTO DE INGENIERÍA EN COMPUTACIÓN 13.7 Cuales son las responsabilidades del administrador de E/S? Respuesta: El administrador de E/S es el responsable e los sistemas de archivos, manejadores de dispositivos y de redes. El manejador de E/S supervisa cuales manejadores de dispositivos, filtros, y archivos del sistema son cargados y administra los espacios de memoria ('buffer') para solicitudes de E/S. Asiste al proveer archivos de E/S mapeados en memoria y controla al administrador de cache para el sistema total de E/S. 13.8 Ofrece Windows XP algún proceso que permita ejecutar programas desarrollados por otros sistemas operativos? Describa dos de estos sub sistemas. Respuesta: Los subsistemas de ambiente son procesos de modo usuario en capas sobre los servicios ejecutables nativos para permitir a Windows XP ejecuta programas. (1) Una aplicación Win32 llamada machina virtual DOS (VDM) se provee como un proceso modo usuario para ejecutar aplicaciones MS-DOS. La VDM puede ejecutarse o emular instrucciones 486 de Intel y también provee rutinas para emular servicios del BIOS de MS-DOS y provee manejadores virtuales para pantallas, teclados y puertos de comunicaciones. (2) Windows sobre windows (WOW32) provee el kernel y stub-rutinas para funciones Windows 3.1. (stub: es una pieza de código que esta para sustituir la funcionalidad en otros programas). Las stub rutinas llaman a las rutinas Win32 apropiada, convirtiendo direcciones de 16 bits en direcciones de 32 bits. 13.9 Que tipos de redes soporta Windows XP? Cómo implementa Windows XP los protocolos de transporte? Describa dos protocolos de red. Respuesta: SEL Soporte es provisto para redes par a par y cliente-servidor. Los protocolos de transporte se implementan como manejadores (drivers). (1) El paquete TCP/IP incluye soporte SNMP, DHCP, WINS y BIOS. (2) El protocolo de tunelación punto a punto se provee para comunicar entre módulos de acceso remoto que corren sobre servidores Windows XP y otros sistemas clientes conectados sobre internet. Usando este esquema, redes privadas virtuales multiprotocolos (VPN) son soportadas sobre internet. 13.10 Como es el espacio de nombres de NTFS organizado. Describalo. Respuesta: T El espacio de nombres NTFS se organiza como una jerarquía de directorios en donde cada directorio usa una estructura de datos de árbol B+ para almacenar n índice de los nombres de los archivos en ese directorio. La raíz índice de un directorio contiene el nivel máximo del árbol B+. Cada entrada en el directorio contiene el nombre y archivo de referencia de los archivos así como la fecha de actualización y el tamaño del archivo. 3 /4 INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACAN DEPARTAMENTO DE INGENIERÍA EN COMPUTACIÓN 13.11 Cómo maneja NTFS las estructuras de datos? Cómo se recupera NTFS de una caída del sistema? Que se garantiza después de que la recuperación ha tomado lugar? Respuesta: En NTFS, todas las estructuras del sistema de archivos se llevan a cabo dentro de las transacciones. Antes de que una estructura de datos sea alterada, la transacción escribe un registro de bitácora conteniendo la información de rehacer y deshacer. Un registro 'commit' se escribe en la bitácora después de la transacción se ha completado. Después de una caída, el sistema de archivos puede restaurarse a un estado consistente procesando los registros de la bitácora, primero rehaciendo las operaciones para las transacciones 'commited' y deshaciendo las operaciones para las transacciones que no fueron terminadas exitosamente. Este esquema no garantiza que el contenido del archivo del usuario sea correcto después de una recuperación, sino mas bien que la estructura del sistema de archivos (metadatos del archivo) este sin daño y refleje un estado consistente que existió previo a la caída 13.12 Como aloja Windows XP la memoria del usuario? Respuesta: U La memoria del usuario puede alojarse de acuerdo a diferentes esquemas: memoria virtual, archivos mapeados en memoria, 'heaps' y almacenamiento local de hilos. 13.13 Describa algunas formas en que una aplicación puede usar la memoria vía la API Win32 Respuesta: (1) La memoria virtual provee varias funciones que permiten a una aplicación reservar y relevar memoria, especificando la dirección virtual en la cual la memoria esta alojada. (2) Un archivo puede mapearse en espacios de direccionamiento, proveyendo un medio de compartir la memoria entre dos procesos. (3) Cuando un proceso Win32 se inicializa, se crea por default un 'heap', 'heaps privados' pueden crearse par proveer regiones de espacios de direccionamiento reservadas para alojar y controlar el acceso de los hilo a los 'heaps privados' (4) Un mecanismo de almacenamiento de hilo local provee una forma para los datos globales y estáticos para que trabajen apropiadamente. EL almacenamiento de hilos de seguridad aloja almacenamiento local en base a hilospares. 4 /4