СПОСОБ ОБРАБОТКИ РЕСУРСА, ОПЕРАЦИОННАЯ СИСТЕМА И УСТРОЙСТВО
METHOD FOR RESOURCE PROCESSING, OPERATING SYSTEM AND DEVICE

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
[0001] Варианты осуществления настоящего изобретения относятся технологиям связи, и конкретно, к способу обработки ресурса, операционной системе и устройству.
ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ
[0002] В настоящее время процессоры вошли в эпоху многоядерных процессоров, и большинство многоядерных процессоров поддерживает технологию виртуализации. В многоядерном процессоре множественные ядра процессора интегрируются в один кристалл, таким образом, делая возможным параллельное исполнение. Кроме того, один физический компьютер может быть преобразован в множественные виртуальные компьютеры посредством использования технологии виртуализации. Поэтому, с объединенным многоядерным процессором и технологией виртуализации множественные операционные системы могут работать на одном физическом компьютере одновременно.
[0003] В существующей гетерогенной архитектуре многоядерной операционной системы одна операционная система управления и множественные операционные системы загрузки работает на одном физическом компьютере (хост-компьютере). Операционная система управления конфигурируется для предоставления среды исполнения для различных прикладных программ и множественных операционных систем загрузки. Операционные системы загрузки конфигурируются для предоставления среды исполнения для различных прикладных программ. Операционная система управления предоставляет физические ресурсы, соответствующие среде исполнения для операционных систем загрузки посредством использования гипервизора (Hypervisor), где физические ресурсы, главным образом, включают в себя ядро процессора, физическую память, внешнее устройство и т.п.. Каждая операционная система загрузки использует одно или более ядер процессора исключительно, и совместно использует физическую память, внешнее устройство и т.п. с другой операционной системой загрузки, посредством способа мультиплексирования с разделением по времени.
[0004] Поскольку множественные операционные системы загрузки совместно используют физическую память, внешнее устройство и т.п. посредством способа мультиплексирования с разделением по времени, когда имеется относительно большое количество операционных систем загрузки, возникает задержка для работы операционных система загрузки, таким образом снижая общую производительность операционных систем загрузки.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0005] Варианты осуществления настоящего изобретения предоставляют способ обработки ресурса, операционную систему и устройство для повышения общей производительности операционной системы загрузки.
[0006] В соответствии с первым аспектом, вариант осуществления настоящего изобретения предоставляет способ обработки ресурса, где способ применяется для многоядерной операционной системы, причем многоядерная операционная система включает в себя операционную систему управления и множественные операционные системы загрузки, которые работают на хост-компьютере, и включает в себя пул физических ресурсов, упомянутый пул физических ресурсов включает в себя ядра процессора и физическую память, которые являются частью хост-компьютера, и способ включает в себя:
назначение посредством операционной системы управления на каждую операционную систему загрузки набора физических ресурсов, исключительно используемого посредством каждой операционной системы загрузки, создание отражения запуска для каждой операционной системы загрузки и установку для каждой операционной системы загрузки отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска, где каждый набор физических ресурсов включает в себя некоторые из ядер процессора хост-компьютера и части физической памяти хост-компьютера;
определение, посредством операционной системы управления и в ядрах процессора, назначенных на первую операционную систему загрузки, ядра процессора запуска, которое запускает первую операционную систему загрузки, где первой операционной системой загрузки является любая из операционных систем загрузки;
предписание, посредством операционной системы управления, ядру процессора запуска считывать отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки и является предварительно созданным посредством операционной системой управления, для разрешения ядру процессора запуска получать доступ, в процессе исполнения отражения запуска и в соответствии с отношением отображения, к адресу физической памяти; и предписание (выдачу инструкции) ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, где отражение запуска включает в себя параметр запуска первой операционной системы загрузки, параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки.
[0007] Со ссылкой на первый аспект, в первом способе возможной реализации первого аспекта, предписание, посредством операционной системы управления, ядру процессора запуска считывать отношение отображения из адреса виртуальной памяти в адрес физической памяти и которое требуется для исполнения отражения запуска первой операционной системы загрузки и является предварительно созданным посредством операционной системой управления, и предписание ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, включают в себя:
посылку, посредством операционной системы, межъядерного сообщения прерывания на ядро процессора запуска, причем межъядерное сообщение прерывания предписывает ядру процессора запуска исполнять программу инициализации, которая конфигурируется для инициализации ядра процессора запуска и соответствует первой операционной системе загрузки; и
предписание, посредством операционной системы управления, посредством предписания ядру процессора запуска исполнять программу инициализации, соответствующую первой операционной системе загрузки, ядру процессора запуска считывать из программы инициализации отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки; и предписание ядру процессора запуска переходить, после завершения работы программы инициализации, в местоположение, которое является отражением запуска и находится в физической памяти для исполнения отражения запуска первой операционной системы загрузки.
[0008] Со ссылкой на первый способ возможной реализации первого аспекта, во втором способе возможной реализации первого аспекта, перед установкой, посредством операционной системы управления для каждой операционной системы загрузки, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска, способ дополнительно включает в себя:
предварительную установку посредством операционной системы управления для первой операционной системы загрузки, программы инициализации, которая конфигурируется для инициализации первой операционной системы загрузки и предварительную установку, в программе инициализации, местоположение, которое является отражением первой операционной системы загрузки и которое находится по адресу физической памяти; и
установка, посредством операционной системы управления для каждой операционной системы загрузки, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска, включает в себя:
установку, посредством операционной системы управления для первой операционной системы загрузки и в программе инициализации, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска.
[0009] Со ссылкой на первый аспект, в третьем способе возможной реализации первого аспекта, перед определением, посредством операционной системы управления и в ядрах процессора, назначенных на первую операционную систему загрузки, ядра процессора запуска, которое запускает первую операционную систему загрузки, способ дополнительно включает в себя:
получение, посредством операционной системой управления, доступных ядер процессора второй операционной системы загрузки, причем второй операционной системой загрузки является операционная система загрузки, из которой осуществлен выход, отличная от первой операционной системы загрузки, во множественных операционных системах загрузки, причем доступные ядра процессора включают в себя ядро процессора, которое было запущено, и набор физических ресурсов первой операционной системы загрузки включает в себя доступные ядра процессора; и
упомянутое определение, посредством операционной системы управления и в ядрах процессора, назначенных на первую операционную систему загрузки, ядра процессора запуска, которое запускает первую операционную систему загрузки, включает в себя:
когда набор физических ресурсов первой операционной системы загрузки включает в себя доступные ядра процессора, определение, посредством операционной системы управления и в доступных ядрах процессора, ядра процессора запуска, которое запускает первую операционную систему загрузки.
[0010] Со ссылкой на третий способ возможной реализации первого аспекта, в четвертом способе возможной реализации первого аспекта, после определения, посредством операционной системы управления и в доступных ядрах процессора, ядра процессора запуска, которое запускает первую операционную систему загрузки, способ дополнительно включает в себя:
предварительную установку, посредством операционной системы управления для первой операционной системы загрузки, программного агента на ядре процессора запуска и предварительную установку в программном агенте местоположения, которое является отражением запуска первой операционной системы загрузки, и которое находится по адресу физической памяти; и
упомянутая установка, посредством операционной системы управления для каждой операционной системы загрузки, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска, включает в себя:
установку, посредством операционной системы управления для первой операционной системы загрузки и в программном агенте, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска.
[0011] Со ссылкой на четвертый способ возможной реализации первого аспекта, в пятом способе возможной реализации первого аспекта, предписание, посредством операционной системы управления, ядру процессора запуска считывать отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки и является предварительно созданным посредством операционной системы управления, и предписание ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, включают в себя:
посылку, посредством операционной системы управления, межъядерного сообщения прерывания на программный агент, работающий на ядре процессора запуска, причем межъядерное сообщение прерывания предписывает ядру процессора запуска считывать из программного агента отношение отображения из адреса виртуальной памяти в адрес физической памяти и которое требуется для исполнения отражения запуска, и которое является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки; и упомянутое местоположение отражения запуска, соответствующее первой операционной системе загрузки, которое находится по адресу физической памяти, и которое является предварительно установленным в программном агенте операционной системой управления, предписывает ядру процессора запуска переходить в местоположение по адресу физической памяти, и по которому располагается отражение запуска, для исполнения отражения запуска первой операционной системы загрузки.
[0012] Со ссылкой на первый аспект или любой способ возможной реализации от первого до пятого способов возможной реализации первого аспекта, в шестом способе возможной реализации первого аспекта, назначение, посредством операционной системы управления на каждую операционную систему загрузки, набора физических ресурсов, исключительно используемого посредством каждой операционной системы загрузки, включает в себя:
выполнение, посредством операционной системы управления, в соответствии с количеством операционных систем загрузки, первичного разделения на доступные физические ресурсы, которые находятся в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов, для получения множественных наборов физических ресурсов, причем количество наборов физических ресурсов равно количеству операционных систем загрузки, и определение, посредством операционной системы управления, соответствия между каждой операционной системой загрузки и каждым набором физических ресурсов; и
назначение, посредством операционной системы управления на каждую операционную систему загрузки, в соответствии с упомянутым соответствием, набора физических ресурсов, исключительно используемого посредством каждой операционной системы загрузки.
[0013] Со ссылкой на шестой способ возможной реализации первого аспекта, в седьмом способе возможной реализации первого аспекта, каждый набор физических ресурсов дополнительно включает в себя некоторые внешние устройства хост-компьютера; и
параметр запуска дополнительно включает в себя идентификатор внешнего устройства, назначенного на первую операционную систему загрузки, и таблицу информации описания устройства, соответствующую внешнему устройству.
[0014] Со ссылкой на седьмой способ возможной реализации первого аспекта, в восьмом способе возможной реализации первого аспекта, после предписания, посредством операционной системы управления, ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, способ дополнительно включает в себя:
контроль, посредством операционной системы управления, работы первой операционной системы загрузки;
когда использование физического ресурса, назначенного на первую операционную систему загрузки, является меньшим, чем первый предварительно установленный порог, определение, что физический ресурс должен быть удален для первой операционной системы загрузки, и определение идентификатора типа физического ресурса, который должен быть удален, причем идентификатор типа физического ресурса используется для различения того, является ли физический ресурс ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства; и
выполнение, посредством операционной системы управления, в соответствии с идентификатором типа физического ресурса, который должен быть удален, вторичного разделения на доступные физические ресурсы, которые находятся в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов, и удаления физического ресурса первой операционной системы загрузки, причем удаленным физическим ресурсом является физический ресурс, соответствующий идентификатору типа физического ресурса, который должен быть удален.
[0015] Со ссылкой на седьмой способ возможной реализации первого аспекта, в девятом способе возможной реализации первого аспекта, после предписания, посредством операционной системы управления, ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, способ дополнительно включает в себя:
контроль, посредством операционной системы управления, работы первой операционной системы загрузки;
когда использование физического ресурса, назначенного на первую операционную систему загрузки, больше, чем второй предварительно установленный порог, определение, что физический ресурс должен быть добавлен для первой операционной системы загрузки, и определение идентификатора типа физического ресурса, который должен быть добавлен, причем идентификатор типа физического ресурса используется для различения того, является ли физический ресурс, который должен быть добавлен, ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства; и
выполнение, посредством операционной системы управления, в соответствии с идентификатором типа физического ресурса, который должен быть добавлен, вторичного разделения на доступные физические ресурсы, которые находятся в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов, и добавления физического ресурса первой операционной системы загрузки, причем добавленным физическим ресурсом является физический ресурс, соответствующий идентификатору типа физического ресурса, который должен быть добавлен.
[0016] В соответствии со вторым аспектом, вариант осуществления настоящего изобретения предоставляет способ обработки ресурса, причем способ применяется к многоядерной операционной системе, многоядерная операционная система включает в себя операционную систему управления и множественные операционные системы загрузки, которые работают на хост-компьютере, и включает в себя пул физических ресурсов, причем пул физических ресурсов включает в себя ядра процессора и физическую память, которые являются частью хост-компьютера, каждая операционная система загрузки исключительно использует набор физических ресурсов, назначенный посредством операционной системы управления, и каждый набор физических ресурсов включает в себя некоторые из ядер процессора хост-компьютера и части физической памяти хост-компьютера; причем операционная система управления предварительно создает отражение запуска для каждой операционной системы загрузки и устанавливает, для каждой операционной системы загрузки, отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска; и способ включает в себя:
считывание, посредством ядра процессора запуска первой операционной системы загрузки, отношения отображения из адреса виртуальной памяти в адрес физической памяти и которое требуется для исполнения отражения запуска первой операционной системы загрузки, причем отношение отображения используются для разрешения ядру процессора запуска первой операционной системы загрузки получать доступ к адресу физической памяти, и первой операционной системой загрузки является любая операционная система загрузки в многоядерной операционной системе;
переход, посредством ядра процессора запуска первой операционной системы загрузки, в соответствии с предписанием, установленным посредством операционной системы управления и которое требуется для исполнения перехода отражения запуска, в местоположение, которое является отражением запуска, соответствующим первой операционной системе загрузки, и которое находится по адресу физической памяти, и исполнение, в соответствии с отношением отображения, отражения запуска, соответствующей первой операционной системы загрузки;
получение, посредством ядра процессора запуска первой операционной системы загрузки и в процессе исполнения отражения запуска первой операционной системы загрузки, параметра запуска первой операционной системы загрузки из отражения запуска первой операционной системы загрузки, причем параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки; и
определение, посредством первой операционной системы загрузки, в соответствии с идентификаторами ядер процессора и идентификатором адреса физической памяти первой операционной системы загрузки, набора физических ресурсов, который назначается посредством операционной системы управления, на первую операционную систему загрузки и который исключительно используется посредством первой операционной системы загрузки.
[0017] Со ссылкой на второй аспект, в первом способе возможной реализации второго аспекта, считывание, посредством ядра процессора запуска первой операционной системы загрузки, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки, включает в себя:
прием, посредством ядра процессора запуска первой операционной системы загрузки, межъядерного сообщения прерывания, посланного посредством операционной системы управления, причем ядро процессора запуска исполняет, в соответствии с предписанием межъядерного сообщения прерывания, программу инициализации, которая конфигурируется для инициализации ядра процессора запуска и которая соответствует первой операционной системе загрузки; и
исполнение, посредством ядра процессора запуска первой операционной системы загрузки, этой программы инициализации и считывание из программы инициализации, отношения отображения из адреса виртуальной памяти в адрес физической памяти и которое требуется для исполнения отражения запуска и является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки; и
упомянутый переход, посредством ядра процессора запуска первой операционной системы загрузки, в соответствии с предписанием, которое устанавливается посредством операционной системы управления и предназначается для исполнения перехода отражения запуска, в местоположение, которое является отражением, соответствующим первой операционной системе загрузки, и которое находится по адресу физической памяти, включает в себя:
исполнение, посредством ядра процессора запуска первой операционной системы загрузки, программы инициализации, считывание из программы инициализации предписания перехода, которое является предварительно созданным в программе инициализации посредством операционной системы управления, и переход в местоположение, которое является отражением запуска, соответствующим первой операционной системе загрузки, и которое находится по адресу физической памяти.
[0018] Со ссылкой на второй аспект, во втором способе возможной реализации второго аспекта, ядром процессора запуска первой операционной системы загрузки является ядро процессора, которое было запущено, и которое определяется посредством операционной системы управления, программный агент работает на ядре процессора запуска первой операционной системы загрузки, упомянутый программный агент является предварительно установленным посредством операционной системы управления для первой операционной системы загрузки, упомянутое местоположение, которое является отражением запуска, соответствующим первой операционной системе загрузки, и которое находится по адресу физической памяти, и отношение отображения из адреса виртуальной памяти в адрес физической памяти и которое требуется для исполнения отражения запуска, устанавливаются в программном агенте;
упомянутое считывание, посредством ядра процессора запуска первой операционной системы загрузки, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки, включает в себя:
прием, посредством программного агента, работающего на ядре процессора запуска первой операционной системы загрузки, межъядерного сообщения прерывания, посланного посредством операционной системы управления, и считывание, ядром процессора запуска в соответствии с инструкцией межъядерного сообщения прерывания и из программного агента, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска и является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки; и
упомянутый переход, посредством ядра процессора запуска первой операционной системы загрузки, в соответствии с предписанием, которое является установленным посредством операционной системы управления, и которое требуется для исполнения перехода отражения запуска, в местоположение, которое является отражением запуска, соответствующим первой операционной системе загрузки, и которое находится по адресу физической памяти, включает в себя:
считывание, посредством ядра процессора запуска первой операционной системы загрузки, предписания перехода, которое является предварительно установленным в программном агенте посредством операционной системы управления, и переход в местоположение, которое является отражением запуска, соответствующим первой операционной системе загрузки, и которое находится по адресу физической памяти.
[0019] Со ссылкой на второй аспект или первый, или второй способы возможной реализации второго аспекта, в третьем способе возможной реализации второго аспекта, каждый набор физических ресурсов дополнительно включает в себя несколько внешних устройств хост-компьютера; и
параметр запуска дополнительно включает в себя идентификатор внешнего устройства, назначенного посредством операционной системы управления на первую операционную систему загрузки и таблицу информации описания устройства, соответствующую внешнему устройству.
[0020] В соответствии с третьим аспектом, вариант осуществления настоящего изобретения предоставляет операционную систему управления, причем операционная система управления применяется к многоядерной операционной системе, многоядерная операционная система включает в себя операционную систему управления и множественные операционные системы загрузки, которые работают на хост-компьютере, и включает в себя пул физических ресурсов, причем пул физических ресурсов включает в себя ядра процессора и физическую память, которые являются частью хост-компьютера, и операционная система управления включает в себя:
модуль назначения ресурса, сконфигурированный для назначения на каждую операционную систему загрузки набора физических ресурсов, исключительно используемого посредством каждой операционной системы загрузки, причем каждый набор физических ресурсов включает в себя некоторые из ядер процессора хост-компьютера и части физической памяти хост-компьютера;
модуль установки отношения отображения, сконфигурированный для: создания отражения запуска для каждой операционной системы загрузки и установки, для каждой операционной системы загрузки, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска;
модуль определения ядра процессора запуска, сконфигурированный для определения, в ядрах процессора, назначенных на первую операционную систему загрузки, ядра процессора запуска, которое запускает первую операционную систему загрузки, причем первой операционной системой загрузки является любая из операционных систем загрузки;
модуль предписания, сконфигурированный для предписания ядру процессора запуска считывать отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки и которое является предварительно созданным посредством модуля установки отношения отображения для разрешения ядру процессора запуска получать доступ, в процессе исполнения отражения запуска и, в соответствии с отношением отображения, к адресу физической памяти; и для предписания ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, причем отражение запуска включает в себя параметр запуска первой операционной системы загрузки, причем параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки.
[0021] Со ссылкой на третий аспект, в первом способе возможной реализации третьего аспекта, модуль предписания, в частности, конфигурируется для:
посылки межъядерного сообщения прерывания на ядро процессора запуска, причем сообщение внутриядерного прерывания предписывает ядру процессора запуска исполнять программу инициализации, которая конфигурируется для инициализации ядра процессора запуска, и которая соответствует первой операционной системе загрузки; и
предписания, посредством предписания ядру процессора запуска исполнять программу инициализации, соответствующую первой операционной системе загрузки, ядру процессора запуска считывать из программы инициализации отношение отображения из адреса виртуальной памяти в адрес физической памяти и которое требуется для исполнения отражения запуска первой операционной системы загрузки; и предписания ядру процессора запуска переходить, после завершения работы программы инициализации, в местоположение отражения запуска, и которое находится в физической памяти так, чтобы исполнять отражение запуска первой операционной системы загрузки.
[0022] Со ссылкой на первый способ возможной реализации третьего аспекта, во втором способе возможной реализации третьего аспекта операционная система управления дополнительно включает в себя:
модуль конфигурирования программы инициализации, сконфигурированный для: перед тем, как модуль установки параметров отношения отображения устанавливает для каждой операционной системы загрузки, отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска, предварительной установки, для первой операционной системы загрузки, программы инициализации, сконфигурированной для инициализации первой операционной системы загрузки, и предварительной установки в программе инициализации местоположения отражения запуска первой операционной системы загрузки и которое находится по адресу физической памяти; и
модуль установки параметров отношения отображения, в частности, конфигурируется для установки, в программе инициализации и для первой операционной системы загрузки, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска.
[0023] Со ссылкой на третий аспект, в третьем способе возможной реализации третьего аспекта, операционная система управления дополнительно включает в себя:
модуль получения доступного ядра процессора, сконфигурированный для получения доступного ядра процессора второй операционной системы загрузки перед тем, как модуль определения ядра процессора запуска определяет в ядрах процессора, назначенных на первую операционную систему загрузки, ядро процессора запуска, которое запускает первую операционную систему загрузки, причем второй операционной системой загрузки является операционная система загрузки, из которой осуществлен выход, отличная от первой операционной системы загрузки, во множественных операционных системах загрузки, доступные ядра процессора включает в себя ядро процессора, которое было запущено, и набор физических ресурсов первой операционной системы загрузки включает в себя доступные ядра процессора; и
модуль определения ядра процессора запуска, в частности, конфигурируется для: когда набор физических ресурсов первой операционной системы загрузки включает в себя доступные ядра процессора, определения в доступных ядрах процессора, ядра процессора запуска, которое запускает первую операционную систему загрузки.
[0024] Со ссылкой на третий способ возможной реализации третьего аспекта, в четвертом способе возможной реализации третьего аспекта, операционная система управления дополнительно включает в себя:
модуль конфигурирования программного агента, сконфигурированный для предварительной установки, для первой операционной системы загрузки, программного агента на ядре процессора запуска после того, как модуль определения ядра процессора запуска определяет в доступных ядрах процессора ядро процессора запуска, которое запускает первую операционную систему загрузки, и предварительной установки в программном агенте местоположения отражения запуска первой операционной системы загрузки и которое находится по адресу физической памяти; и
модуль установки параметров отношения отображения, в частности, конфигурируется для установки, для первой операционной системы загрузки и в программном агенте, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска.
[0025] Со ссылкой на четвертый способ возможной реализации третьего аспекта, в пятом способе возможной реализации третьего аспекта, модуль предписания, в частности, конфигурируется для: посылки межъядерного сообщения прерывания на программный агент, работающий на ядре процессора запуска, причем межъядерное сообщение прерывания предписывает ядру процессора запуска считывать из программного агента отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска и которое является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки; и упомянутое местоположение, которое является отражением запуска, соответствующим первой операционной системе загрузки, по адресу физической памяти, и которое является предварительно установленным в программном агенте посредством модуля конфигурирования программного агента, предписывает ядру процессора запуска переходить в местоположение по адресу физической памяти, и по которому располагается отражение запуска, для исполнения отражения запуска первой операционной системы загрузки.
[0026] Со ссылкой на третий аспект или любой способ возможной реализации от первого до пятого способа возможной реализации третьего аспекта, в шестом способе возможной реализации третьего аспекта, модуль назначения ресурса, в частности, конфигурируется для:
выполнения, в соответствии с количеством операционных систем загрузки, первичного разделения на доступные физические ресурсы в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов для получения множественных наборов физических ресурсов, причем количество наборов физических ресурсов равно количеству операционных систем загрузки, и операционная система управления определяет связь между каждой операционной системой загрузки и каждым набором физических ресурсов; и
назначения, на каждую операционную систему загрузки в соответствии с упомянутым соответствием, набора физических ресурсов, исключительно используемого посредством каждой операционной системы загрузки.
[0027] Со ссылкой на шестой способ возможной реализации третьего аспекта, в седьмом способе возможной реализации третьего аспекта, каждый набор физических ресурсов дополнительно включает в себя несколько внешних устройств хост-компьютера; и
параметр запуска дополнительно включает в себя идентификатор внешнего устройства, назначенного на первую операционную систему загрузки, и таблицу информации описания устройства, соответствующую внешнему устройству.
[0028] Со ссылкой на седьмой способ возможной реализации третьего аспекта, в восьмом способе возможной реализации третьего аспекта, операционная система управления дополнительно включает в себя:
первый модуль контроля, сконфигурированный для контроля, после того, как модуль предписания предписывает ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, работы первой операционной системы загрузки; и
первый модуль управления ресурсом, сконфигурированный для определения, что физический ресурс должен быть удален для первой операционной системы загрузки, если результат контроля первого модуля контроля состоит в том, что использование физического ресурса, назначенного на первую операционную систему загрузки, является меньшим, чем первый предварительно установленный порог, и определения идентификатора типа физического ресурса, который должен быть удален, причем идентификатор типа физического ресурса используется для различения того, является ли физический ресурс ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства; и
упомянутый модуль назначения ресурса дополнительно конфигурируется для выполнения, в соответствии с идентификатором типа физического ресурса, который должен быть удален, вторичного разделения на доступные физические ресурсы, которые находятся в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов, и удаления физического ресурса первой операционной системы загрузки, причем удаленным физическим ресурсом является физический ресурс, соответствующий идентификатору типа физического ресурса, который должен быть удален.
[0029] Со ссылкой на седьмой способ возможной реализации третьего аспекта, в девятом способе возможной реализации третьего аспекта, операционная система управления дополнительно включает в себя:
второй модуль контроля, сконфигурированный для контроля, после того, как модуль предписания предписывает ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, работы первой операционной системы загрузки; и
второй модуль управления ресурсом, сконфигурированный для определения, что физический ресурс должен быть добавлен для первой операционной системы загрузки, если результат контроля второго модуля контроля состоит в том, что использование физического ресурса, назначенного на первую операционную систему загрузки, больше, чем второй предварительно установленный порог, и определения идентификатора типа физического ресурса, который должен быть добавлен, причем идентификатор типа физического ресурса используется для различения того, является ли физический ресурс, который должен быть добавлен, ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства; и
модуль назначения ресурса дополнительно конфигурируется для выполнения, в соответствии с идентификатором типа физического ресурса, который должен быть добавлен, вторичного разделения на доступные физические ресурсы, которые находятся в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов, и добавления физического ресурса первой операционной системы загрузки, причем добавленным физическим ресурсом является физический ресурс, соответствующий идентификатору типа физического ресурса, который должен быть добавлен.
[0030] Со ссылкой на седьмой способ возможной реализации третьего аспекта, в десятом способе возможной реализации третьего аспекта, операционная система управления дополнительно включает в себя:
первый модуль приема, сконфигурированный для приема, после того, как модуль предписания предписывает ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, сообщения запроса удаления ресурса, посланного посредством первой операционной системы загрузки, причем сообщение запроса удаления ресурса включает в себя идентификатор типа физического ресурса, который должен быть удален, и идентификатор типа физического ресурса используется для различения того, является ли физический ресурс ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства; и
модуль назначения ресурса дополнительно конфигурируется для выполнения, в соответствии с идентификатором типа физического ресурса, который должен быть удален, в сообщении запроса удаления ресурса, вторичного разделения на доступные физические ресурсы, которые находятся в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов, и, удаления физического ресурса первой операционной системы загрузки, причем удаленным физическим ресурсом является физический ресурс, соответствующий идентификатору типа физического ресурса, который должен быть удален.
[0031] В соответствии с четвертым аспектом, вариант осуществления настоящего изобретения предоставляет операционную систему загрузки, причем операционная система загрузки применяется для многоядерной операционной системы, многоядерная операционная система включает в себя операционную систему управления и множественные операционные системы загрузки, которые работают на хост-компьютере и включают в себя пул физических ресурсов, причем пул физических ресурсов включает в себя ядра процессора и физическую память, которые являются частью хост-компьютера, каждая операционная система загрузки исключительно использует набор физических ресурсов, назначенный посредством операционной системы управления, и каждый набор физических ресурсов включает в себя некоторые из ядер процессора хост-компьютера и части физической памяти хост-компьютера; операционная система управления предварительно создает отражение запуска для каждой операционной системы загрузки и устанавливает, для каждой операционной системы загрузки, отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска; и операционная система загрузки включает в себя:
модуль получения отношения отображения, сконфигурированный для считывания отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки, причем отношение отображения используются для разрешения ядру процессора запуска первой операционной системы загрузки получать доступ к адресу физической памяти, и первой операционной системой загрузки является любая операционная система загрузки в многоядерной операционной системе;
модуль исполнения предписания, сконфигурированный для перехода, в соответствии с предписанием, которое является установленным посредством операционной системы управления и которое предназначено для исполнения перехода отражения запуска, в местоположение отражения запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти, и исполнения, в соответствии с отношением отображения, отражения запуска, соответствующего первой операционной системе загрузки;
модуль получения параметра запуска, сконфигурированный для получения, в процессе исполнения отражения запуска первой операционной системы загрузки посредством модуля исполнения предписания, параметра запуска первой операционной системы загрузки из отражения запуска первой операционной системы загрузки, причем параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки; и
модуль получения набора физических ресурсов, сконфигурированный для определения, в соответствии с идентификаторами ядер процессора и идентификатором адреса физической памяти первой операционной системы загрузки, набора физических ресурсов, который является назначенным посредством операционной системы управления на первую операционную систему загрузки и который исключительно используется посредством первой операционной системы загрузки.
[0032] Со ссылкой на четвертый аспект, в первом способе возможной реализации четвертого аспекта, модуль получения отношения отображения, в частности, конфигурируется для:
приема межъядерного сообщения прерывания, посланного посредством операционной системы управления, причем ядро процессора запуска исполняет, в соответствии с предписанием межъядерного сообщения прерывания, программу инициализации, которая конфигурируется для инициализации ядра процессора запуска и которая соответствует первой операционной системе загрузки; и
исполнения программы инициализации и считывания из программы инициализации отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска и является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки; и
модуль исполнения предписания, в частности, конфигурируется для: исполнения программы инициализации, считывания из программы инициализации предписания перехода, которое является предварительно установленным в программе инициализации посредством операционной системы управления, и перехода в местоположение отражения запуска, соответствующее первой операционной системе загрузки и которое находится по адресу физической памяти.
[0033] Со ссылкой на четвертый аспект, во втором способе возможной реализации четвертого аспекта, упомянутым ядром процессора запуска первой операционной системы загрузки является ядро процессора, которое было запущено и которое определяется посредством операционной системы управления, программный агент работает на ядре процессора запуска первой операционной системы загрузки, упомянутый программный агент является предварительно установленным посредством операционной системы управления для первой операционной системы загрузки, упомянутое местоположение, которое является отражением запуска, соответствующим первой операционной системе загрузки, и которое находится по адресу физической памяти и отношение отображения из адреса виртуальной памяти в адрес физической памяти и которое требуется для исполнения отражения запуска, устанавливаются в программном агенте;
модуль получения отношения отображения, в частности, конфигурируется для считывания из программного агента, в соответствии с предписанием межъядерного сообщения прерывания после того, как программный агент, работающий на ядре процессора запуска, принимает межъядерное сообщение прерывания, посланное посредством операционной системы управления, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска и является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки; и
модуль исполнения предписания, в частности, конфигурируется для: считывания предписания перехода, которое является предварительно установленным в программном агенте посредством операционной системы управления и перехода в местоположение отражения запуска, соответствующее первой операционной системе загрузки и которое находится по адресу физической памяти.
[0034] Со ссылкой на четвертый аспект или первый или второй способы возможной реализации четвертого аспекта, в третьем способе возможной реализации четвертого аспекта каждый набор физических ресурсов дополнительно включает в себя несколько внешних устройств хост-компьютера; и
параметр запуска дополнительно включает в себя идентификатор внешнего устройства, назначенного посредством операционной системы управления на первую операционную систему загрузки, и таблицу информации описания устройства, соответствующую внешнему устройству.
[0035] В соответствии с пятым аспектом, вариант осуществления настоящего изобретения предоставляет многоядерную операционную систему, включающую в себя:
операционную систему управления, работающую на хост-компьютере, описанную в третьем аспекте;
множественные операционные системы загрузки, описанные в четвертом аспекте; и
пул физических ресурсов, причем пул физических ресурсов включает в себя ядра процессора, физическую память и внешнее устройство, которые являются частью хост-компьютера.
[0036] В соответствии с шестым аспектом, вариант осуществления настоящего изобретения предоставляет хост-компьютер, включающий в себя процессор и память, причем память хранит предписание исполнения, и когда хост-компьютер работает, процессор связывается с памятью, и процессор исполняет предписание исполнения для разрешения хост-компьютеру исполнять способ обработки ресурса, описанный в первом аспекте или любой способ возможной реализации с первого до девятого способа возможной реализации первого аспекта.
[0037] Варианты осуществления настоящего изобретения предоставляют способ обработки ресурса, операционную систему и устройство. В соответствии со способом, операционная система управления назначает на каждую операционную систему загрузки набор физических ресурсов, исключительно используемый посредством каждой операционной системы загрузки, создает отражение запуска для каждой операционной системы загрузки и устанавливает, для каждой операционной системы загрузки, отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска; операционная система управления определяет, в ядрах процессора, назначенных на первую операционную системе загрузки, ядро процессора запуска, которое запускает первую операционную систему загрузки; операционная система управления предписывает ядру процессора запуска считывать отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки для разрешения ядру процессора запуска получать доступ к адресу физической памяти, в соответствии с отношением отображения, предписывает ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, причем отражение запуска включает в себя параметр запуска первой операционной системы загрузки, и параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки; операционная система управления записывает параметр запуска в отражение запуска для назначения на операционную систему загрузки физического ресурса, исключительно используемого посредством операционной системы загрузки, без необходимости в гипервизоре, таким образом упрощая процесс назначения физического ресурса посредством операционной системы управления на операционную систему загрузки. Дополнительно, каждая операционная система загрузки может исключительно использовать физический ресурс для построения независимой таблицы страниц, часов работы, рабочей среды и т.п. на физическом ресурсе, исключительно используемом посредством каждой операционной системы загрузки, таким образом улучшая общую производительность операционных систем загрузки.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0038] Для описания технических решений в вариантах осуществления настоящего изобретения или в предшествующем уровне техники более ясно, нижеследующее описание кратко вводит сопроводительные чертежи, требуемые для описания вариантов осуществления или предшествующего уровня техники. Очевидно, сопроводительные чертежи в последующем описании показывают некоторые варианты осуществления настоящего изобретения, и специалисты в данной области техники могут получить другие чертежи на основании этих сопроводительных чертежей без творческих усилий.
[0039] ФИГ.1 является схематической диаграммой архитектуры многоядерной операционной системы в соответствии с настоящим изобретением;
[0040] ФИГ.2 является схематической последовательностью операций варианта осуществления 1 способа обработки ресурса в соответствии с настоящим изобретением;
[0041] ФИГ.3 является схематической последовательностью операций варианта осуществления 2 способа обработки ресурса в соответствии с настоящим изобретением;
[0042] ФИГ.4 является схематической последовательностью операций варианта осуществления 3 способа обработки ресурса в соответствии с настоящим изобретением;
[0043] ФИГ.5 является схематической последовательностью операций варианта осуществления 4 способа обработки ресурса в соответствии с настоящим изобретением;
[0044] ФИГ.6 является схематической последовательностью операций варианта осуществления 5 способа обработки ресурса в соответствии с настоящим изобретением;
[0045] ФИГ.7 является схематической последовательностью операций варианта осуществления 6 способа обработки ресурса в соответствии с настоящим изобретением;
[0046] ФИГ.8A является схематической последовательностью операций для добавления ядра процессора для первой операционной системы загрузки в соответствии с настоящим изобретением;
[0047] ФИГ.8B является схематической последовательностью операций для освобождения ядра процессора посредством первой операционной системы загрузки в соответствии с настоящим изобретением;
[0048] ФИГ.9A является схематической последовательностью операций для добавления адреса физической памяти для первой операционной системы загрузки в соответствии с настоящим изобретением;
[0049] ФИГ.9B является схематической последовательностью операций для освобождения адреса физической памяти посредством первой операционной системы загрузки в соответствии с настоящим изобретением;
[0050] ФИГ.10A является схематической последовательностью операций для добавления внешнего устройства для первой операционной системы загрузки в соответствии с настоящим изобретением;
[0051] ФИГ.10B является схематической последовательностью операций для удаления внешнего устройства для первой операционной системы загрузки в соответствии с настоящим изобретением;
[0052] ФИГ.11 является схематической структурной диаграммой варианта осуществления 1 операционной системы управления в соответствии с настоящим изобретением;
[0053] ФИГ.12 является схематической структурной диаграммой варианта осуществления 2 операционной системы управления в соответствии с настоящим изобретением;
[0054] ФИГ.13 является схематической структурной диаграммой варианта осуществления 3 операционной системы управления в соответствии с настоящим изобретением;
[0055] ФИГ.14 является схематической структурной диаграммой варианта осуществления 1 операционной системы загрузки в соответствии с настоящим изобретением;
[0056] ФИГ.15 является схематической структурной диаграммой варианта осуществления 2 операционной системы загрузки в соответствии с настоящим изобретением;
[0057] ФИГ.16 является схематической диаграммой архитектуры многоядерной системы на гетерогенной платформе; и
[0058] ФИГ.17 является схематической структурной диаграммой варианта осуществления 1 хост-компьютера в соответствии с настоящим изобретением.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
[0059] Чтобы представить цели, технические решения и преимущества вариантов осуществления настоящего изобретения более ясными, нижеследующее ясно и полностью описывает технические решения в вариантах осуществления настоящего изобретения со ссылками на сопроводительные чертежи в вариантах осуществления настоящего изобретения. Очевидно, описанными вариантами осуществления являются некоторые, но не все варианты осуществления настоящего изобретения. Все другие варианты осуществления, полученные специалистами в данной области техники, на основании вариантов осуществления настоящего изобретения без творческих усилий, должны находиться в объеме защиты настоящего изобретения.
[0060] ФИГ.1 является схематической диаграммой архитектуры многоядерной операционной системы в соответствии с настоящим изобретением. Как показано на ФИГ.1, многоядерная операционная система, представленная в настоящем варианте осуществления, включает в себя операционную систему управления и множественные операционные системы загрузки, которые работают на хост-компьютере, и включает в себя пул физических ресурсов. Хост-компьютером является фактический физический узел, и операционная система управления управляет множественными операционными системами загрузки, что, главным образом, включает в себя назначение на множественные операционные системы загрузки физических ресурсов, исключительно используемых посредством множественных операционных систем загрузки и является ответственным за запуск и выход из операционных систем загрузки. Множественные операционные системы загрузки включают в себя операционную систему загрузки, которая не была запущена, и операционную систему загрузки, которая работает. Конкретно, после того, как операционная система загрузки была запущена, операционная система загрузки может исключительно использовать физический ресурс, назначенный посредством операционной системы управления, и получать доступ к физическому ресурсу; операционная система загрузки создает (конструирует) независимую таблицу страниц, независимые часы (тактовый генератор), независимую библиотеку поддержки и т.п. на физическом ресурсе, исключительно используемом посредством операционной системы загрузки, не запрашивая помощи от гипервизора; операционная система загрузки использует независимую таблицу страниц, независимые часы, независимую библиотеку поддержки и т.п., таким образом, чтобы операционная система управления и операционная система загрузки совместно использовали системные шины, включающие в себя адресную шину, шину данных и шину управления. Связь между операционной системой управления и операционной системой загрузки и связь между операционной системой загрузки и другой операционной системой загрузки реализуются посредством механизма внутренней связи (модуль связи внутреннего взаимодействия). Операционная система управления и каждая операционная система загрузки имеют независимую таблицу страниц отдельно, каждая операционная система загрузки использует независимый физический ресурс, и операционная система управления выполняет управление, но не вовлекается в доступ, связь и т.п., которые выполняются посредством операционной системы загрузки на физическом ресурсе. Пул физических ресурсов включает в себя ядра процессора и физическую память, которые являются частью хост-компьютера; опционально, пул физических ресурсов дополнительно включает в себя внешнее устройство, такое как массив сетевых адаптеров.
[0061] ФИГ.2 является схематической последовательностью операций варианта осуществления 1 способа обработки ресурса в соответствии с настоящим изобретением. Основной частью исполнения этого варианта осуществления является операционная система управления, которая работает на хост-компьютере, причем операционная система управления может быть, в частности, операционной системой управления, показанной в варианте осуществления на ФИГ.1. Как показано на ФИГ.2, способ обработки ресурса, предоставленный в этом варианте осуществления, включает в себя:
[0062] Этап 201: операционная система управления назначает на каждую операционную систему загрузки набор физических ресурсов, исключительно используемый посредством каждой операционной системы загрузки, создает отражение запуска для каждой операционной системы загрузки и устанавливает, для каждой операционной системы загрузки, отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска.
[0063] Каждый набор физических ресурсов включает в себя некоторые из ядер процессора хост-компьютера и части физической памяти хост-компьютера.
[0064] Этап 202: операционная система определяет в ядрах процессора, назначенных на первую операционную систему загрузки, ядро процессора запуска, которое запускает первую операционную систему загрузки.
[0065] Первой операционной системой загрузки является любая из операционных систем загрузки.
[0066] Этап 203: операционная система управления предписывает ядру процессора запуска считывать отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки и является предварительно созданным посредством операционной системы управления, и предписывает ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки.
[0067] Отражение запуска включает в себя параметр запуска первой операционной системы загрузки, и параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки.
[0068] Сценарий применения этого варианта осуществления может быть таким, как показан в варианте осуществления на ФИГ.1, и никаких подробностей не будет повторно описываться в настоящем описании в этом варианте осуществления. В этом варианте осуществления способ обработки ресурса, предоставленный в этом варианте осуществления, описывается подробно посредством использования операционной системы управления, в качестве основной части исполнения. Операционная система управления может быть, в частности, операционной системой управления, показанной на ФИГ.1.
[0069] В конкретном процессе реализации, на этапе 201, то, что операционная система управления назначает на каждую операционную систему загрузки набор физических ресурсов, исключительно используемый посредством каждой операционной системы загрузки, может быть реализовано следующим образом:
[0070] Операционная система управления определяет доступные физические ресурсы, которые находятся в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов. В частности, операционная система управления поддерживает список доступных физических ресурсов в пуле ресурсов, причем идентификаторы всех доступных физических ресурсов в пуле физических ресурсов записываются в список. Доступными физическими ресурсами являются физические ресурсы, которые в настоящее время не используются посредством операционной системы управления или операционными системами загрузки. Операционная система управления выполняет, в соответствии с количеством операционных систем загрузки, первичное разделение на доступные физические ресурсы в пуле физических ресурсов для получения множественных наборов физических ресурсов, причем количество наборов физических ресурсов равно количеству операционных систем загрузки; операционная система управления определяет соответствие между каждой операционной системой загрузки и каждым набором физических ресурсов, и назначает на каждую операционную систему загрузки и, в соответствии с упомянутым соответствием, набор физических ресурсов, исключительно используемый посредством каждой операционной системы загрузки. Каждый набор физических ресурсов включает в себя некоторые из ядер процессора хост-компьютера и части физической памяти хост-компьютера.
[0071] Опционально, операционная система управления может дополнительно назначать на операционную систему загрузки внешнее устройство, исключительно используемое посредством операционной системы загрузки, и упомянутый набор физических ресурсов дополнительно включает в себя внешнее устройство хост-компьютера. Внешнее устройство может быть сетевым адаптером или магнитным диском и т.п.
[0072] Конкретный вариант осуществления используется в качестве примера. Все еще ссылаясь на ФИГ.1. На ФИГ.1 черной областью в пуле физических ресурсов является физический ресурс, который используется, и физический ресурс, отличный от черной области, является доступным физическим ресурсом. Имеются две операционных системы загрузки, которые называются первой операционной системой загрузки и второй операционной системой загрузки. Операционная система управления выполняет первичное разделение на доступные физические ресурсы и получает два набора физических ресурсов. В конкретном процессе реализации операционная система управления выполняет физическое разделение относительно физических ресурсов, и разделение может быть выполнено следующим образом:
[0073] Ядро процессора: ядро процессора используется в качестве минимального функционального блока для разделения, или процессор может использоваться в качестве блока. Для гетерогенной платформы гетерогенное ядро процессора и ядро сопроцессора могут также классифицироваться в качестве глобальных вычислительных ресурсов.
[0074] Физическая память: непрерывный или прерывистый сегмент физической памяти используется в качестве блока для разделения, и конкретный размер блока памяти может быть размером блока сигнала или размером гибридного блока.
[0075] Относительно внешнего устройства разделение может, главным образом, быть выполнено следующим образом:
[0076] Сеть: адаптер физической сети используется в качестве блока для разделения. Когда адаптера физической сети недостаточно, используется адаптер физической сети, имеющий многоэлементную функцию или поддерживающий виртуализацию сервера (например, однокоренную Виртуализацию I/O, SR-IOV, если коротко), и разделяется, в соответствии с массивом или виртуальной функцией (Виртуальная Функция, VF, для краткости). Только когда ни адаптера физической сети, ни независимой физической функции сетевого адаптера недостаточно, может быть рассмотрено совместное использование адаптера физической сети и предоставление множественных адаптеров виртуальной сети для экземпляра операционной системы в способе виртуализации на стороне клиента и сервера сетевого адаптера.
[0077] Магнитный диск: физический магнитный диск используется в качестве блока для разделения. Когда физического магнитного диска недостаточно, магнитный диск, который может поддерживать технологию SR-IOV, впоследствии может быть разделен посредством использования функции виртуализации диска. Единственный физический магнитный диск совместно используется в способе логического разделения магнитного диска, и наконец, технологии, такие как сетевая файловая система (Сетевая Файловая система, NFS, если коротко) и диск оперативного запоминающего устройства (RAM) могут использоваться для замещения функции обычной дисковой файловой системы.
[0078] Терминал: Поскольку использование устройства терминала (монитора или клавиатуры), последовательного порта и т.п. не потребляет ресурсов, в предположении, что не оказывается влияния на производительность системы, множественные наборы ресурсов устройства, такие как последовательные порты и терминалы, могут быть получены посредством способа виртуализации посредством виртуализации уровня абстракции аппаратного обеспечения для удовлетворения потребностей верхнего уровня.
[0079] Ссылаясь на разделение ресурса, в этом варианте осуществления гарантируется, что ядра процессора и физическая память разделяются в физическом пространстве, и способ разделения физического блока также используется относительно периферийных устройств, но альтернативное решение, в котором выполняется мультиплексирование с разделением по времени, когда физическое разделение является неэффективным, также поддерживается.
[0080] Операционная система управления создает, в соответствии с типами внутренней операционной системы, работающей на первой операционной системе загрузки, и внутренней операционной системы, работающей на второй операционной системе загрузки, соответствия между наборами физических ресурсов и операционными системами загрузки. Когда операционная система управления нуждается, в соответствии с типом внутренней операционной системы, работающей на первой операционной системе загрузки, в большем количестве физических ресурсов, операционная система управления назначает на первую операционную систему загрузки физический ресурс, соответствующий теневой области; соответственно, операционная система управления назначает на вторую операционную систему загрузки, физический ресурс, соответствующий белой области.
[0081] После того, как операционная система управления назначает на каждую операционную систему загрузки физический ресурс, исключительно используемый посредством каждой операционной системы загрузки, операционная система управления предварительно создает для каждой операционной системы загрузки отражение запуска, используемое для запуска каждой операционной системы загрузки. Отражение запуска относится к программе, которая конфигурирует аппаратное обеспечение, требуемое для работы ядра, и создает структуру данных, требуемую для работы ядра для операционной системы загрузки, когда аппаратное обеспечение и структура данных ядра, которые требуются для работы операционной системы загрузки, не были сконфигурированы или недостаточно подготовлены. Отражение отображения, в частности, реализуется посредством способа программы таким образом, что ядро процессора запуска может обновлять статус ядра процессора запуска, причем программа, которая конфигурируется для операционной системы загрузки после того, как аппаратное обеспечение и структура данных ядра были подготовлены и запускает каждую службу ядра, и загружает каждый модуль ядра, чтобы наконец запустить операционную систему загрузки.
[0082] Дополнительно, операционная система управления дополнительно устанавливает для каждой операционной системы загрузки отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения соответствующего отражения запуска каждой операционной системы загрузки. Специалисты в данной области техники поймут, что отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска, и вовлекается в этот вариант осуществления, в частности, относится к отношению отображения из адреса виртуальной памяти в адресах виртуальной памяти, соответствующих отражению запуска, в адрес физической памяти, и операционная система управления может реализовывать отношение отображения способом таблицы страниц.
[0083] В конкретном процессе реализации ядро процессора запуска операционной системы загрузки сначала получает отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска и устанавливается посредством операционной системы управления для операционной системы загрузки, и операционная система загрузки может непосредственно получать доступ к адресу физической памяти, в соответствии с отношением отображения и не нуждается в выполнении трансляции адреса. После того как отражение запуска операционной системы загрузки было запущено, отражение запуска конфигурируется для запуска операционной системы загрузки. В процессе работы отражение запуска непосредственно получает доступ к адресу физической памяти, в соответствии с отношением отображения из адреса виртуальной памяти в адрес физической памяти, и которое соответствует отражению запуска. Специалисты в данной области техники поймут, что операционная система управления может устанавливать для отражения запуска несколько отношений отображения из адреса виртуальной памяти в адрес физической памяти, или может устанавливать для отражения запуска все отношения отображения из адресов виртуальной памяти в адреса физической памяти. Когда операционная система управления устанавливает, для отражения запуска, несколько отношений отображения из адресов виртуальной памяти в адреса физической памяти, и когда ядро процессора запуска, которое было назначено на операционную систему загрузки, находится в процессе исполнения запуска отражения запуска, ядро процессора запуска может устанавливать все отношения отображения из адресов виртуальной памяти в адреса физической памяти, и которые требуются для исполнения отражения запуска. После того, как операционная система загрузки была запущена, операционная система загрузки устанавливает все отношения отображения из адресов виртуальной памяти в адреса физической памяти, и которые требуются для исполнения операционной системы загрузки.
[0084] На этапе 202 эта операционная система управления определяет в ядрах процессора, назначенных на первую операционную систему загрузки, ядро процессора запуска включает в себя следующие способы возможной реализации: операционная система управления определяет ядро процессора запуска, в соответствии с предварительно установленной политикой; операционная система управления выбирает произвольным образом в ядрах процессора, назначенных на первую операционную систему загрузки, одно ядро процессора в качестве ядра процессора запуска; операционная система управления получает предписание пользователя и определяет ядро процессора запуска в соответствии с предписанием пользователя. Этот вариант осуществления не налагает специального ограничения на конкретный процесс реализации определения ядра процессора запуска посредством операционной системы управления.
[0085] На этапе 203 операционная система управления предписывает ядру процессора запуска считывать отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки.
[0086] В частности, ядро процессора запуска может непосредственно получать доступ к адресу физической памяти посредством считывания отношения отображения и не нуждается в выполнении процесса трансляции адреса.
[0087] Дополнительно, на этапе 203 операционная система управления дополнительно предписывает ядру процессора запуска исполнять отражение запуска, предварительно созданное посредством операционной системы управления для первой операционной системы загрузки. Поскольку отражение запуска включает в себя параметр запуска первой операционной системы загрузки, ядро процессора запуска считывает, в процессе исполнения отражения запуска, параметр запуска из отражения запуска, причем параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки, таким образом, что первая операционная система загрузки получает, в соответствии с параметром запуска, набор физических ресурсов, назначенных посредством операционной системы управления на первую операционную систему загрузки. Запуск отражения запуска предназначен для запуска операционной системы загрузки. Этот запуск отражения запуска эквивалентен процессу запуска первой операционной системы загрузки.
[0088] Опционально, когда набор физических ресурсов включает в себя несколько внешних устройств хост-компьютера, параметр запуска дополнительно включает в себя идентификатор внешнего устройства, назначенного на первую операционную систему загрузки, и таблицу информации описания устройства, соответствующую внешнему устройству. Таблица информации описания устройства включает в себя информацию конфигурации внешнего устройства, например, конфигурацию адреса физической памяти внешнего адреса и отношение отображения из адреса виртуальной памяти в адрес физической памяти. Этот вариант осуществления не налагает специального ограничения на конкретный контент, включенный в таблицу информации описания устройства.
[0089] В соответствии со способом обработки ресурса, предоставленным в настоящем варианте осуществления, операционная система управления назначает на каждую операционную систему загрузки набор физических ресурсов, исключительно используемый посредством каждой операционной системы загрузки, создает отражение запуска для каждой операционной системы загрузки и устанавливает для каждой операционной системы загрузки отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска; операционная система управления определяет в ядрах процессора, назначенных на первую операционную систему загрузки, ядро процессора запуска, которое запускает первую операционную систему загрузки; операционная система управления предписывает ядру процессора запуска считывать отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки так, чтобы разрешить ядру процессора запуска получать доступ к адресу физической памяти, в соответствии с отношением отображения, предписывает ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, причем отражение запуска включает в себя параметр запуска первой операционной системы загрузки, и параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки; операционная система управления записывает параметр запуска в отражение запуска так, чтобы назначить, на операционную систему загрузки, физический ресурс, исключительно используемый посредством операционной системы загрузки, без необходимости в использовании гипервизора, таким образом упрощая процесс назначения физического ресурса посредством операционной системы управления на операционную систему загрузки. Дополнительно, каждая операционная система загрузки может исключительно использовать физический ресурс для построения независимой таблицы страниц, часов, рабочей среды и т.п. на физическом ресурсе, исключительно используемом посредством каждой операционной системы загрузки, таким образом улучшая общую производительность операционных систем загрузки.
[0090] Следующее описание использует несколько конкретных вариантов осуществления для подробного описания технических решений варианта осуществления способа, показанного на ФИГ.2.
[0091] Конкретный вариант осуществления может быть таким, как показан на ФИГ.3. ФИГ.3 является схематической последовательностью операций варианта осуществления 2 способа обработки ресурса, в соответствии с настоящим изобретением. Как показано на ФИГ.3, способ обработки ресурса, предоставленный в этом варианте осуществления настоящего изобретения, включает в себя:
[0092] Этап 301: операционная система управления назначает на каждую операционную систему загрузки набор физических ресурсов, исключительно используемый посредством каждой операционной системы загрузки, и создает отражение запуска для каждой операционной системы загрузки.
[0093] Каждый набор физических ресурсов включает в себя некоторые из ядер процессора хост-компьютера и части физической памяти хост-компьютера.
[0094] Этап 302: операционная система управления предварительно устанавливает для первой операционной системы загрузки программу инициализации, которая конфигурируется для инициализации первой операционной системы загрузки, и предварительно устанавливает, в программе инициализации, местоположение отражения запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти.
[0095] Этап 303: операционная система управления устанавливает, для первой операционной системы загрузки и в программе инициализации, отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска.
[0096] Этап 304: операционная система управления посылает межъядерное сообщение прерывания на ядро процессора запуска.
[0097] Межъядерное сообщение прерывания предписывает ядру процессора запуска исполнять программу инициализации, которая конфигурируется для инициализации ядра процессора запуска, и которая соответствует первой операционной системе загрузки.
[0098] Этап 305: операционная система управления предписывает посредством предписания ядру процессора запуска исполнять программу инициализации, соответствующую первой операционной системе загрузки, ядру процессора запуска считывать из программы инициализации отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки и предписывает ядру процессора запуска переходить, после завершения работы программы инициализации, в местоположение отражения запуска, и которое находится в физической памяти, для исполнения отражения запуска первой операционной системы загрузки.
[0099] Отражение запуска включает в себя параметр запуска первой операционной системы загрузки, и параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенный на первую операционную систему загрузки.
[0100] На этапе 301 процесс, в котором операционная система управления назначает на каждую операционную систему загрузки набор физических ресурсов, исключительно используемый посредством каждой операционной системы загрузки, и создает отражение запуска для каждой операционной системы загрузки, является аналогичным этапу 201, и никакие подробности не будут повторно описываться в настоящем описании в этом варианте осуществления.
[0101] На этапе 302 операционная система управления предварительно устанавливает для первой операционной системы загрузки программу инициализации, которая конфигурируется для инициализации первой операционной системы загрузки, и предварительно устанавливает, в программе инициализации, местоположение отражения запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти.
[0102] Специалисты в данной области техники поймут, что операционная система управления предварительно устанавливает, для каждой операционной системы загрузки, программу инициализации, соответствующую каждой операционной системе загрузки, и предварительно устанавливает, в программе инициализации, местоположение отражения запуска, соответствующее каждой операционной системе загрузки, и которое находится по адресу физической памяти. Специалисты в данной области техники поймут, что местоположение отражения запуска, соответствующее каждой операционной системе загрузки, и которое находится по адресу виртуальной памяти, может также быть предварительно установлено в программе инициализации, и ядро процессора запуска может получать, в соответствии с отношением отображения из адреса виртуальной памяти в адрес физической памяти, местоположение, которое находится по адресу физической памяти, и по которому располагается отражение запуска.
[0103] На этапе 303 операционная система управления устанавливает для первой операционной системы загрузки и в программе инициализации отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска.
[0104] На этапе 304 операционная система управления посылает межъядерное сообщение прерывания на ядро процессора запуска, причем межъядерное сообщение прерывания предписывает ядру процессора запуска исполнять программу инициализации, которая конфигурируется для инициализации ядра процессора запуска, и которая соответствует первой операционной системе загрузки.
[0105] Специалисты в данной области техники поймут, что значение передается посредством межъядерного сообщения прерывания и может называться вектором прерывания, и как значение, соответствующее межъядерному сообщению прерывания, так и процесс исполнения, соответствующий значению, согласуются посредством операционной системы управления и первой операционной системой загрузки дополнительно. Когда операционная система управления посылает межъядерное сообщение прерывания на ядро процессора запуска, межъядерное сообщение прерывания предписывает ядру процессора запуска исполнять программу инициализации, которая конфигурируется для инициализации ядра процессора запуска, и которая соответствует первой операционной системе загрузки.
[0106] После приема межъядерного сообщения прерывания ядро процессора запуска первой операционной системы загрузки ищет программу инициализации в предварительно установленной фиксированной физической памяти, запускает программу инициализации и завершает инициализацию ядра процессора запуска, причем инициализацией ядра процессора запуска является процесс запуска ядра процессора запуска. В работающем процессе программы инициализации, ядро процессора запуска считывает, из работающей программы инициализации, местоположение отражения запуска, соответствующее первой операционной системе загрузки, которое находится по адресу физической памяти, и которое предварительно устанавливается посредством операционной системы управления для первой операционной системы загрузки для запуска отражения запуска.
[0107] На этапе 305 операционная система управления предписывает ядру процессора запуска исполнять программу инициализации, соответствующую первой операционной системе загрузки; в процессе исполнения программы инициализации ядро процессора запуска считывает отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки.
[0108] Эта операционная система управления предписывает ядру процессора запуска переходить, после завершения работы программы инициализации, в местоположение, которое находится в физической памяти, и в котором находится отражение запуска, таким образом исполнение отражения запуска посредством первой операционной системы загрузки реализуется следующим способом:
[0109] Последнее предписание программы инициализации используется для предписания ядру процессора запуска переходить к отражению запуска. При работе последнего предписания программы инициализации ядро процессора запуска переходит к отражению запуска для исполнения отражения запуска, причем отражение запуска включает в себя параметр запуска первой операционной системы загрузки, и параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки.
[0110] Первая операционная система загрузки определяет, в соответствии с идентификаторами ядер процессора, назначенными на первую операционную систему загрузки, и идентификатором адреса физической памяти, назначенного на первую операционную систему загрузки, набор физических ресурсов, который назначается посредством операционной системы управления на первую операционную систему загрузки, и который исключительно используется посредством первой операционной системы загрузки.
[0111] В соответствии со способом обработки ресурса, предоставленным в этом варианте осуществления, операционная система управления предварительно создает программу инициализации для операционной системы загрузки, предварительно устанавливает, в программе инициализации и для операционной системы загрузки, местоположение отражения запуска, соответствующее первой операционной системе загрузки и которое находится по адресу физической памяти, и предварительно устанавливает, в программе инициализации и для первой операционной системы загрузки, отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска; ядро процессора запуска операционной системы загрузки исполняет программу инициализации, считывает параметр запуска из отражения запуска, получает набор физических ресурсов в соответствии с параметром запуска и завершает процесс запуска операционной системы загрузки. Операционная система управления назначает на операционную систему загрузки физический ресурс, исключительно используемый посредством операционной системы загрузки без необходимости в использовании гипервизора, таким образом упрощая процесс назначения физического ресурса, посредством операционной системы управления, на операционную систему загрузки; дополнительно, каждая операционная система загрузки может исключительно использовать физический ресурс, таким образом улучшая общую производительность операционных систем загрузки.
[0112] Другой конкретный вариант осуществления может быть показан на ФИГ.4. ФИГ.4 является схематической последовательностью операций варианта осуществления 3 способа обработки ресурса, в соответствии с настоящим изобретением. Как показано на ФИГ.4, способ обработки ресурса, предоставленный в этом варианте осуществления настоящего изобретения, включает в себя:
[0113] Этап 401: операционная система управления получает доступные ядра процессора второй операционной системы загрузки.
[0114] Второй операционной системой загрузки является операционная система загрузки, из которой осуществлен выход, отличная от первой операционной системы загрузки, во множественных операционных системах загрузки, доступные ядра процессора включают в себя ядро процессора, которое было запущено, и набор физических ресурсов первой операционной системы загрузки включает в себя доступные ядра процессора.
[0115] Этап 402: Когда набор физических ресурсов первой операционной системы загрузки включает в себя доступные ядра процессора, операционная система управления определяет в доступных ядрах процессора ядро процессора запуска, которое запускает первую операционную систему загрузки.
[0116] Этап 403: операционная система управления предварительно устанавливает, для первой операционной системы загрузки, программный агент на этом ядре процессора запуска, и предварительно устанавливает в программном агенте местоположение отражения запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти.
[0117] Этап 404: операционная система управления устанавливает для первой операционной системы загрузки и в программном агенте отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска.
[0118] Этап 405: операционная система управления посылает межъядерное сообщение прерывания на программный агент, работающий на ядре процессора запуска, причем местоположение отражения запуска, соответствующее первой операционной системе загрузки, которое находится по адресу физической памяти, и которое предварительно устанавливается в программном агенте посредством операционной системы управления, предписывает ядру процессора запуска переходить в местоположение, которое находится по адресу физической памяти, и по которому располагается отражение запуска для исполнения отражения запуска первой операционной системы загрузки.
[0119] Межъядерное сообщение прерывания предписывает ядру процессора запуска считывать из программного агента отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска, и предварительно создается посредством операционной системы управления для первой операционной системы загрузки.
[0120] На этапе 401, то, что операционная система управления получает доступные ядра процессора второй операционной системы загрузки, может включать в себя следующие способы возможной реализации: операционная система управления принудительно вынуждает вторую операционную систему загрузки выйти в рабочем процессе второй операционной системы загрузки; операционная система управления вынуждает вторую операционную систему загрузки выйти после завершения работы второй операционной системы загрузки; вторая операционная система загрузки автоматически выходит из системы после завершения работы. После того, как вторая операционная система загрузки выходит из системы, операционная система управления получает доступные ядра процессора второй операционной системы загрузки, причем доступные ядра процессора включают в себя ядро процессора запуска второй операционной системы загрузки и другое ядро процессора, которое запускает другую прикладную программу.
[0121] Специалисты в данной области техники поймут, что набор физических ресурсов первой операционной системы загрузки может включать в себя доступные ядра процессора или может не включать в себя доступные ядра процессора.
[0122] Конкретно, в этом варианте осуществления из второй операционной системы загрузки осуществляется выход, но ядро процессора запуска второй операционной системы загрузки запускает программу инициализации; операционная система управления может использовать ядро процессора запуска второй операционной системы загрузки в качестве ядра процессора запуска первой операционной системы загрузки. Когда ядро процессора запуска второй операционной системы загрузки работает в качестве ядра процессора запуска первой операционной системы загрузки, нет необходимости запускать программу инициализации снова для завершения процесса инициализации; однако, когда ядро процессора, которое находится в доступных ядрах процессора и запускает другую прикладную программу, действует в качестве ядра процессора запуска, все еще имеется необходимость запускать программу инициализации для завершения инициализации.
[0123] На этапе 402, когда набор физических ресурсов первой операционной системы загрузки включает в себя доступные ядра процессора, операционная система управления определяет в доступных ядрах процессора ядро процессора запуска, которое запускает первую операционную систему загрузки.
[0124] Специалисты в данной области техники поймут, что, когда набор физических ресурсов первой операционной системы загрузки включает в себя доступные ядра процессора, операционная система управления может определять, в доступных ядрах процессора, ядро процессора запуска первой операционной системы загрузки, или может определять ядро процессора запуска в других ядрах процессора в наборе физических ресурсов.
[0125] Когда операционная система управления определяет ядро процессора запуска в доступных ядрах процессора, следующие способы могут использоваться для реализации: операционная система управления определяет ядро процессора запуска в доступных ядрах процессора, в соответствии с предварительно установленной политикой; операционная система управления выбирает произвольным образом из доступных ядер процессора одно ядро процессора в качестве ядра процессора запуска; операционная система управления получает предписание пользователя и определяет ядро процессора запуска из доступных ядер процессора, в соответствии с предписанием пользователя.
[0126] На этапе 403 операционная система управления устанавливает для первой операционной системы загрузки программный агент на ядре процессора запуска; после того, как установка параметров завершена, программный агент работает все время на ядре процессора запуска, которое было запущено, и ждет различных команд системы, посланных посредством операционной системы управления. Этот программный агент является предварительно установленным посредством операционной системы управления для первой операционной системы загрузки. Операционная система управления дополнительно предварительно устанавливает в программном агенте местоположение отражения запуска, соответствующее первой операционной системе загрузки и которое находится по адресу физической памяти.
[0127] Дополнительно, на этапе 404 операционная система управления предварительно устанавливает в программном агенте отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки.
[0128] На этапе 405 операционная система управления посылает межъядерное сообщение прерывания на программный агент, работающий на ядре процессора запуска, и предписание, соответствующее межъядерному сообщению прерывания, является согласованным посредством операционной системы управления и первой операционной системы загрузки, предварительно. После того, как программный агент, работающий на ядре процессора запуска, принимает межъядерное сообщение прерывания, посланное посредством операционной системы управления, ядро процессора запуска считывает из программного агента отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое является требуемым для исполнения отражения запуска и является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки; в процессе исполнения отражения запуска посредством ядра процессора запуска ядро процессора запуска получает доступ к адресу физической памяти в соответствии с отношением отображения.
[0129] Операционная система управления предписывает ядру процессора запуска переходить в местоположение, которое находится по адресу физической памяти и по которому располагается отражение запуска, так чтобы исполнять отражение запуска первой операционной системы загрузки, причем команда перехода устанавливается в программном агенте, таким образом чтобы ядро процессора запуска получало из программного агента местоположение отражения запуска, соответствующее первой операционной системе загрузки и которое находится по адресу физической памяти, и переходило в местоположение, которое находится по адресу физической памяти и по которому располагается отражение запуска, так чтобы исполнять отражение запуска первой операционной системы загрузки.
[0130] В соответствии со способом обработки ресурса, предоставленным в настоящем варианте осуществления, операционная система управления устанавливает команду перехода в программном агенте, таким образом что ядро процессора запуска получает из программного агента местоположение отражения запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти, и переходит в местоположение, которое находится по адресу физической памяти, и по которому располагается отражение запуска, так чтобы исполнять отражение запуска первой операционной системы загрузки и получать параметр запуска из отражения запуска. Операционная система управления назначает на операционную систему загрузки физический ресурс, исключительно используемый посредством операционной системы загрузки, без необходимости в использовании гипервизора, таким образом упрощая процесс назначения физического ресурса посредством операционной системы управления для операционной системы загрузки; дополнительно, каждая операционная система загрузки может исключительно использовать физический ресурс, таким образом улучшая общую производительность операционных систем загрузки.
[0131] ФИГ.5 является схематической последовательностью операций варианта осуществления 4 способа обработки ресурса в соответствии с настоящим изобретением. Способ обработки ресурса в этом варианте осуществления применяется к многоядерной операционной системе, многоядерная операционная система включает в себя операционную систему управления и множество операционных систем загрузки, которые работают на хост-компьютере, и включает в себя пул физических ресурсов, причем пул физических ресурсов включает в себя ядра процессора и физическую память хост-компьютера, каждая операционная система загрузки исключительно использует набор физических ресурсов, назначенный посредством операционной системы управления, и каждый набор физических ресурсов включает в себя некоторые из ядер процессора хост-компьютера и части физической памяти хост-компьютера; операционная система управления предварительно создает отражение запуска для каждой операционной системы загрузки и устанавливает, для каждой операционной системы загрузки, отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска. Основной частью исполнения этого варианта осуществления является любая операционная система загрузки во множестве операционных систем загрузки. Для простоты описания, в этом варианте осуществления основная часть исполнения называется первой операционной системой загрузки. Как показано на ФИГ.5, способ обработки ресурса, предоставленный в этом варианте осуществления, включает в себя:
[0132] Этап 501: ядро процессора запуска первой операционной системы загрузки считывает отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки.
[0133] Отношение отображения используются для разрешения ядру процессора запуска первой операционной системы загрузки получать доступ к адресу физической памяти, и первой операционной системой загрузки является любая операционная система загрузки в многоядерной операционной системе.
[0134] Этап 502: ядро процессора запуска первой операционной системы загрузки переходит, в соответствии с предписанием, которое устанавливается посредством операционной системы управления, и которое предназначено для исполнения перехода отражения запуска в местоположение отражения запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти и исполняет, в соответствии с отношением отображения, отражение запуска, соответствующее первой операционной системе загрузки.
[0135] Этап 503: ядро процессора запуска первой операционной системы загрузки получает, в процессе исполнения отражения запуска первой операционной системы загрузки, параметр запуска первой операционной системы загрузки из отражения запуска первой операционной системы загрузки.
[0136] Параметр запуска включает в себя идентификаторы ядер процессора, назначенные на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки.
[0137] Этап 504: первая операционная система загрузки определяет, в соответствии с идентификаторами ядер процессора и идентификатором адреса физической памяти первой операционной системы загрузки, набор физических ресурсов, который назначается посредством операционной системы управления на первую операционную систему загрузки, и который исключительно используется посредством первой операционной системы загрузки.
[0138] Сценарий применения этого варианта осуществления может быть таким, как показан в варианте осуществления на ФИГ.1, и никакие подробности не будут повторно описываться в настоящем описании в этом варианте осуществления. В настоящем варианте осуществления способ обработки ресурса, предоставленный в настоящем варианте осуществления, описывается подробно посредством использования первой операционной системы загрузки в качестве основной части исполнения. Первая операционная система загрузки может быть, в частности, любой операционной системой загрузки в операционных системах загрузки, показанных на ФИГ.1.
[0139] На этапе 501 после того, как операционная система управления определяет ядро процессора запуска для первой операционной системы загрузки, ядро процессора запуска первой операционной системы загрузки сначала получает отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска и устанавливается посредством операционной системы управления для первой операционной системы загрузки, и первая операционная система загрузки может непосредственно получать доступ к адресу физической памяти, в соответствии с отношением отображения и не нуждается в выполнении трансляции адреса.
[0140] На этапе 502 ядро процессора запуска первой операционной системы загрузки принимает предписание, которое является предварительно установленным посредством операционной системы управления для первой операционной системы загрузки, и которое предназначено для исполнения перехода отражения запуска, первая операционная система загрузки переходит, в соответствии с предписанием, которое устанавливается посредством операционной системы управления и которое предназначено для исполнения перехода отражения запуска, в местоположение отражения запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти; когда ядро процессора запуска первой операционной системы загрузки исполняет отражение запуска, первая операционная система загрузки непосредственно получает доступ к адресу физической памяти, в соответствии с отношением отображения из адреса виртуальной памяти в адрес физической памяти, и которое соответствует отражению запуска для завершения процесса запуска отражения запуска.
[0141] На этапе 503 ядро процессора запуска первой операционной системы загрузки получает, в процессе исполнения отражения запуска первой операционной системы загрузки, параметр запуска первой операционной системы загрузки из отражения запуска первой операционной системы загрузки, причем параметр запуска включает в себя идентификаторы ядер процессора, назначенных посредством операционной системы управления на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного посредством операционной системы управления на первую операционную систему загрузки.
[0142] Опционально, когда набор физических ресурсов включает в себя несколько внешних устройств хост-компьютера, параметр запуска дополнительно включает в себя идентификатор внешнего устройства, назначенного посредством операционной системы управления на первую операционную систему загрузки, и таблицу информации описания устройства, соответствующую внешнему устройству. Таблица информации описания устройства включает в себя информацию конфигурации внешнего устройства, например, конфигурацию адреса физической памяти внешнего адреса, и отношение отображения из адреса виртуальной памяти в адрес физической памяти. Этот вариант осуществления не налагает специального ограничения на конкретный контент, включенный в таблицу информации описания устройства.
[0143] На этапе 504 первая операционная система загрузки может определять, в соответствии с идентификаторами ядер процессора и идентификатором адреса физической памяти первой операционной системы загрузки, набор физических ресурсов, который назначается посредством операционной системы управления на первую операционную систему загрузки, и который исключительно используется посредством первой операционной системы загрузки, и первая операционная система загрузки может выстраивать независимую таблицу страниц, часы, рабочую среду и т.п. на физическом ресурсе, который исключительно используется посредством первой операционной системы загрузки.
[0144] Специалисты в данной области техники поймут, что цель исполнения отражения запуска первой операционной системой загрузки состоит в том, чтобы запустить первую операционную систему загрузки; после завершения работы отражения запуска запуск первой операционной системы загрузки завершается, и первая операционная система загрузки входит в рабочий режим.
[0145] В соответствии со способом обработки ресурса, предоставленным в этом варианте осуществления настоящего изобретения, ядро процессора запуска первой операционной системы загрузки считывает отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки, переходит, в соответствии с предписанием, которое устанавливается посредством операционной системы управления, и которое предназначено для исполнения перехода отражения запуска, в местоположение отражения запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти, исполняет, в соответствии с отношением отображения, отражение запуска, соответствующее первой операционной системе загрузки, и получает, в процессе исполнения отражения запуска первой операционной системы загрузки, параметр запуска первой операционной системы загрузки из отражения запуска первой операционной системы загрузки, причем параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки. Первая операционная система загрузки определяет, в соответствии с идентификаторами ядер процессора и идентификатором адреса физической памяти первой операционной системы загрузки, набор физических ресурсов, который назначается посредством операционной системы управления первой операционной системе загрузки и который исключительно используется посредством первой операционной системы загрузки. Первая операционная система загрузки считывает параметр запуска из отражения запуска для получения набора физических ресурсов, который назначается посредством операционной системы управления первой операционной системе загрузки, и который исключительно используется посредством операционной системы загрузки, без необходимости в использовании гипервизора, таким образом упрощая процесс назначения физического ресурса посредством операционной системы управления на операционную систему загрузки. Дополнительно, каждая операционная система загрузки может исключительно использовать физический ресурс для построения независимой таблицы страниц, часов, рабочей среды и т.п. на физическом ресурсе, исключительно используемом посредством каждой операционной системы загрузки, таким образом улучшая общую производительность операционных систем загрузки.
[0146] Следующее описание использует некоторые специфичные варианты осуществления для подробного описания технических решений варианта осуществления способа, показанного на ФИГ.5.
[0147] Конкретный вариант осуществления может быть показан на ФИГ.6. ФИГ.6 является схематической последовательностью операций варианта осуществления 5 способа обработки ресурса, в соответствии с настоящим изобретением. Как показано на ФИГ.6, способ обработки ресурса, предоставленный в настоящем варианте осуществления настоящего изобретения, включает в себя:
[0148] Этап 601: ядро процессора запуска первой операционной системы загрузки принимает межъядерное сообщение прерывания, посланное посредством операционной системы управления, причем ядро процессора запуска исполняет, в соответствии с предписанием межъядерного сообщения прерывания, программу инициализации, которая конфигурируется для инициализации ядра процессора запуска и которая соответствует первой операционной системе загрузки.
[0149] Этап 602: ядро процессора запуска первой операционной системы загрузки выполняет программу инициализации, считывает, из программы инициализации отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска и предварительно создается посредством операционной системы управления для первой операционной системы загрузки, считывает предписание перехода, которое является предварительно установленным в программе инициализации посредством операционной системы управления, переходит в местоположение отражения запуска, соответствующее первой операционной системе загрузки и которое находится по адресу физической памяти и исполняет, в соответствии с отношением отображения, отражение запуска, соответствующее первой операционной системе загрузки.
[0150] Этап 603: ядро процессора запуска первой операционной системы загрузки получает, в процессе исполнения отражения запуска первой операционной системы загрузки, параметр запуска первой операционной системы загрузки из отражения запуска первой операционной системы загрузки.
[0151] Параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки.
[0152] Этап 604: первая операционная система загрузки определяет, в соответствии с идентификаторами ядер процессора и идентификатором адреса физической памяти первой операционной системы загрузки, набор физических ресурсов, который назначается посредством операционной системы управления на первую операционную систему загрузки, и который исключительно используется посредством первой операционной системы загрузки.
[0153] В этом варианте осуществления этап 603 является аналогичным этапу 503, и этап 604 аналогичным этапу 504, и никакие подробности не будут повторно описываться в настоящем описании в этом варианте осуществления.
[0154] На этапе 601 ядро процессора запуска первой операционной системы загрузки принимает межъядерное сообщение прерывания, посланное посредством операционной системы управления, причем ядро процессора запуска исполняет, в соответствии, с предписанием межъядерного сообщения прерывания, программу инициализации, которая конфигурируется для инициализации ядра процессора запуска и которая соответствует первой операционной системе загрузки.
[0155], в частности, значение передается посредством межъядерного сообщения прерывания и может называться вектором прерывания, и как значение, соответствующее межъядерному сообщению прерывания, так и процесс исполнения, соответствующий значению, согласуются посредством операционной системы управления и первой операционной системы загрузки предварительно. Операционная система управления посылает межъядерное сообщение прерывания на ядро процессора запуска первой операционной системы загрузки, и межъядерное сообщение прерывания предписывает ядру процессора запуска исполнять программу инициализации, которая конфигурируется для инициализации ядра процессора запуска и которая соответствует первой операционной системе загрузки.
[0156] После приема межъядерного сообщения прерывания, посланного посредством операционной системы управления, ядро процессора запуска первой операционной системы загрузки ищет программу инициализации в предварительно установленной фиксированной физической памяти и запускает программу инициализации для завершения инициализации ядра процессора запуска, и инициализацией ядра процессора запуска является процесс запуска ядра процессора запуска.
[0157] На этапе 602 ядро процессора запуска первой операционной системы загрузки считывает, в процессе исполнения программы инициализации и из программы инициализации, отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска, и является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки; после того, как ядро процессора запуска первой операционной системы загрузки считывает отношение отображения в последующем процессе исполнения отражения запуска, ядро процессора запуска первой операционной системы загрузки может непосредственно получать доступ к адресу физической памяти, в соответствии с отношением отображения и не нуждается в выполнении трансляции адреса.
[0158] Дополнительно, последнее предписание программы инициализации используется для предписания ядру процессора запуска переходить на отражение запуска и может быть истолковано в качестве предписания перехода. Ядро процессора запуска первой операционной системы загрузки считывает, из программы инициализации, предписание перехода, которое является предварительно установленным в программе инициализации посредством операционной системы управления, переходит в местоположение отражения запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти, и непосредственно получает доступ к адресу физической памяти, в соответствии с отношением отображения для исполнения отражения запуска, соответствующего первой операционной системе загрузки.
[0159] В соответствии со способом обработки ресурса, предоставленном в настоящем варианте осуществления настоящего изобретения, первая операционная система загрузки считывает из программы инициализации отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска и является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки, считывает предписание перехода, которое является предварительно установленным в программе инициализации посредством операционной системы управления, переходит в местоположение отражения запуска, соответствующее первой операционной системе загрузки и которое находится по адресу физической памяти, исполняет, в соответствии с отношением отображения, отражение запуска, соответствующее первой операционной системе загрузки, считывает параметр запуска из отражения запуска, получает набор физических ресурсов в соответствии с параметром запуска и завершает процесс запуска первой операционной системы загрузки. Операционная система управления назначает, на операционную систему загрузки, физический ресурс, исключительно используемый посредством операционной системы загрузки, без необходимости в использовании гипервизора, таким образом упрощая процесс назначения физического ресурса посредством операционной системы управления для операционной системы загрузки; дополнительно, каждая операционная система загрузки может исключительно использовать физический ресурс, таким образом улучшая общую производительность операционных систем загрузки.
[0160] Другой конкретный вариант осуществления состоит в следующим: В этом варианте осуществления ядром процессора запуска первой операционной системы загрузки является ядро процессора, которое было запущено, и которое определяется посредством операционной системы управления, программный агент запускается на ядре процессора запуска первой операционной системы загрузки, этот программный агент является предварительно установленным посредством операционной системы управления для первой операционной системы загрузки, местоположение отражения запуска, которое соответствует первой операционной системе загрузки, и которое находится по адресу физической памяти, и отношение отображения из адреса виртуальной памяти в адреса физической памяти, и которое требуется для исполнения отражения запуска, устанавливаются в программном агенте. ФИГ.7 является схематической последовательностью операций варианта осуществления 6 способа обработки ресурса, в соответствии с настоящим изобретением. Как показано на ФИГ.7, способ обработки ресурса, предоставленный в настоящем варианте осуществления настоящего изобретения, включает в себя:
[0161] Этап 701: программный агент, работающий на ядре процессора запуска первой операционной системы загрузки, принимает межъядерное сообщение прерывания, посланное посредством операционной системы управления, и ядро процессора запуска считывает, из программного агента, в соответствии с предписанием межъядерного сообщения прерывания, отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска и является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки.
[0162] Этап 702: ядро процессора запуска первой операционной системы загрузки считывает предписание перехода, которое является предварительно установленным в программном агенте посредством операционной системы управления, переходит в местоположение отражения запуска, соответствующее первой операционной системе загрузки и которое находится по адресу физической памяти и исполняет, в соответствии с отношением отображения, отражение запуска, соответствующее первой операционной системе загрузки.
[0163] Этап 703: ядро процессора запуска первой операционной системы загрузки получает, в процессе исполнения отражения запуска первой операционной системы загрузки, параметр запуска первой операционной системы загрузки из отражения запуска первой операционной системы загрузки.
[0164] Параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки.
[0165] Этап 704: первая операционная система загрузки определяет, в соответствии с идентификаторами ядер процессора и идентификатором адреса физической памяти первой операционной системы загрузки, набор физических ресурсов, который назначается посредством операционной системы управления на первую операционную систему загрузки и который исключительно используется посредством первой операционной системы загрузки.
[0166] Различие между этим вариантом осуществления и вариантом осуществления на ФИГ.6 заключается в том, что ядром процессора запуска в этом варианте осуществления является ядро процессора, которое было запущено, то есть процесс инициализации не нуждается в выполнении на ядре процессора запуска. Этап 703, в этом варианте осуществления, является аналогичным этапу 503 в варианте осуществления на ФИГ.5, и этап 704 является аналогичным этапу 504 в варианте осуществления на ФИГ.5, и никакие подробности не будут повторно описываться в настоящем описании в этом варианте осуществления. В конкретном процессе реализации операционная система управления предварительно устанавливает, для первой операционной системы загрузки, программный агент на ядре процессора запуска; после завершения установки параметров программный агент работает все время на ядре процессора запуска, которое было запущено.
[0167] На этапе 701 операционная система управления посылает межъядерное сообщение прерывания на программный агент, работающий на ядре процессора запуска, и предписание, соответствующее межъядерному сообщению прерывания, является согласованным посредством операционной системы управления и первой операционной системы загрузки предварительно. После того, как программный агент, работающий на ядре процессора запуска первой операционной системы загрузки, принимает межъядерное сообщение прерывания, посланное посредством операционной системы управления, ядро процессора запуска считывает из программного агента отношение отображения из адреса виртуальной памяти в адрес физической памяти и которое является отражением запуска, и является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки; в процессе исполнения отражения запуска посредством ядра процессора запуска ядро процессора запуска получает доступ к адресу физической памяти, в соответствии с отношением отображения.
[0168] На этапе 702 ядро процессора запуска первой операционной системы загрузки считывает предписание перехода, которое является предварительно установленным в программном агенте посредством операционной системы управления, переходит в местоположение отражения запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти, и исполняет, в соответствии с отношением отображения, отражение запуска, соответствующее первой операционной системе загрузки.
[0169] В соответствии со способом обработки ресурса, предоставленным в настоящем варианте осуществления, ядро процессора запуска первой операционной системы загрузки получает из предварительно установленного программного агента местоположение отражения запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти, переходит в местоположение, которое находится по адресу физической памяти и по которому располагается отражение запуска для исполнения отражения запуска первой операционной системы загрузки и получения параметра запуска из отражения запуска. Операционная система управления назначает на операционную систему загрузки физический ресурс, исключительно используемый посредством операционной системы загрузки, без необходимости в использовании гипервизора, таким образом упрощая процесс назначения физического ресурса посредством операционной системы управления на операционную систему загрузки; дополнительно, каждая операционная система загрузки может исключительно использовать физический ресурс, таким образом улучшая общую производительность операционных систем загрузки.
[0170] На основании вариантов осуществления на ФИГ.5 - ФИГ.7, ядро процессора запуска исполняет отражение запуска и завершает запуск первой операционной системы загрузки. После запуска первой операционной системы загрузки, первая операционная система загрузки создает все отношения отображения адресов виртуальной памяти в адреса физической памяти и которые требуются для исполнения первой операционной системы загрузки; ядро процессора первой операционной системы загрузки преобразует, в соответствии с отношениями отображения, адреса виртуальной памяти в адреса физической памяти и непосредственно получает доступ к адресам физической памяти.
[0171] Дополнительно, в работающем процессе первой операционной системы загрузки, первая операционная система загрузки может исполнять, посредством использования ядра процессора, назначенного на первую операционную систему загрузки, привилегированное предписание (привилегированную инструкцию), доставленное посредством операционной системы управления. В конкретном процессе реализации, ядро процессора, которое исполняет привилегированное предписание, может быть ядром процессора запуска или может быть отличным ядром процессора от ядра процессора запуска, пока ядро процессора, которое исполняет привилегированное предписание, является ядром процессора, назначенным посредством операционной системы управления на первую операционную систему загрузки. Привилегированное предписание применяется к операционной системе и, в общем, непосредственно не предоставляется пользователю. Привилегированное предписание, главным образом, используется для назначения ресурсов и управления, включая в себя обнаружение правил доступа пользователя, создание и коммутацию задач и т.п..
[0172] В этом варианте осуществления первая операционная система загрузки непосредственно исполняет привилегированное предписание без этапа перевода или выполнения гипервызова (гипервызов) относительно привилегированного предписания в технологии виртуализации. В частности, операционная система управления может доставлять привилегированное предписание, которое не затрагивает статус нормальной работы хост-компьютера, на первую операционную систему загрузки, чтобы первая операционная система загрузки выполняла исполнение.
[0173] Варианты осуществления на ФИГ.2 - ФИГ.7 подробно описывают процесс назначения физического ресурса посредством операционной системы управления на первую операционную систему загрузки, и дополнительно подробно описывают, как первая операционная система загрузки исполняет отражение запуска для завершения процесса запуска первой операционной системы загрузки.
[0174] В работающем процессе первой операционной системы загрузки, физический ресурс первой операционной системы загрузки дополнительно должен быть динамической регулируемым. В конкретном процессе реализации имеются два способа возможной реализации для динамичной регулировки первой операционной системы загрузки.
[0175] Одним возможным способом реализации является то, что операционная система управления контролирует работу первой операционной системой загрузки и регулирует физический ресурс первой операционной системы загрузки, что, в частности, включает в себя две возможные ситуации.
[0176] В одной возможной ситуации: операционная система управления контролирует работу первой операционной системы загрузки; и
когда использование физического ресурса, назначенного на первую операционную систему загрузки, является меньшим, чем первый предварительно установленный порог, определяет, что физический ресурс должен быть удален для первой операционной системы загрузки и определяет идентификатор типа физического ресурса, который должен быть удален, причем идентификатор типа физического ресурса используется для различения того, является ли физический ресурс ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства; и
операционная система управления выполняет, в соответствии с идентификатором типа физического ресурса, который должен быть удален, вторичное разделение на доступные физические ресурсы, которые находятся в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов, и удаляет физический ресурс первой операционной системы загрузки, причем удаленным физическим ресурсом является физический ресурс, соответствующий идентификатору типа физического ресурса, который должен быть удален.
[0177] В другой возможной ситуации: операционная система управления контролирует работу первой операционной системой загрузки; и
когда использование физического ресурса, назначенного на первую операционную систему загрузки, больше, чем второй предварительно установленный порог, определяет, что физический ресурс должен быть добавлен для первой операционной системы загрузки и определяет идентификатор типа физического ресурса, который должен быть добавлен, причем идентификатор типа физического ресурса используется для различения того, является ли физический ресурс, который должен быть добавлен, ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства; и
операционная система управления выполняет, в соответствии с идентификатором типа физического ресурса, который должен быть добавлен, вторичное разделение на доступные физические ресурсы, которые находятся в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов, и добавляет физический ресурс первой операционной системе загрузки, причем добавленным физическим ресурсом является физический ресурс, соответствующий идентификатору типа физического ресурса, который должен быть добавлен.
[0178] В частности, в этом варианте осуществления физические ресурсы, назначенные посредством операционной системы управления на первую операционную систему загрузки, включают в себя ресурс ядра процессора, ресурс физической памяти и ресурс внешнего устройства. Операционная система управления контролирует, в работающем процессе первой операционной системы загрузки, использование физических ресурсов, которые были назначены на первую операционную систему загрузки, то есть контролируют использование ресурса ядра процессора, ресурса физической памяти и ресурса внешнего устройства.
[0179] Когда операционная система управления определяет, что использование физического ресурса, назначенного на первую операционную систему загрузки, является меньшим, чем первый предварительно установленный порог, это указывает, что операционная система управления назначает слишком много физических ресурсов на первую операционную систему загрузки при назначении на первую операционную систему загрузки, этот набор физических ресурсов исключительно используется посредством первой операционной системы загрузки; в этом случае операционная система управления определяет, что физический ресурс должен быть удален для первой операционной системы загрузки. Поскольку имеется три типа физических ресурсов, операционная система управления определяет, в соответствии с использованием каждого физического ресурса, идентификатор типа физического ресурса, который должен быть удален, и затем операционная система управления выполняет, в соответствии с идентификатором типа физического ресурса, который должен быть удален, вторичное разделение на доступные физические ресурсы, которые находятся в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов, и удаляет физический ресурс первой операционной системы загрузки. В конкретном процессе реализации операционная система управления может выполнять, в соответствии с использованием физического ресурса первой операционной системы загрузки и использованием физического ресурса другой операционной системы загрузки, вторичное разделение на доступные физические ресурсы для удаления физического ресурса первой операционной системы загрузки. Удаленным физическим ресурсом является физический ресурс, соответствующий идентификатору типа физического ресурса, который должен быть удален.
[0180] Когда операционная система управления определяет, что использование физического ресурса, назначенного на первую операционную систему загрузки, больше, чем второй предварительно установленный порог, это указывает, что операционная система управления назначает слишком мало физических ресурсов на первую операционную систему загрузки, при назначении на первую операционную систему загрузки, этот набор физических ресурсов исключительно используется посредством первой операционной системы загрузки; в этом случае операционная система управления определяет, что физический ресурс должен быть добавлен для первой операционной системы загрузки. Поскольку имеется три типа физических ресурсов, операционная система управления определяет, в соответствии с использованием каждого физического ресурса, идентификатор типа физического ресурса, который должен быть добавлен, и затем операционная система управления выполняет, в соответствии с идентификатором типа физического ресурса, который должен быть добавлен, вторичное разделение на доступные физические ресурсы в пуле физических ресурсов, и добавляет физический ресурс первой операционной системы загрузки. В конкретном процессе реализации, операционная система управления может выполнять, в соответствии с использованием физического ресурса первой операционной системы загрузки и использованием физического ресурса другой операционной системы загрузки, вторичное разделение на доступные физические ресурсы для добавления физического ресурса первой операционной системы загрузки. Добавленным физическим ресурсом является физический ресурс, соответствующий идентификатору типа физического ресурса, который должен быть добавлен.
[0181] Другим возможным способом реализации является то, что: первая операционная система загрузки контролирует статус использования физического ресурса первой операционной системы загрузки, таким образом что операционная система управления регулирует физический ресурс первой операционной системы загрузки. Две возможных ситуации могут быть, в частности, включены:
[0182] В одной возможной ситуации: первая операционная система загрузки контролирует физический ресурс первой операционной системы загрузки; и
если первая операционная система загрузки определяет, что использование физического ресурса, назначенного посредством операционной системы управления на первую операционную систему загрузки, является меньшим, чем первый предварительно установленный порог, первая операционная система загрузки посылает сообщение запроса удаления ресурса на операционную систему управления, причем сообщение запроса удаления включает в себя идентификатор типа физического ресурса, который должен быть удален, и идентификатор типа физического ресурса используется для различения того, является ли физический ресурс, который должен быть удален, ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства.
[0183] В другой возможной ситуации: первая операционная система загрузки контролирует физический ресурс первой операционной системы загрузки; и
если первая операционная система загрузки определяет, что использование физического ресурса, назначенного посредством операционной системы управления на первую операционную систему загрузки, больше, чем второй предварительно установленный порог, первая операционная система загрузки посылает сообщение запроса добавления на операционную систему управления, причем сообщение запроса добавления, включает в себя идентификатор типа физического ресурса, который должен быть добавлен, и идентификатор типа физического ресурса используется для различения того, является ли физический ресурс, который должен быть добавлен, ресурсом ядра процессора или ресурсом физической памяти.
[0184] В частности, в этом варианте осуществления первая операционная система загрузки определяет, что физические ресурсы, назначенные посредством операционной системы управления на первую операционную систему загрузки, включают в себя ресурс ядра процессора, ресурс физической памяти и ресурс внешнего устройства. Первая операционная система загрузки контролирует, в работающем процессе, использование физических ресурсов, которые были назначены посредством операционной системы управления на первую операционную систему загрузки, то есть, контролирует использование ресурса ядра процессора, ресурса физической памяти и ресурса внешнего устройства.
[0185] Когда первая операционная система загрузки определяет, что использование физического ресурса, назначенного на первую операционную систему загрузки, является меньшим, чем первый предварительно установленный порог, это указывает, что операционная система управления назначает слишком много физических ресурсов на первую операционную систему загрузки при назначении на первую операционную систему загрузки, этот набор физических ресурсов исключительно используется посредством первой операционной системы загрузки; в этом случае первая операционная система загрузки определяет, что физический ресурс должен быть удален для первой операционной системы загрузки и посылает сообщение запроса удаления ресурса на операционную систему управления. Поскольку имеется три типа физических ресурсов, первая операционная система загрузки определяет, в соответствии с использованием каждого физического ресурса, идентификатор типа физического ресурса, который должен быть удален. Поэтому, сообщение запроса удаления ресурса включает в себя идентификатор типа физического ресурса, который должен быть удален, причем идентификатор типа физического ресурса используется для различения того, является ли физический ресурс, который должен быть удален, ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства.
[0186] Когда первая операционная система загрузки определяет, что использование физического ресурса, назначенного на первую операционную систему загрузки, больше, чем второй предварительно установленный порог, это указывает, что операционная система управления назначает слишком мало физических ресурсов на первую операционную систему загрузки при назначении на первую операционную систему загрузки, этот набор физических ресурсов исключительно используется посредством первой операционной системы загрузки; в этом случае первая операционная система загрузки определяет, что физический ресурс должен быть добавлен для первой операционной системы загрузки и посылает сообщение запроса добавления ресурса на операционную систему управления. Поскольку имеется три типа физических ресурсов, первая операционная система загрузки определяет, в соответствии с использованием каждого физического ресурса, идентификатор типа физического ресурса, который должен быть добавлен. Поэтому, сообщение запроса добавления ресурса включает в себя идентификатор типа физического ресурса, который должен быть добавлен, причем идентификатор типа физического ресурса используется для различения того, является ли физический ресурс, который должен быть добавлен, ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства.
[0187] Предшествующие два способа возможной реализации отдельно описывают с точек зрения операционной системы управления и первой операционной системы загрузки, что физический ресурс первой операционной системы загрузки должен быть добавлен или удален. Нижеследующее подробно описывает, в соответствии с типом физического ресурса, добавление или удаление каждого физического ресурса.
[0188] ФИГ.8A является схематической последовательностью операций для добавления ядра процессора для первой операционной системы загрузки, когда физическим ресурсом является ядро процессора, в соответствии с настоящим изобретением. ФИГ.8B является схематической последовательностью операций для освобождения ядра процессора посредством первой операционной системы загрузки, в соответствии с настоящим изобретением.
[0189] Как показано на ФИГ.8A, добавление ядра процессора для первой операционной системы загрузки включает в себя следующие этапы:
[0190] Этап 8101: операционная система управления помечает ядро процессора, которое должно быть добавлено для первой операционной системы загрузки, в качестве физического ресурса, который принадлежит первой операционной системе загрузки, и посылает сообщение добавления ресурса на первую операционную систему загрузки.
[0191] Сообщение добавления ресурса включает в себя идентификатор ядра процессора, которое должно быть добавлено.
[0192]В частности, операционная система управления помечает ядро процессора, которое должно быть добавлено для первой операционной системы загрузки в качестве физического ресурса, который принадлежит первой операционной системе загрузки, причем добавленное ядро процессора не используется в качестве доступного физического ресурса в пуле физических ресурсов, и операционная система управления и первая операционная система загрузки контролируют использование добавленного ядра процессора.
[0193] Этап 8102: первая операционная система загрузки принимает сообщение добавления ресурса, посланное посредством операционной системы управления, причем сообщение добавления ресурса включает в себя идентификатор ядра процессора, которое должно быть добавлено.
[0194] Этап 8103: первая операционная система загрузки определяет, в соответствии с идентификатором ядра процессора, которое должно быть добавлено, ядро процессора, добавленное посредством операционной системы управления для первой операционной системы загрузки.
[0195] Этап 8104: операционная система управления посылает предписание перехода на добавленное ядро процессора.
[0196] Предписание перехода используется для предписания добавленному ядру процессора исполнять программу ядра первой операционной системы загрузки и предписания добавленному ядру процессора считывать, из программы ядра, все отношения отображения из адресов виртуальной памяти в адреса физической памяти, и которые требуются для исполнения первой операционной системы загрузки.
[0197] Операционная система управления устанавливает, для первой операционной системы загрузки, программу ядра в предварительно установленной фиксированной физической памяти, и операционная система управления и первая операционная система загрузки заранее выполняют согласование о том, что первая операционная система загрузки может записывать в программу ядра все отношения отображения из адресов виртуальной памяти в адреса физической памяти, и которые требуются для исполнения первой операционной системы загрузки. Специалисты в данной области техники поймут, что программа ядра может дополнительно включать в себя другую информацию, требуемую для запуска добавленного ядром процессора, на которую этот вариант осуществления не налагает специального ограничения.
[0198] Этап 8105: добавленное ядро процессора первой операционной системы загрузки принимает предписание перехода, посланное посредством операционной системы управления, исполняет программу ядра первой операционной системы загрузки в соответствии с предписанием перехода и считывает из программы ядра все отношения отображения из адресов виртуальной памяти в адреса физической памяти, и которые требуются для исполнения первой операционной системы загрузки.
[0199] Как показано на ФИГ.8B, освобождение ядра процессора посредством первой операционной системы загрузки включает в себя следующие этапы:
[0200] Этап 8201: операционная система управления посылает сообщение удаления ресурса на первую операционную систему загрузки.
[0201] Сообщение удаления ресурса включает в себя идентификатор ядра процессора, которое должно быть освобождено.
[0202] Этап 8202: первая операционная система загрузки принимает сообщение удаления ресурса, посланное посредством операционной системы управления, причем сообщение удаления ресурса включает в себя идентификатор ядра процессора, которое должно быть освобождено.
[0203] Этап 8203: первая операционная система загрузки определяет, в соответствии с идентификатором ядра процессора, которое должно быть освобождено, ядро процессора, которое должно быть освобождено посредством первой операционной системой загрузки.
[0204] Этап 8204: первая операционная система загрузки освобождает ядро процессора, причем освобожденным ядром процессора является ядро процессора, соответствующее идентификатору ядра процессора, которое должно быть освобождено.
[0205] Таким образом, первая операционная система загрузки освобождает ядро процессора, в связи с тем, что первая операционная система загрузки больше не использует ядро процессора.
[0206] Этап 8205: операционная система управления получает идентификатор ядра процессора, освобожденного посредством первой операционной системой загрузки, и добавляет идентификатор освобожденного ядра процессора к списку доступных физических ресурсов в пуле ресурсов, причем освобожденным ядром процессора является ядро процессора, соответствующее идентификатору ядра процессора, которое должно быть удалено.
[0207] ФИГ.9A является схематической последовательностью операций для добавления адреса физической памяти для первой операционной системы загрузки, когда физическим ресурсом является ресурс физической памяти, в соответствии с настоящим изобретением. ФИГ.9B является схематической последовательностью операций для освобождения адреса физической памяти посредством первой операционной системы загрузки, в соответствии с настоящим изобретением.
[0208] Как показано на ФИГ.9A, добавление адреса физической памяти для первой операционной системы загрузки включает в себя следующие этапы:
[0209] Этап 9101: операционная система управления помечает адрес физической памяти, который должен быть добавлен для первой операционной системы загрузки, в качестве физического ресурса, который принадлежит первой операционной системе загрузки, и посылает сообщение добавления ресурса на первую операционную систему загрузки.
[0210] Сообщение добавления ресурса включает в себя идентификатор адреса физической памяти, который должен быть добавлен.
[0211] Операционная система управления помечает адрес физической памяти, который должен быть добавлен для первой операционной системы загрузки, в качестве физического ресурса, который принадлежит первой операционной системе загрузки, причем добавленный адрес физической памяти не используется в качестве доступного физического ресурса в пуле физических ресурсов, и операционная система управления и первая операционная система загрузки контролируют использование добавленного адреса физической памяти; первая операционная система загрузки дополнительно создает отношение отображения из адреса виртуальной памяти в добавленный адрес физической памяти.
[0212] Этап 9102: первая операционная система загрузки принимает сообщение добавления ресурса, посланное посредством операционной системы управления, причем сообщение добавления ресурса включает в себя идентификатор адреса физической памяти, который должен быть добавлен.
[0213] Этап 9103: первая операционная система загрузки определяет, в соответствии с идентификатором адреса физической памяти, который должен быть добавлен, адрес физической памяти, добавленный посредством операционной системы управления для первой операционной системы загрузки.
[0214] Как показано на ФИГ.9B, освобождение адреса физической памяти первой операционной системой загрузки включает в себя следующие этапы:
[0215] Этап 9201: операционная система управления посылает сообщение удаления ресурса на первую операционную систему загрузки.
[0216] Сообщение удаления ресурса включает в себя идентификатор адреса физической памяти, который должен быть освобожден.
[0217] Этап 9202: первая операционная система загрузки принимает сообщение удаления ресурса, посланное посредством операционной системы управления, причем сообщение удаления ресурса включает в себя идентификатор адреса физической памяти, который должен быть освобожден.
[0218] Этап 9203: первая операционная система загрузки определяет, в соответствии с идентификатором адреса физической памяти, который должен быть освобожден, адрес физической памяти, который должен быть освобожден посредством первой операционной системы загрузки.
[0219] Этап 9204: первая операционная система загрузки освобождает адрес физической памяти, причем освобожденным адресом физической памяти является адрес физической памяти, соответствующий идентификатору адреса физической памяти, который должен быть освобожден.
[0220] Этап 9205: операционная система управления получает идентификатор адреса физической памяти, освобожденный посредством первой операционной системой загрузки, и добавляет идентификатор освобожденного адреса физической памяти в список доступных физических ресурсов в пуле ресурсов, причем освобожденным адресом физической памяти является адрес физической памяти, соответствующий идентификатору адреса физической памяти, который должен быть освобожден.
[0221] ФИГ.10A является схематической последовательностью операций для добавления внешнего устройства для первой операционной системы загрузки, когда физическим ресурсом является ресурс внешнего устройства, в соответствии с настоящим изобретением. ФИГ.10B является схематической последовательностью операций для удаления внешнего устройства для первой операционной системы загрузки, в соответствии с настоящим изобретением.
[0222] Как показано на ФИГ.10A, добавление внешнего устройства для первой операционной системы загрузки включает в себя следующие этапы:
[0223] Этап 10101: операционная система управления помечает внешнее устройство, которое должно быть добавлено для первой операционной системы загрузки, в качестве физического ресурса, который принадлежит первой операционной системе загрузки, и посылает сообщение горячего подсоединения на первую операционную систему загрузки.
[0224] Сообщение горячего подсоединения используется для предписания первой операционной системе загрузки получать идентификатор внешнего устройства, которое должно быть добавлено, и таблицу информации описания устройства, соответствующую добавленному внешнему устройству.
[0225] В частности, операционная система управления помечает внешнее устройство, которое должно быть добавлено для первой операционной системы загрузки в качестве физического ресурса, который принадлежит первой операционной системе загрузки, причем добавленное внешнее устройство не используется в качестве доступного физического ресурса в пуле физических ресурсов, и операционная система управления и первая операционная система загрузки контролируют использование добавленного внешнего устройства.
[0226] Таким образом, сообщение горячего подсоединения используется для предписания первой операционной системе загрузки получать идентификатор внешнего устройства, которое должно быть добавлено, и таблицы информации описания устройства, соответствующей добавленному внешнему устройству, включает в себя два способа возможной реализации:
[0227] В одном способе возможной реализации: операционная система управления посылает сообщение горячего подсоединения на первую операционную систему загрузки, причем сообщение горячего подсоединения включает в себя идентификатор внешнего устройства, которое должно быть добавлено, и таблицу информации описания устройства, соответствующую добавленному внешнему устройству.
[0228] В другом способе возможной реализации: операционная система управления посылает сообщение предписания горячего подсоединения на первую операционную систему загрузки, причем сообщение предписания горячего подсоединения используется для предписания первой операционной системе загрузки считывать, из предварительно установленной фиксированной физической памяти, идентификатор внешнего устройства, которое должно быть добавлено, и таблицу информации описания устройства, соответствующую добавленному внешнему устройству.
[0229] Этап 10102: первая операционная система загрузки принимает сообщение горячего подсоединения, посланное посредством операционной системы управления.
[0230] Этап 10103: первая операционная система загрузки исполняет, в соответствии с идентификатором внешнего устройства, которое должно быть добавлено, и таблицей информации описания устройства, соответствующей добавленному внешнему устройству, операцию горячего подсоединения относительно внешнего устройства, соответствующего идентификатору внешнего устройства, которое должно быть добавлено.
[0231] Как показано на ФИГ.10B, удаление внешнего устройства для первой операционной системы загрузки включает в себя следующие этапы:
[0232] Этап 10201: операционная система управления посылает сообщение горячего извлечения на первую операционную систему загрузки.
[0233] Сообщение горячего извлечения включает в себя идентификатор внешнего устройства, которое должно быть удалено.
[0234] Этап 10202: первая операционная система загрузки принимает сообщение горячего извлечения, посланное посредством операционной системы управления, причем сообщение горячего извлечения включает в себя идентификатор внешнего устройства, которое должно быть удалено.
[0235] Этап 10203: первая операционная система загрузки выполняет, в соответствии с идентификатором внешнего устройства, которое должно быть удалено, операцию горячего извлечения относительно внешнего устройства, соответствующего идентификатору внешнего устройства, которое должно быть удалено.
[0236] Этап 10204: операционная система управления получает идентификатор внешнего устройства, которое является удаленным для первой операционной системы загрузки, добавляет идентификатор удаленного внешнего устройства к списку доступных физических ресурсов в пуле ресурсов, причем удаленным внешним устройством является внешнее устройство, соответствующее идентификатору внешнего устройства, которое должно быть удалено.
[0237] В вариантах осуществления настоящего изобретения динамическая регулировка физического ресурса реализуются в предшествующих способах, таким образом, чтобы не только первая операционная система загрузки могла исключительно использовать физический ресурс, но также и использование физического ресурса являлось улучшенным, посредством добавления или удаления физического ресурса первой операционной системы загрузки.
[0238] ФИГ.11 является схематической структурной диаграммой варианта осуществления 1 операционной системы управления, в соответствии с настоящим изобретением. Операционная система управления в настоящем варианте осуществления применяется к многоядерной операционной системе, показанной на ФИГ.1, причем многоядерная операционная система включает в себя операционную систему управления и множественные операционные системы загрузки, которые работают на хост-компьютере, и включает в себя пул физических ресурсов, и пул физических ресурсов включает в себя ядра процессора и физическую память хост-компьютера. Как показано на ФИГ.11, операционная система 110 управления, предоставленная в настоящем варианте осуществления, включает в себя модуль 1101 назначения ресурса, модуль 1102 установки отношения отображения, модуль 1103 определения ядра процессора запуска и модуль 1104 предписания.
[0239] Модуль 1101 назначения ресурса конфигурируется для назначения на каждую операционную систему загрузки набора физических ресурсов, исключительно используемого посредством каждой операционной системы загрузки, причем каждый набор физических ресурсов включает в себя некоторые из ядер процессора хост-компьютера и части физической памяти хост-компьютера.
[0240] Модуль 1102 установки отношения отображения конфигурируются для: создания отражения запуска для каждой операционной системы загрузки и установки, для каждой операционной системы загрузки, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска.
[0241] Модуль 1103 определения ядра процессора запуска конфигурируется для определения в ядрах процессора, назначенных на первую операционную систему загрузки, ядра процессора запуска, которое запускает первую операционную систему загрузки, причем первой операционной системой загрузки является любая из операционных систем загрузки.
[0242] Модуль 1104 предписания конфигурируется для предписания ядру процессора запуска считывать отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки и является предварительно созданным посредством модуля установки отношения отображения для разрешения ядру процессора запуска получать доступ, в процессе исполнения отражения запуска, и в соответствии с отношением отображения, к адресу физической памяти; и предписание ядру процессора запуска исполнять предварительно созданное отражение запуска для первой операционной системы загрузки, причем отражение запуска включает в себя параметр запуска первой операционной системы загрузки, этот параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки.
[0243] Операционная система управления, представленная в настоящем варианте осуществления, может исполнять технические решения предшествующих вариантов осуществления способа обработки ресурса, и имеет аналогичный принцип реализации и технический эффект, и никакие подробности не будут повторно описываться в настоящем описании в этом варианте осуществления.
[0244] ФИГ.12 является схематической структурной диаграммой варианта осуществления 2 операционной системы управления, в соответствии с настоящим изобретением. Этот вариант осуществления реализуется на основании варианта осуществления на ФИГ.11 и, в частности, состоит в следующем:
[0245] Опционально, модуль 1104 предписания, в частности, конфигурируется для:
посылки межъядерного сообщения прерывания на ядро процессора запуска, причем межъядерное сообщение прерывания предписывает ядру процессора запуска исполнять программу инициализации, которая конфигурируется для инициализации ядра процессора запуска, и которая соответствует первой операционной системе загрузки; и
предписания, посредством предписания ядру процессора запуска исполнять программу инициализации, соответствующую первой операционной системе загрузки, ядру процессора запуска считывать из программы инициализации отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки; и предписания ядру процессора запуска переходить, после завершения работы программы инициализации, в местоположение отражения запуска и находящееся в физической памяти для исполнения отражения запуска первой операционной системы загрузки.
[0246] Опционально, операционная система управления дополнительно включает в себя модуль 1105 конфигурирования программы инициализации, сконфигурированный для: перед тем как модуль установки отношения отображения устанавливает, для каждой операционной системы загрузки, отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска, предварительной установки, для первой операционной системы загрузки, программы инициализации, которая конфигурируется для инициализации первой операционной системы загрузки и предварительной установки в программе инициализации местоположения отражения запуска первой операционной системы загрузки, и которое находится по адресу физической памяти.
[0247] Модуль 1102 установки отношения отображения, в частности, конфигурируется для установки в программе инициализации и для первой операционной системы загрузки отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска.
[0248] Операционная система управления, представленная в настоящем варианте осуществления, может исполнять технические решения предшествующих вариантов осуществления способа обработки ресурса, и имеет аналогичный принцип реализации и технический эффект, и никакие подробности не будут повторно описывается в настоящем описании в этом варианте осуществления.
[0249] ФИГ.13 является схематической структурной диаграммой варианта осуществления 3 операционной системы управления, в соответствии с настоящим изобретением. Настоящий вариант осуществления реализуется на основании варианта осуществления на ФИГ.11 и, в частности, состоит в следующем:
[0250] Опционально, операционная система управления дополнительно включает в себя: модуль 1106 получения доступного ядра процессора, сконфигурированный для получения доступных ядер процессора второй операционной системы загрузки перед тем, как модуль определения ядра процессора запуска определяет, в ядрах процессора, назначенных на первую операционную систему загрузки, ядро процессора запуска, которое запускает первую операционную систему загрузки, причем второй операционной системой загрузки является операционная система загрузки, из которой осуществлен выход, отличная от первой операционной системы загрузки, в множественных операционных системах загрузки, доступные ядра процессора включают в себя ядро процессора, которое было запущено, и набор физических ресурсов первой операционной системы загрузки включает в себя доступные ядра процессора.
[0251] Модуль 1103 определения ядра процессора запуска, в частности, конфигурируется для: когда набор физических ресурсов первой операционной системы загрузки включает в себя доступные ядра процессора, определения в доступных ядрах процессора ядра процессора запуска, которое запускает первую операционную систему загрузки.
[0252] Опционально, операционная система управления дополнительно включает в себя: модуль 1107 конфигурирования программного агента, сконфигурированный для предварительной установки, для первой операционной системы загрузки, программного агента на ядре процессора запуска после того, как модуль определения ядра процессора запуска определяет, в доступных ядрах процессора, ядро процессора запуска, которое запускает первую операционную систему загрузки, и предварительно устанавливает, в программном агенте, местоположение отражения запуска первой операционной системы загрузки, и которое находится по адресу физической памяти.
[0253] Модуль 1102 установки отношения отображения, в частности, конфигурируется для установки, для первой операционной системы загрузки и в программном агенте, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска.
[0254] Опционально, модуль 1104 предписания, в частности, конфигурируется для: посылки межъядерного сообщения прерывания на программный агент, работающий на ядре процессора запуска, причем межъядерное сообщение прерывания предписывает ядру процессора запуска считывать из программного агента отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска, и которое является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки; и местоположение отражения запуска, соответствующее первой операционной системе загрузки, которое находится по адресу физической памяти, и которое является предварительно установленным в программном агенте посредством модуля конфигурирования программного агента, предписывает ядру процессора запуска переходить в местоположение, которое находится по адресу физической памяти, и по которому располагается отражение запуска для исполнения отражения запуска первой операционной системы загрузки.
[0255] Операционная система управления, представленная в настоящем варианте осуществления, может исполнять технические решения предшествующих вариантов осуществления способа обработки ресурса и имеет аналогичный принцип реализации и технический эффект, и никакие подробности повторно на будут описываться в настоящем описании в этом варианте осуществления.
[0256] На основании вариантов осуществления на ФИГ.12 и ФИГ.13, модуль назначения ресурса, в частности, конфигурируется для:
выполнения, в соответствии с количеством операционных систем загрузки, первичного разделения на доступные физические ресурсы, которые находятся в пуле физических ресурсов, и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов для получения множественных наборов физических ресурсов, причем количество наборов физических ресурсов равно количеству операционных систем загрузки, и операционная система управления определяет соответствие между каждой операционной системой загрузки и каждым набором физических ресурсов; и
назначения на каждую операционную систему загрузки, в соответствии с упомянутым соответствием, набора физических ресурсов, исключительно используемого посредством каждой операционной системы загрузки.
[0257] Опционально, каждый набор физических ресурсов, дополнительно включает в себя несколько внешних устройств хост-компьютера.
[0258] Параметр запуска дополнительно включает в себя идентификатор внешнего устройства, назначенного на первую операционную систему загрузки, и таблицу информации описания устройства, соответствующую внешнему устройству.
[0259] На основании вариантов осуществления на ФИГ.12 и ФИГ.13, когда операционная система управления контролирует работу первой операционной системы загрузки, структура операционной системы управления включает в себя два способа возможной реализации.
[0260] Одним способом возможной реализации является то, что операционная система управления дополнительно включает в себя:
первый модуль контроля, сконфигурированный для контроля, после того, как модуль предписания, предписывает ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, работы первой операционной системы загрузки; и
первый модуль управления ресурсом, сконфигурированный для определения, что физический ресурс должен быть удален для первой операционной системы загрузки, если результат контроля первого модуля контроля состоит в том, что использование физического ресурса, назначенного на первую операционную систему загрузки, является меньшим, чем первый предварительно установленный порог, и определения идентификатора типа физического ресурса, который должен быть удален, причем идентификатор типа физического ресурса используется для различения того, является ли физический ресурс ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства.
[0261] Модуль назначения ресурса дополнительно конфигурируется для выполнения, в соответствии с идентификатором типа физического ресурса, который должен быть удален, вторичного разделения на доступные физические ресурсы, которые находятся в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов, и удаления физического ресурса первой операционной системы загрузки, причем удаленным физическим ресурсом является физический ресурс, соответствующий идентификатору типа физического ресурса, который должен быть удален.
[0262] Другим способом возможной реализации является то, что операционная система управления дополнительно включает в себя:
второй модуль контроля, сконфигурированный для контроля, после того, как модуль предписания предписывает ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, работы первой операционной системе загрузки; и
второй модуль управления ресурсом, сконфигурированный для определения, что физический ресурс должен быть добавлен для первой операционной системы загрузки, если результат контроля второго модуля контроля состоит в том, что использование физического ресурса, назначенного на первую операционную систему загрузки, больше, чем второй предварительно установленный порог, и определяет идентификатор типа физического ресурса, который должен быть добавлен, причем идентификатор типа физического ресурса используется для различения того, является ли физический ресурс, который должен быть добавлен, ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства.
[0263] Модуль назначения ресурса дополнительно конфигурируется для выполнения, в соответствии с идентификатором типа физического ресурса, который должен быть добавлен, вторичного разделения на доступные физические ресурсы, которые находятся в пуле физических ресурсов, и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов, и добавления физического ресурса первой операционной системы загрузки, причем добавленным физическим ресурсом является физический ресурс, соответствующий идентификатору типа физического ресурса, который должен быть добавлен.
[0264] На основании вариантов осуществления на ФИГ.12 и ФИГ.13, когда операционная система управления контролирует работу первой операционной системой загрузки, структура операционной системы управления включает в себя два способа возможной реализации.
[0265] Одним способом возможной реализации является то, что операционная система управления дополнительно включает в себя:
первый модуль приема, сконфигурированный для приема, после того, как модуль предписания предписывает ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, сообщения запроса удаления ресурса, посланного посредством первой операционной системы загрузки, причем сообщение запроса удаления ресурса включает в себя идентификатор типа физического ресурса, который должен быть удален, и идентификатор типа физического ресурса используется для различения того, является ли физический ресурс ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства.
[0266] Модуль назначения ресурса дополнительно конфигурируется для выполнения, в соответствии с идентификатором типа физического ресурса, который должен быть удален, в сообщении запроса удаления ресурса, вторичного разделения на доступные физические ресурсы, которые находятся в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов, и удаления физического ресурса первой операционной системы загрузки, причем удаленным физическим ресурсом является физический ресурс, соответствующий идентификатору типа физического ресурса, который должен быть удален.
[0267] Другим способом возможной реализации является то, что операционная система управления дополнительно включает в себя:
второй модуль приема, сконфигурированный для приема, после того как модуль предписания предписывает ядру процессора запуска исполнять отражение запуска, предварительно созданное для первой операционной системы загрузки, сообщения запроса добавления ресурса, посланного посредством первой операционной системы загрузки, причем сообщение запроса добавления ресурса включает в себя идентификатор типа физического ресурса, который должен быть добавлен, и идентификатор типа физического ресурса используется для различения того, является ли физический ресурс ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства.
[0268] Модуль назначения ресурса дополнительно конфигурируется для выполнения, в соответствии с идентификатором типа физического ресурса, который должен быть добавлен, в сообщении запроса добавления ресурса, вторичного разделения на доступные физические ресурсы, которые находятся в пуле физических ресурсов и которые соответствуют идентификаторам физических ресурсов в списке доступных физических ресурсов в пуле ресурсов, и добавления физического ресурса первой операционной системы загрузки, причем добавленным физическим ресурсом является физический ресурс, соответствующий идентификатору типа физического ресурса, который должен быть добавлен.
[0269] Основываясь на предшествующих вариантах осуществления, если физический ресурс, который должен быть добавлен, является ядром процессора, модуль назначения ресурса дополнительно, в частности, конфигурируются для:
пометки ядра процессора, которое должно быть добавлено для первой операционной системы загрузки, в качестве физического ресурса, который принадлежит первой операционной системе загрузки, и для посылки сообщения добавления ресурса на первую операционную систему загрузки, причем сообщение добавления ресурса включает в себя идентификатор ядра процессора, которое должно быть добавлено; и
посылки предписания перехода на добавленное ядро процессора, причем предписание перехода используется для предписания добавленному ядру процессора исполнять программу ядра первой операционной системы загрузки и для предписания добавленному ядру процессора считывать из программы ядра все отношения отображения из адресов виртуальной памяти в адреса физической памяти, и которые требуются для исполнения первой операционной системы загрузки.
[0270] На основании предшествующих вариантов осуществления, если физическим ресурсом, который должен быть удален, является ядро процессора, модуль назначения ресурса дополнительно, в частности, конфигурируются для:
посылки сообщения удаления ресурса на первую операционную систему загрузки, причем сообщение удаления ресурса включает в себя идентификатор ядра процессора, которое должно быть освобождено; и
получения идентификатора ядра процессора, освобожденного посредством первой операционной системы загрузки, и добавления идентификатора освобожденного ядра процессора к списку доступных физических ресурсов в пуле ресурсов, причем освобожденным ядром процессора является ядро процессора, соответствующее идентификатору ядра процессора, которое должно быть удалено.
[0271] На основании предшествующих вариантов осуществления, если физическим ресурсом, который должен быть добавлен, является ресурс физической памяти, модуль назначения ресурса дополнительно, в частности, конфигурируются для: пометки адреса физической памяти, который должен быть добавлен для первой операционной системы загрузки, в качестве физического ресурса, который принадлежит первой операционной системе загрузки, и посылки сообщения добавления ресурса на первую операционную систему загрузки, причем сообщение добавления ресурса включает в себя идентификатор адреса физической памяти, который должен быть добавлен.
[0272] На основании предшествующих вариантов осуществления, если физическим ресурсом, который должен быть удален, является ресурс физической памяти, модуль назначения ресурса дополнительно, в частности, конфигурируются для: посылки сообщения удаления ресурса на первую операционную систему загрузки, причем сообщение удаления ресурса включает в себя идентификатор адреса физической памяти, который должен быть освобожден; и
получения идентификатора адреса физической памяти, освобожденного посредством первой операционной системой загрузки, и добавления идентификатора освобожденного адреса физической памяти к списку доступных физических ресурсов в пуле ресурсов, причем освобожденным адресом физической памяти является адрес физической памяти, соответствующий идентификатору адреса физической памяти, который должен быть освобожден.
[0273] На основании предшествующих вариантов осуществления, если физическим ресурсом, который должен быть добавлен, является ресурс внешнего устройства, модуль назначения ресурса дополнительно, в частности, конфигурируются для: пометки внешнего устройства, которое должно быть добавлено для первой операционной системы загрузки, в качестве физического ресурса, который принадлежит первой операционной системе загрузки, и посылки сообщения горячего подсоединения на первую операционную систему загрузки, причем сообщение горячего подсоединения используется для предписания первой операционной системе загрузки получать идентификатор внешнего устройства, которое должно быть добавлено, и таблицу информации описания устройства, соответствующую добавленному внешнему устройству.
[0274] На основании предшествующих вариантов осуществления, если физическим ресурсом, который должен быть удален, является ресурс внешнего устройства, модуль назначения ресурса дополнительно, в частности, конфигурируется для: посылки сообщения горячего извлечения на первую операционную систему загрузки, причем сообщение горячего извлечения включает в себя идентификатор внешнего устройства, которое должно быть удалено; и
получения идентификатора внешнего устройства, удаленного для первой операционной системы загрузки и добавления идентификатора удаленного внешнего устройства к списку доступных физических ресурсов в пуле ресурсов, причем удаленным внешним устройством является внешнее устройство, соответствующее идентификатору внешнего устройства, которое должно быть удалено.
[0275] Операционная система управления, представленная в настоящем варианте осуществления, может исполнять технические решения предшествующих вариантов осуществления способа обработки ресурса и имеет аналогичный принцип реализации и технический эффект и никакие подробности не будут повторно описываться в настоящем описании в этом варианте осуществления.
[0276] На основании вариантов осуществления на ФИГ.11 - ФИГ.13, операционная система управления может дополнительно включать в себя другой модуль, требуемый для работы, например:
модуль связи внутреннего взаимодействия, конфигурируемый для реализации связи нижнего уровня между операционной системой управления и другой операционной системой загрузки, причем уведомление и ответ, в общем, выполняются не посредством использования сети, а посредством способа внутрипроцессорного прерывания;
модуль помощи при работе с ресурсом, причем из-за ограничения функции аппаратного обеспечения, когда прерывание внешнего устройства не может быть непосредственно маршрутизировано к операционной системе загрузки, модуль помощи при работе с ресурсом операционной системы управления может направлять это прерывание и помогать реализовывать нормальный ответ для прерывания; или когда функция аппаратного обеспечения полностью поддерживает автоматическую маршрутизацию прерывания и свободную конфигурацию памяти с прямым доступом (память с прямым доступом, DMA, если коротко), то есть, когда прерывание внешнего устройства непосредственно маршрутизируется к операционной системе загрузки, модуль помощи при работе с ресурсом может быть отменен;
модуль обслуживания терминала: сконфигурированный для подготовки устройства виртуального терминала для облегченной OS, которая нуждается в терминале (клавиатура, мышь или видеокарта), гарантирует эффективность связи посредством использования механизма, такого как совместное использование памяти и предоставляет поддержку при работе; и
модуль управления приложением, сконфигурированный для виртуализации ориентированного на пользователя интерфейса управления системой, чтобы облегчить для пользователя управление сложным приложением и разработать соответствующую политику планирования приложения.
[0277] ФИГ.14 является схематической структурной диаграммой варианта осуществления 1 операционной системы загрузки, в соответствии с настоящим изобретением. Операционная система загрузки, представленная в настоящем варианте осуществления, применяется к многоядерной операционной системе, показанной на ФИГ.1, причем многоядерная операционная система включает в себя операционную систему управления и множественные операционные системы загрузки, которые запускаются на хост-компьютере, и включает в себя пул физических ресурсов, этот пул физических ресурсов включает в себя ядра процессора и физическую память хост-компьютера, каждая операционная система загрузки исключительно использует набор физических ресурсов, назначенный посредством операционной системы управления, и каждый набор физических ресурсов включает в себя некоторые из ядер процессора хост-компьютера и части физической памяти хост-компьютера; операционная система управления предварительно создает отражение запуска для каждой операционной системы загрузки и устанавливает, для каждой операционной системы загрузки, отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска; и операционная система 140 загрузки включает в себя модуль 1401 получения отношения отображения, модуль 1402 исполнения предписания, модуль 1403 получения параметра запуска и модуль 1404 получения набора физических ресурсов.
[0278] Модуль 1401 получения отношения отображения конфигурируется для считывания отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска первой операционной системы загрузки, причем отношение отображения используется для разрешения ядру процессора запуска первой операционной системы загрузки получать доступ к адресу физической памяти, и первой операционной системой загрузки является любая операционная система загрузки в многоядерной операционной системе.
[0279] Модуль 1402 исполнения предписания конфигурируется для перехода, в соответствии с предписанием, которое устанавливается посредством операционной системы управления и для исполнения перехода отражения запуска, в местоположение отражение запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти, и исполнения, в соответствии с отношением отображения, отражения запуска, соответствующего первой операционной системе загрузки.
[0280] Модуль 1403 получения параметра запуска, который конфигурируется для получения, в процессе исполнения отражения запуска первой операционной системы загрузки посредством модуля исполнения предписания, параметра запуска первой операционной системы загрузки из отражения запуска первой операционной системы загрузки, причем параметр запуска включает в себя идентификаторы ядер процессора, назначенных на первую операционную систему загрузки, и идентификатор адреса физической памяти, назначенного на первую операционную систему загрузки.
[0281] Модель 1404 получения набора физических ресурсов конфигурируется для определения, в соответствии с идентификаторами ядер процессора и идентификатором адреса физической памяти первой операционной системы загрузки, набора физических ресурсов, который назначается посредством операционной системы управления на первую операционную систему загрузки, и который исключительно используется посредством первой операционной системы загрузки.
[0282] Операционная система загрузки, представленная в настоящем варианте осуществления, может исполнять технические решения предшествующих вариантов осуществления способа обработки ресурса и имеет аналогичный принцип реализации и технический эффект и никакие подробности не будут повторно описываться в настоящем описании в этом варианте осуществления.
[0283] ФИГ.15 является схематической структурной диаграммой варианта осуществления 2 операционной системы загрузки, в соответствии с настоящим изобретением. Этот вариант осуществления реализуется на основании варианта осуществления на ФИГ.14, и, в частности, состоит в следующем:
[0284] Опционально, модуль 1401 получения отношения отображения, в частности, конфигурируется для:
приема межъядерного сообщения прерывания, посланного посредством операционной системы управления, причем ядро процессора запуска исполняет, в соответствии с предписанием межъядерного сообщения прерывания, программу инициализации, которая конфигурируется для инициализации ядра процессора запуска, и которая соответствует первой операционной системе загрузки; и
исполнения программы инициализации и считывания, из программы инициализации, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска и является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки.
[0285] Модуль 1402 исполнения предписания, в частности, конфигурируется для: исполнения программы инициализации, считывания, из программы инициализации, предписания перехода, которое является предварительно установленным в программе инициализации посредством операционной системы управления, и перехода в местоположение отражения запуска, соответствующее первой операционной системе загрузки и которое находится по адресу физической памяти.
[0286] Опционально, ядром процессора запуска первой операционной системы загрузки является ядро процессора, которое было запущено и определяется посредством операционной системы управления, программный агент работает на ядре процессора запуска первой операционной системы загрузки, этот программный агент является предварительно установленным посредством операционной системы управления для первой операционной системы загрузки, местоположение отражения запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти, и отношение отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска, устанавливаются в программном агенте.
[0287] Опционально, модуль 1401 получения отношения отображения, в частности, конфигурируется для считывания из программного агента, и в соответствии с предписанием межъядерного сообщения прерывания после того, как программный агент запущенный на ядре процессора запуска, принимает межъядерное сообщение прерывания, посланное посредством операционной системы управления, отношения отображения из адреса виртуальной памяти в адрес физической памяти, и которое требуется для исполнения отражения запуска, и является предварительно созданным посредством операционной системы управления для первой операционной системы загрузки.
[0288] Модуль 1402 исполнения предписания, в частности, конфигурируется для: считывания предписания перехода, которое является предварительно установленным в программном агенте посредством операционной системы управления, и перехода в местоположение отражения запуска, соответствующее первой операционной системе загрузки, и которое находится по адресу физической памяти.
[0289] Опционально, каждый набор физических ресурсов, дополнительно включает в себя несколько внешних устройств хост-компьютера; и
параметр запуска дополнительно включает в себя идентификатор внешнего устройства, назначенного посредством операционной системы управления на первую операционную систему загрузки, и таблицу информации описания устройства, соответствующую внешнему устройству.
[0290] Опционально, операционная система загрузки дополнительно включает в себя модуль 1405 создания отношения отображения, сконфигурированный для создания, после того, как модуль получения набора физических ресурсов определяет набор физических ресурсов, который назначается посредством операционной системы управления на первую операционную систему загрузки, и который исключительно используется посредством первой операционной системы загрузки, всех отношений отображения из адресов виртуальной памяти в адреса физической памяти, и которые требуются для исполнения первой операционной системы загрузки; и
получения доступа к адресу физической памяти, в соответствии со всеми отношениями отображения из адресов виртуальной памяти в адреса физической памяти, и которые требуются для исполнения первой операционной системы загрузки.
[0291] Опционально, модуль 1402 исполнения предписания дополнительно конфигурируется для: после того, как модуль получения набора физических ресурсов определяет набор физических ресурсов, который назначается посредством операционной системы управления на первую операционную систему загрузки, и который исключительно используется посредством первой операционной системы загрузки, исполнения, посредством использования ядер процессора, назначенных на первую операционную систему загрузки, привилегированного предписания, доставленной посредством операционной системы управления.
[0292] Операционная система загрузки, представленная в настоящем варианте осуществления, может исполнять технические решения предшествующих вариантов осуществления способа обработки ресурса и имеет аналогичный принцип реализации и технический эффект, и никакие подробности не будут повторно описываться в настоящем описании в этом варианте осуществления.
[0293] На основании варианта осуществления на ФИГ.15, первая операционная система загрузки контролирует физический ресурс первой операционной системы загрузки и реализует динамическую регулировку ресурса; опционально, операционная система загрузки дополнительно включает в себя:
первый модуль контроля, сконфигурированный для контроля физического ресурса первой операционной системы загрузки после того, как модуль получения набора физических ресурсов определяет набор физических ресурсов, который назначается посредством операционной системы управления на первую операционную систему загрузки, и который исключительно используется посредством первой операционной системы загрузки; и
первый модуль посылки, сконфигурированный для посылки сообщения запроса удаления ресурса на операционную систему управления, если результат контроля первого модуля контроля состоит в том, что использование физического ресурса, назначенного посредством операционной системы управления на первую операционную систему загрузки, является меньшим, чем первый предварительно установленный порог, причем сообщение запроса удаления ресурса включает в себя идентификатор типа физического ресурса, который должен быть удален, и идентификатор типа физического ресурса, используется для различения того, является ли физический ресурс, который должен быть удален, ресурсом ядра процессора, ресурсом физической памяти или ресурсом внешнего устройства.
[0294] Опционально, операционная система загрузки дополнительно включает в себя:
второй модуль контроля, сконфигурированный для контроля физического ресурса первой операционной системы загрузки после того, как модуль получения набора физических ресурсов определяет набор физических ресурсов, который назначается посредством операционной системы управления на первую операционную систему загрузки, и который исключительно используется посредством первой операционной системы загрузки; и
второй модуль посылки, сконфигурированный для посылки сообщения запроса добавления ресурса на операционную систему управления, если результат контроля первого модуля контроля состоит в том, что использование физического ресурса, назначенного посредством операционной системы управления на первую операционную систему загрузки, больше, чем второй предварительно установленный порог, причем сообщение запроса добавления ресурса включает в себя идентификатор типа физического ресурса, который должен быть добавлен, и идентификатор типа физического ресурса, используется для различения того, является ли физический ресурс, который должен быть добавлен, ресурсом ядра процессора или ресурсом физической памяти.
[0295] Опционально, если физическим ресурсом, который должен быть добавлен, является ядро процессора, физический модуль получения набора ресурса дополнительно, в частности, конфигурируется для: после того, как второй модуль посылки посылает сообщение запроса добавления ресурса на операционную систему управления,
приема сообщения добавления ресурса, посланного посредством операционной системы управления, причем сообщение добавления ресурса включает в себя идентификатор ядра процессора, которое должно быть добавлено; и
определения, в соответствии с идентификатором ядра процессора, которое должно быть добавлено, ядра процессора, добавленного посредством операционной системы управления для первой операционной системы загрузки; и
когда добавленное ядро процессора первой операционной системы загрузки принимает предписание перехода, посланное посредством операционной системы управления, исполнения программы ядра первой операционной системы загрузки в соответствии с предписанием перехода и считывания из программы ядра всех отношений отображения из адресов виртуальной памяти в адреса физической памяти, и которые требуются для исполнения посредством первой операционной системы загрузки, причем первая операционная система загрузки предварительно устанавливает в программе ядра все отношения отображения из адресов виртуальной памяти в адреса физической памяти, и которые требуются для исполнения первой операционной системы загрузки.
[0296] Опционально, если физический ресурс, который должен быть удален, является ядром процессора, модуль получения набора физических ресурсов дополнительно, в частности, конфигурируется для: после того, как первый модуль посылки посылает сообщение запроса удаления ресурса на операционную систему управления,
приема сообщения удаления ресурса, посланного посредством операционной системы управления, причем сообщение удаления ресурса включает в себя идентификатор ядра процессора, которое должно быть освобождено;
определения, в соответствии с идентификатором ядра процессора, которое должно быть освобождено, ядра процессора, которое должно быть освобождено посредством первой операционной системы загрузки; и
освобождения ядра процессора, причем освобожденным ядром процессора является ядро процессора, соответствующее идентификатору ядра процессора, которое должно быть удалено.
[0297] Опционально, если физическим ресурсом, который должен быть добавлен, является ресурс физической памяти, модуль получения набора физических ресурсов дополнительно, в частности, конфигурируется для: после того, как второй модуль посылки посылает сообщение запроса добавления ресурса на операционную систему управления,
приема сообщения добавления ресурса, посланного посредством операционной системы управления, причем сообщение добавления ресурса включает в себя идентификатор адреса физической памяти, который должен быть добавлен; и
определения, в соответствии с идентификатором адреса физической памяти, который должен быть добавлен, адреса физической памяти, добавленного посредством операционной системы управления для первой операционной системы загрузки.
[0298] Опционально, если физическим ресурсом, который должен быть удален, является ресурс физической памяти, модуль получения набора физических ресурсов дополнительно, в частности, конфигурируется для: после того, как первый модуль посылки посылает сообщение запроса удаления ресурса на операционную систему управления,
приема сообщения удаления ресурса, посланного посредством операционной системы управления, причем сообщение удаления ресурса включает в себя идентификатор адреса физической памяти, который должен быть освобожден;
определения, в соответствии с идентификатором адреса физической памяти, который должен быть освобожден, адреса физической памяти, который должен быть освобожден посредством первой операционной системы загрузки, и
освобождения адреса физической памяти, причем освобожденным адресом физической памяти является адрес физической памяти, соответствующий идентификатору адреса физической памяти, который должен быть освобожден.
[0299] Опционально, если физическим ресурсом, который должен быть добавлен, является ресурс внешнего устройства, модуль получения набора физических ресурсов дополнительно, в частности, конфигурируется для: после того, как второй модуль посылки посылает сообщение запроса добавления ресурса на операционную систему управления,
приема сообщения горячего подсоединения, посланного посредством операционной системы управления, причем сообщение горячего подсоединения используется для предписания первой операционной системе загрузки получать идентификатор внешнего устройства, которое должно быть добавлено, и таблицу информации описания устройства, соответствующую добавленному внешнему устройству;
исполнения, в соответствии с идентификатором внешнего устройства, которое должно быть добавлено, и таблицей информации описания устройства, соответствующей добавленному внешнему устройству, операции горячего подсоединения относительно внешнего устройства, соответствующего идентификатору внешнего устройства, которое должно быть добавлено.
[0300] Опционально, если физическим ресурсом, который должен быть удален, является ресурс физической памяти, модуль получения набора физических ресурсов дополнительно, в частности, конфигурируется для: после того, как первый модуль посылки посылает сообщение запроса удаления ресурса на операционную систему управления,
приема сообщения горячего извлечения, посланного посредством операционной системы управления, причем сообщение горячего извлечения включает в себя идентификатор внешнего устройства, которое должно быть удалено;
исполнения, в соответствии с идентификатором внешнего устройства, которое должно быть удалено, операции горячего извлечения относительно внешнего устройства, соответствующего идентификатору внешнего устройства, которое должно быть удалено.
[0301] Операционная система загрузки, представленная в настоящем варианте осуществления, может исполнять технические решения предшествующих вариантов осуществления способа обработки ресурса и имеет аналогичный принцип реализации и технический эффект и никакие подробности не будут повторно описываться в настоящем описании в этом варианте осуществления.
[0302] На основании вариантов осуществления на ФИГ.14 и ФИГ.15, операционная система загрузки может дополнительно включать в себя другой модуль, требуемый для работы, например:
модуль связи внутреннего взаимодействия, сконфигурированный для выполнения быстрой связи в хост-компьютере и между операционной системой загрузки и операционной системой управления или другой операционной системой загрузки;
виртуальный терминал, в котором посредством использования терминальной службы виртуализации, представленной посредством операционной системы управления, операционная система загрузки может непосредственно управляться посредством пользователя терминальным способом; и
модуль управления приложением, сконфигурированный для приема приложения, развернутого посредством операционной системы управления или посредством другого приложения, и запуска и исполнения управления приложения.
[0303] ФИГ.16 является схематической диаграммой архитектуры многоядерной системы на гетерогенной платформе. Как показано на ФИГ.16, в настоящем варианте осуществления системы виртуализации в соответствии с настоящим изобретением на гетерогенном узле имеются процессоры, такие как блок обработки данных (Блок обработки данных, DPU, для краткости), процессор Xeon (Xeon) и графический блок обработки общего назначения (графический блок Обработки общего назначения, GPGPU, для краткости). Каждый процессор включает в себя множественные ядра процессора, и гетерогенные процессоры связываются посредством использования шины PCI-E и объединяются посредством способа технологии доступа к неоднородной памяти (технология доступа к неоднородной памяти, NUMA, для краткости). В гетерогенной платформе имеются также ресурсы, такие как физическая память, дисковое пространство и массив сетевых адаптеров, которые соединяются посредством использования устройств, таких как системная шина, центр управления вводом/выводом и шина PCI.
[0304] В этом варианте осуществления операционная система управления и несколько операционных систем загрузки работают на ядре процессора, соответствующим процессору Xeon, и другая настроенная операционная система загрузки работает на ядре процессора, соответствующем другому процессору, например, GPGPU, является подходящим для работы с вычислительной задачей с высокой степенью параллелизма, и DPU является подходящим для работы со службой обработки данных. Поэтому, операционные системы загрузки отдельно настраиваются для GPGPU и DPU, в соответствии с типом службы каждого процессора, например, операционная система загрузки, настроенная для GPGPU, включает в себя только поддержку работы с библиотекой основной матричной операции, и, главным образом, поддерживает языки, такие как архитектура унифицированного вычислительного устройства (архитектура унифицированного вычислительного устройства, CUDA, для краткости); и операционная система загрузки, настроенная для DPU, включает в себя только пакетную поддержку для обработки данных, главным образом, поддерживает приложения, такие как назначенная системная инфраструктура (например, Hadoop), и исключает другие вычислительные компоненты.
[0305] Операционная система управления может дополнительно управлять памятью (например, DRAM), подсоединенной посредством коммутации PCI-E, запуском, в соответствии с файлом конфигурации, определяемым посредством администратора, множественными операционными системами загрузки, которые находятся на DPU, и посылать задачу на операционную систему загрузки посредством использования программы управления приложения. Опционально, для приложения обработки данных, т.к. требование приложения относительно количества процессов и потоков исполнения не является высоким, когда множественные ядра оптимизируют возможность обработки канала данных, поддержка структур данных, таких как одновременные потоки исполнения и процессы, может быть уменьшена, таким образом снижаются служебные операции на пространство или производительность и улучшается производительность.
[0306] ФИГ.17 является схематической структурной диаграммой варианта осуществления 1 хост-компьютера, в соответствии с настоящим изобретением. Как показано на ФИГ.17, хост-компьютер 170, представленный в настоящем варианте осуществления, включает в себя процессор 1701 и память 1702, причем память 1702 хранит предписание исполнения, и когда хост-компьютер 170 запускается, процессор 1701 связывается с памятью 1702, и процессор 1701 исполняет предписание исполнения в памяти 1702 для разрешения хост-компьютеру 170 исполнять операцию технических решений предшествующих способов обработки ресурса.
[0307] Хост-компьютер в настоящем варианте осуществления может конфигурироваться для исполнения технических решений предшествующего варианта осуществления способа управления системой виртуальной машины, в соответствии с настоящим изобретением, и имеет аналогичный принцип реализации и технический эффект, и никакие подробности не будут повторно описываться в настоящем описании.
[0308] В нескольких вариантах осуществления, представленных в настоящей заявке, необходимо понимать, что описанная система и способ могут быть реализованы другими способами. Например, описанный вариант осуществления системы является примерным. Например, разделение модуля является просто логическим разделением функции и может быть другим разделением в фактической реализации. Например, множество модулей или компонентов могут быть объединены или заключены в другую систему, или некоторые характеристики могут быть проигнорированы или не выполняться. Дополнительно отображенные или обсужденные взаимные подсоединения или непосредственные подсоединения или соединения связи могут быть реализованы с помощью некоторых интерфейсов. Косвенные подсоединения или соединения связи между модулями могут быть реализованы в электронных, механических или других формах.
[0309] Специалисты в данной области техник поймут, что все или некоторые этапы вариантов осуществления способа могут быть реализованы посредством предписания программы соответствующему аппаратному обеспечению. Программа может быть сохранена в считываемом компьютером носителе данных. Когда программа запускается, этапы вариантов осуществления способа выполняются. Описанный выше носитель данных включает в себя: любой носитель, который может хранить программный код, такой как ROM, RAM, магнитный диск или оптический диск.
[0310] Наконец, необходимо отметить, что предшествующие варианты осуществления предназначаются просто для описания технических решений настоящего изобретения, но не для ограничения настоящего изобретения. Хотя настоящее изобретение описывается подробно с ссылками на предшествующие варианты осуществления, специалисты в данной области техники поймут, что они могут делать модификации для технических решений, описанных в предшествующих вариантах осуществления или делать эквивалентные замены некоторых или всех его технических характеристик, не отступая от объема технических решений вариантов осуществления настоящего изобретения.