# Handbok &kpm;

Morgan
N.
Sandquist

    morgan@pipeline.com

Mario
Weilguni

    mweilguni@kde.org

Mario
Weilguni

    mweilguni@kde.org

Utvecklare
Mattias
Engdegård

    f91-men@nada.kth.se

Utvecklare
Lauri
Watts

    lauri@kde.org

Granskare
Stefan
Asserhäll

    stefan.asserhall@telia.com

Översättare
2000
Morgan N. Sandquist
&FDLNotice;
2000-12-14
2.00.00
KDE
kdeadmin
kpm
processhanterare
top

&kpm; är ett verktyg som tillhandahåller information om processer och hanterar dem.

## Inledning

&kpm; låter användare visa och ändra processer i Linux. Det visar detaljerad information om processer och användning av datorresurser som CPU, RAM och växlingsutrymme, samt allmän information som systemets upptid. Användare kan utnyttja &kpm; för att avbryta processer och ändra deras prioritet. Systemadministratören kan också ändra schemaläggningsinställningar.

&kpm; är nästan helt baserat på Mattias Engdegårds qps. Den huvudsakliga skillnaden mellan &kpm; och qps är &kde;-gränssnittet. &kpm; följer de flesta &kde;-standarder, använder &kde;:s konfigurationsfiler och har sessionshantering. Vissa funktioner i qps har tagits bort (som möjligheten att visa tabeller med &Mac; OS 7 stil eller speciella grafiska komponenter för kryssrutor).

## Att använda &kpm;

### Uppstart av &kpm;

När &kpm; startar visas last, CPU-användning, minnesanvändning, växlingsutrymme och upptid, samt en sammanfattning av processer.

&kpm; efter uppstart.
&kpm; efter uppstart.

#### Visning

&kpm; med textvisning.
&kpm; med textvisning

##### Lastvisning

Visningen av last är en graf som anger systemets medellast under en viss tid. Genom att klicka på visningen av last ändras den till en textvisning som ger exakta värden.

##### CPU-visning

Visningen av cpu är en stapel som anger andelen CPU-resurser som användare, snällhet, och system processer, samt inaktiva resurser. Genom att klicka på visningen av cpu ändras den till en textvisning som ger exakta värden (i procent).

##### Minnesvisning

Visningen av minne är en stapel som anger andelen minne som är använt, buffrat, cache (cachat), och ledigt. Genom att klicka på visningen av minne ändras den till en textvisning som ger exakta värden (i Mibyte), tillsammans med det totala minnet som är tillgängligt i systemet.

##### Växlingsutrymmesvisning

Visningen av växlingsutrymme är en stapel som anger andelen växlingsutrymme som används. Genom att klicka på visningen av växlingsutrymme ändras den till en textvisning som ger det exakta värdet (i Mibyte), tillsammans med det totala växlingsutrymmet som är tillgängligt i systemet.

##### Upptidsvisning

Visningen av upptid är en textvisning som visar hur länge systemet har kört.

#### Processlistan

Normalt visar processlistan alla processer med användarfält vid uppstart. Den kan också ställas in att bara visa den nuvarande användarens processer, alla processer som inte hör till systemadministratören eller processer som kör, med jobbfält, minnesfält eller en egenvald uppsättning med fält. Listan kan sorteras enligt vilket fält som helst genom att klicka på kolumnrubriken. Genom att klicka på rubriken igen fås omvänd ordning.

##### Användarfält

PID

  Process-ID. Varje process har ett entydigt process-ID nummer (PID), som börjar på 1 och räknas upp. När en ny process skapas, tilldelas den nästa oanvända PID nummer. PID är (för närvarande) 16-bitars heltal med tecken, så de börjar om efter 32767.

USER

  Processägare. Det här är namnet på den (riktiga) ägaren av processen. Om nuvarande användar-ID för en process skiljer sig från riktigt användar-ID, anges detta med en avslutande &ast; eller &plus;. Tecknet &ast; används när den nuvarande ägaren är systemadministratören (det här anger oftast en binärfil som är `setuid` som root).

PRI

  Längden för nästa tidslucka. Det här är den maximala längden på processens nästa tidslucka (eller vad som är kvar av dess nuvarande tidslucka, om det är den process som kör för närvarande). Värdet skalas om till intervallet -20..20, där ett mindre värde betyder en längre tidslucka.

