ELO 330 Programación de Sistemas
Segundo Semestre 2012, Miércoles 15:40-17:10 P-202 y Viernes 11:30-13:00 P-202.
Textos    Contenidos    Tareas    Evaluación   
Profesor: Agustín J. González, oficina: B-301
agustin p u n t o  gonzalez arroba    u s m  dot c l 
Horario oficina profesor. Puede escribirme si desea verme fuera de este horario.
Ayudante:  Fabrizio Cabaleiro (email cuenta gmail es elo330 punto utfsm)
Lista de correo: elo330 @ listas punto utfsm punto c l (ver las instrucciones aquí )
Textos:
Programación en SO derivados de UNIX:
   Sumitabha Das, "Your UNIX: The Ultimate Guide", Mc Graw Hill, 2º Edition, 2005. También puede considerar http://linuxcommand.org/ o The Linux® Command Line
de William E. Shotts, Jr.

   W. Richard Stevens and Stephen A Rago, "Advanced Programming in the UNIX Environment", Addison-Wesley, 2º Edition, 2005. Código fuentes del libro, sitio del libro.
Programación Sockets:
   W. Richard Stevens, Bill Fenner, and Andrew M Rudoff, "Unix Netwrok Programming: The Sockets Networking API", Volumne 1, Pearson Education, 3º Edition, 2004.
Java:
   Core Java 2 : Volume I Fundamentals and Volume II Advanced Features. Cay S. Horstmann & Gary Cornell, California : Sun Microsystems Press, 2003 (código fuentes del libro)

Contenidos  (años previos 2011 2010 )


Fecha
Contenidos Conceptuales, Procidimentales y Actitudinales
Material de apoyo y Observaciones
1
17/08
Presentación del Ramo: Programa, Introducción a Unix http://linuxcommand.org/


Por recuperar por viaje de profesor a Misión Académica

2
29/08
Programación shell
Shell Programming
3
31/08
Programación shell ¿Qué significa t en permisos de acceso? Ver problemas de certamenes de años pasados
4
05/09
Programación shell, Control de procesos

5
07/09
Control de procesos
6
12/09
Señales
7
14/09
Comunicación entre procesos

21/09
USM Suspende actividad académica por feriado 18 de sept.

8
26/09
Memoria compartida  1° Clase recuperativa. C-225 8:00 hrs
9
26/09
Concurrencia usando hilos (threads)
10
28/09
Sincronización de hilos
11
03/10
Variables de condición, Algo sobre señales en hilos, 2º Clase recuperativa, C-225 8:00 hrs
12
03/10
Comunicación entre procesos no concentrados (sockets) Informar sobre sitio para inscribir proyectos.
13
05/10
Modelo Cliente-Servidor y multiplexión de I/O usando select

10/10
Suspensión por Semana Sansana


12/10
Suspensión por Semana Sansana

14
17/10
Certamen parcial Evaluación hasta clase del 3/10
15
19/10
Modelo Cliente-Servidor y multiplexión de I/O usando select 

17
26/10
Stream Control Transmission Protocol (SCTP)
Ejecución de procesos nativos desde Java
Comunicación vía canal encriptado SSL (preparando material para año 2013)
18
31/10
Invocación de Métodos Nativos (Java Native Interface, JNI) Hilos y Sincronización de Hebras en Java 
19
5/11
Reemplazada por asistencia a Seminario Internacional TVD

20
9/11
Terminamos: Hilos y Sincronización de Hebras en Java Problema productor consumidor visto antes lo resolvimos con dos semáforos, ¿Se puede usar la misma idea usando wait() y notify()?
21
14/11
Programación TCP/IP en Java Comunicación Java vía canal encriptado Paquete javax.net.ssl ejemplo: echo
22
16/11
Aplicaciones Java con acceso a Bases de Datos Sun JDBC Tutorial
23
21/11
Ejecutar ejemplos de DB, Remote Method Invocation (RMI)

24
23/11
RMI en Java 6, Properties en Java  Ejemplo Archivo de propiedades también en xmlIntroducción a XML. Lanzar tómbola
25
28/11

No fue necesaria pues logramos terminar los contenidos el viernes 23.
26
30/11
Presentación de proyectos 

27
5/12
Certamen final
28
7/12
Presentación de proyectos
Plazo envío de informes


Certamen recuperativo (toda la materia)


