Curso en el que se recomienda incorporar el uso de tecnologías de información. |
|||||
|
|||||
Disciplina asociada:Tecnologías Computacionales |
|||||
Escuela:
Ingeniería y Ciencias
|
|||||
Departamento Académico:
Computación
|
|||||
Programas académicos: |
|||||
Requisitos:(Haber Aprobado TC2017 y Haber Cursado TC2008) |
|||||
Equivalencia:No tiene. |
|||||
Intención del curso en el contexto general del plan de estudios: |
|||||
Es un curso de nivel intermedio del área de computación, en el que se analizan conceptos y técnicas de programación para realizar aplicaciones de cómputo con interfaz hacia el núcleo del sistema operativo. Requiere conocimientos previos de programación y estructuras de datos, así como de sistemas operativos. Como producto del aprendizaje se desarrollarán programas, en lenguaje de programación C, en los cuales se pongan en práctica los conceptos relacionados con el uso de la interfaz hacia el sistema operativo, así como el uso de programación concurrente para sistemas multinúcleo. |
|||||
Objetivo general de la Unidad de Formación: |
|||||
Al finalizar el curso el alumno tendrá conocimientos avanzados sobre el desarrollo de programas en lenguaje C, su depuración e implementación para el diseño y desarrollo de aplicaciones computacionales que optimicen el aprovechamiento de los recursos del núcleo del sistema operativo. El alumno entenderá a cabalidad la administración de procesos de un sistema operativo y las técnicas de sincronización y comunicación entre ellos, así como las ventajas del desarrollo de algoritmos concurrentes y multihilos simultáneamente con la forma de implementarlos utilizando herramientas que garanticen su eficiencia. | |||||
Técnica didáctica sugerida: |
|||||
Aprendizaje basado en problemas | |||||
Bibliografía sugerida: |
|||||
LIBROS DE TEXTO: * Hoover, Adam., System programming with C and Unix , , Boston : Addison-Wesley, c2010, , 0136067123, 9780136067122 (papel alcalino) LIBROS DE CONSULTA: * Russinovich, Mark E., Windows internals, Redmond, Wash. : Microsoft Press,, 2012, eng, * Stevens, W. Richard., Advanced programming in the Unix environment, Upper Saddle River, NJ. : Addison-Wesley,, 2005, eng, * Kernighan, Brian W., El lenguaje de programación C, México : Prentice Hall Hispanoamericana,, 1991, spa, |
|||||
Perfil del Profesor: |
|||||
(110101)Maestría en Ciencias Computacionales/de Información ; (110701)Maestría en Ciencias Computacionales ; (110102)Maestría en Inteligencia Artificial /Robótica ; (110103)Maestría en Tecnología de la Información/Informática/Sistemas Computacionales ; (110101)Doctorado en Ciencias Computacionales/de Información ; (110701)Doctorado en Ciencias Computacionales ; (110102)Doctorado en Inteligencia Artificial /Robótica ; (110103)Doctorado en Tecnología de la Información/Informática/Sistemas Computacionales CIP: 110101, 110701, 110102, 110103 |
|||||
Course in which its recommended to incorporate the use of information technologies. |
|||||
|
|||||
Discipline:Computer Technologies |
|||||
School:
Engineering and Sciences
|
|||||
Academic Department:
Computing
|
|||||
Programs: |
|||||
Prerequisites:( TC2017 and TC2008) |
|||||
Equivalences:None. |
|||||
Course intention within the general study plan context: |
|||||
This is an intermediate level computer science course in which programming concepts and techniques will be studied in order to construct computer applications which have an interface to the operating system. This class requires previous knowledge in programming, TOS structures, and operating systems. The learning outcome for this course is for students to develop programs in which the concepts of concurrent and multi-core programming are put into practice. |
|||||
Course objective: |
|||||
Upon completion of this course, students will have acquired an advanced knowledge of the development of programs in C, their debugging and implementation for the design and development of computer applications that optimize the utilization of the operating system nucleus resources; fully understand operating system process management and the synchronization and communication techniques between the processes, as well as the advantages of developing concurrent and multithreaded algorithms simultaneously in order to implement them using tools that guarantee their efficiency. | |||||
Teaching and learning tecniques: |
|||||
Problem-based Learning | |||||
Suggested Bibliography: |
|||||
TEXT BOOKS: * Hoover, Adam., System programming with C and Unix , , Boston : Addison-Wesley, c2010, , 0136067123, 9780136067122 (papel alcalino) BOOKS FOR CONSULTATION: * Russinovich, Mark E., Windows internals, Redmond, Wash. : Microsoft Press,, 2012, eng, * Stevens, W. Richard., Advanced programming in the Unix environment, Upper Saddle River, NJ. : Addison-Wesley,, 2005, eng, * Kernighan, Brian W., El lenguaje de programación C, México : Prentice Hall Hispanoamericana,, 1991, spa, |
|||||
Academic credentials required to teach the course: |
|||||
(110101)Master Degree in Computer/Information Sciences and (110701)Master Degree in Computational Sciences and (110102)Master Degree in Artificial Intelligence/Robotics and (110103)Master Degree in Information Technology. and (110101)Doctoral Degree in Computer/Information Sciences and (110701)Doctoral Degree in Computational Sciences and (110102)Doctoral Degree in Artificial Intelligence/Robotics and (110103)Doctoral Degree in Information Technology. CIP: 110101, 110701, 110102, 110103 |
|||||