NICE

  Tidsdelningsprioritet. Snällhetsvärdet avgör hur ofta en process tillåts köra, och längden på dess tidslucka. Värdet är inom området -20 till 20, där 0 är normalvärdet. Lägre värden ger mer CPU-tid till en process. Bara systemadministratören får sänka snällhetsvärdet.

SIZE

  Virtuell storlek för processen (i Kibyte). Det här är den totala storleken för processen. Det här innefattar all kod, data och delade bibliotek som används av processen, inklusive sidor som har flyttats till växlingsminnet.

RSS

  Storlek av inlästa sidor (i Kibyte). Det här är storleken på den del av processen (kod och data) som verkligen är inläst i RAM, inklusive delade bibliotek. Det här ger en rimlig uppskattning av hur mycket RAM en process använder.

SHARE

  Delat minne (i Kibyte). Det här är mängden minne som processen delar med andra processer. Det betyder inte att något av det verkligen används av någon annan process, bara att det är möjligt.

STAT

  Processens tillstånd. Vid vilket ögonblick som helst är processen i något av de följande tillstånden:

  R

    Processen kör på en CPU, eller är klar att köra.

  S

    Processen väntar på att en händelse ska inträffa (som I/O eller en tid).

  D

    Processen väntar på att en händelse ska inträffa, utan att kunna avbrytas (vanligtvis väntar den i en drivrutin).

  T

    Processen är stannad, eller spåras av en annan process.

  Z

    Processen har avslutats, men föräldraprocessen har ännu inte fått reda på det.

  W

    Processen är helt och hållet flyttad till växlingsminnet (dvs. den har inga inlästa sidor). Det här gäller också för processer i kärnan, såsom `kswapd`.

&percnt;CPU

  Antal procent CPU sedan senaste uppdateringen. Det här är hur mycket CPU-tid som processen har använt sedan den senaste uppdateringen av &kpm;s processtabell.

&percnt;MEM

  Procent använt minne. Det här är antal procent av allt RAM som används av processen (som inläst storlek). Delade bibliotek ingår, så det här är ett för stort värde.

TIME

  Total CPU-tid som använts. Det här är hur mycket CPU-tid som processen har använt sedan den startades.

CMDLINE

  Kommandoraden som startade processen. Det här är kommandoraden, inklusive alla parametrar, som startade processen. Processer som är utflyttade till växlingsminnet kanske bara visar kommandonamnet inom parenteser. Det här gäller också för processer i kärnan.

##### Jobbfält

&kpm; jobbfält.
&kpm; jobbfält.

PID

  Process-ID. Varje process har ett entydigt process-ID nummer (PID), som börjar på 1 och räknas upp. När en ny process skapas, tilldelas den nästa oanvända PID nummer. PID är (för närvarande) 16-bitars heltal med tecken, så de börjar om efter 32767.

PPID

  Föräldraprocess-ID. Varje process har en föräldraprocess. Undantaget är process 1 (`init`), som är roten i processhierarkin. Den har ingen förälder.

PGID

  Processgrupp-ID. Varje process är medlem i en processgrupp. Processgrupper används för att fördela signaler och av terminaler för att lösa upp begäran om inmatning. Processer som har samma processgrupp som terminalen, är i förgrunden och kan läsa, medan andra blockeras med en signal om de försöker läsa.

SID

  Sessions-ID. Sessions-ID används i huvudsak för att avgöra vad som händer när terminalen lägger på.

TTY

  Styrande tty. Den styrande terminalen (tty) är oftast enheten (serieport, pty, etc.) där processen startades, och som den använder för in- eller utmatning. Alla processer har inte en styrande terminal. &kpm; söker igenom katalogen `/dev` för att avgöra terminalens namn, men detta kan misslyckas. För att spara utrymme, så visas bara de två sista tecknen i tty-namnet (så att `/dev/ttyp3` visas som p3).

TPGID

  Processgrupp-ID för tty-ägaren. En tty som används ägs av en process. Det här är PGID för den processen.

STAT

  Processens tillstånd. Vid vilket ögonblick som helst är processen i något av de följande tillstånden:

  R

    Processen kör på en CPU, eller är klar att köra.

  S

    Processen väntar på att en händelse ska inträffa (som I/O eller en tid).

  D

    Processen väntar på att en händelse ska inträffa, utan att kunna avbrytas (vanligtvis väntar den i en drivrutin).

  T

    Processen är stannad, eller spåras av en annan process.

  Z

    Processen har avslutats, men föräldraprocessen har ännu inte fått reda på det.

  W

    Processen är helt och hållet flyttad till växlingsminnet (dvs. den har inga inlästa sidor). Det här gäller också för processer i kärnan, såsom `kswapd`.