Tareas

Tarea
Plazo
Notas
Mejores soluciones y documentación
T1:Registro de Acceso desde Subred
28/09
Notas 22.10 Detalle
Mauricio Ludueña y Erwin Oñate
T2: Monitor de disponibilidad de servicios
16/10, 23:59 hrs
Notas Detalle
Constanza Valdés & Gabriel Ahumada   José Araya & Cristóbal Ganter
T3: Sistema Chat
12/11 23:59 hrs
Notas Detalle
Constanza Valdés & Gabriel Ahumada
T4: ídem tarea 3 pero todo en Java (voluntaria)
04/12 23:59



Evaluación : Notas:  Finales al 13 Dic
Si la nota promedio de certámenes es inferior a 55, su nota será: 90% promedio de certámenes 6% Tareas y 4% su proyecto. Ud. no podrá aprobar, luego usted debe aspirar a obtener 55 ó superior en sus certámenes.
    70 % dos certámenes  Usted puede usar sus apuntes. Fechas: 17 de Octubre y 5 de Diciembre
       Certamen 1: 2011 2010 2009 2008 2007 2006 2005 2004 2003 2002  Certamen 2: 2011 2010 2009 2008 2007 2006 2005 2004 2003 2002

Soluciones
Notas
Histograma
Alumnos Destacados (80 ó superior)
C1.Solución()
C1.notas()
C1.Histo()
Gabriel Ahumada, José Araya, Manuel Díaz, Mauricio Ludueña, Cristóbal Nettle, Fabián Rubilar
C2.Solución()
C2.notas()
C2.Histo()
-

    20 % Tareas: Tomar conocimiento del procedimiento de entrega de tareas y de los criterio de evaluación. Pueden formar grupos de máximo dos personas para hacer las tareas
    Política de atrasados: 5 puntos por día.

    10 % Proyecto personal o en grupo  (Inscríbalo aquí , vea temas ya inscritos)
         10%    Definición puntual del tema: 31 Octubre 5 de Noviembre
        40%    Informe:
        50%    Presentación (25%) y demostración (25%), evaluada por compañeros y profesor: Plazo 7 de diciembre.

Proyectos desarrollados por Alumnos según orden de presentación: Tómbola Cronómetro Evaluar Notas de Presentación

Alumnos
Proyecto
Quien no llegue, presenta al final con penalización de 0.7
Fecha Tema
Fecha Presentación
Fecha Informe
-5 pts/día
Manuel Diaz Cádiz, Fabian Rubilar Jamén NovaDomus: Aplicación Cliente/Servidor/Monitor para domótica !OK
30.11.12
7.12.12
Mauricio Ludueña, Erwin Oñate Manejo de servicio de un restaurant !OK 30.11.12 7.12.12
José Luis Araya, Cristobal Ganter Aplicación web de alto desempeño, utilizando la tecnología WebSocket !OK 30.11.12 7.12.12
Gabriel Ahumada, Constanza Valdés GUI para un controlador de motores OK
7.12.12
7.12.12
Daniel Eduardo Guerra Silva, Cristóbal Jesús Nettle Vacher Sistema de seguridad con alarma SMS !OK 7.12.12 8.12.12



Misceláneos
   
Ejemplos de programación de audio en linux usando ALSA.
     Ejemplos de programación de video en Linux usando V4L2.
Por si hemos olvidado el sentido a lo que hacemos:  Clase magistral de Don Federico Mayor Zaragoza y última clase del profesor Randy Pausch

    Comentario de ex-alumnos después de ceremonia de entrega de becas:"Claro que en retrospectiva queridos profes nos apretaron bastante cuando estuvimos en la U, pero siempre fueron cercanos,  ahora con una mirada de futuro a estos nuevos estudiantes apretenlos más, se necesitan buenos ingenieros, y mucho más importante excelentes individuos..."
   Cambios de opinión en el tiempo

    Introducción a EMACS
    Migración de Windows a Linux

   Manuales GNU
bash ,(Bash "tareado" con tar y luego comprimido con gzip
make  (local en html) , otros .
Ejemplo gnuplot
    C y Unix
Historia de los shell
Manejo de directivas para el preprocesador
    Java
Documentación Java    Directo a especificación de la API
Software en Electrónica
 JDE (Java Development Environment for Emacs)

Servicio de Contadores y Estadísticas ELO