a preferred embodiment of the present invention, multiprocessor computing apparatus, including:
a plurality of host processors, which are mutually linked by a data communication network; and
a physical memory, arranged as a distributed shared memory among the processors, wherein the processors are configured to access pages having a predetermined page size in the physical memory,
wherein the processors are programmed to select one of the pages of the physical memory in which to store a plurality of data items, including at least first and second data items, to divide the selected page of the physical memory into a plurality of minipages, including at least first and second minipages containing the first and second data items, respectively, to map both first and second virtual pages, in a virtual memory space of theprocessors, to the selected page of the physical memory, such that the first and second virtual pages are associated respectively with the first and second minipages, and the first data item receives a first address on the first virtual page, while the second data item receives a second address on the second virtual page, and to apply first and second access permissions to the first and second virtual pages, respectively,
such that upon receiving requests by a process running on one of the host processors to access the first and second data items via the respective first and second addresses on the first and second virtual pages, the processors are adapted to permit the process, responsive to the requests, to access the first data item subject to the first