UID

  Numeriskt användar-ID. Det här är ID för den (riktiga) ägaren av processen.

TIME

  Total CPU-tid som använts. Det här är hur mycket CPU-tid som processen har använt sedan den startades.

CMDLINE

  Kommandoraden som startade processen. Det här är kommandoraden, inklusive alla parametrar, som startade processen. Processer som är utflyttade till växlingsminnet kanske bara visar kommandonamnet inom parenteser. Det här gäller också för processer i kärnan.

##### Minnesfält

&kpm; minnesfält.
&kpm; minnesfält.

PID

  Process-ID. Varje process har ett entydigt process-ID nummer (PID), som börjar på 1 och räknas upp. När en ny process skapas, tilldelas den nästa oanvända PID nummer. PID är (för närvarande) 16-bitars heltal med tecken, så de börjar om efter 32767.

TTY

  Styrande tty. Den styrande terminalen (tty) är oftast enheten (serieport, pty, etc.) där processen startades, och som den använder för in- eller utmatning. Alla processer har inte en styrande terminal. &kpm; söker igenom katalogen `/dev` för att avgöra terminalens namn, men detta kan misslyckas. För att spara utrymme, så visas bara de två sista tecknen i tty-namnet (så att `/dev/ttyp3` visas som p3).

MAJFLT

  Antal större sidfel som har inträffat. Ett sidfel inträffar när en process försöker läsa eller skriva en minnessida som inte finns i RAM. Ett större sidfel är när en diskåtkomst är inblandad, som att flytta minnessidor från och till växlingsutrymmet.

MINFLT

  Antal mindre sidfel som har inträffat. Ett sidfel inträffar när en process försöker läsa eller skriva en minnessida som inte finns i RAM, eller skriva till en sida som inte är skrivbar. Ett mindre sidfel är när ingen diskåtkomst är inblandad, till exempel vid skrivning till en delad sida som ska kopieras vid skrivning.

TRS

  Storlek av inlästa textsidor (i Kibyte). Det här är storleken på texten (dvs. körbara koden) för processen, som för närvarande finns i RAM.

DRS

  Storlek av inlästa datasidor (i Kibyte). Det här är storleken på data (inte körbar kod) för processen, som för närvarande finns i RAM.

SIZE

  Virtuell storlek för processen (i Kibyte). Det här är den totala storleken för processen. Det här innefattar all kod, data och delade bibliotek som används av processen, inklusive sidor som har flyttats till växlingsminnet.

SWAP

  Kibyte i växlingsminnet. Det här är helt enkelt skillnaden mellan SIZE och RSS, med andra ord hur mycket av en process som finns på disken.

RSS

  Storlek av inlästa sidor (i Kibyte). Det här är storleken på den del av processen (kod och data) som verkligen är inläst i RAM, inklusive delade bibliotek. Det här ger en rimlig uppskattning av hur mycket RAM en process använder.

SHARE

  Delat minne (i Kibyte). Det här är mängden minne som processen delar med andra processer. Det betyder inte att något av det verkligen används av någon annan process, bara att det är möjligt.

DT

  Antal ändrade sidor. Det här är antalet sidor (inte hur många Kibyte) i RAM som har ändrats sedan de senast skrevs till disk. Ändrade sidor måste skrivas till disk innan de kan frigöras för att användas till något annat.

CMDLINE

  Kommandoraden som startade processen. Det här är kommandoraden, inklusive alla parametrar, som startade processen. Processer som är utflyttade till växlingsminnet kanske bara visar kommandonamnet inom parenteser. Det här gäller också för processer i kärnan.

##### Övriga fält

PLCY

  Schemaläggningsstrategi. FIFO (F) och Round-Robin (R) är strategier för realtidsschemaläggning. Annan (O) är den normala &UNIX; tidsdelningsstrategin. F och R processer har en realtidsprioritet mellan 1 och 99. En process kör så länge det inte finns några körbara processer med högre prioritet. Round-Robin processer kör under en tidslucka, och därefter läggs de sist i kön för sin prioritet. FIFO-processer körs tills de släpper CPU-tid (genom att fördröjas eller blockeras) eller avbryts av en process med högre prioritet. Bara systemadministratören (root) kan ändra schemaläggningsstrategin.

