UNIDAD V Bibliotecas de Funciones L.I. & M.S.C. OSCAR RAMÍREZ CORTÉS PROGRAMACIÓN DE SISTEMAS.

Slides:



Advertisements
Presentaciones similares
Internet y tecnologías web
Advertisements

Virus informático Daniel Cochez III Año E.
Arquitectura de Sistema de E/S
CICLO DE VIDA DEL DESARROLLO DE SOFTWARE
Sistema operativo Componentes de un sistema operativo
Tecnologías para desarrollo de aplicaciones web. Un caso de uso
Carlos Rojas Kramer Universidad Cristóbal Colón
Tecnologías Cliente / Servidor Capitulo III Richard Jiménez V. clienteserver.wordpress.com.
Núcleos de SO Contemporáneos
Temas Operaciones básicas Instalando el compilador
"java del lado del servidor" Servlet y JSP Java Server Pages.
Tipos de Datos Abstractos Modularidad
Historia La base del C proviene del BCPL (lógica programable en codigo binario), escrito por Martin Richards, y del B escrito por Ken Thompson en 1970.
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
Tema 1 Introducción a la programación (Lenguaje java).
Programación 1 Introducción
Introducción al Software
La estructura básica de los programas en java, algo a tener en cuenta y que debemos recordar siempre es el archivo debe llevar el nombre de la clase con.
Profesor: Miguel Angel Vidal
ConceptoDefiniciónCaracterísticas (palabra clave) Ejemplo/Aplicación Sistema operativo Un sistema operativo es un software, es decir, forma parte de la.
TRADUCTOR DE UN PROGRAMA
Modelado Arquitectónico
Ingeniero Anyelo Quintero
Tema 10: Gestión de Memoria
PROCEDIMIENTOS FUNCIONES
PARTICIÓN DE DISCOS - HERRAMIENTAS
Programación Orientada a Aspectos (POA)
ASP.NET es una nueva y potente tecnología para escribir páginas web dinámica. Es una importante evolución respecto a las antiguas páginas ASP de Microsoft.
Tema 10.3: Asignación de Espacio No Contiguo. Tema 10.3: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.),
1.4 Traductor y Su estructura
Capítulo 7 Gestión de memoria.
APRENDIZ: SANDRA L. CAICEDO C. ORDEN: 20194
Introducción a los Sistemas Operativos
Introducción a la tecnología Realizado por: Miguel Ángel Arias.
Introducción a los SOs.
COMPARTIR DOCUMENTOS JOHANCAMILO LESMES IPIALES TECNOLOGO GESTION ADMINISTRATIVA FICHA:
Kernel de Linux.
COLEGIO DE BACHILLERES N° 16 PLANTEL TLAHUAC “MANUEL CHAVARRIA CHAVARRIA”
TALLER DE INFORMATICA 1  UNIDAD 1 EXCEL 1.1 INTRODUCCION.
V. INSTALACION DE SOFTWARE.
Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
Introducción al Lenguaje. ¿ Qué es PHP ? O Hypertext Pre-processoes (PHP) es un lenguaje de "código abierto" interpretado, de alto nivel, embebido en.
Universidad Metropolitana Introducción a la Computación
INTRODUCCION A SISTEMAS OPERATIVOS
Programación Java y Desarrollo de Aplicaciones Modulo 3 Lenguaje de programación Java Software utilizado.
Metodología de la programación
La administración de dominios
Visual Basic FUNCIONES Y PROCEDIMIENTOS
File Transfer Protocol.
S.o de red. Introducción a los Sistemas Operativos de Red Al igual que un equipo no puede trabajar sin un sistema operativo, una red de equipos no puede.
LOGO CPU. COMPANY LOGO DEFINICIÓNHISTORIA CPU DE TRANSISTORE S Y DE CIRCUITOS INTEGRADOS DISCRETOS MICROPROCES ADORES OPERACIÓN DEL CPU.
LENGUAJE ENSAMBLADOR TIPOS DE LENGUAJES ENSAMBLADORES
Unidad TemáticaI. Conceptos Básicos Horas Prácticas10 Horas Teóricas8 Horas Totales18 Objetivo El alumno determinará las entradas, procesos y salidas.
MIA - Grupo 5 Unidad 2.
Un requerimiento es una condición o capacidad a la que el sistema (siendo construido) debe conformar [ Rational ]. Un requerimiento de software puede.
Software.
 Panorama General Fundamentos de Programación M.I. Jaime Alfonso Reyes Cortés.
MEMORIA DINÁMICA.
(totalmente inventado)
Harware Software Yuneidy moreno 7-2 Tecnología i. E. devora Arango.
Especificación del Problema Partimos del hecho de un programador no puede resolver un problema que no entiende. Por esta razón, la primera etapa en todo.
UNIVERSIDAD LATINA (UNILA)
Servicios Web Conjunto de aplicaciones o de tecnologías con capacidad para interoperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre.
Fundamentos de Programación Unidad I Conceptos Básicos.
INSTITUTO TECNOLÓGICO SUPERIOR DE LIBRES FUNDAMENTOS DE DESARROLLO DE SISTEMAS INTEGRANTES:  Díaz Rojas Vianey  Ramírez Barojas Nancy Marisol  Olivarez.
UNIDAD III Procesadores de Macros L.I. & MSC OSCAR RAMÍREZ CORTÉS SISTEMAS DE PROGRAMACIÓN.
JOSE ALBERTO JIMENEZ JIMENEZ KATTY HIPOLITO. 7.1 INTRODUCCION AL LENGUAJE EMSAMBLADOR.
Introducción a phpmyadmin índice 1. Introducción 6. Insertar registros 5. Crear usuario para php 8. Modificar registros 2. Base de datos MySQL 3. Crear.
P ROCESO DE E NSAMBLADO Cámara Vázquez Berenice Rubí.
Katty Evangelina Hipólito Chi.   Aunque cada maquina tiene un lenguaje ensamblador distinto, el proceso de ensamblador tiene suficiente similitudes.
Transcripción de la presentación:

