Claims (24)
1. Способ передачи объекта от первого процесса на второй процесс, причем первый процесс имеет первое адресное пространство памяти, а второй процесс имеет второе адресное пространство памяти; выполняемый процессором компьютерного устройства, выполняющим указанный первый процесс; и включающий1. A method of transferring an object from a first process to a second process, the first process having a first memory address space, and the second process having a second memory address space; performed by a processor of a computer device executing said first process; and including
предоставление первой копии указанного объекта в первой смежной области указанного первого адресного пространства памяти;providing a first copy of said object in a first adjacent area of said first memory address space;
предоставление второй копии указанного объекта во второй смежной области указанного первого адресного пространства памяти;providing a second copy of the specified object in the second adjacent area of the specified first address memory space;
сравнение для каждого местоположения указанных первой и второй копий указанного объекта соответствующих значений, сохраненных в соответствующих местоположениях в рамках указанной первой копии указанного объекта и указанной второй копии указанного объекта;comparing for each location of the indicated first and second copies of the specified object the corresponding values stored in the respective locations within the specified first copy of the specified object and the specified second copy of the specified object;
формирование индекса местоположения в указанных первой и второй копиях указанного объекта, в которых указанные соответствующие значения в соответствующих местоположениях различаются;the formation of a location index in the specified first and second copies of the specified object, in which the indicated corresponding values at the respective locations differ;
предоставление копии указанного объекта и указанного индекса местоположений для передачи на указанный второй процесс для использования в корректировке указанных местоположений в указанной копии указанного объекта для указанного второго адресного пространства памяти.providing a copy of the specified object and the specified location index for transmission to the specified second process for use in adjusting the specified locations in the specified copy of the specified object for the specified second memory address space.
2. Способ по п. 1, в котором2. The method according to p. 1, in which
получают указатель указанного объекта для передачи;receive a pointer to the specified object for transmission;
заменяют распределитель памяти по умолчанию на заданный пользователем распределитель памяти, выполненный с возможностью распределения памяти в смежной области памяти;replacing the default memory allocator with a user-defined memory allocator configured to allocate memory in an adjacent memory region;
при этом предоставление указанной первой копии содержит копирование указанного объекта для передачи в указанную первую смежную область памяти, распределенную указанным заданным пользователем распределителем памяти; иwherein the provision of said first copy comprises copying said object for transmission to said first adjacent memory region allocated by said memory allocator specified by a user; and
предоставление указанной второй копии содержит копирование указанного объекта для передачи в указанную вторую смежную область памяти, распределенную указанным заданным пользователем распределителем памяти.providing said second copy comprises copying said object for transmission to said second adjacent memory area allocated by said user-specified memory allocator.
3. Способ по п. 1, в котором3. The method according to p. 1, in which
получают указатель указанного объекта для передачи, причем указанный объект занимает первую смежную область памяти, распределенную заданным пользователем распределителем памяти; иget a pointer to the specified object for transmission, and the specified object occupies the first adjacent memory area allocated by a user-specified memory allocator; and
предоставление указанной второй копии содержит копирование указанного объекта для передачи в указанную вторую смежную область памяти, распределенную указанным заданным пользователем распределителем памяти.providing said second copy comprises copying said object for transmission to said second adjacent memory area allocated by said user-specified memory allocator.
4. Способ по п. 1, в котором предоставление копии указанного объекта содержит копирование указанной первой копии указанного объекта или указанной второй копии указанного объекта в буфер.4. The method of claim 1, wherein providing a copy of said object comprises copying said first copy of said object or said second copy of said object to a buffer.
5. Способ по п. 1, в котором указанную скопированную первую или вторую копию указанного объекта располагают в базовом адресе в указанном первом адресном пространстве памяти, и извлекают указанный базовый адрес из значений указанной копии указанного объекта в указанный буфер в каждом местоположении в указанном индексе местоположений.5. The method according to claim 1, in which the specified copied first or second copy of the specified object is located in the base address in the specified first address space of the memory, and the specified base address is extracted from the values of the specified copy of the specified object in the specified buffer at each location in the specified location index .
6. Способ по п. 1, в котором указанную скопированную первую или вторую копию указанного объекта располагают в базовом адресе в указанном первом адресном пространстве памяти, и извлекают указанный базовый адрес из значений скопированной первой или второй копии объекта в каждом местоположении в указанном индексе местоположений перед копированием в указанный буфер.6. The method according to claim 1, in which the specified copied first or second copy of the specified object is located in the base address in the specified first address space of the memory, and the specified base address is extracted from the values of the copied first or second copy of the object at each location in the specified location index before copy to the specified buffer.
7. Способ по п. 1, в котором сообщают о размере указанного объекта с указанной копией указанного объекта и указанный индекс местоположений для передачи указанному второму процессу.7. The method according to claim 1, in which they report the size of the specified object with the specified copy of the specified object and the specified location index for transmission to the specified second process.
8. Способ по п. 1, в котором используют функцию сериализации, выполняющую указанные шаги при вызове родительского объекта для передачи указанного объекта.8. The method according to p. 1, in which use the serialization function that performs these steps when calling the parent object to transfer the specified object.
9. Способ по п. 1, в котором указанный первый процесс инстанцируют на первом компьютерном устройстве, а второй процесс инстанцируют на втором отличном компьютерном устройстве.9. The method of claim 1, wherein said first process is instantiated on a first computer device, and a second process is instantiated on a second excellent computer device.
10. Способ по п. 1, в котором указанный первый процесс инстанцируют на первом компьютерном устройстве, а после инстанцируют второй процесс на первом компьютерном устройстве.10. The method according to claim 1, wherein said first process is instantiated on a first computer device, and then a second process is instantiated on a first computer device.
11. Способ по п. 1, в котором указанное предоставление указанной копии указанного объекта и указанного индекса местоположений для передачи содержит запись указанной копии указанного объекта и указанного индекса местоположений в персистентную память.11. The method according to claim 1, wherein said providing a specified copy of the specified object and the specified location index for transmission comprises recording a specified copy of the specified object and the specified location index in persistent memory.
12. Способ по п. 11, в котором персистентная память содержит в себе память компьютера или энергонезависимую память, доступную указанному первому и указанному второму процессу.12. The method of claim 11, wherein the persistent memory comprises computer memory or non-volatile memory available to said first and said second process.
13. Способ по п. 1, в котором указанное предоставление указанной копии указанного объекта и указанного индекса местоположений для передачи включает передачу указанной копии указанного объекта и указанного индекса местоположений на компьютерное устройство по сетевой линии.13. The method according to claim 1, wherein said providing a specified copy of the specified object and the specified location index for transmission includes transmitting the specified copy of the specified object and the specified location index to the computer device via a network line.
14. Способ по п. 2, в котором указанный первый процесс выполняют в виде компилируемой программы на С, а указанный заданный пользователем распределитель памяти выполняют с возможностью осуществления перегруженной функции распределения памяти.14. The method of claim 2, wherein said first process is executed as a compiled C program, and said user-specified memory allocator is configured to perform an overloaded memory allocation function.
15. Способ по п. 2, в котором указанный первый процесс выполняют в виде компилируемой программы на С++, а указанный заданный пользователем распределитель памяти выполняют с возможностью осуществления перегруженной функции.15. The method of claim 2, wherein said first process is executed as a compiled C ++ program, and said user-specified memory allocator is configured to perform an overloaded function.
16. Способ по п. 1, в котором указанное первое и указанное второе адресное пространство памяти выполняют в виде виртуального пространства адресной памяти.16. The method of claim 1, wherein said first and said second address memory space is implemented as a virtual address memory space.
17. Машиночитаемый носитель, включающий в себя выполняемые машиночитаемые коды при выполнении которых компьютерное устройство осуществляет способ по п. 1.17. Machine-readable medium, including executable computer-readable codes upon execution of which a computer device implements the method according to claim 1.
18. Способ передачи объекта от первого процесса на второй процесс, причем первый процесс имеет первое адресное пространство памяти, а второй процесс имеет второе адресное пространство памяти; выполняемый процессором компьютерного устройства, выполняющим указанный второй процесс, и включающий18. A method of transferring an object from a first process to a second process, the first process having a first memory address space, and the second process having a second memory address space; performed by a processor of a computer device that performs the specified second process, and including
получение копии указанного объекта и индекса месторасположений в указанной копии объекта, указывающие на указатели местоположений в указанной копии указанного объекта;obtaining a copy of the specified object and the location index in the specified copy of the object, indicating location pointers in the specified copy of the specified object;
копирование указанного объекта в смежную область указанного второго адресного пространства памяти, причем указанная область имеет базовый адрес; иcopying said object to an adjacent region of said second address memory space, said region having a base address; and
добавление указанного значения базового адреса к значениям указанного объекта в указанной смежной области указанного второго адресного пространства памяти в каждом местоположении в указанном индексе местоположений.adding the specified base address value to the values of the specified object in the specified adjacent area of the specified second memory address space at each location in the specified location index.
19. Способ по п. 18, в котором получают базовый адрес для указанного объекта в указанном первом адресном пространстве памяти, и извлекают указанный базовый адрес из указанного объекта в указанном первом адресном пространстве памяти из значений указанного объекта в указанной смежной области указанного второго адресного пространства памяти в каждом местоположении в указанном индексе местоположений.19. The method according to p. 18, which obtains a base address for the specified object in the specified first memory address space, and extracts the specified base address from the specified object in the specified first memory address space from the values of the specified object in the specified adjacent area of the specified second memory address space at each location in the specified location index.
20. Способ по п. 18, в котором получают данные о размере указанного объекта и распределяют смежную область памяти по меньшей мере указанного размера в указанном втором адресном пространстве памяти.20. The method according to p. 18, in which data is obtained on the size of the specified object and allocate an adjacent memory region of at least the specified size in the specified second memory address space.
21. Способ по п. 18, в котором используют функцию десериализации, выполняющую указанные шаги при вызове родительского объекта для получения указанного объекта.21. The method according to p. 18, in which use the function of deserialization that performs these steps when calling the parent object to obtain the specified object.
22. Машиночитаемый носитель, включающий машиночитаемые коды, при выполнении которых компьютерное устройство осуществляет способ по п. 18.22. Machine-readable medium, including computer-readable codes, the execution of which the computer device implements the method according to p. 18.
23. Система обработки данных, включающая первое компьютерное устройство, связанное со вторым компьютерным устройством, причем указанное первое компьютерное устройство выполнено с возможностью осуществления способа по п. 1, а второе компьютерное устройство выполнено с возможностью осуществления способа по п. 18.23. A data processing system including a first computer device associated with a second computer device, wherein said first computer device is configured to implement the method of claim 1, and the second computer device is configured to implement the method of claim 18.
24. Система по п. 23, в которой указанные первый и второй компьютерные устройства представляют собой различные устройства.
24. The system of claim 23, wherein said first and second computer devices are various devices.