ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Как использовать команду taskset в Linux

Как использовать команду taskset в Linux

Чтобы начать с команды «taskset», во-первых, нам нужно знать о сродстве процесса. Сходство процесса – это свойство планировщика, которое помогает привязать или отвязать процесс, чтобы процесс выполнялся только с выделенным ЦП.

В Linux-подобных системах есть несколько инструментов для установки привязки процессора к процессу. Одной из популярных утилит является команда «taskset», которая кажется сложной, но разбиение ее на несколько этапов упрощает задачу.

С помощью командного инструмента «taskset» пользователь может получить или установить соответствие ЦП конкретного процесса с его заданным идентификатором процесса (PID). Не только это, но и помогает пользователю назначать ядра ЦП вручную.

С помощью этой утилиты можно выполнять две функции с привязкой к процессу; Во-первых, вы можете установить соответствие ЦП запускаемым программам. Во-вторых, чтобы установить соответствие ЦП программам, уже находящимся в рабочем состоянии.

Важно помнить, что привязка к процессору обозначается битовой маской, но, используя параметры «taskset», вы можете отобразить ее в числовом виде. Вы можете указать список битовых масок в шестнадцатеричном формате (с 0x или без него).

Например:

0x00000001 represents to processor 0

0x00000003 represents to processor 0 and 1

0x00000007 represents to processor 0, 1 and 2

И так далее..

Синтаксис команды «taskset»:

taskset [options] mask command [argument…]

(Выполните команду с заданной маской сродства)

taskset [options] –p [mask] pid

(Установить сродство ЦП существующей задачи)

taskset –p pid

(получить соответствие ЦП существующей задачи)

 

Параметры команд набора задач:

Инструмент команд «taskset» поддерживает следующие параметры:

Вариант Описание
-a, –all Используется для установки сродства ЦП всех задач для данного PID
-c, –cpu-list Позволяет указывать процессоры в числовом списке вместо битовой маски, имеющей несколько элементов, которые могут быть заданы запятой или диапазонами
-p, –pid Работает с существующим PID и не позволяет запускать новую задачу
-help Распечатайте справочное сообщение и выйдите
-version Распечатайте версию команды и выйдите

 

Как использовать параметры команды «набор задач»:

С помощью множества опций команды «taskset» пользователь может выполнять различные операции с заданными процессами:

Получение соответствия процессора процессу:

Команда « taskset » используется для отображения привязки ЦП к уже запущенному процессу.

Прежде чем приступить к работе, нам нужно получить PID этого конкретного процесса:

$ pidof mozila firefox

 

Теперь используйте PID, чтобы получить привязку к процессору в терминале:

$ taskset -p 1825

 

Отобразить диапазон ЦП:

Чтобы получить диапазон ЦП процесса в терминале, выполните указанную команду:

$ taskset -cp 1825

 

Измените привязку к ЦП:

Вы можете изменить привязку процессора к процессору, присвоив новое значение PID существующего процесса с помощью команды:

$ taskset –p 0x7 1825

 

(Как видите, мы установили значение сродства 7, и оно было изменено, вы можете установить в соответствии с требованиями)

Чтобы проверить текущее значение соответствия ЦП, используйте ту же команду, которую мы выполнили выше. Вы получите обновленное значение:

$ taskset –p 1825

 

Изменить диапазон ЦП:

Сходство с процессором запущенного процесса также можно определить с помощью указанной команды:

$taskset-cp 0 , 2 1825

 

Используя команду «taskset», пользователь может не только установить соответствие или диапазон ЦП, но также может назначить процессору ядро ​​ЦП.

В системах UNIX номера ядер начинаются с 0, что означает, что первое ядро ​​системы будет 0, а второе ядро ​​- 1 и т. д.

Назначение ядра означает, что вы хотите запустить этот процесс на этом конкретном ядре. Вы также можете выделить несколько ядер для одного процесса.

Итак, синтаксис этого процесса:

taskset -c [number of cores] [process name]

Давайте выполним пример, установив ядро ​​процессора в firefox, используя команду, указанную ниже:

$ taskset -c 3 , 5 Firefox

 

Есть еще один способ установить ядро; например, если вы хотите установить ядро ​​с ядра 3 на ядро ​​5. Вы будете использовать дефис «-» вместо запятой:

$ taskset -c 0-4 firefox

 

Команда top:

Команда «top» используется для отображения всех запущенных процессов с их PID, что считается быстрым способом получить список на терминале. Вам не нужно искать сложную настройку для мониторинга приложений.

Наберите «top» в терминале, чтобы получить имена всех запущенных программ:

$ top

 

Заключение:

В этой статье мы обсудили командный инструмент «taskset» и его параметры для установки привязки к процессору для данного процесса. Команда «taskset» – это инструмент Linux, который помогает назначить ядро ​​ЦП процессу для выполнения и запуска только на назначенных ядрах ЦП. Мы также проверили, как установить привязку к процессору для процесса в рабочем состоянии.

Exit mobile version