Download Taller de sistemas operativos avanzados
Document related concepts
no text concepts found
Transcript
UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE LOS ALTOS DIVISIÓN DE ESTUDIOS EN FORMACIONES SOCIALES LICENCIATURA: INGENIERÍA EN COMPUTACIÓN UNIDAD DE APRENDIZAJE POR OBJETIVOS TALLER DE SISTEMAS OPERATIVOS AVANZADOS M.C CLAUDIA ISLAS TORRES Presidente de la Academia de Sistemas Digitales y de Información DR. ROGELIO MARTÍNEZ CÁRDENAS Jefe del Departamento de Estudios Organizacionales NOMBRE DE LA ASIGNATURA CODIGO DE LA MATERIA DEPARTAMENTO ÁREA DE FORMACIÓN TALLER DE SISTEMAS OPERATIVOS AVANZADOS CC320 ESTUDIOS ORGANIZACIONALES ESPECIALIZANTE SELECTIVA CENTRO UNIVERSITARIO CENTRO UNIVERSITARIO DE LOS ALTOS CARGA HORARIA TEÓRIA 0 CARGA HORARIA PRÁCTICA 60 CARGA HORARIA TOTAL 60 CRÉDITOS 4 TIPO DE CURSO NIVEL DE FORMACIÓN PROFESIONAL PARTICIPANTES ELABORÓ PRERREQUISITOS FECHA DE ACTUALIZACIÓN TALLER LICENCIATURA LICENCIATURA EN INGENIERÍA EN COMPUTACIÓN SISTEMAS DIGITALES Y DE INFORMACIÓN TALLER SISTEMAS OPERATIVOS ENERO DE 2014 OBJETIVO GENERAL Aplicar los principios de diseño para la construcción de Sistemas operativos Distribuidos de propósito general, mediante el desarrollo e integración de mecanismos para comunicación y sincronización de procesos en un ambiente distribuido. OBJETIVOS ESPECÍFICOS En cada módulo del contenido temático principal. CONTENIDO TEMÁTICO Módulo 1: Introducción al Ambiente del Sistema Operativo Solaris Objetivo particular: Conocer y manipular herramientas básicas del Sistema Operativo Solaris (Sun OS), identificando y empleando algunas facilidades del ambiente gráfico, así como conocer el Shell y poner en práctica los comandos básicos de Unix relacionados al sistema de archivos para trabajo local y remoto. 1.1 Ambiente Gráfico. 1.2 Shell y Comandos Básicos de Unix Módulo 2: Lenguaje Java Objetivo particular: Identificar y analizar la aplicación de fundamentos de Programación Orientada a Objetos en el diseño y construcción de un Sistema Distribuido usando como herramienta de implantación el lenguaje Java. 2.1 Conceptos básicos. 2.2 Desarrollo de Aplicaciones con Hilos. 2.3 Trabajo en Red. Módulo 3: Núcleo del Sistema y Comunicación entre Procesos Objetivo particular: Estructurar el mecanismo de comunicación entre procesos a través de un MicroNúcleo, sustentándose en el modelo Cliente-Servidor y realizar la implementación respectiva a los procesos que habrán de ejecutarse sobre el sistema. 3.1 Modelo Cliente-Servidor. 3.2 Llamadas a Procedimientos Remotos (RPC). Módulo 4: Sincronización de Procesos Objetivo particular: Aplicar conocimientos pertinentes sobre sincronización de hilos en un proceso y la sincronización de procesos en un ambiente distribuido. 4.1 Procesos e Hilos. 4.2 Algoritmos de Sincronización de Relojes. 4.3 Exclusión Mutua de Procesos. Módulo 5: Proyecto Final. Objetivo particular: Realizar el acoplamiento de los conocimientos aplicados por distintos alumnos, en el desarrollo de un Sistema Distribuido básico completo que incluya el MicroNúcleo de modelo Cliente-Servidor como base de comunicación, sus distintos aspectos de diseño, el módulo para efectuar RPC, los aspectos de sincronización y los procesos de usuario correspondientes a los clientes y servicios del sistema. 5.1Desarrollo de una Aplicación Distribuida. ESTRUCTURA CONCEPTUAL Sistemas operativos Avanzados Se basan en Sistemas operativos en red Sistemas operativos Sistemas operativos distribuidos Cuyos elementos más importantes son Sincronización. Administración y planificación de procesos Sistemas de Archivos Manejo de Memoria BIBLIOGRAFÍA BÁSICA Deitel, P.; Deitel, H.(2004). Cómo programar en Java. México: Pearson Educación. BIBLIOGRAFÍA COMPLEMENTARIA Tanenbaum, A. S., Maarten Van (2008).Sistemas operativos Distribuidos, Principios y Paradigmas. Pearson Educación. Sun Microssystems (2002). Java Programming Language. Sun Microsystems. Colouris, G., (2001.) Sistemas Operativos Distribuidos, Conceptos y Diseño, Addison-Wesley. Tanenbaum, A. S.(1995). Sistemas Operativos Distribuidos. Pearson. Hall Hisp. MODALIDADES DEL PROCESO ENSEÑANZA APRENDIZAJE Exposiciones por parte del profesor. Investigación por parte de los alumnos. Desarrollo de proyecto. CONOCIMIENTOS, APTITUDES Y VALORES QUE EL ALUMNO DEBE ADQUIRIR CON BASE AL DESARROLLO DE LA UNIDAD Capacidad de abstracción y análisis de los requerimientos a nivel sistema para el desarrollo de sistemas de cómputo a gran escala. Habilidad para proveer a un sistema de mayor confiabilidad, escalabilidad y mejor desempeño manteniendo la flexibilidad en el diseño de sus componentes y que muestre a sus usuarios una interfaz de servicio simple que oculte la complejidad del software subyacente. CAMPO DE APLICACIÓN PROFESIONAL El alumno podrá a de expresar la solución, a problemas de sistemas operativos en ambientes distribuidos. MATERIAL DE APOYO ACADÉMICO • Notas sobre el curso • Programas educativos para computadoras • Uso de plataforma Moodle • Presentaciones Power Point MODALIDADES DE EVALUACIÓN CRITERIOS • • • • • 1er. Examen de POO en Java 2do. Examen de POO en Java 3er. Examen de POO en Java Tareas y ejercicios de implementación Práctica #1: Modelo Cliente/Servidor, paso de mensajes entre procesos 5% 5% 5% 5% 5% • Práctica #2: Modelo Cliente/Servidor, administración de procesos y mecanismo de comunicación básico Práctica #3: Llamadas a procedimientos remostos, resguardos del cliente y del servidor Práctica #4: Llamadas a procedimientos remotos, el programa conector Práctica #5: Modelo Cliente/Servidor, aspectos de diseño Práctica #6: Algoritmos de Sincronización de Relojes Práctica #7: Exclusión mutua de procesos Proyecto Final 10% • • • • • • 10% 10% 10% 8% 7% 20% PERFIL DOCENTE El docente de esta materia deberá ser un profesionista con formación en las áreas de la computación, comunicaciones o informática; capaz de motivar a la investigación y creación de conocimiento, con habilidades para transmitir sus conocimientos y enseñar de forma interactiva propiciando en los alumnos el autoaprendizaje.