Trimestres anteriores‎ > ‎2017-I‎ > ‎

1151041 - Almacenamiento y Estructuras de Archivos

Instructor: M. en C. Rodrigo Alexander Castro Campos.
Trimestre: 2017-I.

Grupo: CSI01.
Horario: Lunes, miércoles y viernes de 10:00 a 11:30.
Salón: E-309 .

Contenido oficial del curso:
    • Algoritmos de procesamiento de cadenas.
    • Operaciones fundamentales de archivos.
    • Sistemas de archivos.
    • Organización de datos.
    • Almacenamiento secundario y terciario.
    • Compresión y compactación de archivos.
    • Ordenamiento externo.
    • Índices.
    • Árboles B y B+.
    • Dispersión y dispersión extendida.
    Calificación:

    Habrán ocho tareas con un valor de 15 puntos cada una. Las tareas consistirán en programas escritos para la plataforma OmegaUp que resuelvan el problema de programación indicado para la evaluación. Su matrícula y nombre de usuario en OmegaUp deberán ser enviados a mi correo electrónico en la primera semana de clasesNo se calificarán programas de ninguna otra forma. Cada tarea estará disponible con al menos una semana de anticipación. No habrá evaluación terminal.

    La calificación final se obtiene de la suma de los puntajes de las tareas resueltas al 100% según OmegaUp. La escala de calificación en acta es:
    • Al menos 60 puntos para acreditar con S.
    • Al menos 73 puntos para acreditar con B.
    • Al menos 87 puntos para acreditar con MB.

    De acuerdo al Reglamento de Alumnos de la UAM, es falta de los alumnos en contra de la institución el suplantar o permitir ser suplantado en la realización de actividades académicas y se impondrá desde amonestación escrita hasta suspensión por dos trimestres.

    Calendario: El siguiente calendario es tentativo y podrá cambiar a lo largo del curso.
    • 16/01: Búsqueda de caracteres en cadenas.
    • 18/01: Búsqueda de caracteres en subcadenas. Problema de ejemplo.
    • 20/01: Búsqueda de subcadenas.
    • 23/01: Ordenamiento de cadenas. Ejemplo de radix sort.
    • 25/01: Árboles de prefijos.
    • 27/01: Funciones de dispersión y tablas de dispersión. Tarea 1 para el 03/02. Envíos aceptados.
    • 30/01: Crecimiento de tablas de dispersión y resolución de colisiones.
    • 01/02: Aplicación de dispersión en algoritmos. Tarea 2 para el 10/02. Envíos aceptados.
    • 03/02: Cachés y rendimiento.
    • 06/02: Archivos físicos y lógicos.
    • 08/02: Operaciones fundamentales de archivos.
    • 10/02: Archivos de texto y archivos binarios. Tarea 3 para el 17/02. Envíos aceptados.
    • 13/02: Bloques, páginas y sistemas de archivos.
    • 15/02: Fragmentación interna y externa.
    • 17/02: Desfragmentación y discos magnéticos. Tarea 4 para el 24/02. Envíos aceptados.
    • 20/02: Búsqueda lineal y búsqueda binaria.
    • 22/02: Ordenamiento externo sin archivos temporales. Tarea 5 para el 06/03. Envíos aceptados.
    • 24/02: Montículos como estructura auxiliar para ordenamiento en disco. Ejemplos de montículos.
    • 27/02: Cintas magnéticas y discos ópticos.
    • 01/03: Ordenamiento externo con archivos temporales.
    • 03/03: Compresión sin pérdida. Tarea 6 para el 13/03. Envíos aceptados.
    • 06/03: Compresión con pérdida.
    • 08/03: Serialización de registros. Ejemplos de serialización.
    • 10/03: Registros de longitud constante y variable. Ejemplos de serialización.
    • 13/03: Encabezados de archivos.
    • 15/03: Mantenimiento de registros. Tareas 7a y 7b para el 27/03. Envíos aceptados.
    • 17/03: Implementación del mantenimiento de registros. Ejemplo de base de datos de personas.
    • 20/03: Índices primarios.
    • 22/03: Índices secundarios.
    • 24/03: Árboles B y B+.
    • 27/03: Dispersión extendida. Tareas 8a y 8b para el 03/04 (el problema 8b=7b no cuenta doble). Envíos aceptados.
    • 29/03: Impacto del sistema operativo en el rendimiento.
    • 31/03: Fin del curso. Calificaciones finales.
    Bibliografía:
    • Folk, Zoellick y Riccardi. File Structures: An Object-oriented Approach with C++. Addison Wesley.
    • Knuth. The Art of Computer Programming: Vol. 3 Sorting and Searching. Addison Wesley.
    • Pate. UNIX File Systems: Evolution, Design, and Implementation. Wiley.
    • Salomon. A Concise Introduction to Data Compression. Springer.
    • Sedgewick. Algoritmos en C++. Pearson.
    • Tharp. File Organization and Processing. Wiley.