СПОСОБ, УСТРОЙСТВО И СИСТЕМА ДЛЯ ДИСПЕТЧЕРИЗАЦИИ ЯДРА ПРОЦЕССОРА В СИСТЕМЕ ЯДРА МУЛЬТИПРОЦЕССОРА

1. Способ диспетчеризации ядра процессора в системе ядра мультипроцессора, содержащий этапы, на которых:
получают, в выполняющемся процессе системы ядра мультипроцессора, первый параметр управления, второй параметр управления, третий параметр управления и четвертый параметр управления, при этом первый параметр управления относится к информации указания N потоков данных, и N потоков данных относятся к первым N потокам данных, полученным в первом цикле выборки путем сортировки потоков данных, которые содержат пакеты, обработанные системой ядра мультипроцессора, в порядке убывания, согласно количеству обработанных пакетов, содержащихся в каждом потоке данных, где N - положительное целое число; второй параметр управления относится к длительности внутренней передачи каждого потока данных в системе ядра мультипроцессора и длительности для обработки каждого потока данных ядром процессора в системе ядра мультипроцессора; третий параметр управления относится к информации ядра процессора для ядра процессора с самым низким использованием; и четвертый параметр управления относится к информации описания критического пути приложения (APP) каждого потока данных;
обнаруживают, является ли поток данных, которому принадлежит текущий пакет, одним из N потоков данных на основании первого параметра управления;
когда поток данных, которому принадлежит текущий пакет, не является одним из N потоков данных, переносят, на основании второго параметра управления и третьего параметра управления и согласно политике переключения между ядрами, пакет потока данных, который поступает в систему ядра мультипроцессора, на бездействующее ядро процессора для обработки, при этом политика переключения между ядрами состоит в следующем: если длительность внутренней передачи пакета превышает длительность для обработки пакета ядром процессора, пакет обрабатывается ядром процессора с самым низким использованием, и если длительность для обработки пакета ядром процессора превышает длительность внутренней передачи пакета, пакет привязывается к назначенному ядру процессора для обработки; и
переключают ядро процессора, которое обрабатывает пакет в системе ядра мультипроцессора, между режимом прерывания и режимом опроса на основании четвертого параметра управления, и согласно политике переключения внутри ядра, при этом политика переключения внутри ядра состоит в следующем: если общая служебная нагрузка опроса больше общей служебной нагрузки прерывания, ядро процессора входит в режим прерывания для обработки пакета, и если общая служебная нагрузка опроса меньше общей служебной нагрузки прерывания, ядро процессора входит в режим опроса для обработки пакета.
2. Способ по п. 1, в котором перенос, на основании второго параметра управления и третьего параметра управления и согласно политике переключения между ядрами, пакета потока данных, который поступает в систему ядра мультипроцессора, на бездействующее ядро процессора для обработки содержит этапы, на которых:
определяют, на основании второго параметра управления, превышает ли длительность внутренней передачи потока данных, которому принадлежит текущий пакет в системе ядра мультипроцессора, длительность для обработки потока данных, которому принадлежит текущий пакет, ядром процессора в системе ядра мультипроцессора; и
распределяют, на основании третьего параметра управления, текущий пакет на ядро процессора с самым низким использованием в системе ядра мультипроцессора, если длительность внутренней передачи потока данных, которому принадлежит текущий пакет в системе ядра мультипроцессора, превышает длительность для обработки потока данных, которому принадлежит текущий пакет, ядром процессора в системе ядра мультипроцессора.
3. Способ по п. 2, дополнительно содержащий этапы, на которых:
когда поток данных, которому принадлежит текущий пакет, является одним из N потоков данных или длительность внутренней передачи потока данных, которому принадлежит текущий пакет в системе ядра мультипроцессора, не превышает длительность для обработки потока данных, которому принадлежит текущий пакет, ядром процессора в системе ядра мультипроцессора, передают текущий пакет на ядро процессора, использование ресурсов которого ниже первого порога, и связывают поток данных, которому принадлежит текущий пакет, с ядром процессора, использование ресурсов которого ниже первого порога, так что, когда пакет потока данных, которому принадлежит текущий пакет, поступает в систему ядра мультипроцессора, он обрабатывается ядром процессора, использование ресурсов которого ниже первого порога.
4. Способ по п. 1, в котором переключение ядра процессора, которое обрабатывает пакет в системе ядра мультипроцессора, между режимом прерывания и режимом опроса на основании четвертого параметра управления, и согласно политике переключения внутри ядра, содержит этапы, на которых:
обнаруживают, в ходе инициализации системы ядра мультипроцессора, служебную нагрузку единичного прерывания для обработки каждого потока данных в режиме прерывания и обнаруживают служебную нагрузку единичного опроса для обработки каждого потока данных в режиме опроса;
обнаруживают, на основании информации описания критического пути APP каждого потока данных, имеет ли поток данных, которому принадлежит текущий пакет, соответствующий критический путь APP;
обнаруживают времена опроса в первом цикле измерения, если поток данных, которому принадлежит текущий пакет, имеет соответствующий критический путь APP, и ядро процессора, которое обрабатывает текущий пакет, находится в режиме опроса;
получают общую служебную нагрузку опроса на основании времен опроса и служебной нагрузки единичного опроса;
получают общую служебную нагрузку прерывания на основании прогнозируемого порога времен прерывания и служебной нагрузки единичного прерывания;
переключают ядро процессора, которое обрабатывает текущий пакет, из режима опроса в режим прерывания, когда общая служебная нагрузка опроса больше общей служебной нагрузки прерывания; и
поддерживают режим опроса ядра процессора, которое обрабатывает текущий пакет, когда общая служебная нагрузка опроса не превышает общей служебной нагрузки прерывания.
5. Способ по п. 4, дополнительно содержащий этапы, на которых:
обнаруживают времена прерывания во втором цикле измерения, если поток данных, которому принадлежит текущий пакет, имеет соответствующий критический путь APP, и ядро процессора, которое обрабатывает текущий пакет, находится в режиме прерывания;
получают общую служебную нагрузку прерывания на основании времен прерывания и служебной нагрузки единичного прерывания;
получают общую служебную нагрузку опроса на основании прогнозируемого порога времен опроса и служебной нагрузки единичного опроса;
переключают ядро процессора, которое обрабатывает текущий пакет, из режима прерывания в режим опроса, когда общая служебная нагрузка прерывания больше общей служебной нагрузки опроса; и
поддерживают режим прерывания ядра процессора, которое обрабатывает текущий пакет, когда общая служебная нагрузка прерывания не превышает общей служебной нагрузки опроса.
6. Способ по п. 1, в котором получение первого параметра управления содержит этапы, на которых:
получают пакет, обработанный системой ядра мультипроцессора в первом цикле выборки;
определяют соотношение между пакетом, обработанным системой ядра мультипроцессора, и потоком данных, которому принадлежит пакет; и
сортируют количество пакетов, обработанных системой ядра мультипроцессора, в порядке убывания и определяют, на основании соотношения между пакетом, обработанным системой ядра мультипроцессора, и потоком данных, которому принадлежит пакет, потоки данных, содержащие первые N пакетов, согласно вышеупомянутой последовательности.
7. Способ по п. 1, в котором получение четвертого параметра управления содержит этапы, на которых:
обнаруживают, в первом цикле обнаружения, превышают ли длительность обработки и частота обработки пакета потока данных, который должен быть обнаружен, порог длительности обработки и порог частоты обработки; и
получают информацию описания критического пути APP потока данных, который должен быть обнаружен, когда длительность обработки и частота обработки пакета потока данных, который должен быть обнаружен в системе ядра мультипроцессора, превышают порог длительности обработки и порог частоты обработки, причем информация описания критического пути APP указывает, что поток данных, который должен быть обнаружен, имеет критический путь APP.
8. Способ по п. 7, в котором обнаружение, превышают ли длительность обработки и частота обработки пакета потока данных, который должен быть обнаружен, порог длительности обработки и порог частоты обработки, содержит этапы, на которых:
активируют счетчик обработки функции и счетчик частоты;
прибавляют единицу к значению счетчика обработки функции всякий раз, когда пакет потока данных, который должен быть обнаружен, обрабатывается текущим функциональным модулем;
обнаруживают, превышает ли значение счетчика обработки функции порог длительности обработки;
прибавляют единицу к значению счетчика частоты, когда значение счетчика обработки функции больше порога длительности обработки; сбрасывают счетчик обработки функции; и
обнаруживают, превышает ли значение счетчика частоты порог частоты обработки;
и получение информации описания критического пути APP потока данных, который должен быть обнаружен, в частности, содержит:
получение информации описания критического пути APP для потока данных, содержащего соответствующий пакет, значение счетчика, частоты которого больше порога частоты обработки, когда значение счетчика частоты больше порога частоты обработки.
9. Компьютерная система, содержащая:
шину;
ядро мультипроцессора, соединенное с шиной; и
память, соединенную с шиной, причем
посредством вызова инструкции исполнения в памяти через шину, ядро мультипроцессора выполнено с возможностью: получения первого параметра управления, второго параметра управления, третьего параметра управления и четвертого параметра управления на основании данных, вызванных из памяти, при этом первый параметр управления относится к информации указания N потоков данных, и N потоков данных относятся к первым N потокам данных, полученным в первом цикле выборки путем сортировки потоков данных, которые содержат пакеты, обработанные системой ядра мультипроцессора, в порядке убывания, согласно количеству обработанных пакетов, содержащихся в каждом потоке данных, где N - положительное целое число; второй параметр управления относится к длительности внутренней передачи каждого потока данных в системе ядра мультипроцессора и длительности для обработки каждого потока данных ядром процессора в системе ядра мультипроцессора; третий параметр управления относится к информации ядра процессора для ядра процессора с самым низким использованием; и четвертый параметр управления относится к информации описания критического пути приложения (APP) каждого потока данных;
ядро мультипроцессора дополнительно выполнено с возможностью обнаружения, является ли поток данных, которому принадлежит текущий пакет, одним из N потоков данных на основании первого параметра управления;
ядро мультипроцессора дополнительно выполнено с возможностью: когда поток данных, которому принадлежит текущий пакет, не является одним из N потоков данных, переноса, на основании второго параметра управления и третьего параметра управления и согласно политике переключения между ядрами, пакета потока данных, который поступает в систему ядра мультипроцессора, на бездействующее ядро процессора для обработки, причем политика переключения между ядрами состоит в следующем: если длительность внутренней передачи пакета превышает длительность для обработки пакета ядром процессора, пакет обрабатывается ядром процессора с самым низким использованием, и если длительность для обработки пакета ядром процессора превышает длительность внутренней передачи пакета, пакет привязывается к назначенному ядру процессора для обработки; и
ядро мультипроцессора дополнительно выполнено с возможностью переключения ядра процессора, которое обрабатывает пакет в системе ядра мультипроцессора, между режимом прерывания и режимом опроса на основании четвертого параметра управления, и согласно политике переключения внутри ядра, причем политика переключения внутри ядра состоит в следующем: если общая служебная нагрузка опроса больше общей служебной нагрузки прерывания, ядро процессора входит в режим прерывания для обработки пакета, и если общая служебная нагрузка опроса меньше общей служебной нагрузки прерывания, ядро процессора входит в режим опроса для обработки пакета.
10. Компьютерная система по п. 9, в которой в процессе, когда первый блок обнаружения обнаруживает, что поток данных, которому принадлежит текущий пакет, не является одним из N потоков данных, переносят, на основании второго параметра управления и третьего параметра управления и согласно политике переключения между ядрами, пакет потока данных, который поступает в систему ядра мультипроцессора, на бездействующее ядро процессора для обработки, причем политика переключения между ядрами состоит в следующем: если длительность внутренней передачи пакета превышает длительность для обработки пакета ядром процессора, пакет обрабатывается ядром процессора с самым низким использованием, и если длительность для обработки пакета ядром процессора превышает длительность внутренней передачи пакета, пакет привязывается к назначенному ядру процессора для обработки, ядро мультипроцессора дополнительно выполнено с возможностью:
определения, на основании второго параметра управления, превышает ли длительность внутренней передачи потока данных, которому принадлежит текущий пакет в системе ядра мультипроцессора, длительность для обработки потока данных, которому принадлежит текущий пакет, ядром процессора в системе ядра мультипроцессора; и
распределения, на основании третьего параметра управления, текущего пакета на ядро процессора с самым низким использованием в системе ядра мультипроцессора, когда первый блок обнаружения обнаруживает, что поток данных, которому принадлежит текущий пакет, не является одним из N потоков данных, и длительность внутренней передачи потока данных, которому принадлежит текущий пакет в системе ядра мультипроцессора, превышает длительность для обработки потока данных, которому принадлежит текущий пакет, ядром процессора в системе ядра мультипроцессора.
11. Компьютерная система по п. 10, в которой ядро мультипроцессора дополнительно выполнено с возможностью:
передачи текущего пакета на ядро процессора, использование ресурсов которого ниже первого порога, и связывания потока данных, которому принадлежит текущий пакет, с ядром процессора, использование ресурсов которого ниже первого порога, когда первый блок обнаружения обнаруживает, что поток данных, которому принадлежит текущий пакет, является одним из N потоков данных, или первый подблок определения определяет, что длительность внутренней передачи потока данных, которому принадлежит текущий пакет в системе ядра мультипроцессора, не превышает длительность для обработки потока данных, которому принадлежит текущий пакет, ядром процессора в системе ядра мультипроцессора, так что, когда пакет потока данных, которому принадлежит текущий пакет, поступает в систему ядра мультипроцессора, он обрабатывается ядром процессора, использование ресурсов которого ниже первого порога.
12. Компьютерная система по п. 9, в которой в процессе переключения ядра процессора, которое обрабатывает пакет в системе ядра мультипроцессора, между режимом прерывания и режимом опроса на основании четвертого параметра управления, и согласно политике переключения внутри ядра, причем политика переключения внутри ядра состоит в следующем: если общая служебная нагрузка опроса больше общей служебной нагрузки прерывания, ядро процессора входит в режим прерывания для обработки пакета, и если общая служебная нагрузка опроса меньше общей служебной нагрузки прерывания, ядро процессора входит в режим опроса для обработки пакета, ядро мультипроцессора дополнительно выполнено с возможностью:
обнаружения, в ходе инициализации системы ядра мультипроцессора, служебной нагрузки единичного прерывания для обработки каждого потока данных в режиме прерывания и обнаружения служебной нагрузки единичного опроса для обработки каждого потока данных в режиме опроса;
обнаружения, на основании информации описания критического пути APP каждого потока данных, имеет ли поток данных, которому принадлежит текущий пакет, соответствующий критический путь APP;
обнаружения времен опроса в первом цикле измерения, когда поток данных, которому принадлежит текущий пакет, имеет соответствующий критический путь APP, и ядро процессора, которое обрабатывает текущий пакет, находится в режиме опроса;
получения общей служебной нагрузки опроса на основании времен опроса и служебной нагрузки единичного опроса;
получения общей служебной нагрузки прерывания на основании прогнозируемого порога времен прерывания и служебной нагрузки единичного прерывания;
переключения ядра процессора, которое обрабатывает текущий пакет, из режима опроса в режим прерывания, когда общая служебная нагрузка опроса больше общей служебной нагрузки прерывания; и
поддержания режима опроса ядра процессора, которое обрабатывает текущий пакет, когда общая служебная нагрузка опроса не превышает общей служебной нагрузки прерывания.
13. Компьютерная система по п. 12, в которой ядро мультипроцессора дополнительно выполнено с возможностью:
обнаружения времен прерывания во втором цикле измерения, когда поток данных, которому принадлежит текущий пакет, имеет соответствующий критический путь APP, и ядро процессора, которое обрабатывает текущий пакет, находится в режиме прерывания;
получения общей служебной нагрузки прерывания на основании времен прерывания и служебной нагрузки единичного прерывания;
получения общей служебной нагрузки опроса на основании прогнозируемого порога времен опроса и служебной нагрузки единичного опроса;
переключения ядра процессора, которое обрабатывает текущий пакет, из режима прерывания в режим опроса, когда общая служебная нагрузка прерывания больше общей служебной нагрузки опроса; и
поддержания режима прерывания ядра процессора, которое обрабатывает текущий пакет, когда общая служебная нагрузка прерывания не превышает общей служебной нагрузки опроса.
14. Компьютерная система по п. 9, в которой в процессе получения, в выполняющемся процессе системы ядра мультипроцессора, первого параметра управления, второго параметра управления, третьего параметра управления и четвертого параметра управления, при этом первый параметр управления относится к информации указания N потоков данных, и N потоков данных относятся к первым N потокам данных, полученным в первом цикле выборки путем сортировки потоков данных, которые содержат пакеты, обработанные системой ядра мультипроцессора, в порядке убывания, согласно количеству обработанных пакетов, содержащихся в каждом потоке данных, где N - положительное целое число; второй параметр управления относится к длительности внутренней передачи каждого потока данных в системе ядра мультипроцессора и длительности для обработки каждого потока данных ядром процессора в системе ядра мультипроцессора; третий параметр управления относится к информации ядра процессора для ядра процессора с самым низким использованием; и четвертый параметр управления относится к информации описания критического пути приложения (APP) каждого потока данных, ядро мультипроцессора дополнительно выполнено с возможностью:
получения пакета, обработанного системой ядра мультипроцессора в первом цикле выборки; сортировки количества пакетов, обработанных системой ядра мультипроцессора, в порядке убывания и определения, на основании соотношения между пакетом, обработанным системой ядра мультипроцессора, и потоком данных, которому принадлежит пакет, потоков данных, содержащих первые N пакетов, согласно вышеупомянутой последовательности;
получения, в выполняющемся процессе системы ядра мультипроцессора, второго параметра управления, при этом второй параметр управления относится к длительности внутренней передачи каждого потока данных в системе ядра мультипроцессора и длительности для обработки каждого потока данных ядром процессора в системе ядра мультипроцессора;
получения, в выполняющемся процессе системы ядра мультипроцессора, третьего параметра управления, при этом третий параметр управления относится к информации ядра процессора для ядра процессора с самым низким использованием; и
получения информации описания критического пути APP потока данных, который должен быть обнаружен, когда длительность обработки и частота обработки пакета потока данных, который должен быть обнаружен в системе ядра мультипроцессора, превышают порог длительности обработки и порог частоты обработки.
15. Компьютерная система по п. 14, в которой в процессе получения пакета, обработанного системой ядра мультипроцессора в первом цикле выборки; сортировки количества пакетов, обработанных системой ядра мультипроцессора, в порядке убывания и определения, на основании соотношения между пакетом, обработанным системой ядра мультипроцессора, и потоком данных, которому принадлежит пакет, потоков данных, содержащих первые N пакетов, согласно вышеупомянутой последовательности, ядро мультипроцессора дополнительно выполнено с возможностью:
получения пакета, обработанного системой ядра мультипроцессора в первом цикле выборки;
определения соотношения между пакетом, обработанным системой ядра мультипроцессора, и потоком данных, которому принадлежит пакет; и
сортировки количества пакетов, обработанных системой ядра мультипроцессора, в порядке убывания и определения, на основании соотношения между пакетом, обработанным системой ядра мультипроцессора, и потоком данных, которому принадлежит пакет, потоков данных, содержащих первые N пакетов, согласно вышеупомянутой последовательности.
16. Компьютерная система по п. 14, в которой в процессе получения информации описания критического пути APP потока данных, который должен быть обнаружен, когда длительность обработки и частота обработки пакета потока данных, который должен быть обнаружен в системе ядра мультипроцессора, превышают порог длительности обработки и порог частоты обработки, ядро мультипроцессора дополнительно выполнено с возможностью:
обнаружения, в первом цикле обнаружения, превышают ли длительность обработки и частота обработки пакета потока данных, который должен быть обнаружен, порог длительности обработки и порог частоты обработки; и
получения информации описания критического пути APP потока данных, который должен быть обнаружен, когда подблок обнаружения порога обнаруживает, что длительность обработки и частота обработки пакета потока данных, который должен быть обнаружен в системе ядра мультипроцессора, превышают порог длительности обработки и порог частоты обработки, причем информация описания критического пути APP указывает, что поток данных, который должен быть обнаружен, имеет критический путь APP.
17. Невременный считываемый компьютером носитель, имеющий исполняемые компьютером инструкции для осуществления способа диспетчеризации ядра процессора в системе ядра мультипроцессора, содержащего этапы, на которых:
получают, в выполняющемся процессе системы ядра мультипроцессора, первый параметр управления, второй параметр управления, третий параметр управления и четвертый параметр управления, при этом первый параметр управления относится к информации указания N потоков данных, и N потоков данных относятся к первым N потокам данных, полученным в первом цикле выборки путем сортировки потоков данных, которые содержат пакеты, обработанные системой ядра мультипроцессора, в порядке убывания, согласно количеству обработанных пакетов, содержащихся в каждом потоке данных, где N - положительное целое число; второй параметр управления относится к длительности внутренней передачи каждого потока данных в системе ядра мультипроцессора и длительности для обработки каждого потока данных ядром процессора в системе ядра мультипроцессора; третий параметр управления относится к информации ядра процессора для ядра процессора с самым низким использованием; и четвертый параметр управления относится к информации описания критического пути приложения (APP) каждого потока данных;
обнаруживают, является ли поток данных, которому принадлежит текущий пакет, одним из N потоков данных на основании первого параметра управления;
когда поток данных, которому принадлежит текущий пакет, не является одним из N потоков данных, переносят, на основании второго параметра управления и третьего параметра управления и согласно политике переключения между ядрами, пакет потока данных, который поступает в систему ядра мультипроцессора, на бездействующее ядро процессора для обработки, при этом политика переключения между ядрами состоит в следующем: если длительность внутренней передачи пакета превышает длительность для обработки пакета ядром процессора, пакет обрабатывается ядром процессора с самым низким использованием, и если длительность для обработки пакета ядром процессора превышает длительность внутренней передачи пакета, пакет привязывается к назначенному ядру процессора для обработки; и
переключают ядро процессора, которое обрабатывает пакет в системе ядра мультипроцессора, между режимом прерывания и режимом опроса на основании четвертого параметра управления, и согласно политике переключения внутри ядра, причем политика переключения внутри ядра состоит в следующем: если общая служебная нагрузка опроса больше общей служебной нагрузки прерывания, ядро процессора входит в режим прерывания для обработки пакета, и если общая служебная нагрузка опроса меньше общей служебной нагрузки прерывания, ядро процессора входит в режим опроса для обработки пакета.