Ministerio de Cultura y Educación
Universidad Nacional de San Luis
Facultad de Ciencias Físico-Matemáticas y Naturales
Departamento: Informatica
Área: Area III: Servicios
(Programa del año 2008)
(Programa en trámite de aprobación)
(Programa presentado el 25/03/2008 11:00:29)
I - Oferta Académica
Materia Carrera Plan Año Periodo
PROGRAMACION ING. ELECTRONICA 010/05 2 2c
PROGRAMACION PROF.TEC.ELECT. 009/05 2 2c
PROGRAMACION TEC. UNIV. MIC. 8/01 2 2c
PROGRAMACION I TEC.UNIV.GEOINF. 001/07 2 2c
II - Equipo Docente
Docente Función Cargo Dedicación
GUERRERO, ROBERTO ARIEL Prof. Responsable P.ADJ EXC 40 Hs
AGUIRRE, JESUS FRANCISCO Responsable de Práctico JTP EXC 40 Hs
ARELLANO, NORMA MYRIAM Auxiliar de Práctico JTP EXC 40 Hs
ROSAS, MARIA VERONICA Auxiliar de Práctico A.1RA EXC 40 Hs
WELCH, DANIEL ALBERTO Auxiliar de Práctico A.1RA EXC 40 Hs
III - Características del Curso
Credito Horario Semanal Tipificación Duración
Teórico/Práctico Teóricas Prácticas de Aula Práct. de lab/ camp/ Resid/ PIP, etc. Total B - Teoria con prácticas de aula y laboratorio Desde Hasta Cantidad de Semanas Cantidad en Horas
Periodo
 Hs. 2 Hs. 4 Hs.  Hs. 6 Hs. 1 Cuatrimestre 10/03/2008 20/06/2008 15 90
IV - Fundamentación
Se introduce al alumno en el uso de un nuevo ambiente de trabajo (Linux). Se analizan sus particularidades al mismo tiempo
que se desarrollan y elaboran practicas sobre el mismo a través de herramientas avanzadas del lenguaje C.
Es necesario que el alumno se interiorice de los detalles del hardware y de como un Sistema Operativo se hace cargo de la
operacion de todas las partes. Es necesario que el alumno pueda transferir estos conocimientos a cualquier hardware y
software existente en el mercado.
V - Objetivos
Lograr que el alumno:
• Integre los conceptos adquiridos en materias anteriores respecto de la interacción de las partes de una computadora.
• Identifique claramente el manejo de los dispositivos por parte del S.O.
• Interactue con el hardware a bajo nivel.
• Perfeccione el uso del lenguaje C.
VI - Contenidos
Bolilla I: Conceptos Avanzados de C (1era. Parte)
Concepto de Variables Puntero. Usos. Pasaje de Parámetros.

Bolilla II: Conceptos Básicos de Linux
Sistemas Operativos: Fundamentos. Funciones Básicas. Estructura. Clasificación.
Linux en modo monousuario: Ingreso al sistema. Interprete de comandos. Uso de comandos. Consolas Virtuales.
Aspectos del S.O.: Estructuración de la información: lógica, física. Administración de la información: comandos asociados.

Bolilla III: Conceptos Avanzados de Linux
Linux en modo Multiusuario: Concepto de Multiusuario. Seguridad de la información: comandos asociados.
Aspectos del S.O.: Organización. Archivos especiales. Sistema de Archivos. Acceso a diferentes sistemas de archivos:
comandos asociados.
Linea de comandos: Uso de expresiones regulares.

Bolilla IV: Programación Básica C en Linux
Repaso de conceptos ya conocidos: tipos, variables, arreglos, funciones, punteros.
Codificación de programas: Edición de texto, Compilación, Debugging en Linux. Aplicaciones asociadas con dichas tareas.

Bolilla V: Conceptos Avanzados de C (2da. Parte)
Estructuras de datos: definición y usos.
Redireccionamiento de E/S: comandos asociados.
Manejo de Archivos: conceptos asociados. Archivos de tipo ascii y binario.

Bolilla VI: Redes
Red de Computadoras: Concepto. Topología. Protocolos.
Internet: Números IP. Nombres de Dominio. Servicios asociados. Manipulación de información de tipo generalizado (binario
o ascii). Aglomerado y compresión de información: comandos asociados.

