Upload
aamya
View
221
Download
0
Embed Size (px)
Citation preview
7/25/2019 EmbeddedPython - Python
1/3
6/26/2016 EmbeddedPython - Python Wiki
https://wiki.python.org/moin/EmbeddedPython
Search Titles Text
EmbeddedPython
EmbeddedPython
FrontPage
RecentChanges
FindPage
HelpContents
EmbeddedPython
Page
Immutable Page
Info
Attachments
More Actions:
User
Login
Embedded Python
Python can be used in embedded, small or minimal hardware devices, depending on how limiting the
devices actually are.
Devices capable of running CPython
Some modern embedded devices have enough memory and a fast enough CPU to run a typical Linux-
based environment, for example, and running CPython on such devices is mostly a matter of
compilation (or cross-compilation) and tuning.
Devices which could be considered as "embedded" by modern standards and which can run tuned
versions of CPython include the following:
Gumstix
Raspberry Pi
BeagleBone Black
FIC Neo1973and Neo FreeRunner( Python on Openmoko)
Telit GSM/GPRS modules (also available as AarLogic familyGPRS/GPS QUAD Band
Modules)
http://www.raspberrypi.org/https://wiki.python.org/moin/EmbeddedPython?action=loginhttps://wiki.python.org/moin/EmbeddedPythonhttps://wiki.python.org/moin/FindPagehttp://www.python.org/http://www.python.org/http://www.roundsolutions.com/aarlogic/index.htmhttp://www.telit.com/en/products/python/why-python.phphttp://wiki.openmoko.org/wiki/Pythonhttp://wiki.openmoko.org/wiki/Neo_FreeRunnerhttp://wiki.openmoko.org/wiki/Neo1973http://beagleboard.org/Products/BeagleBone%20Blackhttp://www.raspberrypi.org/http://www.gumstix.org/https://wiki.python.org/moin/EmbeddedPython?action=loginhttps://wiki.python.org/moin/EmbeddedPython?action=AttachFilehttps://wiki.python.org/moin/EmbeddedPython?action=infohttps://wiki.python.org/moin/EmbeddedPythonhttps://wiki.python.org/moin/HelpContentshttps://wiki.python.org/moin/FindPagehttps://wiki.python.org/moin/RecentChangeshttps://wiki.python.org/moin/FrontPagehttps://wiki.python.org/moin/EmbeddedPythonhttps://wiki.python.org/moin/EmbeddedPython?action=fullsearch&context=180&value=linkto%3A%22EmbeddedPython%22http://www.python.org/7/25/2019 EmbeddedPython - Python
2/3
6/26/2016 EmbeddedPython - Python Wiki
https://wiki.python.org/moin/EmbeddedPython
EmbeddedPython (last edited 2016-05-03 09:24:52 by DanieleMazz
See also PythonForArmLinuxand OpenEmbedded.
Work to improve CPython for embedded applications
Various efforts have been made to make CPython more usable for embedded applications:
Patches in the OpenEmbedded repository
Cross-compilation issues: 1006238, 5404, 3871
General interpreter startup costs: SpeedUpInterpreterStartup
File access overhead on startup: Improving interpreter startup speed, Tons of stats/opens t
non-existing files increases Python's startup on loaded NFS servers, Startup time
Import-related costs: __file__
Using a launcher process where "expensive" modules are required: Introducing python-
launcher
Reduced or reworked Python implementations
Some devices may be more restrictive in that the typical memory footprint of CPython may exceed theamount of memory available on the device. In such cases, a re-engineered or adapted version of
CPython, perhaps even to the point where it can be considered a new implementation of Python, might
be appropriate.
Examples of such implementations include the following:
PyMite
Tiny Python
Zerynth formerly Viper
On the other hand, one can start with a full build, and simply remove unneeded modules, e.g., Tkinter,
etc., to realize a reduced-size Python with little effort.
Python-based tools for developing embedded applications
Sometimes the embedded environment is just too restrictive to support a Python virtual machine. In
such cases, various Python tools can be employed for prototyping, with the eventual application or
system code being generated and deployed on the device.
Tools that support this kind of development include the following:
MyHDL
WhatOS
MoinMoin Powered
Python Powered
GPL licensed
http://moinmo.in/GPLhttp://moinmo.in/Pythonhttp://moinmo.in/http://www.sticlete.com/whatos/http://myhdl.jandecaluwe.com/https://wiki.python.org/moin/Zerynthhttps://wiki.python.org/moin/Tiny%20Pythonhttps://wiki.python.org/moin/PyMitehttp://blogs.gnome.org/johan/2007/01/18/introducing-python-launcher/http://mail.python.org/pipermail/python-dev/2010-March/098042.htmlhttp://mail.python.org/pipermail/python-dev/2003-May/035359.htmlhttp://mail.python.org/pipermail/python-list/2005-May/339691.htmlhttp://mail.python.org/pipermail/python-list/2008-October/467718.htmlhttps://wiki.python.org/moin/SpeedUpInterpreterStartuphttp://bugs.python.org/issue3871http://bugs.python.org/issue5404http://bugs.python.org/issue1006238http://cgit.openembedded.org/cgit.cgi/openembedded/tree/recipes/pythonhttps://wiki.python.org/moin/OpenEmbeddedhttps://wiki.python.org/moin/PythonForArmLinuxhttps://wiki.python.org/moin/DanieleMazzei7/25/2019 EmbeddedPython - Python
3/3
6/26/2016 EmbeddedPython - Python Wiki
https://wiki.python.org/moin/EmbeddedPython
Valid HTML 4.01
Unable to edit the page? See the FrontPage for instructions.
https://wiki.python.org/moin/FrontPage#usehttp://validator.w3.org/check?uri=referer