Другие журналы
|
электронный научно-технический журналИНЖЕНЕРНЫЙ ВЕСТНИКИздатель: Общероссийская общественная организация "Академия инженерных наук им. А.М. Прохорова".
Сравнение методов вызова Си-функций из языка программирования Python 3
Инженерный вестник # 11, ноябрь 2015 УДК: 004.424.32
Файл статьи:
Vasyunin_A.pdf
(591.89Кб)
В работе выполнено сравнение различных методов вызова Си-функций из кода на Python 3 внутри предложенных языковых средств и с реализацией на “чистом” Python. Был выявлен круг задач, на которых производилось сопоставление. Был создан программный продукт, состоящий из нескольких модулей, написанных на разных языках программирования. Модули, написанные на Си: CfunctionsDll, CFuncsStCPythonModule. Модули, написанные на Python 3: cfuncs_cffi_wrapper, cfuncs_ctypes_wrapper, python_impl, testers, tableview, main. Для нагляности представления результатов полученная программа была снабжена графическим интерфейсом, использующим библиотеку PyQt5. В результате были получены временные характеристики работы функций, решающих поставленные задачи. С использованием этих соотношений, с учётом трудоёмкости реализации была выбрана библиотека Cffi. В работе непосредственно проведено сравнение между собой разных методов вызова. Список литературы[1]. Behnel S., Bradshaw R., Citro C., Dalcin L., Seljebotn D.S., Cython K. S. The Best of Both Worlds. // Computing in Science & Engineering. Publisher:IEEE Xplore. 2011. Vol. 13. Is. 2. Р. 31-39.DOI: 10.1109/MCSE.2010.118[2]. Cottom T.L. Using SWIG to Bind C++ to Python . // Computing in Science & Engineering. Publisher: IEEEXplore. 2003. Vol. 5. Is. 2. Р. 88 - 97. DOI:10.1109/MCISE.2003.1182968 [3]. Иванова Г.С. Программирование: учебник для вузов. 3-е изд., стер. М.: Кнорус. 2014. 425 с. [4]. Документация по языку Python. // Python: официальный сайт. Режим доступа: https://www.python.org/ (дата обращения: 14.09.2015). [5]. Extending and Embedding the Python Interpreter. / Расширение интерпретатора Python при помощи расширений на Си. // Python: официальный сайт. Режим доступа: https://docs.python.org/3/extending/index.html (дата обращения: 14.09.2015). [6]. CFFI documentation / Документация по библиотеке Cffi // CFFI: официальный сайт. Режим доступа: http://cffi.readthedocs.org/en/latest/ (дата обращения: 14.09.2015). [7]. 16.16. ctypes — A foreign function library for Python / Документация по библиотеке Ctypes. // Python: официальный сайт. Режим доступа: https://docs.python.org/3/library/ctypes.html (дата обращения: 14.09.2015). [8]. Summerfield M. Programming in Python 3: A Complete Introduction to the Python Language. 2nd ed. Addisоn-Wеsley Professional. 2009. 648 p. [9]. Керниган Б.У., Ритчи Д.М. Язык программирования Cи. 3-е изд., испр. М.:Вильямс. 2006. 304 с. Публикации с ключевыми словами: программирование, C++, Си, Python, расстояние Левенштейна, ctypes, cffi, Python 3, Python.h, Python C-extensions, вызов Си-функций из кода Python 3, алгоритм Кнута-Морриса-Пратта Публикации со словами: программирование, C++, Си, Python, расстояние Левенштейна, ctypes, cffi, Python 3, Python.h, Python C-extensions, вызов Си-функций из кода Python 3, алгоритм Кнута-Морриса-Пратта Смотри также: Тематические рубрики: Поделиться:
|
|
||||||||||||||||||||||||||||||||
|