Hi Elias,

most likely UDP will be replaced by TCP or SCTP. Step 1 is a server holding the data that is now kept in shared memory. Step 2 is then TCP or SCTP communication between APL interpreters to
lift the current 64kB limit on variable size caused by UDP.

Shared variables are a left-over for IBM compatibility therefore my priority on that is kind of low, Probably checking for shm_open() in ./configure is a short-term work around until the shared memory
is gone completely.

/// Jürgen


On 06/02/2014 04:42 PM, Elias Mårtenson wrote:
That's great. Thanks. Does that mean that the UDP-based IPC will also go away? (doing that is problematic on Android, and one should use a different API which has very different semantics. I'd rather not have to mess with that at all. :-) ).

Regards,
Elias


On 2 June 2014 22:41, Juergen Sauermann <juergen.sauerm...@t-online.de <mailto:juergen.sauerm...@t-online.de>> wrote:

    Hi Elias,

    I have removed langinfo.h (a left-over from internationalization
    which I removed earlier, SVN 307.

    shm_open() and shm_unlink will go away long-term because I will
    move the shared memory database to a
    separate thread. Just didn't have enough time yet to do that.

    /// Jürgen



    On 06/02/2014 10:53 AM, Elias Mårtenson wrote:

        I've compiled GNU APL for Android, and I'm about to start
        working on the user interface. Building it was remarkably
        simple, but it exposed two small issues that required some
        code changes:

        First of all, SystemVariable.cc includes "langinfo.h". This
        file is not available on Android, but simply commenting this
        one out fixed the issue. Is it even needed anywhere else? Can
        it be completely removed? If not, can it be placed inside some
        #ifdef?

        The second issue is that the SHM calls don't exist on Android.
        I solved it by creating versions of shm_open() and
        shm_unlink() that simply returns -1 (and sets errno to
        ENOSYS). This makes the code compile, but it's pretty ugly.
        Would it make sense to provide a configure option to disable
        the use of shared memory? (and, by extension, the AP's)

        Regards,
        Elias




Reply via email to