VII - Plan de Trabajos Prácticos
T.P. Nº1: Lenguaje C: Variables Puntero.
T.P. Nº2: Introducción a Linux.
T.P. Nº3: Linux: Administración de la Información.
T.P. Nº4: Linux: Sistemas de Archivos.
T.P. Nº5: Linux y Lenguaje C: aspectos básicos de C, edición y compilación.
T.P. Nº6: Lenguaje C: Estructuras de datos.
T.P. Nº7: Linux y Lenguaje C: debugging.
T.P. Nº8: Linux y Lenguaje C: redireccionamiento de E/S.
T.P. Nº9: Linux y Lenguaje C: Manejo de Archivos.
T.P. Nº10: Redes.
T.P. Nº11: Integración de conceptos.
VIII - Regimen de Aprobación
Régimen de Aprobación
• Asistencia al 70% de las clases prácticas.
• 2 evaluaciones parciales (una en papel y una en laboratorio).
• 2 recuperaciones (una para cada evaluación parcial).
• 1 recuperación adicional por trabajo. Puede utilizarse solamente para una de las evaluaciones parciales.

Alumnos Regulares
los que cumplan con la asistencia y aprueben las 2 evaluaciones con un mínimo del 70%: en primer instancia, recuperación o
recuperación por trabajo.

Alumnos Promocionales
Los que cumplan con la asistencia y aprueben las 2 evaluaciones con mas del 80%, donde:
• Solamente se puede recuperar la primer evaluación.
• Deben rendir al final del cuatrimestre una evaluación integradora y aprobarla con más del 80%.
La nota surgirá de los resultados obtenidos en todas las evaluaciones realizadas.

NOTA: La asignatura no puede rendirse como libre.
IX - Bibliografía Básica
[1] “Practical C Programming” - Steve Oualline, Ed. O´Reilly & Associates, 1997, ISBN: 1-56592-306-5
[2] “Programación en C” - Mitchell Waite y Stephen Prata, Anaya multimedia, 2000, ISBN: 84-7614-374-5
[3] “LINUX. Unleashing the Workstation in Your PC” - Stefan Strobel, Volker Elling,
[4] Verlag Springer, 1997, ISBN: 0387948805
[5] “Beginning Linux Programming” - Neil Matthew, Richard Stones, Alan Cox, Wrox, 2004, ISBN: 0764544977
[6] “Linux in a Nutshell” - Ellen Siever, Aaron Weber, Stephen Figgins, Robert Love, Arnold Robbins, O'Reilly Media, Inc., 2005, ISBN: 0596009305
[7] “Fundamentos de Redes” - Hallberg, Bruce A., Editorial McGraw-Hill, 2003, ISBN: 9701041240.
[8] “Teleinformática y redes de computadoras” - Alabau Muñoz, Antonio ; Riera García, José, Editorial Marcombo – Barcelona, 1984, ISBN 8426705405
X - Bibliografia Complementaria
[1] “El Lenguaje de Programacion C” - Brian W. Kernighan, Dennis M. Ritchie.,
[2] Editorial Prentice-Hall Hispanoamericana, 1985, ISBN 968-880-024-4
[3] “Linux Kernel Internals” - Michael Beck, Harald Bohme, Mirko Dziadzka, Ulrich Kunitz, Robert Magnus, Dirk Verworner, Addison-Wesley Professional, 1997, ISBN: 0201331438
[4] “Redes Locales. Teoría y Programación de las redes IBM” - Metairie, Christian y Nicole Polian., Paraninfo, España, 1989.
XI - Resumen de Objetivos
Desarrollar en el alumno la capacidad de:
• Manipular el entorno Linux.
• Diseñar e Implementar algoritmos bajo entorno Linux.
• Integrar los conceptos del hardware con el ambiente de trabajo y el manejo de los mismos a través del lenguaje C.
XII - Resumen del Programa
Se introduce al alumno en el uso de un nuevo ambiente de trabajo (Linux). Se analizan sus particularidades al mismo tiempo
que se desarrollan y elaboran practicas sobre el mismo a través de herramientas avanzadas del lenguaje C.
XIII - Imprevistos