Download bibliografía basica - Docencia FCA-UNAM

Document related concepts

Visual Prolog wikipedia , lookup

Erlang wikipedia , lookup

Dylan (lenguaje de programación) wikipedia , lookup

Transcript
UNIVERSIDAD NACIONAL
AUTONOMA DE MEXICO
Sistema de Universidad Abierta
PROGRAMA DE TRABAJO (DETALLE)
Materia
Prof.
Grupo
Semestre
Horario
Cubículo
Pagina Web
e-mail
: INFORMATICA VII (Programación e Implantación de Sistemas)
: Ramón Castro Liceaga
: 9882/1866
: 2012-1
: Martes de 20:00 a 22:00 hrs y Sábados de 9:00 a 11:00.
: F- 224
: http://aprender.fca.unam.mx/~rcastro/
[email protected]
[email protected]
Objetivo general del curso
Al finalizar el curso, el alumno conocerá la definición y forma de construcción del software que hace posible el
funcionamiento de las computadoras en diferentes niveles de operación

Practicas en laboratorio:
Sábados de 9:00 a 11:00 hrs. En el edificio de CIFCA
(edificio rojo atrás de la Biblioteca). Laboratorio 5A

Plática de iniciación donde se te dará la estrategia de programación
Fecha: Martes 16 de agosto
Materiales de apoyo para inicio de la programación:
- Pocket guia.- Guia rapida de comandos de lenguaje C.
- Metodología para la programación de estructuras de datos en lenguaje C
- Manual de Programación en C (se recomienda hacer los programas del manual)
- Cualquier libro de Programación en C, C++ y C# que contenga los siguientes temas:
Variables, condicionales, funciones, ciclos, arreglos, apuntadores y archivos. (verificar que
tenga muchos ejemplos y códigos).
Compilador:
Con la idea de que empieces en cuanto antes a programar, el compilador lo puedes bajar de
Internet en la siguiente ruta e instálalo en tu equipo de cómputo. (En las prácticas se darán a
conocer más detalles sobre los compiladores para C,C++ y C#)
Dev-C++: http://sourceforge.net/projects/dev-cpp/
a) Tarea de inicio: Desarrolla un programa en C, C++ que simule el sistema de una
Calculadora con las siguientes opciones:
Fecha de entrega: EN CUANTO ANTES
valor 5%
Temario
1.-. INTRODUCCION
1.1.- Definición de programas de sistema.
1.2.- Lenguajes de programación.
1.3.- Interpretes.
1.4.- Compiladores.
1.5.- Sistemas operativos.
1.6.- Construcción de la automatización
Actividades :
1a .- El alumno entregará un resumen de esta unidad en un documento de MicrosoftWord
Fecha: martes 23/08/11 (Entrega)
valor 3%
1b .- El alumno programará un virus en C que haga mover el cursor del ratón (mouse) en todas
las direcciones sin parar... sin causar daños adjuntos a la computadora.
Fecha: sábado 27/08/11 (Entrega)
valor 3%
1c .- El alumno realizará examen de esta unidad
.
Fecha: martes 30/08/11 (Examen)
2.- LENGUAJES DE PROGRAMACIÓN
2.1.- Historia de los lenguajes de programación.
2.2.- Sintaxis de los lenguajes de programación.
2.3.- Etapas de traducción.
2.4.- Modelos formales de traducción.
2.5.- Tipos de datos.
2.6.- Tipos de datos abstractos.
2.7.- Gestión de almacenamiento.
2.8.- Control de secuencia.
valor 10%
Actividades :
2a .- El alumno entregara un resumen de esta unidad
Fecha: sábado 3/09/11 (Entrega)
valor 3%
2b .- El alumno desarrollará un programa en C/C++
Fecha: martes 6/09/11 (Entrega)
valor 3%
2c .- El alumno realizará examen
.
Fecha: sábado 10/09/11 (Examen)
valor 10%
3.- COMPILADORES
3.1.- Fases de la compilación.
3.2.- Análisis lexicográfico.
3.3.- Token
3.4.- Análisis sintáctico.
3.5.- Análisis semántico.
3.6.- Optimización.
3.7.- Preparación para la generación del código.
3.8.- Generación del código.
3.9.- Fases de compilación en un lenguaje de programación.
Actividades :
3a .- El alumno entregara un resumen de esta unidad
Fecha: viernes 13/09/11 (Entrega)
valor 3%
3b .- Desarrolla un programa en C o C++ que lea una cadena de caracteres (sin espacios en
blanco) y analize si cumple con la sintaxis para c++ de una sentencia 'FOR', 'WHILE'. 'DO', 'IF',
tambien identifique la informa de cada una de los tokens reconocidos en la sentencia digitada
como se muestra en el siguiente ejemplo:
Fecha: viernes 17/09/11 (Entrega)
valor 3%
3c .- El alumno realizará examen
.
Fecha: martes 20/09/11 (Examen)
valor 10%
4.- SISTEMAS OPERATIVOS
4.1.- Evolución histórica de los sistemas operativos y sus problemas técnicos.
4.1.1.- Problemas de explotación y soluciones iniciales
4.1.2.-.Procesamiento por lotes (batch)
4.1.3.- Monitores residentes
4.1.4.- Sistemas con almacenamiento temporal de E/S
4.1.5.- Algoritmo del sistema de buffers
4.1.6.- Spoolers
4.1.7.- Sistemas operativos multiprogramados
4.2.-Estructura de los Sistemas Operativos.
4.3.-Procesos.
4.3.1.-Introducción a los procesos.
4.3.2.-Hilos.
4.3.3.-Sincronización de procesos.
4.4.-Bloqueos.
4.5.- La gestión de Entrada/Salida
4.5.1.-Principios de entrada/salida de hardware.
4.5.2.-Principios de entrada/salida de software.
4.6.-Gestión de la memoria.
4.7.-Gestión de archivos.
4.8.-Sistemas distribuidos.
4.9.-Seguridad.
4.10.- Funciones de los Sistemas Operativos multiprogramados
4.11.- Llamadas al sistema operativo
4.11.1.- Modos de ejecución en un CPU
4.11.2.- Bibliotecas de interfaz de llamadas al sistema
4.12.- Interrupciones y excepciones
4.12.1.- Tratamiento de las interrupciones
4.12.2.- Importancia de las interrupciones
4.12.3.- Excepciones
4.12.4.- Clases de excepciones
4.12.5.- Importancia de las excepciones
4.12.5.- Manejo de excepciones en lenguajes de programación Orientados a Objetos
4.13.- Componentes de un sistema operativo
4.13.1.- Gestión de procesos
4.13.2.- Gestión de la memoria principal
4.13.3.- Gestión del almacenamiento secundario
4.13.4.- El sistema de E/S
4.13.5.- Sistema de archivos
4.13.6.- Sistemas de protección
4.13.7.- Sistema de comunicaciones
4.13.8.- Programas de sistema
4.14.9.- Gestor de recursos
4.14.- Tareas y usuarios
4.14.1.- Administración de tareas
4.14.2.- Administración de usuarios
4.14.2.1.- Monousuario
4.14.2.2.- Multiusuario.
4.15.- Manejo de recursos
4.15.1.- Centralizado
4.15.2.Distribuido
4.16.- Sistemas Operativos ( PCs ) características técnicas, versiones y tipo de licencias
4.16.1.- Windows
4.16.2.- Mac OS
4.16.3.- Linux
4.16.4.- AmigaOS
4.17.- Sistemas Operativos ( Dispositivos Moviles ) características técnicas, versiones y tipo de
licencias
4.17.1.- Symbian
4.17.2.- Android
4.17.3.- iOS
4.17.4.- Windows Mobile
Actividades :
4a .- El alumno entregara un resumen de esta unidad
Fecha: martes 4/10/11 (Entrega)
valor 3%
4b .- El alumno desarrollará un programa en C/C++
Fecha: sábado 8/10/11 (Entrega)
valor 3%
4c .- El alumno realizará examen
.
Fecha: martes 11/10/11 (Examen)
valor 10%
NOTA: SI HASTA AQUÍ EL ALUMNO NO CUMPLIO CON MAS DEL 60 % DEL TEMARIO
NO PODRA CONTINUAR Y TENDRA QUE PRESENTAR EXAMEN GLOBAL
5.- INSTALACION DE SOFTWARE
5.1.- Que es una instalación de software
5.2.- Técnicas para la instalación de software
5.3.- Algoritmo (pasos) para la instalación de software
5.4.- Bibliotecas de software
5.6.- Sistema de gestión de paquetes
5.7.- Término de la instalación
5.8.- Ejemplo de instalación de software (Movil, PC, Sistema Operativo, etc)
5.9.- Desinstalación de software
Actividades :
5a .- El alumno entregara un resumen de esta unidad
Fecha: martes 18/10/11 (Entrega)
valor 3%
5b .- El alumno desarrollará una instalación de software en algún sistema informático y
entregará un reporte ilustrado en un documento de Word no mayor a cinco hojas.
Fecha: martes 25/10/11 (Entrega)
valor 3%
5c .- El alumno realizará examen
.
Fecha: martes 8/11/11 (Examen)
valor 10%
6.- CONFIGURACION DE SOFTWARE
6.1.- Que es la configuración de software
6.2.- Software Configuration Management (SCM)
6.3.- Funciones del (SCM)
6.4.- Algoritmo (pasos) para la configuración de software
6.5.- Control de versiones
6.5.1.- Software de administración de versiones
6.6.- Ejemplos de configuraciones en sistemas (redes, Bios, teclados, PCs, etc)
Actividades :
6a .- El alumno entregara un resumen de esta unidad
Fecha: martes 22/11/11 (Entrega)
valor 2%
6b .- El alumno desarrollará una configuración de software en algún sistema informático y
entregará un reporte ilustrado en un documento de Word no mayor a cinco hojas.
Fecha: sábado 26/11/11 (Entrega)
valor 3%
6c .- El alumno realizará examen
.
Fecha: martes 29/11/11 (Examen)
valor 10%
EVALUACION
6 EXAMENES PARCIALES
TAREAS, PROBLEMAS, TRABAJOS, EJERCICIOS,
PROGRAMAS Y RESUMEN DEL TEMARIO
TOTAL
60 %
40%
100 %
BIBLIOGRAFÍA BASICA










