Objeto de Estudio 4: Administración del Sistema Operativo Sistemas Operativos II Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze Copyright Notice © 2000-2005 David A. Solomon and Mark Russinovich ! These materials are part of the Windows Operating System Internals Curriculum Development Kit, developed by David A. Solomon and Mark E. Russinovich with Andreas Polze ! Microsoft has licensed these materials from David Solomon Expert Seminars, Inc. for distribution to academic organizations solely for use in academic environments (and not for commercial use) 2 Agenda ! Evaluación de un sistema operativo ! Memorial adicional ! CPU mas rápidos ! Procesadores adicionales ! Unidades de disco adicionales ! Sistema espejo RAID ! Seguridad del sistema ! Niveles de protección ! Sistemas de administración ! Violación de seguridad ! Virus ! Espionaje por Internet 3 ! Ética ! Derechos de autoría ! Honestidad ! Accesos no permitidos ! Copias ilegales ! Divulgación de Información ! Reglamentos internos ! Medición del rendimiento ! Herramientas de medición ! Retroalimentación ! Monitoreo ! Costos de Operación 4 Evaluación de un sistema operativo ! La mayor parte de los sistemas operativos fueron diseñados para trabajar con cierta pieza de hardware, una categoría de procesadores o un grupo específico de usuarios. ! Aunque casi todo evolucionó con el tiempo para operar sistemas múltiples, la mayor parte sigue favoreciendo algunos usuarios y algunos entornos de computación sobre otros. 5 Evaluación de un sistema operativo ! Para evaluar un sistema operativo, es necesario comprender sus objetivos de diseño, su historia, como se comunica con los usuarios, la forma en que administran sus recursos y qué sacrificios se hicieron para alcanzar sus objetivos . ! En otras palabras, las fortalezas y las debilidades de un sistema operativo deben ponderarse en relación con quien lo usará, sobre que hardware y para que propósito. 6 Cooperación entre componentes ! La utilidad de cualquiera de los recursos depende del rendimiento de otros recursos en el sistema. ! Por ejemplo, la administración de la memoria está vinculada intrínsecamente con la administración de dispositivos cuando la memoria se usa para almacenar datos entre un procesador muy rápido y dispositivos de almacenamiento secundario más lentos. 7 Cooperación entre componentes ! Si usted administrara el sistema de computo de una organización y contara con dinero para actualizarlo ! ¿ Cómo invertiría el dinero de la mejor forma ? ! Mas memoria ! Un CPU más rápido ! Procesadores adicionales ! Mas unidades de disco ! Un sistema RAID ! Nuevo software para administración de archivos 8 Cooperación entre componentes ! O bien, comprar un sistema nuevo, ¿ que características buscaría para que fuera más eficiente que el anterior ? ! Cualquier mejora del sistema puede hacerse sólo al cabo de un análisis detallado de las necesidades de los recursos, requerimientos, administradores y usuarios del sistema. ! Pero cada que se hacen cambios a uno, a menudo se sacrifica un conjunto de problemas por otro. ! La clave consiste en el rendimiento de todo el sistema y no sólo en el de las componentes individuales 9 Memoria adicional ! Si se aumenta la memoria o se cambia a otro esquema de asignación, es necesario considerar el entorno operativo actual en que residirá el sistema. ! Hay una negociación entre uso de la memoria y la sobrecarga del cpu. 10 CPU más rápidos y procesadores adicionales ! Un sistema puede alcanzar un punto de saturación si el CPU se utiliza complemente aunque se permite que acepte trabajos adicionales, lo cual puede resultar en mayores sobrecargas y menos tiempo para ejecutar programas. ! Bajo cargas pesadas, el tiempo de CPU requerido para administrar colas de E/S (lo que en circunstancias normales no requiere gran cantidad de tiempo), puede aumentar drásticamente el tiempo necesario para ejecutar trabajo) 11 CPU más rápidos y procesadores adicionales ! Con la formación de largas colas en los canales, unidades de control y dispositivos de I/O, el CPU podría permanecer ociosa esperando que los procesos terminen sus operaciones de I/O. ! En forma semejante, aumentar el número de procesadores necesariamente aumenta la sobrecarga requerida para administrar múltiples trabajos entre múltiples procesadores. Pero en ciertas circunstancias, el pago puede ser un tiempo de respuesta más rapido. 12 Unidades de disco adicionales ! La administración de dispositivos contiene varias formas de mejorar la utilización de los dispositivos de I/O incluyendo almacenamiento intermedio, bloqueos y reprogramación de solicitudes de I/O para optimizar los tiempos de acceso. ! Pero hay desventajas: cada una de esas opciones también incrementan la sobrecarga del cpu y usa espacio de memoria adicional 13 Sistema espejo RAID ! Es un conjunto de unidades de disco físicas, que el sistema operativo considera como una sola unidad lógica. ! Fue introducido para cerrar la brecha cada vez mas amplia entre procesadores cada vez más rápidos y unidades de disco mas lentas. 14 Sistema espejo RAID ! RAID supone que varias unidades de disco de pequeña capacidad son preferibles a unas cuantas unidades de disco de gran capacidad porque, al distribuir los datos entre discos mas pequeños, el sistema puede tener acceso de manera simultanea a los datos mas solicitados desde las multiples unidades, lo cual resulta en un rendimiento de I/O mejorado y recuperación de datos mejorada en caso de falla de algún disco. 15 Seguridad del Sistema ! Todo sistema de computo tiene necesidades contradictorias: compartir recursos y protegerlos ! En los primeros días, la seguridad constaba de un candado seguro y algunas llaves. ! Es decir el sistema estaba protegido físicamente y el acceso sólo se permitía a usuarios autorizados, y eso era suficiente cuando el grupo de usuarios estaba limitado a unas cuantas docenas de personas. 16 Seguridad del Sistema ! Sin embargo, con la aparición de la comunicación de datos, redes, la proliferación de computadoras personales, software de telecomunicaciones, sitios web y el correo electrónico, la comunidad de usuarios ha crecido hasta llegar a millones de personas, lo cual hace mucho más difícil la seguridad en las computadoras. 17 Seguridad del Sistema ! El sistema operativo desempeña un rol fundamental en la seguridad de un sistema de cómputo porque tiene acceso a todas las partes del sistema. ! Cualquier vulnerabilidad a nivel sistema operativo abre todo el sistema a ataques. ! Mientras más complicado y poderoso es el sistema operativo, es más probable que presente vulnerabilidades a ataques. 18 Niveles de protección ! Una vez que un sistema ha sido violado, ya no es posible confiar en la integridad de ningún dato del sistema. ! Para cada configuración de computadoras, el administrador del sistema debe evaluar el riesgo de intromisiones, lo cual, a su vez, depende del nivel de conectividad otorgado al sistema como se muestra en la siguiente tabla 19 Niveles de protección Configuración Facilidad de protección Riesgo relativo Vulnerabilidades Computadora única (sin correo electrónico) o internet) Alta Baja Contraseñas comprometidas, virus LAN conectada (sin internet) Media Media Husmeadores, suplantación de identidad (+contraseña, virus) LAN conectadas (con internet) Baja Alta Correo electrónico, servidores de red, FTP, Telnet (+husmeadores, suplantación de identidad, contraseña, virus) 20 Violaciones de seguridad ! Una violación en la seguridad del sistema puede ser maliciosa o no. ! Por ejemplo algunas intromisiones son el resultado de un usuario no educado y el acceso no autorizado a los recursos del sistema. ! Pero otras surgen del trastorno intencional de la operación del sistema, y aún otras son puramente accidentales, como mal funcionamiento del hardware, errores no detectados en el sistema operativo o en aplicaciones, o desastres naturales. 21 Violaciones de seguridad ! Maliciosa o no, una violación de seguridad afecta gravemente la credibilidad del sistema. ! Los tipos de violaciones de seguridad que pueden ocurrir mas comunes son: ! Intromisiones intencionales ! Ataques intencionales ! Ataque intencional no autorizado 22 Violaciones de seguridad ! El acceso intencional no autorizado incluye los ataques de denegación del servicio, ojeo, intervenciones en línea, ensayos repetidos, trampas y recolección de basura. ! Estos ataques difieren fundamentalmente de los virus y los gusanos y cuestiones semejantes en que infringen un daño distribuido a numerosas compañías y organizaciones, sin especificar ninguna como objetivo 23 Virus ! Un virus se define como un pequeño programa escrito para modificar la forma de operación de una computadora, sin permiso o conocimiento del usuario. ! Un virus debe cumplir 2 criterios: ! Debe ser autoejecutable. A menudo esto significa colocar su propio código en la ruta de otro programa. ! Debe ser capaz de autorreplicarse 24 Virus ! Los virus suelen escribirse para atacar cierto sistema operativo. ! En consecuencia, es raro que el mismo código de virus ataque exitosamente una estación de trabajo Linux y un servidor de Windows. ! Los escritores de virus suelen explotar una vulnerabilidad conocida en el software de sistema operativo; de ahí la necesidad de actualizarlo correctamente con parches. 25 Gusanos ! Un gusano es un programa residente en la memoria que se copia a sí mismo de un sistema al siguiente sin requerir la ayuda de un archivo de programa infectado. ! El resultado inmediato de un gusano es tiempo de procesamiento mas lento de trabajo legitimo porque el gusano actúa como un embudo para el tiempo de procesamiento y espacio en la memoria. ! Los gusanos son especialmente destructivos en las redes, donde ellos acaparan recursos críticos del sistema, tales como la memoria principal y tiempo de procesador 26 Caballos de Troya ! Un troyano (originalmente llamado caballo de troya) es un programa destructivo que esta disfrazado como un programa legitimo o inofensivo que algunas veces transporta en si mismo los medios para que el creador del programa tenga acceso secreto al sistema del usuario. ! Se ha sabido de intrusos que capturan las contraseñas del usuario al usar un troyano para sustituir el programa de registro normal con u registro falso 27 Etica ! ¿ Que es un comportamiento ético ? ! Ser bueno, hacer el bién ! Codigo de Etica de la ACM 28 Medición del rendimiento ! El rendimiento total del sistema puede definirse como la eficiencia con la cual un sistema de computo cumple sus objetivos. ! La eficiencia no es facil de medir porque se ve afectada de por tres componentes fundamentales: ! Programas de usuario ! Programas del sistema operativo ! Hardware 29 Herramientas de medición ! La mayoría de diseñadores y analistas dependen de ciertas medidas del rendimiento del sistema: ! Volumen de trabajo: Es una medida compuesta que nos indica la productividad del sistema como un todo. Numero de trabajos por dia, numero de transacciones en linea por hora. ! Utilización de recursos: es una medida de que con cuanto contribuye cada unidad a la operación global. El CPU esta ocupado el 60 % del tiempo, etc 30 Herramientas de medición ! La disponibilidad: indica la probabilidad de que un recurso esté listo cuando un usuario lo necesite. Es afectada por 2 valores el tiempo medio entre fallas y el tiempo medio de reparación. 31 Retroalimentación ! Para prevenir que el procesador pase mas tiempo haciendo sobrecarga que ejecutando trabajos, el sistema debe monitorear de manera continua el sistema y alimentar esta información al planeador de trabajos. ! Después el planeador puede permitir que mas trabajos entren al sistema hasta que se alivie el congestionamiento. 32