Extensión de aplicaciones mediante Python embebido

Pérez Domínguez, Marta (2016). Extensión de aplicaciones mediante Python embebido. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. y Sistemas de Telecomunicación (UPM), Madrid.

Descripción

Título: Extensión de aplicaciones mediante Python embebido
Autor/es:
  • Pérez Domínguez, Marta
Director/es:
  • Silva Fariña, Antonio da
Tipo de Documento: Proyecto Fin de Carrera/Grado
Grado: Grado en Ingeniería Telemática
Fecha: 11 Julio 2016
Materias:
Escuela: E.T.S.I. y Sistemas de Telecomunicación (UPM)
Departamento: Ingeniería Telemática y Electrónica
Licencias Creative Commons: Reconocimiento - Sin obra derivada - No comercial

Texto completo

[img]
Vista Previa
PDF (Document Portable Format) - Se necesita un visor de ficheros PDF, como GSview, Xpdf o Adobe Acrobat Reader
Descargar (1MB) | Vista Previa
[img] Archivo comprimido ZIP - Acceso permitido solamente a usuarios en el campus de la UPM
Descargar (3MB)

Resumen

En cualquier diseño embebido actual, el software es un componente fundamental que dota al sistema de una alta capacidad de configuración, gran número de funcionalidades y elasticidad en el comportamiento del sistema en situaciones excepcionales. Los desarrolladores del software tienen que tener en cuenta diferentes aspectos a la hora de desarrollar el programa de forma que pueda proporcionar las mejores prestaciones en el ámbito en el cual vaya a ser utilizado. En este contexto, existen lenguajes interpretados – muy productivos en términos de la cantidad de líneas de código que son necesarias para realizar un procesamiento cualquiera pero en cambio, con una velocidad de ejecución más lenta – o bien un lenguaje con menor productividad, donde son necesarias más sentencias para realizar el mismo procesamiento, pero con un mayor rendimiento en términos de velocidad. La mejor aproximación al problema sería poder usar las mejores prestaciones de ambos mundos. Por ejemplo, el motor de la aplicación sería desarrollado en lenguaje C o C++ mientras que las piezas de la interfaz con el usuario o la interacción entre la aplicación y un sistema externo, podrían ser desarrolladas en lenguajes interpretados o de script. A lo largo de este proyecto se hará una descripción de Python, el lenguaje de scripting escogido para desarrollar un ejemplo que sirva como prueba de concepto. A partir de ejemplos básicos de uso de módulos Python desde aplicaciones desarrolladas en C se abordará el desarrollo de un módulo C que sirva de envoltorio (wrapper) entre una interfaz C y un módulo Python que las implemente. Se describirán dos tipos de situaciones mediante las cuales se realizará la interacción de la aplicación en C con el programa de scripting. El uso de rutinas Python desde C, lo que se conoce como Python embebido, y el uso de rutinas C desde Python, lo que se conoce como extensión de Python. ABSTRACT. In any current embedded design, software is an essential component with high capacity system of configuration, a large number of functionalities and elasticity system behavior in exceptional situations. Software developers have to take into account different aspects at the time the program is going to be developed so that it can provide the best performance in the area in which it is going to be used. In this context, there are interpreted languages – very productive in term of the number of lines of code are necessary for any process, but in contrast with a slower execution – or better a less productive program, where you need more statements of code to perform the same processing, but with higher performance in terms of speed. The best approach to the problem would be to use the best features of both worlds. For example, the application core would be developed in C or C++ languages while the interface user pieces or interaction between the application and the external system would be developed in interpreted or scripting languages. Throughout this project a Python description will be done, the scripting languages chosen to develop an example that serves like a proof of the concept. From basic examples of using Python modules from applications developed in C we will approach the development of a C module who serve as a wrapper (wrapper) between a C interface and a Python module that implements. Two types of situations will be described through which the interaction of C application and the scripting program will be performed. The former, the use of Python routines from C known as embedded Python and the later, the use of C routines from Python known as Python extension.

Más información

ID de Registro: 44475
Identificador DC: http://oa.upm.es/44475/
Identificador OAI: oai:oa.upm.es:44475
Depositado por: Biblioteca Universitaria Campus Sur
Depositado el: 24 Ene 2017 06:27
Ultima Modificación: 24 Ene 2017 06:27
  • Open Access
  • Open Access
  • Sherpa-Romeo
    Compruebe si la revista anglosajona en la que ha publicado un artículo permite también su publicación en abierto.
  • Dulcinea
    Compruebe si la revista española en la que ha publicado un artículo permite también su publicación en abierto.
  • Recolecta
  • e-ciencia
  • Observatorio I+D+i UPM
  • OpenCourseWare UPM