RPRI

  Realtidsprocesser (FIFO och Round-Robin) har prioriteter mellan 1 och 99. En process avbryter alla andra processer med lägre prioritet. Normala tidsdelade processer (strategin O) har alla prioriteten 0. Bara systemadministratören (root) får ändra realtidsprioriteten.

FLAGS

  Processflaggor (hexadecimala). Det här innehåller en del ytterligare information om processens tillstånd. Se källkoden för &Linux;-kärnan för detaljer.

WCHAN

  Funktion där processen väntar. Om processen väntar på att något ska inträffa, är det här funktionen i kärnan där den har fastnat. Inledande do&lowbar; eller sys&lowbar; skalas bort från namnet för att göra det kortare.

&percnt;WCPU

  Viktad procent CPU. Det här är CPU-tiden i procent som processen i medeltal använt under de senaste 30 sekunderna (exponentiellt avtagande medeltal).

START

  Tiden då processen startades. Det här är när processen skapades.

COMM

  Kommandot som startade processen. Det här är kommandot (filnamnet) som startade processen. Långa namn beskärs.

### Att övervaka resursanvändning

Normalt visar &kpm; användning av systemresurser, inklusive medellast för systemet, CPU-användning, minnesanvändning, användning av växlingsutrymme och systemets upptid. Det här visas i ett antal rutor längst upp i &kpm;s huvudfönster. De här rutorna kan aktiveras eller stängas av genom att klicka på Inställningar Visa resursinformation. Normalt är den här visningen grafisk. Vilken ruta som helst kan ändras till en mer exakt textvisning genom att klicka på den eller genom att ändra inställningarna med Inställningar Inställningar... .

### Att övervaka processer

&kpm; visar en lista på processer i Linux värddatorsystem. Normalt visar det alla processer. Detta kan dock ändras i menyn Visa så att bara den nuvarande användarens processer, processer som inte hör till systemadministratören eller processer som kör visas, som beskrivs här.

&kpm; visar ett antal informationsfält för varje process. Normalt visas de vanligaste processfälten. Detta kan dock ändras i menyn Visa, så att uppsättningar med fält som är lämpliga för jobbkontroll eller minnesanvändning, eller en egen uppsättning med fält visas, som beskrivs här.

Slutligen kan en lista med TCP- och UDP-uttag som används av de markerade processerna visas genom att välja &Ctrl;I eller Process Information om uttag (socket). En process markeras genom att klicka på den. Flera processer markeras genom att hålla nere Skift och klicka på var och en av dem i tur och ordning.

### Att hantera processer

&kpm; utför tre sorters processhantering:

Ändra snällhet

  Ändra snällhet låter användare ändra prioriteten för sina processer, som beskrivs här. Genom att välja &Ctrl;R eller Process Ändra snällhet..., kan användare sänka prioriteten för sina processer. Dessutom kan systemadministratören öka eller sänka prioriteten för alla processer.

Ändra schemaläggning

  Systemadministratören kan ändra schemaläggningen för processer, som beskrivs här. Detta görs antingen genom att välja &Ctrl;S eller Process Ändra schemaläggning....

Signaler

  Användare kan skicka vilken POSIX-signal som helst som listas i till sina processer. Dessutom kan systemadministratören skicka vilken som helst av signalerna till alla processer. Dessa signaler skickas med användning av Signal, som beskrivs i .

## Kommandoreferens

### Huvudfönstret för &kpm;

#### Menyn Arkiv

&Ctrl;Z Arkiv Ikonifiera

  Ikonifierar huvudfönstret. När &kpm; är ikonifierad använder det mycket mindre CPU-tid, eftersom det inte finns någon anledning att uppdatera processlistan. Om fönsterhanteraren &kwin; används, visas en ikon i &kicker; som anger medellasten för systemet. Med andra fönsterhanterare (som fvwm), visar &kpm;s egen ikon lasten, beroende på hur fönsterhanteraren är inställd.

&Ctrl;Q Arkiv Avsluta

  Avslutar &kpm;. Att stänga huvudfönstret eller genom att trycka på Avsluta i verktygsraden ger samma effekt.

#### Menyn Visa

