'\" t .\" Title: taskset .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.26 .\" Date: 2026-05-18 .\" Manual: Användarkommandon .\" Source: util-linux 2.42.1 .\" Language: English .\" .TH "TASKSET" "1" "2026-05-18" "util\-linux 2.42.1" "Användarkommandon" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "NAMN" taskset \- ange eller hämta en process CPU\-affinitet .SH "SYNOPSIS" .sp \fBtaskset\fP [flaggor] \fImask kommando\fP [\fIargument\fP.\|.\|.] .sp \fBtaskset\fP [flaggor] \fB\-p\fP [\fImask\fP] \fIpid\fP .SH "BESKRIVNING" .sp Kommandot \fBtaskset\fP används för att ställa in eller hämta CPU\-affiniteten för en process som körs med hjälp av dess \fIpid\fP, eller för att starta ett nytt \fIkommando\fP med en given CPU\-affinitet. CPU\-affinitet är en schemaläggningsegenskap som "binder" en process till en viss uppsättning processorer i systemet. Linux\-schemaläggaren kommer att respektera den givna CPU\-affiniteten och processen kommer inte att köras på några andra CPU:er. Observera att Linux\-schemaläggaren även stöder naturlig CPU\-affinitet: schemaläggaren försöker hålla processerna på samma CPU så länge som möjligt av prestandaskäl. Att tvinga fram en specifik CPU\-affinitet är därför endast användbart i vissa applikationer. Affiniteten för vissa processer, t.ex. kärnans per\-CPU\-trådar, kan inte ställas in. .sp CPU\-affiniteten representeras som en bitmask, där den lägsta biten motsvarar den första logiska CPU:n och den högsta biten motsvarar den sista logiska CPU:n. Det är inte säkert att alla processorer finns i ett visst system, men en mask kan ange fler processorer än vad som finns. En hämtad mask kommer endast att återspegla de bitar som motsvarar processorer som fysiskt finns i systemet. Om en ogiltig mask anges (dvs. en mask som inte motsvarar några giltiga processorer i det aktuella systemet) returneras ett felmeddelande. Maskerna kan anges i hexadecimal (med eller utan en inledande "0x") eller som en CPU\-lista med flaggan \fB\-\-cpu\-list\fP. Till exempel, .sp \fB0x00000001\fP .RS 4 är processor #0, .RE .sp \fB0x00000003\fP .RS 4 är processorerna #0 och #1, .RE .sp \fBFFFFFFFFFF\fP .RS 4 är processorerna #0 till #31, .RE .sp \fB0x32\fP .RS 4 är processorerna #1, #4 och #5, .RE .sp \fB\-\-cpu\-list 0\-2,6\fP .RS 4 är processorerna #0, #1, #2 och #6. .RE .sp \fB\-\-cpu\-list 0\-10:2\fP .RS 4 är processorer #0, #2, #4, #6, #8 och #10. Suffixet ":N" anger stride i intervallet, t.ex. 0\-10:3 tolkas som 0,3,6,9 list. .RE .sp När \fBtaskset\fP återkommer är det garanterat att det givna programmet har schemalagts till en laglig CPU. .SH "FLAGGOR" .sp \fB\-a\fP, \fB\-\-all\-tasks\fP .RS 4 Ställ in eller hämta CPU\-affiniteten för alla uppgifter (trådar) för en given PID. .RE .sp \fB\-c\fP, \fB\-\-cpu\-list\fP .RS 4 Tolka \fImask\fP som en numerisk lista över processorer i stället för en bitmask. Siffrorna separeras med kommatecken och kan innehålla intervall. Till exempel \fB0,5,8\-11\fP. .RE .sp \fB\-p\fP, \fB\-\-pid\fP .RS 4 Operate on an existing PID and do not launch a new task. If PID is zero, then operate on the \fBtaskset\fP process. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 Visa hjälptext och avsluta. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 Visa version och avsluta. .RE .SH "ANVÄNDNING" .sp Standardbeteendet är att köra ett nytt kommando med en given affinitetsmask: .RS 4 \fBtaskset\fP \fImask\fP \fIkommando\fP [\fIargument\fP] .RE .sp Du kan också hämta CPU\-affiniteten för en befintlig uppgift: .RS 4 \fBtaskset \-p\fP \fIpid\fP .RE .sp Eller ställ in den: .RS 4 \fBtaskset \-p\fP \fImask pid\fP .RE .sp När en cpu\-lista anges för en befintlig process måste flaggan \fB\-p\fP och \fB\-c\fP grupperas tillsammans: .RS 4 \fBtaskset \-pc\fP \fIcpu\-list pid\fP .RE .sp Formuläret \fB\-\-cpu\-list\fP är endast tillämpligt för att starta nya kommandon: .RS 4 \fBtaskset \-\-cpu\-lista\fP \fIcpu\-lista kommando\fP .RE .SH "TILLSTÅND" .sp En användare kan ändra CPU\-affiniteten för en process som tillhör samma användare. En användare måste ha \fBCAP_SYS_NICE\fP för att ändra CPU\-affiniteten för en process som tillhör en annan användare. En användare kan hämta affinitetsmasken för vilken process som helst. .SH "AVSLUTSSTATUS" .sp \fBtaskset\fP returnerar 0 i sitt affinity\-getting\-läge så länge som det angivna PID:et existerar. .sp \fBtaskset\fP returnerar 0 i sitt affinitetsinställningsläge så länge som det underliggande systemanropet \fBsched_setaffinity\fP(2) gör det. Om kommandot lyckas garanterar det inte att den angivna tråden faktiskt har migrerat till den eller de angivna processorerna, utan endast att tråden inte kommer att migrera till en processor utanför den nya affinitetsmasken. Till exempel kan affiniteten för kärntråden kswapd ställas in, men det är inte säkert att tråden omedelbart migrerar och det är inte heller säkert att den någonsin gör det: .sp $ ps ax \-o comm,psr,pid | grep kswapd .br kswapd0 4 82 .br $ sudo taskset \-p 1 82 .br pid 82:s aktuella affinitetsmask: 1 .br pid 82:s nya affinitetsmask: 1 .br $ echo $? .br 0 .br $ ps ax \-o comm,psr,pid | grep kswapd .br kswapd0 4 82 .br $ taskset \-p 82 .br pid 82:s aktuella affinitetsmask: 1 .br .sp Om användaren däremot anger en olaglig affinitet kommer taskset att skriva ut ett felmeddelande och returnera 1: .sp $ ps ax \-o comm,psr,pid | grep ksoftirqd/0 .br ksoftirqd/0 0 14 .br $ sudo taskset \-p 1 14 .br pid 14:s aktuella affinitetsmask: 1 .br taskset: misslyckades med att ställa in pid 14:s affinitet: Ogiltigt argument .br $ echo $? .br 1 .br .SH "EXEMPEL" .sp Print the current CPU affinity as a list. .sp $ taskset \-pc 0 .br pid 1355988\(cqs current affinity list: 0\-47 .br .SH "UPPHOVSPERSONER" .sp Skriven av Robert M. Love. .SH "UPPHOVSRÄTT" .sp Copyright © 2004 Robert M. Love. Detta är fri programvara; se källan för kopieringsvillkor. Det finns INGEN garanti; inte ens för SÄLJBARHET eller LÄMPLIGHET FÖR ETT BESTÄMMT SYFTE. .SH "SE ÄVEN" .sp \fBchrt\fP(1), \fBnice\fP(1), \fBrenice\fP(1), \fBsched_getaffinity\fP(2), \fBsched_setaffinity\fP(2) .sp Se \fBsched\fP(7) för en beskrivning av Linux schemaläggningssystem. .SH "FELRAPPORTERING" .sp För felrapporter, använd \c .URL "https://github.com/util\-linux/util\-linux/issues" "felhanteraren" "." .SH "TILLGÄNGLIGHET" .sp Kommandot \fBtaskset\fP ingår i paketet util\-linux som kan hämtas från \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "Linux Kernel Archive" "."