UNIDAD V Bibliotecas de Funciones L.I. & M.S.C. OSCAR RAMÍREZ CORTÉS PROGRAMACIÓN DE SISTEMAS

Introducción L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN A medida que la tecnología avanza y las necesidades de los usuarios son más exigentes, los problemas que debemos resolver se tornan más complejos. Una técnica muy común para facilitar la escritura de programas de gran tamaño o que requieren resolver problemas complejos consiste en dividir el problema en problemas más pequeños.

Introducción L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN La construcción del programa se reduce a la construcción de pequeñas unidades o subprogramas que se conectan de alguna manera para resolver juntas el problema original. Ésta técnica se conoce como MODULARIZACIÓN y a cada subprograma se le denomina módulo.

L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN Una de las grandes ventajas de la modularización reside en que los módulos pueden utilizarse en distintos lugares. Para ello, resulta muy común organizarlos en LÍBRERÍAS. Introducción

Qué es una: Biblioteca-Librería? L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN Es un conjunto de subprogramas compilados en un único archivo binario almacenando la traducción de dichas funciones y que se llaman unos a otros. Cada programa de una librería incluye una lista de sentencias, y eventualmente, llamadas a otros subprogramas. La llamada consiste en que, desde una sección principal o un subprograma, se derive la ejecución al subprograma llamado. Ejemplo: Programa Principal 1A() 2B() 3Fin. Subprograma A: Imprimir texto «hola» _______________________ Subprograma B Imprimir texto «mundo>

Qué es una: Biblioteca-Librería? L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN En los lenguajes, sobre todo en los más viejos, las librerías se cargan durante la etapa de enlace. Para qué se necesitan? Al querer utilizar una función de la biblioteca no tendremos que buscar el código y compilarlo, sino simplemente decirle al compilador dónde puede encontrar la biblioteca. Ayudan a la reutilización de código, permitiendo que varios programas compartan porciones de código. Promueven una programación más modular.

L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN La Plataforma.Net y Java permiten el diseño de Librerías.

Qué es una Librería General? L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN Contienen código que a menudo es usado por más de un programa. Esto tiene la ventaja de que cada programa no necesita duplicar el código (y el riesgo de introducir errores), sino que le basta con llamar a las funciones de las librerías instaladas en el sistema. Generalmente sólo se necesita instalar librerías cuando se instala software que requiere la funcionalidad que proporcionan. Así puede hacerse una idea de qué librerías necesita antes de instalar un programa.

Tipos de Librerías L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN Dinámicas Son cargadas en memoria en tiempo de ejecución a partir de una copia compartida (de aquí el nombre). Estáticas Se enlazan dentro del propio ejecutable, lo que hace que el archivo del programa sea más grande. Con frecuencia se encuentran en el sistema las copias estática y compartida de la misma librería.

L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN En los lenguajes de programación que permiten compilar código para ejecutar en el sistema Windows, es muy común el uso de librerías de enlace dinámico (DLL – Dynamic Link Library). Este conjunto de DLLs se denominan API, Aplication Programmer Interface o Interfaz para el programador de aplicaciones. El enlace dinámico consiste en saltear el paso de enlace durante la compilación para hacerlo durante la ejecución del programa. Así mientras un programa se ejecuta, si necesita código que se encuentra en una librería se coloca ésta en memoria y se transfiere el control al subprograma necesario dentro de la librería. Ejemplo

Ventajas e inconvenientes De cada tipo de librería L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN Un programa compilado con librerías estáticas es más grande, ya que se hace copia de todo lo que necesita. Un programa compilado con librerías dinámicas se puede llevar a otra computadora sin necesidad de llevarse las librerías.

Ventajas e inconvenientes De cada tipo de librería L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN Un programa compilado con librerías estáticas es, en principio, más rápido en ejecución. Cuando llama a una función de la librería, la tiene en su código y no tiene que ir a leer el fichero de la librería dinámica para encontrar la función y ejecutarla. Si cambiamos una librería estática, a los ejecutables no les afecta. Si cambiamos una dinámica, los ejecutables se ven afectados. Esto es una ventaja si hemos cambiado la librería para corregir un error (se corrige automáticamente en todos los ejecutables), pero es un inconveniente si tocar eso nos hace cambiar los ejecutables (por ejemplo, hemos añadido un parámetro más a una función de la librería, los ejecutables ya hechos dejan de funcionar).

Cual utilizar Entonces? L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN Es como siempre una cuestión de compromiso entre las ventajas y los inconvenientes. Para programas no muy grandes y por simplicidad, se recomienda usar librerías estáticas. Las dinámicas están bien para programas enormes o para librerías del sistema, que como están en todas las computadoras no es necesario andar llevándoselas de un lado a otro.

L.I. OSCAR RAMÍREZ CORTÉS/SISTEMAS DE PROGRAMACIÓN Por su atención Gracias!!!