&Ctrl;U Visa Uppdatera processlistan

  Uppdaterar processlistan omedelbart. Detta är mycket användbart med ganska långa uppdateringsintervall. Detta kan också göras genom att trycka på Uppdatera processlista i verktygsraden eller genom att trycka på mellanslagstangenten.

Visa Alla processer

  Visar alla processer.

Visa Dina processer

  Visar processer som startats av den nuvarande användaren. Det här innefattar de processer som kör som en annan användare (till exempel, setuid root-program som startats av den nuvarande användaren).

Visa Icke-root processer

  Visar alla processer utom de som startats av root.

Visa Processer som körs

  Visar bara processer som kör (dvs. processer som kör eller som finns i körkön).

Visa Användarfält

  Visar de vanligaste processfälten. Det här är de fält som typiskt visas av top.

Visa Jobbfält

  Visar de mest passande fälten för jobbstyrning.

Visa Minnesfält

  Visar fält som hör ihop med minnesanvändning, sidfel, etc.

Visa Välj fält...

  Tillåter att valet av egna fält visas.

#### Menyn Process

&Ctrl;R Process Ändra snällhet...

  Ändrar prioritet på de markerade processerna. Med &Linux;, har en process en prioritet (nice-värde) som går från -20 (högsta prioriteten) till +20 (lägsta prioriteten), så att öka nice-värdet ger en process mindre CPU-tid. Bara systemadministratören tillåts minska nice-värdet(öka prioriteten). Det här betyder att en vanlig användare inte kan minska nice-värdet för en process, även om användaren tidigare ökade det. En vanlig användare får bara ändra prioriteten för sina egna processer. Systemadministratören får ändra prioriteten för alla processer, och bara systemadministratören får minska nice-värdet för en process.

&Ctrl;S Process Ändra schemaläggning...

  Låter systemadministratören ändra schemaläggningsstrategin för de markerade processerna. Den här funktionen använder POSIX.1b realtidsutökningen som finns i &Linux; 2.0.x och senare kärnor. Normalt ställs processer in med `SCHED&lowbar;OTHER` och har en statisk prioritet som är 0. Realtidsprocesser har strategin `SCHED&lowbar;FIFO` eller `SCHED&lowbar;RR` och en statisk prioritet i intervallet 1 till 99. Det här alternativet är bara tillgängligt för systemadministratören.

&Ctrl;i Process Information om uttag (socket)

  Visar en lista på TCP- och UDP-uttag som används av de markerade processerna.

#### Menyn Signal

Alternativen i signalmenyn skickar olika signaler till alla markerade processer. Var försiktig när det här används, särskilt om mer än en process är markerad. De standardiserade POSIX-signalerna förklaras här.

&Ctrl;T Signal Avsluta

  Skickar SIGTERM till de markerade processerna.

&Ctrl;H Signal Lägg på

  Skickar SIGHUP till de markerade processerna.

Signal Avbryt

  Skickar SIGINT till de markerade processerna.

&Ctrl;k Signal Döda

  Skickar SIGKILL till de markerade processerna.

Signal Annan

  Visar en lista med andra signaler som ska skickas till de markerade processerna.

#### Menyn Inställningar

Inställningar Visa verktygsrad

  Växlar visning av verktygsraden.

Inställningar Visa kommandots sökväg

  Växlar visning av sökväg för kommandot för fältet CMDLINE i processlistan.

Inställningar Visa resursinformation

  Växlar visning av resurser.

Inställningar Spara inställningar

  Sparar de nuvarande inställningarna. Innan en ny uppsättning inställningar sparas, används de sparade inställningarna när &kpm; startas.

Inställningar Inställningar...

  Öppnar en dialogruta för att ändra &kpm;s inställningar.

Inställningar Uppdateringsperiod...

  Öppnar en dialogruta för att ändra uppdateringsperioden.

#### Menyn Hjälp

&help.menu.documentation;

## Signaler

Det här är signalerna som de förklaras på manualsidan `signal(7)`. För detaljer titta på manualsidan genom att skriva:

    % man 7 signal

### POSIX-signaler

Följande signaler definieras av POSIX och kan skickas av &kpm;:

SIGHUP

  Den styrande terminalen lade på, eller den styrande processen försvann.

SIGINT

  Avbrott från tangentbordet.

SIGQUIT

  Avsluta från tangentbordet.

SIGILL

  Illegal instruktion.

SIGABRT

  Avbrottssignal från abort(3).

