A method and system for providing a group of parallel resources as a proxy
for a single shared resource is provided. In a preferred embodiment, a
resource grouping facility ("the facility") is incorporated in a
"non-global" operating system. A non-global operating system is an
operating system that is unable to respond correctly to a request to
allocate a global resource of a particular type, such as a memory block,
that can be accessed by every program executing in conjunction with the
operating system. Instead, a non-global operating system allocates a
putatively global resource that may not be accessed by every program
executing in conjunction with the non-global operating system. When the
facility detects that a transferer program is attempting to share a
putatively global resource allocated by the operating system with a
transferee program, the facility allocates a proxy resource that is
accessible to the transferee. The facility may also allocate one or more
intermediate resources accessible to other programs. The facility tracks
the putatively global resource and all of the proxy resources as a proxy
group. In a preferred embodiment, the facility also copies characteristics
of the putatively global resource to the proxy resources. For example,
where the putatively global resource and the proxy resources are memory
blocks, the facility preferably copies the contents of the putatively
global memory block to the proxy memory blocks. When the facility detects
that a program is attempting to deallocate a member of the proxy group,
that is, a putatively global resource or one of its proxies, the facility
preferably deallocates each member of the proxy group.
Обеспечены метод и система для обеспечивать группу в составе параллельные ресурсы как полномочие для одиночного, котор делят ресурса. В предпочитаемое воплощение, ресурс собирая средство ("средство") включен в "нон-gloval6nuh" оперативную систему. Нон-gloval6no1 оперативной системой будет оперативная система неспособно ответить правильно к запросу размещать гловальный ресурс определенного типа, such as блок памяти, который может быть достиган каждой программой исполняя совместно с оперативной системой. Вместо, нон-gloval6na4 оперативная система размещает putatively гловальный ресурс который не может быть достиган каждой программой исполняя совместно с нон-gloval6no1 оперативной системой. Когда средство обнаруживает что программа transferer пытает делить putatively гловальный ресурс размещанный оперативной системой с программой transferee, средство размещает ресурс полномочия который доступн к transferee. Средство может также размещать one or more промежуточные ресурсы доступные к другим программам. Средство отслеживает putatively гловальный ресурс и весь из ресурсов полномочия как группа полномочия. В предпочитаемом воплощении, средство также копирует характеристики putatively гловального ресурса к ресурсам полномочия. Например, где putatively гловальным ресурсом и ресурсами полномочия будут блоки памяти, средство предпочтительн копирует содержание putatively гловального блока памяти к блокам памяти полномочия. Когда средство обнаруживает что программа пытает deallocate член группы полномочия, т.е., putatively гловальные ресурс или одно своих полномочий, средство предпочтительн deallocates каждый член группы полномочия.