ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)
Понедельник, 31 марта, 2025
Сегодня у нас 1 праздник:
Международный День Резервного Копирования (World Backup Day). Пользователи сайта социальных новостей reddit предложили сделать дату 31.03 Международным днём резервного копирования, аргументируя это тем, что никогда заранее нельзя узнать, какие сюрпризы преподнесёт 1.04

Как использовать команду 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