SIGFPE

  Flyttalsundantag.

SIGKILL

  Signal att döda processen.

SIGSEG

  Ogiltig minnesreferens.

SIGPIPE

  Avbruten rörledning: skrivning till en rörledning som saknar läsande processer.

SIGALRM

  Tidssignal från alarm(1).

SIGTERM

  Avslutningssignal.

SIGUSR1

  Användardefinierad signal 1.

SIGUSR2

  Användardefinierad signal 2.

SIGCHLD

  Underprocess stannade eller avslutades.

SIGCONT

  Fortsätt om stannad.

SIGSTOP

  Stanna processen.

SIGTSTP

  Stanna skickat från tty.

SIGTTIN

  tty-inmatning för bakgrundsprocess.

SIGTTOU

  tty-utmatning för bakgrundsprocess.

### Övriga signaler

De här signalerna definieras inte av POSIX, och stöds inte ännu av &kpm;:

SIGTRAP

  Spårnings/brytpunktshändelse.

SIGIOT

  IOT-händelse. En synonym för SIGABRT.

SIGBUS

  Bussfel.

SIGSYS

  Felaktigt argument till rutin (SVID).

SIGSTKFLT

  Stackfel på coprocessor.

SIGURG

  Brådskande tillstånd för ett uttag (4.2 BSD).

SIGIO

  I/O nu möjlig (4.2 BSD).

SIGPOLL

  Synonym för SIGIO (System V).

SIGCLD

  Synonym för SIGCHLD.

SIGXCPU

  CPU-tidsgräns överskriden (4.2 BSD).

SIGXFSZ

  Filstorleksgräns överskriden (4.2 BSD).

SIGVTALRM

  Virtuell väckarklocka (4.2 BSD).

SIGPROF

  Profileringsväckarklocka.

SIGPWR

  Strömavbrott (System V).

SIGINFO

  En synonym för SIGPWR.

SIGLOST

  Fillåsning förlorad.

SIGWINCH

  Fönsterstorlek ändrad signal (4.3 BSD, Sun).

SIGUNUSED

  Oanvänd signal.

## Frågor och svar

Varför avslutas &kpm; ibland med ett segmenteringsfel utan någon synlig orsak?

&kpm; avslutas ibland med ett segmenteringsfel om mer än en process är markerad och listan uppdateras. Det är oklart varför detta sker.

Varför använder &kpm; så många CPU-cykler?

&kpm; kan göra av med mycket CPU-resurser om uppdateringsintervallet är för litet. På utvecklarens system (AMD K6PR200) använder det ungefär 5 procent CPU-tid med en uppdateringsintervall på en sekund. Det här beror i stor utsträckning på det totala antalet processer (inte bara de som visas) och kan vara mycket mer än det här under rätt omständigheter.

Varför verkar &percnt;CPU vara felaktig?

Värdet &percnt;CPU är inte noggrant vid mycket korta uppdateringsintervall på grund av upplösningen i tidmätningen.

Varför är fältet WCHAN felaktigt?

Fältet WCHAN är inte riktigt om en process väntar på ett ställe utanför de som listas i `System.map` (till exempel i en modul i kärnan). För de här fallen, visas den sista posten från `System.map` (någonting som liknar &lowbar;end).

Varför visas inte PID som har klonats i &kpm;?

&kpm; hanterar inte mer än en process med samma PID. Flera PID kan uppstå om `CLONE&lowbar;PID` används tillsammans med systemanropet `clone()`.

## Tack till och licens

&kpm;

Program copyright 2000 Mario Weilguni mweilguni@kde.org och Mattias Engdegård f91-men@nada.kth.se.

Dokumentation copyright 2000 Morgan N. Sandquist morgan@pipeline.com och Mario Weilguni mweilguni@kde.org.

Översättning Stefan Asserhäll stefan.asserhall@telia.com

&underFDL;

&underGPL;

## Installation

### Hur man skaffar &kpm;

&install.intro.documentation;

### Krav för &kpm;

För att kompilera &kpm; med lyckat resultat, behövs följande:

- Ett &Linux; operativsystem baserat på kärnan 2.0 eller senare. &kpm; använder &Linux; `/proc` filsystem. (Tyvärr är inte &kpm; flyttbart till andra system, eftersom varje &UNIX;-system har sitt eget sätt att samla in processinformation.)

### Kompilering och installation

&install.compile.documentation;

&documentation.index;