GRADUADO EN INGENIERÍA DE COMPUTADORES Guía de Aprendizaje DATOS DESCRIPTIVOS Información al estudiante ASIGNATURA: Unix y Linux Nombre en inglés: Unix and Linux MATERIA: Unix y Linux CARÁCTER: Optativa TITULACIÓN: Graduado en ingeniería de Computadores CURSO/SEMESTRE: Cuarto / Primero ESPECIALIDAD: CURSO ACADÉMICO 2010 -- 2011 PERIODO IMPARTICIÓN: Septiembre Enero X Febrero -- Junio IDIOMA IMPARTICIÓN: Sólo Castellano Sólo Ingles Ambos X CONOCIMIENTOS PREVIOS REQUERIDOS PARA PODER SEGUIR CON NORMALIDAD LA ASIGNATURA ASIGNATURAS SUPERADAS: Esta se una asignatuta optativa y puede cursarse en tercer o cuarto curso donde hay 6 y 18 créditos disponibles. Previamente habrán cursado Fundamenteos de Programación, Algorítmica y Programación concurrente. Sistemas Operativos la habrán cursado o estarán en ella. Con todo esto parece suficiente. 1
OTROS RESULTADOS DE APRENDIZAJE NECESARIOS DEPARTAMENTO: Informática Aplicada NOMBRE Y APELLIDOS (C = Coordinador PROFESORADO DESPACHO Correo electrónico Luis José Cearra Zabala ( C ) 4418 luisjc@lem.eui.upm.es OBJETIVOS DE APRENDIZAJE COMPETENCIAS Y NIVEL ASIGNADAS A LA ASIGNATURA CÓDIGO COMPETENCIA NIVEL GENERALES UPM G1 Comunicación oral y escrita G2 Creatividad G3 Liderazgo de equipos G4 Organización y planificación G5 Respeto por el medioambiente G6 Uso de lengua inglesa G7 Uso de las tecnologías de la información y las comunicaciones GENERALES DEL TITULO G8 Trabajo en equipo G9 Aprendizaje autónomo G10 Capacidad de análisis y síntesis G11 Iniciativa y capacidad emprendedora G12 Motivación por la calidad y mejora continua 2
COMPETENCIAS Y NIVEL ASIGNADAS A LA ASIGNATURA CÓDIGO COMPETENCIA NIVEL G13 Razonamiento crítico G14 Resolución de problemas G15 Toma de decisiones G16 Trabajo en un contexto internacional COMPETENCIAS COMUNES A LA RAMA DE INFORMÁTICA ASIGNADAS A LA ASIGNATURA I1 I2 I3 I4 I5 I6 I7 Capacidad para la resolución de los problemas matemáticos que puedan plantarse en la ingeniería. Aptitud para aplicar los conocimientos sobre: algebra, cálculo diferencial e integral i métodos numéricos; estadística y optimización Capacidad para comprender y dominar los fundamentos físicos y tecnológicos de la informática: electromagnetismo, ondas, teoría de circuitos, electrónica y fotónica y su aplicación para la resolución de problemas propios de la ingeniería Capacidad para comprender y dominar los conceptos básicos de matemática discreta, lógica, algorítmica y complejidad computacional, y su aplicación para el tratamiento automático de la información por medio de sistemas computacionales y su aplicación para la resolución de problemas propios de la ingeniería Conocimiento de los fundamentos del uso y programación de los computadores, los sistemas operativos, las bases de datos y, en general, los programas informáticos con aplicación en ingeniería Conocimiento de la estructura, funcionamiento e interconexión de los sistemas informáticos, así como los fundamentos de su programación Conocimiento adecuado del concepto de empresa y su marco institucional y jurídico, así como los aspectos básicos de organización y gestión de empresa Capacidad para diseñar, desarrollar, seleccionar y evaluar aplicaciones y sistemas informáticos, asegurando su fiabilidad, seguridad y calidad, conforme a principios éticos y a la legislación y normativa vigente 3
COMPETENCIAS Y NIVEL ASIGNADAS A LA ASIGNATURA CÓDIGO COMPETENCIA NIVEL I8 I9 I10 I11 I12 I13 I14 I15 I16 I17 I18 I19 Capacidad para planificar, concebir, desplegar y dirigir proyectos, servicios y sistemas informáticos en todos los ámbitos, liderando su puesta en marcha y su mejora continua y valorando su impacto económico y social Capacidad para comprender la importancia de la negociación, los hábitos de trabajo efectivos, el liderazgo y las habilidades de comunicación en todos los entornos de desarrollo de software Capacidad para elaborar el pliego de condiciones técnicas de una instalación informática que cumpla los estándares y normativas vigentes Conocimiento, administración y mantenimiento sistemas, servicios y aplicaciones informáticas Conocimiento y aplicación de los procedimientos algorítmicos básicos de las tecnologías informáticas para diseñar soluciones a problemas, analizando la idoneidad y complejidad de los algoritmos propuestos Conocimiento, diseño y utilización de forma eficiente los tipos y estructuras de datos más adecuados a la resolución de un problema Capacidad para analizar, diseñar, construir y mantener aplicaciones de forma robusta, segura y eficiente, eligiendo el paradigma y los lenguajes de programación más adecuados Capacidad de conocer, comprender y evaluar la estructura y arquitectura de los computadores, así como los componentes básicos que los conforman Conocimiento de las características, funcionalidades y estructura de los Sistemas Operativos y diseñar e implementar aplicaciones basadas en sus servicios Conocimiento y aplicación de las características, funcionalidades y estructura de los Sistemas Distribuidos, las Redes de Computadores e Internet y diseñar e implementar aplicaciones basadas en ellas Conocimiento y aplicación de las características, funcionalidades y estructura de las bases de datos, que permitan su adecuado uso, y el diseño y el análisis e implementación de aplicaciones basadas en ellos Conocimiento y aplicación de las herramientas necesarias para el almacenamiento, procesamiento y acceso a los Sistemas de información, incluidos los basados en Web 4
COMPETENCIAS Y NIVEL ASIGNADAS A LA ASIGNATURA CÓDIGO COMPETENCIA NIVEL I20 I21 I22 I23 I24 E1 E2 E3 E4 E5 E6 E7 E8 Conocimiento y aplicación de los principios fundamentales y técnicas básicas de la programación paralela, concurrente, distribuida y de tiempo real Conocimiento y aplicación de los principios fundamentales y técnicas básicas de los sistemas inteligentes y su aplicación práctica Conocimiento y aplicación de los principios, metodologías y ciclos de vida de la ingeniería de software Capacidad para diseñar y evaluar interfaces persona computador que garanticen la accesibilidad y usabilidad a los sistemas, servicios y aplicaciones informáticas Conocimiento de la normativa y la regulación de la informática en los ámbitos nacional, europeo e internacional COMPETENCIAS ESPECÍFICAS DE INGENIERÍA DE COMPUTADORES ASIGNADAS A LA ASIGNATURA Capacidad de diseñar y construir sistemas digitales, incluyendo computadores, sistemas basados en microprocesador y sistemas de comunicaciones Capacidad de desarrollar procesadores específicos y sistemas empotrados, así como desarrollar y optimizar el software de dichos sistemas Capacidad de analizar y evaluar arquitecturas de computadores, incluyendo plataformas paralelas y distribuidas, así como desarrollar y optimizar software de para las mismas Capacidad de diseñar e implementar software de sistema y de comunicaciones Capacidad de analizar, evaluar y seleccionar las plataformas hardware y software más adecuadas para el soporte de aplicaciones empotradas y de tiempo real Capacidad para comprender, aplicar y gestionar la garantía y seguridad de los sistemas informáticos Capacidad para analizar, evaluar, seleccionar y configurar plataformas hardware para el desarrollo y ejecución de aplicaciones y servicios informáticos Capacidad para diseñar, desplegar, administrar y gestionar redes de computadores CÓDIGO RESULTADOS DE APRENDIZAJE DE LA ASIGNATURA 5
CÓDIGO RA1 RA2 RA3 RA4 RA5 RA6 RA7 RESULTADOS DE APRENDIZAJE DE LA ASIGNATURA Utiliza comandos de usuario en Unix Utiliza y entiende expresiones regulares de Unix Utiliza procesos y hace que se comuniquen entre sí. Utiliza comandos para gestionar usuarios, grupos y permisos. Trabaja con ficheros y utiliza redirección. Utiliza algunos comandos básicos de administración Instala Unix y gestiona paquetes. CONTENIDOS Y ACTIVIDADES DE APRENDIZAJE CONTENIDOS ESPECÍFICOS (TEMARIO) TEMA Tema 1.. Tema 2. Tema 3. Tema 4. Tema5. APARTADOS UNIX Y LINUX, COMANDOS BÁSICOS 1.1 Historia 1.2 Implementaciones 1.3 login, mail, ls, file 1.4 echo, man, who OBJETOS Y MECANISMOS 2.1 Ficheros 2.2 Directorios 2.3 Redirección 2.4 Permisos 2.5 Metacaracteres de sh INSTALACIÓN 3.1 Básica 3.2 Entorno gráfico 3.3 Aplicaciones FILTROS 4.1 De corte, unión, combinación, cambio, reorganización, búsqueda, comparación recuento, etc. EXPRESIONES REGULARES 5.1 Antiguas 5.2 Extendidas 6
CONTENIDOS ESPECÍFICOS (TEMARIO) TEMA Tema 6. Tema 7. Tema 8. Tema 9. Tema 10. Tema 11. Tema 12. APARTADOS 5.3 En substitución PROCESOS 6.1 Uso explícito 6.2 Uso implícito AWK 7.1 Estructura 7.2 Tipo tira_de_caracteres 7.3 Sentencias compuestas 7.4 Tipo número 7.5 Asignación 7.6 Tipo array 7.7 print y printf MAKE 8.1 Lógica 8.2 Extensiones EDICION CON VI 9.1 Modos y uso básico 9.2 Macros y uso avanzado COMANDOS DE ADMINISTRACIÓN E INTERPRETE 10.1 Compresión 10.2 tar 10.3 find 10.4 du, df 10.5 shell EN RED 11.1 Ssh, scp ssh+x 11.2 ping, traceroute 11.3 ftp, mirror GESTIÓN DE PAQUETES 12.1 Tar 12.2 Debian 12.3 Rpm 12.4 Puppet 7
BREVE DESCRIPCIÓN DE LAS MODALIDADES ORGANIZATIVAS UTILIZADAS Y MÉTODOS DE ENSEÑANZAS EMPLEADOS CLASES DE TEORÍA CLASES PROBLEMAS PRÁCTICAS Las exposiciones teóricas se intercalan con ejemplos prácticos realizados en gran parte por los alumnos. La resolución de problemas esta integrada en la realización de prácticas. Algunas de las prácticas se utilizan para la evaluación continua. TRABAJOS AUTÓNOMOS TRABAJOS EN GRUPOS TUTORÍAS Los estudiantes son atendidos preferentemente en los horarios establecidos. RECURSOS DIDÁCTICOS BIBLIOGRAFÍA Sistemas Abiertos Unix. Luis J. Cearra Zabala. Dpto. Publicaciones EUI UPM, 1999 El entorno de programación Unix. B. Kernighan. Prentice Hall, 1987. Unix System Library. ATT. Prentice Hall, 1989. Debian System. Martin F Krafft. Open Source Press. RECURSOS WEB Páginas Web de la asignatura EQUIPAMIENTO Laboratorio con cañon de luz y ordenadores personales. SISTEMA DE EVALUACIÓN DE LA ASIGNATURA EVALUACIÓN REF INDICADOR DE LOGRO Relacionad o con RA 8
REF T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 T11 T12 EVALUACIÓN INDICADOR DE LOGRO T_1.1 T1_2 El estudiante será capaz de reconocer a los principales protagonistas de la historia de Unix, así como sus aportaciones más importantes. T_1.3 T_1.4 El estudiante será capaz de conectarse y ralizar operaciones básicas en Unix. El estudiante deberá conocer y aplicar los comandos y opciones para modificar y conocer el estado de los objetos o abstracciones que aporta Unix. El estudiante deberá ser capaz de realizar una instalación personalizada de Unix El estudiante deberá conocer y aplicar filtros de texto. El estudiante deberá conocer y utilizar expresiones regulares de Unix. T_6.1 El estudiante deberá conocer y aplicar los comandos asociados a la abstracción de proceso en Unix. T_6.2 El estudiante debera conocer y utilizar las implicaciones del esquema de cración de procesos asociado al intérprete de comandos. El estudiante deberá ser capaz de escribir filtros mediante AWK. El estudiante deberá conocer y aplicar la lógica del lenguaje soportada por el comando make. El estudiante deberá conocer los mecanismos y su combinación que ofrece un editor de Unix. El estudiante deberá conocer y aplicar comandos básicos en administración de un sistema Unix, y en particulas la shell o intérprete de comandos. El alumnos deberá conocer y aplicar los comandos básicos para comnunicar sistemas Unix en red. El estudiante deberá conocer y aplicar las técnicas de gestión y construcción de paquetes. Relacionad o con RA ra1,ra6 Ra1,ra3,ra4, ra5,ra6 ra7 Ra1, ra2, rea3, ra5, ra6 Ra1, ra2, ra5 Ra1, ra3, ra4, ra5, ra6 Ra1, ra2, ra5 Ra1, ra5 Ra1, ra2, ra3, ra5 Ra3, ra4, ra5, ra6 Ra3, ra4, ra5, ra6 ra7 EVALUACIÓN ACUMULATIVA BREVE DESCRIPCIÓN DE LAS ACTIVIDADES QUE SE EVALÚAN MOMENTO LUGAR PESO EN LA CALIFICACIÓN 9
EVALUACIÓN ACUMULATIVA Participación en el laboratorio 0.1 Prácticas a evaluar Pruebas escritas de los distintos temas Prueba final global (escrita) Ver cronograma Ver cronograma Al finalizar el semestre Laboratorio 0.3 Laboratorio 0.3 Laboratorio 0.3 DESCRIPCIÓN GENERAL DE LAS ACTIVIDADES QUE SE EVALÚAN Y DE LOS CRITERIOS DE CALIFICACIÓN Participación en el laboratorio: colaboración, contribución, cooperación, aportación, opiniones,... Evalucación de las actividades prácticas teniendo en cuenta la realización satisfactoria de los supuestos y claridad de la presentación. Corrección de las respuestas a las pruebas escritas. 10
CRONOGRAMA DE TRABAJO DE LA ASIGNATURA SEMANA Actividades Aula Laboratorio Trabajo Trabajo en Grupo Actividades Otros Individual Evaluación 1 Teoria y práctica tema 1. Estudio individual 2 Id. tema 1. Estudio individual Práctica a evaluar 3 Id. tema 2. Estudio individual 4 Id. tema 2. Estudio individual Práctica a evaluar 5 Id. temas 2 y 3. Estudio individual 6 Id. tema 4. Estudio individual Práctica a evaluar 7 Id. temas 4 y 5. Estudio individual 8 Id. tema 6. Estudio individual Práctica a evaluar 9 Id. tema 6 y 7. Estudio individual Prueba escrita. 10 Id. tema 7 y 8. Estudio individual Práctica a evaluar 11 Id. tema 9. Estudio individual 12 Id. tema 10. Estudio individual Práctica a evaluar 13 Id. tema 10. Estudio individual 11
SEMANA Actividades Aula Laboratorio Trabajo Trabajo en Grupo Actividades Otros Individual Evaluación 14 Id. tema 10. Estudio individual Práctica a evaluar 15 Id. tema 11. Estudio individual Prueba escrita. 16 Id. tema 12. Estudio individual Práctica a evaluar 12