circuitpython/unix
Damien George 3096928d5a unix: Disable the GIL to improve performance of non-thread code.
Threading support is still very new so stay conservative at this point
and enable threading without the GIL.  This requires users to protect
concurrent access of mutatable Python objects (eg lists) with locks at
the Python level (something you should probably do anyway).  The
advantage is that there is less of a performance hit for non-threaded
code, because the VM does not need to constantly release/acquire the GIL.

In the future the GIL will be made more efficient.  There is also room to
improve the efficiency of non-GIL code by not using mutex's if there is
only one thread active.
2016-07-09 16:48:06 +01:00
..
.gitignore unix/.gitignore: Add nanbox build output to ignore list. 2016-01-15 14:25:53 +00:00
alloc.c unix/alloc: Make coverage build and its overzealous warnings happy. 2016-06-18 00:36:13 +03:00
coverage.c py/mpprint: Fix sign extension when printf'ing %u, %x and %X. 2016-02-01 15:08:42 +00:00
fatfs_port.c unix: Enable VfsFat support. 2016-02-14 19:15:22 +02:00
file.c unix/file: If write syscall returns because of EINTR then try again. 2016-06-28 11:28:49 +01:00
gccollect.c unix/gccollect: Provide declaration of exported function. 2016-06-28 11:28:50 +01:00
input.c py: Change type signature of builtin funs that take variable or kw args. 2016-01-11 00:49:27 +00:00
input.h unix: Support readline history saving to file, improves interactive usage. 2015-03-13 21:46:19 +00:00
main.c unix/main: When preparing sys.path, allocate exact strings on uPy heap. 2016-07-09 01:48:07 +03:00
Makefile unix: Disable the GIL to improve performance of non-thread code. 2016-07-09 16:48:06 +01:00
modffi.c unix/modffi: Allow to compile modffi in OBJ_REPR_D mode. 2016-01-15 14:26:24 +00:00
modjni.c unix/modjni: Add missing get_jclass_name() function. 2015-11-11 16:43:27 +02:00
modmachine.c unix/modmachine: Enable time_pulse_us() function. 2016-06-19 00:21:17 +03:00
modos.c unix: Enable VfsFat support. 2016-02-14 19:15:22 +02:00
modsocket.c all: Rename mp_obj_type_t::stream_p to protocol. 2016-06-18 18:44:57 +03:00
modtermios.c unix/modtermios: DJGPP appears to have unicode-capable cc_t type. 2015-12-09 22:01:29 +02:00
modtime.c unix/modtime: Release the GIL when sleeping. 2016-06-28 11:28:50 +01:00
moduselect.c py: Change type signature of builtin funs that take variable or kw args. 2016-01-11 00:49:27 +00:00
mpconfigport_coverage.h unix: Disable FatFs VFS for normal build, keep enabled for coverage. 2016-06-18 00:58:57 +03:00
mpconfigport_fast.h py: Add ability to have frozen persistent bytecode from .mpy files. 2016-04-13 16:07:47 +01:00
mpconfigport_freedos.h unix: djgpp errno.h have no ENOTSUP, so define it to Linux value. 2016-04-03 23:23:01 +03:00
mpconfigport_minimal.h unix/mpconfigport_minimal.h: Allow to print a string within 1KB of heap. 2016-07-03 00:12:46 +03:00
mpconfigport_nanbox.h unix: Add option to build 64-bit NaN-boxing interpreter. 2016-01-15 11:12:08 +00:00
mpconfigport.h unix/modmachine: Enable time_pulse_us() function. 2016-06-19 00:21:17 +03:00
mpconfigport.mk unix: Enable btree module. 2016-07-02 15:26:07 +03:00
mphalport.h unix/mphalport: Add mp_hal_delay_us() for consistency with other ports. 2016-05-07 21:18:44 +03:00
mpthreadport.c py/modthread: Allow to properly set the stack limit of a thread. 2016-06-28 11:28:51 +01:00
mpthreadport.h unix: Implement garbage collection with threading. 2016-06-28 11:28:49 +01:00
qstrdefsport.h py: Add rules for automated extraction of qstrs from sources. 2016-04-16 13:18:09 +01:00
unix_mphal.c unix/unix_mphal: Implement mp_hal_ticks_us(). 2016-05-21 02:16:35 +03:00