Módulo de 3 horas semanales.
Contenidos:
- Programación multiproceso:
- Ejecutables. Procesos. Servicios.
- Estados de un proceso.
- Hilos.
- Programación concurrente. Ámbitos de aplicación.
- Programación paralela y distribuida. Diferencias. Ventajas e inconvenientes.
- Comunicación entre procesos.
- Gestión de procesos. Comandos y herramientas.
- Sincronización entre procesos.
- Programación de aplicaciones multiproceso.
- 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.
- Mecanismos para la compartición de información entre hilos.
- Sincronización de hilos.
- Prioridades de los hilos. Gestión de prioridades.
- Programación de aplicaciones multihilo.
- Programación de comunicaciones en red:
- Comunicación entre aplicaciones. Protocolos estándar de comunicación en red a
nivel de red y de transporte. - Roles cliente y servidor. Funciones.
- Elementos de programación de aplicaciones en red. Librerías. Funciones y
objetos de las librerías. - Sockets. Función, tipos y características.
- 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.
- Comunicación entre aplicaciones. Protocolos estándar de comunicación en red a
- Generación de servicios en red:
- Protocolos estándar de comunicación en red a nivel de aplicación (telnet, ftp,
http, pop3, smtp, entre otros). - Librerías de clases y componentes. Funciones y objetos de las librerías.
- Utilización de objetos predefinidos.
- Establecimiento y finalización de conexiones.
- Transmisión de información.
- Programación de aplicaciones cliente.
- Programación de servidores. Disponibilidad de los servicios.
- Implementación de comunicaciones simultáneas.
- Protocolos estándar de comunicación en red a nivel de aplicación (telnet, ftp,
- Utilización de técnicas de programación segura:
- Prácticas de programación segura.
- Criptografía de clave pública y clave privada.
- Principales aplicaciones de la criptografía.
- Protocolos criptográficos.
- Política de seguridad. Control de acceso a las aplicaciones. Usuarios y roles.
- Programación de mecanismos de control de acceso.
- Encriptación de información.
- Protocolos seguros de comunicaciones. Sockets seguros.
- Programación de aplicaciones con comunicaciones seguras.