СПОСОБ ОБРАБОТКИ ЗАПРОСА НА ЗАПИСЬ, ПРОЦЕССОР И КОМПЬЮТЕР

1. Способ обработки запроса на запись, применяемый к первому компьютеру, причем первый компьютер соединен со вторым компьютером, соответствующие операционные системы выполняются на первом компьютере и втором компьютере соответственно, первый компьютер содержит первый процессор, второй компьютер содержит второй процессор, и первый процессор, и второй процессор содержат интерфейс системной шины, интерфейс системной шины первого процессора соединен с интерфейсом системной шины второго процессора с помощью системной шины, при этом второе адресное пространство памяти второго компьютера является зеркальным адресным пространством первого адресного пространства памяти первого компьютера; при этом
способ содержит:
прием первым процессором запроса на запись, причем запрос на запись содержит записываемые целевые данные и адрес записи целевых данных (310);
определение первым процессором того, что адрес записи расположен в первом адресном пространстве памяти (320); и
запись первым процессором целевых данных в запросе на запись в первое адресное пространство памяти, и отправку целевых данных в запросе на запись во второй процессор с помощью системной шины таким образом, что второй процессор записывает целевые данные во второе адресное пространство памяти (330).
2. Способ по п. 1, в котором отправка первым процессором целевых данных в запросе на запись во второй процессор с помощью системной шины содержит:
формирование первым процессором зеркального пакета в соответствии с запросом на запись, причем зеркальный пакет содержит целевые данные и адрес записи;
отправку первым процессором зеркального пакета в непрозрачный мост первого процессора;
преобразование непрозрачным мостом первого процессора адреса записи в зеркальном пакете в зеркальный адрес адреса записи во втором адресном пространстве памяти в соответствии с зеркальным отношением между первым адресным пространством памяти и вторым адресным пространством памяти для получения обновленного зеркального пакета; и
отправку непрозрачным мостом первого процессора обновленного зеркального пакета в непрозрачный мост второго процессора с помощью системной шины таким образом, что второй процессор записывает целевые данные в зеркальный адрес в соответствии с обновленным зеркальным пакетом, принимаемым непрозрачным мостом второго процессора.
3. Способ по п. 2, в котором способ дополнительно содержит:
отправку непрозрачным мостом первого процессора зеркального пакета завершения в первый процессор после того, как непрозрачный мост первого процессора принимает зеркальный пакет завершения от второго процессора в течение заранее установленного времени, причем зеркальный пакет завершения соответствует зеркальному пакету и используется для индикации того, что целевые данные записаны в зеркальный адрес; и
подтверждение первым процессором успеха операции зеркалирования для целевых данных в соответствии с зеркальным пакетом завершения зеркальной транзакции, соответствующей операции зеркалирования.
4. Способ по п. 3, в котором способ дополнительно содержит:
отправку непрозрачным мостом первого процессора зеркального пакета времени ожидания в первый процессор, когда непрозрачный мост первого процессора не принимает зеркальный пакет завершения от второго процессора в течение заранее установленного времени; и
подтверждение первым процессором неудачи операции зеркалирования в соответствии с зеркальным пакетом времени ожидания, и прерывание зеркальной транзакции.
5. Способ по п. 1, в котором отправка первым процессором целевых данных в запросе на запись во второй процессор с помощью системной шины содержит:
формирование первым процессором зеркального пакета в соответствии с запросом на запись, причем зеркальный пакет содержит целевые данные и адрес записи; и
отправку первым процессором зеркального пакета в непрозрачный мост первого процессора, причем непрозрачный мост первого процессора отправляет зеркальный пакет в непрозрачный мост второго процессора с помощью системной шины таким образом, что непрозрачный мост второго процессора преобразует адрес записи в зеркальном пакете в зеркальный адрес адреса записи во втором адресном пространстве памяти для получения обновленного зеркального пакета, при этом второй процессор записывает целевые данные в зеркальный адрес в соответствии с обновленным зеркальным пакетом.
6. Способ по любому из пп. 1-5, в котором запись первым процессором целевых данных в запросе на запись в первое адресное пространство памяти содержит:
формирование первым процессором пакета записи для целевых данных в соответствии с запросом на запись; и
запись первым процессором целевых данных в адрес записи в первом адресном пространстве памяти в соответствии с пакетом записи.
7. Способ по любому из пп. 1-5, в котором системная шина является шиной quick path interconnect QPI или шиной HyperTransport HT.
8. Способ обработки запроса на запись, причем способ применяется ко второму компьютеру, соединенному с первым компьютером, соответствующие операционные системы выполняются на первом компьютере и втором компьютере соответственно, первый компьютер содержит первый процессор, второй компьютер содержит второй процессор, и первый процессор, и второй процессор содержат интерфейс системной шины, при этом интерфейс системной шины первого процессора соединен с интерфейсом системной шины второго процессора с помощью системной шины, при этом второе адресное пространство памяти второго компьютера представляет собой зеркальное адресное пространство первого адресного пространства памяти первого компьютера; при этом
способ содержит:
прием вторым процессором целевых данных от первого процессора с помощью системной шины, причем целевые данные представляют собой данные, записываемые в память первого процессора, при этом адрес записи целевых данных расположен в первом адресном пространстве памяти; и
запись вторым процессором целевых данных во второе адресное пространство памяти.
9. Способ по п. 8, в котором прием вторым процессором целевых данных от первого процессора с помощью системной шины содержит:
прием непрозрачным мостом второго процессора зеркального пакета от первого процессора с помощью системной шины, причем зеркальный пакет содержит целевые данные и зеркальный адрес адреса записи во втором адресном пространстве памяти; при этом
запись вторым процессором целевых данных во второе адресное пространство памяти содержит:
преобразование непрозрачным мостом второго процессора зеркального пакета в пакет записи для целевых данных; и
запись непрозрачным мостом второго процессора пакета записи в зеркальный адрес во втором адресном пространстве памяти с помощью контроллера памяти второго компьютера.
10. Способ по п. 9, в котором способ дополнительно содержит:
прием непрозрачным мостом второго процессора от контроллера памяти пакета завершения записи, соответствующего пакету записи, причем пакет завершения записи содержит зеркальный адрес;
преобразование непрозрачным мостом второго процессора зеркального адреса в адрес записи в соответствии с отношением отображения между первым адресным пространством памяти и вторым адресным пространством памяти; и
отправку непрозрачным мостом второго процессора зеркального пакета завершения, соответствующего зеркальному пакету первого процессора, причем зеркальный пакет завершения содержит адрес записи, при этом зеркальный пакет завершения используется для индикации того, что целевые данные записаны в зеркальный адрес.
11. Способ по п. 8, в котором прием вторым процессором целевых данных от первого процессора с помощью системной шины содержит:
прием непрозрачным мостом второго процессора зеркального пакета от первого процессора с помощью системной шины, причем зеркальный пакет содержит целевые данные и адрес записи; при этом
запись вторым процессором целевых данных во второе адресное пространство памяти содержит:
преобразования непрозрачным мостом второго процессора зеркального пакета в пакет записи для целевых данных и преобразование адреса записи в зеркальный адрес адреса записи во втором адресном пространстве памяти; и
запись непрозрачным мостом второго процессора пакета записи в зеркальный адрес во втором адресном пространстве памяти с помощью контроллера памяти второго компьютера.
12. Способ по любому из пп. 8-11, в котором системная шина является шиной quick path interconnect QPI или шиной HyperTransport HT.
13. Процессор, причем процессор расположен в первом компьютере, первый компьютер соединен со вторым компьютером, соответствующие операционные системы выполняются на первом компьютере и втором компьютере соответственно, второй компьютер содержит другой процессор, и процессор, и другой процессор содержат интерфейс системной шины, интерфейс системной шины процессора соединен с интерфейсом системной шины другого процессора с помощью системной шины, второе адресное пространство памяти второго компьютера является зеркальным адресным пространством первого адресного пространства памяти первого компьютера, процессор дополнительно содержит контроллер и внутреннюю шину, а контроллер соединен с интерфейсом системной шины процессора с помощью внутренней шины; при этом
контроллер выполнен с возможностью приема запроса на запись, причем запрос на запись содержит записываемые целевые данные и адрес записи целевых данных; определения того, что адрес записи расположен в первом адресном пространстве памяти; и записи целевых данных в запросе на запись в первое адресное пространство памяти, а также отправки целевых данных в запросе на запись в другой процессор с помощью системной шины таким образом, что другой процессор записывает целевые данные во второе адресное пространство памяти.
14. Процессор по п. 13, в котором процессор дополнительно содержит непрозрачный мост, причем непрозрачный мост соединен с интерфейсом системной шины, при этом непрозрачный мост соединен с контроллером с помощью внутренней шины;
контроллер, в частности, выполнен с возможностью формирования зеркального пакета в соответствии с запросом на запись, причем зеркальный пакет содержит целевые данные и адрес записи; и
непрозрачный мост выполнен с возможностью преобразования адреса записи в зеркальном пакете в зеркальный адрес адреса записи во втором адресном пространстве памяти в соответствии с зеркальным отношением между первым адресным пространством памяти и вторым адресным пространством памяти для получения обновленного зеркального пакета; и отправки обновленного зеркального пакета в непрозрачный мост другого процессора с помощью системной шины таким образом, что другой процессор записывает целевые данные в зеркальный адрес в соответствии с обновленным зеркальным пакетом, принимаемым непрозрачным мостом другого процессора.
15. Процессор по п. 14, в котором непрозрачный мост дополнительно выполнен с возможностью отправки зеркального пакета завершения в контроллер после приема зеркального пакета завершения от другого процессора в течение заранее установленного времени, причем зеркальный пакет завершения соответствует зеркальному пакету и используется для индикации того, что целевые данные записаны в зеркальный адрес; при этом
контроллер дополнительно выполнен с возможностью подтверждения успеха операции зеркалирования для целевых данных в соответствии с зеркальным пакетом завершения и прерывания зеркальной транзакции, соответствующей операции зеркалирования.
16. Процессор по п. 15, в котором непрозрачный мост дополнительно выполнен с возможностью отправки зеркального пакета времени ожидания в контроллер, когда зеркальный пакет завершения не принят от другого процессора в течение заранее установленного времени; при этом
контроллер дополнительно выполнен с возможностью подтверждения неудачи операции зеркалирования в соответствии с зеркальным пакетом времени ожидания и прерывания зеркальной транзакции.
17. Процессор по п. 13, в котором контроллер, в частности, выполнен с возможностью формирования зеркального пакета в соответствии с запросом на запись, причем зеркальный пакет содержит целевые данные и адрес записи; и отправки зеркального пакета в непрозрачный мост процессора, причем непрозрачный мост процессора отправляет зеркальный пакет в непрозрачный мост другого процессора с помощью системной шины таким образом, что непрозрачный мост другого процессора преобразует адрес записи в зеркальном пакете в зеркальный адрес адреса записи во втором адресном пространстве памяти для получения обновленного зеркального пакета, при этом другой процессор записывает целевые данные в зеркальный адрес в соответствии с обновленным зеркальным пакетом.
18. Процессор по любому из пп. 13-17, в котором контроллер, в частности, выполнен с возможностью формирования пакета записи для целевых данных в соответствии с запросом на запись; и записи целевых данных в адрес записи в первом адресном пространстве памяти в соответствии с пакетом записи.
19. Процессор по любому из пп. 13-17, в котором системная шина является шиной quick path interconnect QPI или шиной HyperTransport HT.
20. Процессор, причем процессор расположен во втором компьютере, соединенном с первым компьютером, соответствующие операционные системы выполняются на первом компьютере и втором компьютере соответственно, первый компьютер содержит другой процессор, и другой процессор, и процессор содержат интерфейс системной шины, интерфейс системной шины другого процессора соединен с интерфейсом системной шины процессора с помощью системной шины, второе адресное пространство памяти второго компьютера представляет собой зеркальное адресное пространство первого адресного пространства памяти первого компьютера, процессор содержит контроллер, непрозрачный мост и внутреннюю шину, непрозрачный мост соединен с интерфейсом системной шины процессора, при этом контроллер соединен с непрозрачным мостом с помощью внутренней шины; при этом
непрозрачный мост выполнен с возможностью приема целевых данных от другого процессора с помощью системной шины, причем целевые данные представляют собой данные, записываемые в память другого процессора, при этом адрес записи целевых данных расположен в первом адресном пространстве памяти; и записи целевых данных во второе адресное пространство памяти.
21. Процессор по п. 20, в котором непрозрачный мост, в частности, выполнен с возможностью приема зеркального пакета от другого процессора с помощью системной шины, причем зеркальный пакет содержит целевые данные и зеркальный адрес адреса записи во втором адресном пространстве памяти; преобразования зеркального пакета в пакет записи для целевых данных; и записи пакета записи в зеркальный адрес во втором адресном пространстве памяти с помощью контроллера памяти второго компьютера.
22. Процессор по п. 21, в котором непрозрачный мост дополнительно выполнен с возможностью приема от контроллера памяти пакета завершения записи, соответствующего пакету записи, причем пакет завершения записи содержит зеркальный адрес; преобразования зеркального адреса в адрес записи в соответствии с отношением отображения между первым адресным пространством памяти и вторым адресным пространством памяти; и отправки в другой процессор зеркального пакета завершения, причем зеркальный пакет завершения содержит адрес записи, при этом зеркальный пакет завершения используется для индикации того, что целевые данные записаны в зеркальный адрес.
23. Процессор по п. 20, в котором непрозрачный мост, в частности, выполнен с возможностью приема зеркального пакета от другого процессора с помощью системной шины, причем зеркальный пакет содержит целевые данные и адрес записи; преобразования зеркального пакета в пакет записи для целевых данных и преобразования адреса записи в зеркальный адрес адреса записи во втором адресном пространстве памяти; и записи пакета записи в зеркальный адрес во втором адресном пространстве памяти с помощью контроллера памяти второго компьютера.
24. Процессор по любому из пп. 20-22, в котором системная шина является шиной quick path interconnect QPI или шиной HyperTransport HT.
25. Компьютер, причем компьютер соединен с другим компьютером, соответствующие операционные системы выполняются на компьютере и другом компьютере соответственно, компьютер содержит первый процессор, другой компьютер содержит второй процессор, и первый процессор, и второй процессор содержат интерфейс системной шины, при этом интерфейс системной шины первого процессора соединен с интерфейсом системной шины второго процессора с помощью системной шины, при этом второе адресное пространство памяти другого компьютера является зеркальным адресным пространством первого адресного пространства памяти компьютера; при этом
компьютер содержит:
модуль приема, выполненный с возможностью приема запроса на запись, причем запрос на запись содержит записываемые целевые данные и адрес записи целевых данных;
модуль определения, выполненный с возможностью определения того, что адрес записи расположен в первом адресном пространстве памяти; и
модуль зеркалирования, выполненный с возможностью записи целевых данных в запросе на запись в первое адресное пространство памяти и отправки целевых данных в запросе на запись во второй процессор с помощью системной шины таким образом, что второй процессор записывает целевые данные во второе адресное пространство памяти.
26. Компьютер по п. 25, в котором модуль зеркалирования, в частности, выполнен с возможностью формирования зеркального пакета в соответствии с запросом на запись, причем зеркальный пакет содержит целевые данные и адрес записи; отправки зеркального пакета в непрозрачный мост первого процессора; преобразования адреса записи в зеркальном пакете в зеркальный адрес адреса записи во втором адресном пространстве памяти в соответствии с зеркальным отношением между первым адресным пространством памяти и вторым адресным пространством памяти для получения обновленного зеркального пакета; и отправки обновленного зеркального пакета в непрозрачный мост второго процессора с помощью системной шины таким образом, что второй процессор записывает целевые данные в зеркальный адрес в соответствии с обновленным зеркальным пакетом, принимаемым непрозрачным мостом второго процессора.
27. Компьютер по п. 26, в котором модуль зеркалирования дополнительно выполнен с возможностью: отправки зеркального пакета завершения в первый процессор после того, как непрозрачный мост первого процессора принимает зеркальный пакет завершения от второго процессора в течение заранее установленного времени, причем зеркальный пакет завершения соответствует зеркальному пакету и используется для индикации того, что целевые данные записаны в зеркальный адрес; и подтверждения успеха операции зеркалирования для целевых данных в соответствии с зеркальным пакетом завершения и прерывания зеркальной транзакции, соответствующей операции зеркалирования.
28. Компьютер по п. 27, в котором модуль зеркалирования дополнительно выполнен с возможностью: отправки зеркального пакета времени ожидания в первый процессор, когда непрозрачный мост первого процессора не принимает зеркальный пакет завершения от второго процессора в течение заранее установленного времени; и подтверждения неудачи операции зеркалирования в соответствии с зеркальным пакетом времени ожидания и прерывания зеркальной транзакции.
29. Компьютер по п. 25, в котором модуль зеркалирования дополнительно выполнен с возможностью формирования зеркального пакета в соответствии с запросом на запись, причем зеркальный пакет содержит целевые данные и адрес записи; и отправки зеркального пакета в непрозрачный мост первого процессора, причем непрозрачный мост первого процессора отправляет зеркальный пакет в непрозрачный мост второго процессора с помощью системной шины таким образом, что непрозрачный мост второго процессора преобразует адрес записи в зеркальном пакете в зеркальный адрес адреса записи во втором адресном пространстве памяти для получения обновленного зеркального пакета, при этом второй процессор записывает целевые данные в зеркальный адрес в соответствии с обновленным зеркальным пакетом.
30. Компьютер по любому из пп. 25-29, в котором модуль зеркалирования дополнительно выполнен с возможностью формирования пакета записи для целевых данных в соответствии с запросом на запись; и записи целевых данных в адрес записи в первом адресном пространстве памяти в соответствии с пакетом записи.
31. Компьютер по любому из пп. 25-29, в котором системная шина является шиной quick path interconnect QPI или шиной HyperTransport HT.
32. Компьютер, причем компьютер соединен с другим компьютером, соответствующие операционные системы выполняются на другом компьютере и компьютере соответственно, другой компьютер содержит первый процессор, компьютер содержит второй процессор, и первый процессор, и второй процессор содержат интерфейс системной шины, при этом интерфейс системной шины первого процессора соединен с интерфейсом системной шины второго процессора с помощью системной шины, при этом второе адресное пространство памяти компьютера представляет собой зеркальное адресное пространство первого адресного пространства памяти другого компьютера; при этом
компьютер содержит:
модуль зеркалирования, выполненный с возможностью приема целевых данных от первого процессора с помощью системной шины, причем целевые данные представляют собой данные, записываемые в память первого процессора, при этом адрес записи целевых данных расположен в первом адресном пространстве памяти; и
модуль операции записи, выполненный с возможностью записи целевых данных во второе адресное пространство памяти.
33. Компьютер по п. 32, в котором модуль зеркалирования, в частности, выполнен с возможностью приема зеркального пакета от первого процессора с помощью системной шины, причем зеркальный пакет содержит целевые данные и зеркальный адрес адреса записи во втором адресном пространстве памяти; при этом модуль операции записи, в частности, выполнен с возможностью преобразования зеркального пакета в пакет записи для целевых данных и записи пакета записи в зеркальный адрес во втором адресном пространстве памяти с помощью контроллера памяти компьютера.
34. Компьютер по п. 33, в котором модуль зеркалирования дополнительно выполнен с возможностью приема от контроллера памяти пакета завершения записи, соответствующего пакету записи, причем пакет завершения записи содержит зеркальный адрес; преобразования зеркального адреса в адрес записи в соответствии с отношением отображения между первым адресным пространством памяти и вторым адресным пространством памяти; и отправки в первый процессор зеркального пакета завершения, соответствующего зеркальному пакету, причем зеркальный пакет завершения содержит адрес записи, при этом зеркальный пакет завершения используется для индикации того, что целевые данные записаны в зеркальный адрес.
35. Компьютер по п. 32, в котором модуль зеркалирования, в частности, выполнен с возможностью приема зеркального пакета от первого процессора с помощью системной шины, причем зеркальный пакет содержит целевые данные и адрес записи; при этом модуль операции записи, в частности, выполнен с возможностью преобразования зеркального пакета в пакет записи для целевых данных и преобразования адреса записи в зеркальный адрес адреса записи во втором адресном пространстве памяти; и записи пакета записи в зеркальный адрес во втором адресном пространстве памяти с помощью контроллера памяти компьютера.
36. Компьютер по любому из пп. 32-35, в котором системная шина является шиной quick path interconnect QPI или шиной HyperTransport HT.