Programacion de servicios y procesos¶
- Programación multiproceso
- Ejecutables. Procesos. Servicios.
- Hilos.
- Programación concurrente.
- Programación paralela y distribuida.
- Creación de procesos.
- Comunicación entre procesos.
- Ejercicio
- Ejercicio resuelto
- Lanzamiento de los procesos
- Ejercicio propuesto (I)
- Gestión de procesos.
- Comandos para la gestión de procesos en sistemas libres y propietarios.
- Sincronización entre procesos.
- Documentación
- Depuración.
- Examen
- Programación multihilo
- Recursos compartidos por los hilos.
- Estados de un hilo. Cambios de estado.
- Elementos relacionados con la programación de hilos. Librerías y clases.
- Gestión de hilos.
- Creación, inicio y finalización.
- Sincronización de hilos.
- Información entre hilos.
- Prioridades de los hilos.
- Gestión de prioridades.
- Programación de aplicaciones multihilo.
- Problema: filósofos
- Solución completa al problema de los filósofos
- Problema: simulador de casino
- Problema: barberos
- Una (mala) solución al problema de los barberos
- Problema: productores y consumidores.
- Solución
- Ejercicio
- Simulación bancaria
- Clases de alto nivel: la clase
RecursiveTask
- Documentación.
- Depuración.
- Ejercicio: empleado «Thread safe»
- Programación de comunicaciones en red
- Comunicación entre aplicaciones.
- Roles cliente y servidor.
- Recordatorio de los flujos en Java
- Elementos de programación de aplicaciones en red. Librerías.
- Repaso de redes
- Funciones y objetos de las librerías.
- Sockets.
- Creación de sockets.
- Enlazado y establecimiento de conexiones.
- Utilización de sockets para la transmisión y recepción de información.
- Programación de aplicaciones cliente y servidor.
- Utilización de hilos en la programación de aplicaciones en red.
- Ejercicios
- Generación de servicios en red
- Utilización de técnicas de programación segura
- Introducción
- Prácticas de programación segura.
- Criptografía de clave pública y clave privada.
- Principales aplicaciones de la criptografía.
- Protocolos criptográficos.
- Encriptación de información.
- Trabajando con bloques largos
- Protocolos seguros de comunicaciones.
- Infraestructura de clave pública (PKI)
- Programación de aplicaciones con comunicaciones seguras.
- Firmado de aplicaciones
- Verificado de aplicaciones
- Ejercicio
- Recordatorio
- Política de seguridad.
- Programación de mecanismos de control de acceso.
- Pruebas y depuración.
- Servicios web
- Anexo: hilos con Swing
- Anexos diversos.