[squeak-dev] Setting Memory pointer for bitmap object.. is it possible without plugin?

rabbit rabbit at callistohouse.org
Fri Mar 31 23:25:05 UTC 2023


β€”
Have a good one; keep it, light.
Kindly, rabbit . .. … β€˜β€¦^,^ πŸ‡πŸ‡πŸ‡

Sent from Callisto House mobile - Ganymede
:: decentralized mobile homeless solutions ::

On Fri, Mar 31, 2023 at 19:16, Eliot Miranda <eliot.miranda at gmail.com> wrote:

> On Fri, Mar 31, 2023 at 2:39β€―PM LawsonEnglish <LEnglish5 at cox.net> wrote:
>
>> The Shared Memory facility in most modern OS’s (Mac, Linux and Windows) will allow a pointer between processes. The problem is to get it working with Squeak. Eliot outlined the issues in his response. They are more convoluted than I was hoping for, but presumably it's doable.
>>
>> The point of doing it is to create a shared memory IPC option for Squeak, as, in principle, that is the fastest way of doing IPC, and if you’re sharing large chunks of data (e.g. the pixels of an image), the savings can be significant.
>>
>> The Mandelbrot Set is simply a simple (and potentially entertaining) way of providing visual feedback that its actually working. Its actually not a good use case for shared memory IPC because, as you drill down into the Set, the time spent for calculations is far more than the time saved using the shared memory, but it would visually demonstrate that something is happening, and far less boring than simply sending arbitrary chunks of memory during testing of the protocol.
>
> And note that with image segments one could exchange arbitrary object graphs above a memory-mapped word array with relative ease and speed.

yes, please. I see a Trinity process unit, one user, one comms marshaling and signaling, one Broker, managing naming, bridge mgmt and cache replication/replant ops. DevOps.
Thanks for all this! 🐰

>> Lawson
>>
>>> On Mar 31, 2023, at 00:49, Marcel Taeumel via Squeak-dev wrote:
>>>
>>> Hi L --
>>>
>>>> The real question is about setting a pointer to the memory used by a Bitmap object.
>>>
>>> I would not do that, I don't think it is possible as each project has its own address space. Virtual memory and so on... You cannot simply share pointers between processes. Thus, allocate some inter-process memory and copy initial data (from any Squeak object memory) to there. Then read/write it there.
>
> --
>
> _,,,^..^,,,_
> best, Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20230331/ca290669/attachment.html>


More information about the Squeak-dev mailing list