CARRETERO Pérez, Jesús, Sistemas operativos, una visión aplicada, México, Mc. Graw-Hill, 2000, 732 pp.
PRATT, Terreence, Lenguajes de programación. Diseño e Implementación, 4ª. Ed., México, Prentice-Hall,
1998.
PÉREZ, César., Oracle 9i Servidor de aplicaciones, Red y Programación, México, coedición Alfa omegaRama, 2004, 464 pp.
SIBERSHATZ, Sistemas Operativos, México, Limusa-Wiley, 2002.
STALLINGS, William, Sistemas Operativos, 4ª Ed,. España, Prentice-Hall, 2001.
LEMONE, Karen, Fundamentos de Compiladores, México, C.E.C.S.A., 1998.
Kernighan,B.W. y Pike Rob, El entorno de programación UNIX, México, Prentice-Hall,.
SILBERSCHATZ, Abraham, Sistemas Operativos,5ª. Edición, México, Pearson, 1999, 888 pp.
TANNENBAUM, Andrew S., Sistemas Operativos Modernos, 2a. Edición, México, Prentice-Hall, 2003, 976
pp.
TANNENBAUM, Andrew, S., Sistemas operativos. Diseño e implementación, 2ª. Edición, México, Prentice
Hall, 1998, 992 pp.
BIBLIOGRAFÍA COMPLEMENTARIA





AHO, Alfred V., Ravi Sethi y Jeffrey D. Ullman, Compiladores, principios, técnicas y herramientas, México,
Addison Wesley Longman, 1990, 832 pp.
MAK, Ronald, Writing Compilers and Intrpreters An Applied Approach Using C++, USA: Wiley, 1996.
ROBBINS, Arnold, UNIX IN A NUTSHELL, 3ª Ed., USA: O’REILLY, 1999.
SIEVER, Ellen, LINUX IN A NUTSHELL, 3ª Ed., USA: O’REILLY, 2000.
TANNENBAUM, Andrew, S., Sistemas operativos distribuidos, México, Prentice Hall, 1996, 617 pp