Provided by: procps_4.0.4-4ubuntu3.2_amd64 

NAMN
top — visa Linuxprocesser
SYNOPSIS
top [flaggor]
BESKRIVNING
Programmet top visar en dynamisk vy av det körande systemet i realtid. Det kan visa sammanfattande
information om systemet liksom en lista över processer eller trådar som för närvarande hanteras av
Linuxkärnan. Typerna av sammanfattande systeminformation som visas och typerna, ordningen och storleken
på informationen som visas för processer är användarkonfigurerbart och den konfigurationen kan bevaras
mellan omstarter.
Programmet ger ett begränsat interaktivt gränssnitt för processhantering såväl som ett mycket mer
omfattande gränssnitt för personlig konfiguration — omfattande dess funktion i alla avseenden. Och
medan top rereras genomgående i detta dokument står det dig fritt att kalla programmet vad du vill. Det
nya namnet, möjligen ett alias, kan sedan avspeglas i tops fönster och anvädas när man läser och skriver
en konfigurationsfil.
ÖVERSIKT
Dokumentation
Återstående innehållsförteckning
ÖVERSIKT
Funktion
Linux minnestyper
1. KOMMANDORADSflaggor
2. SAMMANFATTNINGSvisning
a. UPPETID och LASTgenomsnitt
b. UPPGIFTER och CPU-tillstånd
c. MINNESanvändning
3. FÄLT-/Kolumnvisning
a. BESKRIVNINGAR av fält
b. HANTERING av fält
4. INTERAKTIVA kommandon
a. GLOBALA kommandon
b. SAMMANFATTNINGSOMRÅDETS kommandon
c. UPPGIFTSOMRÅDETS kommandon
1. Utseende
2. Innehåll
3. Storlek
4. Sortering
d. FÄRGavbildning
5. ALTERNATIVA SKÄRMARS utseende
a. FÖNSTERöversikt
b. KOMMANDON för fönster
c. RULLA ett fönster
d. SÖKA i ett fönster
e. FILTRERA i ett fönster
6. FILER
a. PERSONLIG konfigurationfil
b. LÄGGA TILL INSPEKTIONSposter
c. SYSTEMkonfigurtionsfil
d. SYSTEMbegränsningsfil
7. MILJÖVARIABLER
8. DUMMA TRICK-exempel
a. Kärnmagi
b. Studsande fönster
c. Den stora fågelns fönster
d. Den gamla förväxlingen
9. FEL, 10. SE även
Funktion
När top kör är de två viktigaste tangenterna hjälptagenten (h eller ?) och avslutningstangenten (”q”).
Alternativt kan du helt enkelt använda den traditionella avbrottstangenten (^C) när du är klar.
När det startas för första gången kommer du få se dessa traditionella elementen på hvudskärmen i top: 1)
sammanfattningsområde; 2) fält-/kolumnhuvud; 3) uppgiftsområde. Var och en av dessa kommer utforskas i
avsnitten som följer nedan. Det finns även en inmatnings-/meddelanderad mellan sammanfattnigsområdet och
kolumhuvudet som inte behöver någon ytterligare förklaring.
Huvudskärmen för top är i allmänhet väl anpassningsbar till ändringar av terminalens dimensioner under
X-Windows. Andra skärmar hos top kan vara det i mindre utsträckning, särskilt de med statisk text. Det
beror dock i slutänden på just din fönsterhanterare och terminalemulator. Det kan finnas tillfällen när
deras vy av terminalstorleken och det aktuella innehållet skiljer från tops vy, vilket alltid baseras på
operativsystemanrop.
Efter en storleksändringsåtgärd, om en top-skärm blir trasig, förefaller ofullständig eller i oordning
kommer att helt enkelt skriva något harmlöst som ett interpunktionstecken eller markörrörelsetangent
vanligen att återställa den. I extrema fall kommer följande sekvens nästan säkert göra det:
tgt/kmd syfte
^Z gör uppehåll för top
fg återuppta top
<Vänster> framtvinga om skärmomritning (om nödvändigt)
Men om skärmen fortfarande är trasig är det ett steg till du kan prova. Infoga detta kommando efter att
ha gjort uppehåll i top men innan den återupptas.
tgt/kmd syfte
reset återställ dina terminalinställningar
Obs: bredden på tops skärm kommer begränsas till 512 positioner. Att visa alla fälten kräver ungefär 250
tecken. Återstående skärmbredd allokeras vanligen till de variabla kolumnbredder som för närvarande är
synliga. Kolumner med variabel bredd, såsom KOMMANDO finns noterade i avsnitt 3a. BESKRIVNING av fält.
Faktiskt utskriftsbredd kan även påverkas av flaggan -w vilken diskuteras i avsnitt 1.
KOMMANDORADSflaggor.
Slutligen kräver vissa av tops skärmar eller funktioner användningen av markörförflyttningstangeter som
standardpiltangenterna plus tangenterna Home, End, PgUp och PgDn. Om din terminal eller emulator inte
tillhandahåller dessa tangenter är följande kombinationer godkända som alternativ:
tgt likvärdig tangent
Vänster alt + h
Ned alt + j
Upp alt + k
Höger alt + l
Home alt + ctrl + h
PgDn alt + ctrl + j
PgUp alt + ctrl + k
End alt + ctrl + l
Piltangenterna upp och ned har speciell betydelse när en radinatning avslutad med tangenten <Enter>
efterfrågas. Dessa tangenter, eller deras alias, kan användas för att tidigare inmatningsrader vilka
sedan kan redigeras och matas in igen. Det finns fyra ytterligare tangenter tillgängliga med
radorienterad inmatning.
tgt speciell betydelse
Upp hämta tidigare strängar för omredigering
Ned hämta nyare strängar eller radera hela raden
Insert växla mellan lägena infoga och skriv över
Delete tecknet tas bort vid markören, övriga flyttas till vänster
Home hoppa till början av inmatningsraden
End hoppa till slutet av inmatningsraden
Linux minnestyper
För våra syften finns det tre sorters minne, och en är valfri. Den första är fysiskt minne, en begränsad
resurs där kod och data måste finnas när det körs eller refereras. Nästa är den valfria växlingsfilen där
ändrat (smutsigt) minne kan sparas och senare hämtas tillbaka ifall för mycket efterfrågan finns på
fysiskt minne. Slutligen har vi virtuellt minne, en nästan obegränsad resurs som uppfyller följande mål:
1. abstraktion, från från det fysiska minnets adresser/begränsningar
2. isolering, varje process i en separat minnesrymd
3. delning, en viss mappning kan uppfylla flera behov
4. flexibilitet, tilldela en virtuell minnesadress till en fil
Oavsett vilken av dessa former minnet kan ta hanteras alla som sidor (typiskt 4096 byte) men uttrycks som
standard i top som KiB (kibibyte). Minnet som diskuteras under avsnittet ”2c. MINNESanvändning” handlar
om fysiskt minne och växlingsfil för systemet som en helhet. Minnet som gås igenom i avsnittet ”3.
FÄLT-/Kolumnvisning” omfattar alla tre minnestyperna, men för enskilda processer.
För varje sådan process är varje minnessida begränsat till en vis kvadrant från tabellen nedan. Både
fysiskt minne och virtuellt minne kan inkludera vilken som helst av de fyra, medan växlingsfilen endast
inkluderar nr. 1 till 3. Minnet i kvadrant nr. 4 fungerar när det ändras som sin egen dedikerade
växlingsfil.
Privat | Delat
1 | 2
Anonymt . stack |
. malloc() |
. brk()/sbrk() | . POSIX shm*
. mmap(PRIVATE, ANON) | . mmap(SHARED, ANON)
-----------------------+----------------------
. mmap(PRIVATE, fd) | . mmap(SHARED, fd)
Filstött . pgm/delade bibl |
3 | 4
Följande kan hjälpa till med att tolka minnesvärden som visas på processnivå som skalbara kolumner och
diskuteras under avsnitt ”3a. BESKRIVNING av fält”.
%MIN - helt enkelt RES divederat med totalt fysiskt minne
KOD - ”pgm”-delen av kvadrant 3
DATA - hela kvadrant 1 del av VIRT plus alla
explicit mmap:ade filstödda sidor i kvadrant 3
RES - vad som helst som tar upp fysiskt minne vilket, med början med
Linux-4.5, är summan ad de följande tre fälten:
RSan - kvadrant 1-sidor, vilket inkluderar alla
tidigare 3-sidor om de ändras
RSfb - kvadrant 3- och kvadrant 4-sidor
RSdl - kvadrant 2-sidor
RSlå - delmängden av RES som inte kan växlas ut (oavsett kvadrant)
DELT - delmängd av RES (exkluderar 1, inkluderar hela 2 & 4, delvis 3)
VÄXL - potentiellt vilken kvadrant som helst utom 4
ANV - helt enkelt summan av RES och SWAP
VIRT - allt använd och/eller reserverat (oavsett kvadrant)
Obs: även om programavbilder och delade bibliotek betraktas som privata hos en process kommer de räknas
som delade (DELT) av kärnan.
1. KOMMANDORADSflaggor
Obligatoriska argument till långa flaggor är obligatoriska även för korta flaggor.
Även om det inte krävs kan likhetstecknet med endera formen av flaggan och blanktecken före och/eller
efter ”=” är tillåtet.
-b, --batch
Startat top i satsvis läge, vilket kan vara användbart för att skicka utdata från top till andra
program eller till en fil. I detta läge kommer top inte acceptera indata och kör tills
iterationsgränsen du satt med kommandoradsflaggan ”-n” eller tills den dödas.
-c, --cmdline-toggle
Startar top med det senast sparade ”c”-tillståndet omvänt. Alltså, om top visade kommandorader kommer
nu det fältet visa programnamn, och vice versa. Se det interaktiva kommandot ”c” för ytterligare
information.
-d, --delay = SEK [.TIONDELAR]
Anger fördröjningen mellan skärmuppdateringar, och åsidosätter motsvarande värde i den personliga
konfigurationsfilen eller uppstartsstandardvärdet. Senare kan detta ändras med de interaktiva
kommandona ”d” eller ”s”.
Delar av sekunder respekteras, men ett negativt tal är inte tillåtet. I vilket fall som helst är dock
sådana ändringar otillåtna om top kör i Säkert läge, utom för root (om inte kommandoradsflaggan ”s”
användes). För ytterligare information om Säkert läge, se avsnittet 6d. SYSTEMbegränsningsfil.
-E, --scale-summary-mem = k | m | g | t | p | e
Instruerar top att framtvinga sammanfattningsområdeminne att skalas som:
k — kibibyte
m — mebibyte
g — gibibyte
t — tebibyte
p — pebibyte
e — exbibyte
Detta kan senare ändras med kommandoflaggan ”E”.
-e, --scale-task-mem = k | m | g | t | p
Instruerar top att framtvinga uppgiftsområdesminne att skalas som:
k — kibibyte
m — mebibyte
g — gibibyte
t — tebibyte
p — pebibyte
Detta kan senare ändras med kommandoflaggan ”e”.
-H, --threads-show
Instruerar top att visa enskilda trådar. Utan denna kommandoradsflagga visas en sammanfattning av alla
trådar i varje process. Detta kan senare ändras med det interaktiva kommandot ”H”.
-h, --help
Visa användningshjälptext, avsluta sedan.
-i, --idle-toggle
Startar top med det senast sparade ”i”-tillståndet omvänt. När denna växel är Av kommer uppgifter som
inte har använt någon CPU sedan den senaste uppdateringen inte visas. För ytterligare information om
denna växel se avsnittet 4c. UPPGIFTOMRÅDETS kommandon, STORLEK.
-n, --iterations = ANTAL
Anger det maximala antalet iterationer, eller ramar, top skall producera före det avslutar.
-O, --list-fields
Denna flagga fungerar som en slags hjälp för flaggan -o som visas nedan. Den gör att top skriver ut
vart och ett av de tillgängliga fältnamnen på var sin rad, sedan avsluta. Sådana namn är föremål för
översättningar enligt NLS (National Language Support, stöd för nationella språk).
-o, --sort-override = FÄLTNAMN
Anger namnet på fältet enligt vilket uppgifter skall sorteras, oavsett vad somavspeglas i
konfigurationsfilen. Man kan lägga till ett ”+” eller ”-” till filnamnet för att även åsidosätta
sorteringsordningen. Ett inledande ”+” kommer tvinga sortering högt till lågt, medan ett ”-” ser till
att ordningen blir lågt till högt.
Denna flagga finns primärt för att stödja automatisk/skriptad satsvis drift.
-p, --pid = PID-LISTA (som: 1,2,3, … eller -p1 -p2 -p3 …)
Övervaka endast processer med angivna process-ID:n. Dock, när det kombineras med trådläge (”H”) kommer
även alla processer i trådgruppen (se TGID) för varje övervakad PID att visas.
Denna flagga gan ges upp till 20 gånger, eller så kan man ge en kommaavgränsad lista med upp till 20
pid:ar. Att kombinera ihop båda metoderna är tillåtet.
Ett pid-värde på noll kommer tolkas som process-id:t på programmet top självt när det har startat.
Detta är endast en kommandoradsflagga och skulle du vilja återgå till normal drift är det nödvändigt
att avsluta och starta om top — ge endast något av dessa interaktiva kommandon: ”=”, ”u” eller ”U”.
Kommandoradsflaggorna ”p”, ”u” och ”U” är ömsesidigt uteslutande.
-S, --accum-time-toggle
Startar top med det senast sparade ”S”-tillståndet omvänt. När ackumulerad tid-läge är På listas varje
process med cpu-tiden som den och dess döda barn har använt. Se det interaktiva kommandot ”S” för
ytterligare information om detta läge.
-s, --secure-mode
Startar top med säkert läge påtvingat, även för root. Detta läge är mycket bättre styrt genom en
systemkonfigurationsfil (se avsnittet 6. FILER).
-U, --filter-any-user = ANVÄNDARE (som: nummer eller namn)
Visa endast processer med ett användar-id eller användarnamn som matchar det givna. Denna flagga mot
alla användare (verklig, verksam, sparad eller filsystem).
Att lägga till ett utropstecken (”!”) till användar-id:t eller -namnet instruerar top att visa endast
processer med användare som inte stämmer med den angivna.
Kommandoradsflaggorna ”p”, ”U” och ”u” är ömsesidigt uteslutande.
-u, --filter-only-euser = ANVÄNDARE (som: nummer eller namn)
Visa endast processer med ett användar-id eller användarnamn som som matchar den givna. Denna flagga
matchar endast mot det verksamma användar-id:t.
Att lägga till ett utropstecken (”!”) till användar-id:t eller -namnet instruerar top att visa endast
processer med användare som inte stämmer med den angivna.
Kommandoradsflaggorna ”p”, ”U” och ”u” är ömsesidigt uteslutande.
-V, --version
Visa versionsinformation, avsluta sedan.
-w, --width [=KOLUMNER]
I satsvis läge, när det används utan argument kommer top formatera med användning av miljövariablerna
COLUMNS= och LINES=, om de är satta. Annars kommer bredden vara fixerad till de maximala 512
kolumnerna. Med ett argument kan utmatningsbredden minskas eller ökas (upp till 512) men antalet rader
betraktas som obegränsat.
I normalt visningsläge, när det används utan argument kommer top försöka att formatera utmatningen med
miljövariablerna COLUMNS= och LINES=, om de är satta. Med ett argument kan utmatningsbredden bara
minskas, inte ökas. Oavsett om miljövariabler används eller ett argument till -w, när man inte är i
satsvis läge, kan de faktiska terminaldimensionerna aldrig överskridas.
Obs: utan användning av denna kommandoradsflagga baseras utmatningsbredden alltid på terminalen i
vilken top anropades oavsett om man kör i satsvis läge eller inte.
-1, --single-cpu-toggle
Startar top med den senast sparade Cpu-tillståndsdelen av sammanfattningsområdet omvänt. Antingen
kommer all cpu-information visas på en ensam rad eller så kommer varje cpu visas separat, beroende på
tillståndet hos kommandoflaggan för NUMA-nod (”2”).
Se de interaktiva kommandona ”1” och ”2” för ytterligare information.
2. SAMMANFATTNINGSvisning
Var och en av de följande tre områdena styrs individellt genom en eller flera interaktiva kommandon. Se
avsnittet 4b. SAMMANFATTNINGSOMRÅDETS kommandon för ytterligare information avseende dessa möjligheter.
2a. UPPETID och LASTgenomsnitts
Detta avsnitt består av en enda rad som innehåller:
program- eller fönsternamn, beroende på visningsläge
aktuell tid och tiden som gått sedan senaste start
totalt antal användare
systemlastsnitt över de senaste 1, 5 och 15 minuterna
2b. UPPGIFTER och CPU-tillstånd
Detta avsnitt består av minst två rader. I en SMP-miljö kan ytterligare rader avspegla enskilda
CPU-tillståndsprocentsatser.
Rad 1 visar totalt antal uppgifter eller trådar, beroende på tillståndet hos Trådlägesväxeln. Den totalen
är vidare klassificerad som:
körande; sovande; stoppade; zombier
Rad 2 visar CPU-tillståndsprocentsatser baserat på intervallet sedan den senaste uppdateringen.
Som standard visas procentsatser för dessa individuella kategorier. Beroende på kärnversionen visas
kanske inte fältet st.
an : tid då icke nice:ade användarprocesser körts
sy : tid då kärnprocesser körts
ni : tid då nice:ade användarprocesser körts
ia : tid tillbringad i kärnans inaktivetetshanterare
vä : tid väntande på fullgord I/O
ha : tid tillbringad med att betjäna hårdvaruavbrott
ma : tid tillbringat med att betjäna mjukvaruavbrott
st : tid stulen från denna vm av hypervisorn
Värdet ”sy” ovan avspeglar även tiden som används till att köra en virtuell cpu för gästoperativsystem,
inklusive dem med ett nice-värde.
Utöver den första uppgifts-/trådraden finns det alternativa CPU-visningslägen tillgängliga via
4-vägskommandoflaggan ”t”. De visar en förkortad sammanfattning som består av dessa element:
a b c d
%Cpu/er: 75.0/25.0 100[ … ]
Där: a) är ”användarens” (an + ni) procent; b) är ”systemets” (wy + ha + ma + gäster) procent; c) är den
totala procenten; och d) är en av två visuella grafer av dessa representationer. Sådana grafer avspeglar
även separata ”användar”- och ”system”-delar.
Om kommandoflaggan ”4” används för att ge mer än två cpu:er per rad kommer resultaten ytterligare
förkortas och eliminera element a) och b). Dock avspeglas den informationen fortfarande i själva grafen
under antagandet att färg är aktivt eller, om inte, visas streck eller block.
Se avsnittet 4b. SAMMANFATTNINGSOMRÅDETS kommandon för ytterligare information om kommandoradsflaggorna
”t” och ”4”.
2c. MINNESanvändning
Detta avsnitt består av två rader som kan uttrycka värden i kibibyte (KiB) till exbibyte (EiB) beroende
på skalfaktorn med det interaktiva kommandot ”E”. Källfälten från filen /proc/meminfo visas i parenteser.
Rad 1 avspeglar fysiskt minne, klassificerat som:
totalt ( MemTotal )
fritt ( MemFree )
anv. ( MemTotal - MemAvailable )
buff/cache ( Buffers + Cached + SReclaimable )
Rad 2 avspeglar huvudsakligen virtuellt minne, klassificerat som:
totalt ( SwapTotal )
fritt ( SwapFree )
anv. ( SwapTotal - SwapFree )
tillg ( MemAvailable, vilket är fysiskt minne )
Värdet tillg på rad 2 är en uppskattning av fysiskt minne tillgängligt för att starta nya program, utan
växling. Till skillnad mot fältet fritt försöker det att ta hänsyn till sid-cache och minnesskivor som
kan begäras tillbaka direkt. Det är tillgängligt i kärna 3.14, emulerad med kärnor 2.6.27+, och annars
detsamma som fritt.
I de alternativa minnesvisningslägena visas två förkortade sammanfattningsrader som innehåler dessa
elment:
a b c
GiB Minn: 18.7/15.738 [ … ]
GiB Växl: 0.0/7.999 [ … ]
Där: a) är procentsatsen använt; b) är det totalt tillgängliga; och c) är en av två visuella grafer över
dessa representationer.
I fallet fysiskt minne representerar procentsatsen det totala minus det uppskattade tillgängliga noterat
ovan. Grafen ”Minn” själv är delad mellan den icke-cachade delen av använt och det återstående minnet som
inte i övrigt räknas in av tillgängligt. Se avsnittet 4b. SAMMANFATTNINGSOMRÅDETS kommandon och kommandot
”m” för ytterligare information om denna speciella 4-vägsväxel.
Denna tabell kan vara till hjälp i att tolka de skalade värdena som visas:
KiB = kibibyte = 1024 byte
MiB = mebibyte = 1024 KiB = 1 048 576 byte
GiB = gibibyte = 1024 MiB = 1 073 741 824 byte
TiB = tebibyte = 1024 GiB = 1 099 511 627 776 byte
PiB = pebibyte = 1024 TiB = 1 125 899 906 842 624 byte
EiB = exbibyte = 1024 PiB = 1 152 921 504 606 846 976 byte
3. FÄLT / kolumner
3a. BESKRIVNING av fält
Listat nedan är tops tillgängliga processfält (kolumner). De visas i strikt ascii-alfabetisk ordning
efter deras engelska namn. Man kan anpassa deras position och huruvida de visas eller inte med det
interaktiva kommandot ”f” (Fälthantering).
Alla fält kan väljas som sorteringsfält, och man kan styra huruvida de soteras högt-till-lågt eller
lågt-till-högt. För ytterligare information om sorteringsmöjligheter se avsnittet 4c. UPPGIFTSOMRÅDETS
kommandon, SORTERING.
Fälten relaterade till fysiskt minne eller virtuellt minne refererar ”(KiB)” vilket är visningsläget utan
suffix. Sådana fält kan dock skalas från KiB till PiB. Skalningen styrs via det interaktiva kommandot ”e”
eller etableras vid uppstart via en byggflagga.
%CPU — CPU-användning
Uppgiftens andel av den förlupna CPU-tiden sedan den senaste uppdateringen, uttryckt som en
procentsats av den totala CPU-tiden.
I en miljö med sann SMP, om en process är multitrådad och top inte arbetar i trådläge, kan andelar
större än 100 % rapporteras. Man kan växla trådläge med det interaktiva kommandog ”H”.
För multiprocessormiljöer gäller även att, om Irix-läget är Av, kommer top köra i Solaris-läge där en
uppgifts cpu-användning delas med det totala antalet CPU:er. Man växlar Irix-/Solaris-lägen med det
interaktiva kommandot ”I”.
Obs: när man kör i skogsvyläge (”V”) med barn infällda (”v”) kommer detta fält även inkludera
CPU-tiden för dessa osynliga barn. Se avsnittet 4c. UPPGIFTSOMRÅDETS kommandon, INNEHÅLL för mer
information om växlarna ”V” och ”v”.
%CUB — CPU-utnyttjande
Detta fält är identiskt med %CUA nedan, förutom att procentsatsen även avspeglar skördade
barnprocesser.
%CUA — CPU-utnyttjande
En uppgifts totala CPU-användning dividerat med den gångna körtiden, uttryckt som en procentsats.
Om en process för närvarande visar högt CPU-användande kan detta fält hjälpa till att avgöra om
sådant beteende är normalt. Omvänt, om en proces har lågt CPU-användande för närvarande kan %CUA
avspegla högre historiska behov över dess livstid.
%MIN — Minnesanvändning (RES)
En uppgifts aktuella residenta andel av tillgängligt fysiskt minne.
Se ”ÖVERSIKT, Linux minnestyper” för ytterligare detaljer.
AGID — Autogruppidentifierare
Autogruppidentifieraren som hör ihop med en process. Denna funktion fungerar tillsammans med
CFS-schemaläggaren för att förbättra interaktiv skrivbordsprestanda.
När /proc/sys/kernel/sched_autogroup_enabled är satt skapas en ny autogrupp för varje ny session (se
SID). Alla processer som avgrenats därefter i den sessionen ärver medlemskapet i denna autogrupp.
Kärnan försöker likafördela CPU-sykler över sådana grupper. Alltså, en autogrupp med många
CPU-intensiva processer (t.ex. make -j) kommer inte att dominera en autogrupp med endast en eller två
processer.
När -1 visas betyder det att denna information inte är tillgänglig.
AGNI — Autogruppens nice-värde
Autogruppens nice-värde vilket påverkar schemaläggningen för alla processer e den gruppen. Ett
negativt nice-värde betyder högre prioritet, medan ett positivt nice-värde betyder lägre prioritet.
KGNAMN — Styrgruppsnamn
Namnet på kontrollgruppen vilken en process hör, eller ”-” om inte tillämpligt för den processen.
Detta kommer typiskt vara den sista posten i den fullständiga listan av kontrollgrupper som visas
under nästa rubrik (KGRUPPR). Och liksom gäller där, har detta fält variabel bredd.
KGRUPPR — Styrgrupper
Namnen på kontrollgrupperna till vilken en process hör, eller ”-” om inte tillämpligt för den
processen.
Kontrollgrupper gör att man kan allokera resurser (cpu, minne, nätverksbandbredd, etc.) bland
installationsdefinierade grupper av processer. De möjliggör finkorning styrning av allokeringen,
nekandet, prioriteringen, hanteringen och övervakningen av dessa resurser.
Många olika hierarkier av kgrupper kan finnas samtidigt på ett system och varje hierarki är kopplat
till ett eller flera subsystem. Ett subsystem representerar en ensam resurs.
Obs: Fältet KGRUPPR, till skillnad mot de flesta kolumner, har inte fast bredd. När det visas kommer
det och alla andra kolumner med variabel bredd allokeras all återstående skärmbredd (upp till ett
maximum 512 tecken). Trots det kan sådana fält med variabel bredd huggas av. Se avsnittet 5c. RULLA
ett fönster för ytterligare information om hur man kommer åt avhuggen data.
KOD — Kodstorlek (KiB)
Mängden fysiskt minne som just nu ägnat åt körbar kod, även känt som den residenta textmängdens
storlek eller TRS.
Se ”ÖVERSIKT, Linux minnestyper” för ytterligare detaljer.
KOMMANDO — Kommandonamn eller kommandorad
Visa kommandoraden som användes för att starta en uppgift eller namnet på det tillhörade programmet.
Man växlar mellan kommandorad och namn med ”c”, vilket är både en kommandoradsflagga och ett
interaktivt kommando.
När man har valt att visa kommandorader kommer processer utan en kommandorad som kärntrådar) visas
med endast programnamnet i hakparentesr, som i detta exempel:
[kthreadd]
Detta fält kan även påverkas av visningsläget skogsvy. Se det interaktiva kommandot ”V” för
ytterligare information om det läget.
Obs: Fältet KOMMANDO, till skillnad mot de flesta kolumner, har inte fast bredd. När det visas kommer
det och alla andra kolumner med variabel bredd allokeras all återstående skärmbredd (upp till ett
maximum 512 tecken). Trots det kan sådana fält med variabel bredd huggas av. Detta gäller särskilt
för detta fält när kommandorader visas (det interaktiva kommandot interaktivt kommando). Se avsnittet
5c. RULLA ett fönster för ytterligare information om hur man kommer åt avhuggen data.
DATA — Data- + stackstorlek (KiB)
Mängden privat minne reserverat av en process. Detta är även känt även känt som den residenta
datamängdens storlek eller DRS. Sådant minne behöver ännu inte vara mappat till fysiskt minne (RES)
men kommer alltid att inkluderas i mängden virtuellt minne (VIRT).
Se ”ÖVERSIKT, Linux minnestyper” för ytterligare detaljer.
FÖRLUP. — Förlupen körtid
Tidsåtgången sedan en process startades. Alltså, den senast startade uppgiften kommer visa det minsta
tidsintervallet.
Värdet kommer uttryckas som ”HH,MM” (timmar,minuter) men är föremål för ytterligare skalning om
intervallet blir för stort för att passa kolumnbredden. Vid den tidpunkten kommer det att skalas till
'DD+HH' (dagar+timmar) och möjligen därutöver.
MILJÖ — Milöjövariabler
Visa alla miljövariablerna, om några, som ses av respektive processer. Dessa variabler kommer visas
sin råa ordning, inte den sorterade ordning man är van vid att se med ett ”set” utan argument.
Obs: Fältet MILJÖ, till skillnad mot de flesta kolumner, har inte fast bredd. När det visas kommer
det och alla andra kolumner med variabel bredd allokeras all återstående skärmbredd (upp till ett
maximum 512 tecken). Trots det kan sådana fält med variabel bredd huggas av. Detta gäller särskilt
för detta fält. Se avsnittet 5c. RULLA ett fönster för ytterligare information om hur man kommer åt
avhuggen data.
KÖRBAR — Körbars sökväg
Där det är tillgängligt är detta den fullständiga sökvägen till den körbara, inklusive programnamnet.
Obs: Fältet KÖRBAR har, till skillnad mot de flesta kolumner, inte fast bredd. När det visas kommer
det plus eventuella andra kolumner med variabel bredd allokeras all återstående skärmbredd (upp till
de maximala 512 tecknen).
Flaggor — Uppgiftens flaggor
Denna kolumn representerar uppgiftens aktuella schemaläggningsflaggor vilka uttrycks i hexadecimal
notation och med nollor utelämnade. Dessa flaggor är officiellt dokumenterade i <linux/sched.h>.
GID — Grupp-Id
Den effektiva gruppens ID.
GRUPP — Gruppnamn
Den effektiva gruppens namn.
LOGID — Inloggningsanvändar-Id
Användar-ID:t som användes vid inloggning. När -1 visas betyder det att denna informaion inte är
tillgänglig.
LXC — Lxc-behållarnamn
Namnet på den lxc-behållare i vilken uppgiften kör. Om en process inte kör inuti en behållare kommer
ett streck (”-”) visas.
NI — Nice-värde
Nice-värdet på uppgiften. Ett negativt nice-värde betyder högre prioritet, medan ett positivt
nice-värde betyder lägre prioritet. Noll i detta fält betyder helt enkelt att prioriteten inte kommer
justeras när en uppgifts körbarhet bestäms.
Obs: Detta värde påverkar bara schemaläggningsprioritet relativt mot andra processer i samma
autogrupp. Se fälten ”AGID” och ”AGNI” för ytterligare information om autogrupper.
NU — Senast kända NUMA-nod
Ett tal representerar NUMA-noden associerad med den senast använda processorn (”P”). När -1 visas
betyder det att NUMA-information inte är tillgänglig.
Se de interaktiva kommandona ”2” och ”3” för ytterligare NUMA-möjligheter som påverkar
sammanfattningsområdet.
OOMj — Justeringsfaktor för slut på minnet
Värdet, som går från -1000 till +1000, läggs till det aktuella slut-på-minnet-värdet (OOMv) vilket
sedan används för att avgöra vilken uppgift som skall dödas när minnet är uttömt.
OOMv — Slut på minnet-värde
Detta värde, som går från 0 till +1000, används för att välja uppgift(er) att döda när minnet är
uttömt. Noll översätts till ”döda aldrig” medan 1000 betyder ”döda alltid”.
P — Senast använd CPU (SMP)
Ett nummer som representerar den senast använda processorn. I en sann SMP-miljö kommer detta
sannolikt ändras ofta eftersom kärnan avsiktligt använder svag affinitet. Dessutom kan själva
körandet av top bryta denna svaga affinitet få fler processer att byta CPU oftare (på grund av den
ökade efterfrågan på CPU-tid).
PGRP — Processgrupps-Id
Varje process är medlem av en unik processgrupp vilken används för att distribuera signaler och av
terminaler för att skilja begäranden som sin indata och utdata. När en process skapas (grenas) blir
den en medlem i sin förälders processgrupp. Enligt konvention är detta värde lika med process-ID (se
PID) för den första medlemmen i processgruppen, kallad processgruppens ledare.
PID — Process-Id
En uppgifts unika process-ID, vilket periodiskt slår runt, men aldrig startar om på noll. I kärnans
termer är det en körbar enhet definerad av en task_struct.
Detta värde kan även användas som: en processgrupps-ID (se PGRP); en sessions-ID för sessionsledaren
(se SID); en trådgrupps-ID för trådgruppsledaren ((se TGID); och en TTY-processgrupps-iID för
processgruppsledaren (se TPGID).
FPID — Föräldraprocess-Id
Uppgiftens förälders process-ID (pid).
PR — Prioritet
Uppgiftens schemaläggningsprioritet. Om man ser ”rt” i detta fält betyder det att uppgiften kör under
schemaläggningprioritet för realtid.
Under linux är realtidsprioritet något missledande eftersom traditionellt operativsystemet självt
inte gick att avbryta (preempt). Och medan kärna 2.6 kan göras avbrytbar (preemptible) är den inte
alltid det.
ARSS — Andel resident minne, smaps (KiB)
Proportionen av denna uppgifts andel av ”RSS” där varje sida delas av antalet processer som delar
den. Det är även summan av fälten ”ASan”, ”ASfb” och ”ASdelt”.
Till exempel, om en process ar 1000 residenta sidor själv och 1000 residenta sidor som delas med en
annan process skulle dess ”ARSS” vara 1500 (gånger sidstorleken).
Att komma åt smaps-värden är 10× dyrare än annan minnesstatistik och data för andra användare kräver
root-privilegier.
ASan — Andel anonymt minne, smaps (KiB)
ASfb — Andel filminne, smaps (KiB)
ASdelt — Andel shmem-minne, smaps (KiB)
I liket med vad som gällde för ”ARSS” ovan (total proportionell andel resident minne) representerar
dessa fält andelen av denna uppgifts del av varje typ av minne dividerat med antalet processer som
delar det.
Att komma åt smaps-värden är 10× dyrare än annan minnesstatistik och data för andra användare kräver
root-privilegier.
RES — Storlek på resident minne (KiB)
En delmängd av den virtuella adressrymden (VIRT) som representerar det inte utväxlade fysiska minnet
en uppgift just nu använder. Det är också summan av fälten ”RSan”, ”RSfb” och ”RSdl”.
Det kan inkludera privata anonyma sidor, privata sidor avbildade mot filer (inklusive programavbilder
och delade bibliotek) plus delade anonyma sidor. Allt sådant minne stödjs av den växlingsfil som
representeras separat under VÄXL.
Slutligen kan detta fält även inkludera delade filstödda sidor som, när de modifieras, beter sig som
en dedikerad växlingsfil och alltså aldrig kommer påverka VÄXL.
Se ”ÖVERSIKT, Linux minnestyper” för ytterligare detaljer.
RSS — Resident minne, smaps (KiB)
En annan, mer exakt vy av processens ej utväxlade fysiska minne. Det hämtas från filen ”smaps_rollup”
och är i allmänhet något större än det som visas för ”RES”.
Att komma åt smaps-värden är 10× dyrare än annan minnesstatistik och data för andra användare kräver
root-privilegier.
RSan — Storlek på resident anonymt minne (KiB)
En delmängd av resident minne (RES) som representerar privata sidor inte avbildade mot en fil.
RSfb — Storlek på resident minne med bakomliggande fil (KiB)
En delmängd av resident minne (RES) som representerar de implicit delade sidor som stöds av
programavbilder och delade bibliotek. Det inkluderar även explicita filavbildningar, både privata och
delade.
RSlå — Storlek på resident låst minne (KiB)
En delmängd av resident minne (RES) som inte kan växlas ut.
RSdl — Storlek på resident delat minne (KiB)
En delmängd av resident minne (RES) som reprecenterar de explicit delade anonyma shm*/mmap-sidorna.
VAID — Verkligt användar-id
Det verkliga användar-ID:t.
VANV — Verkligt användarnamn
Det verkliga användarnamnet.
S — Processtatus
Status för uppgiften kan vara en av:
D = oavbrytbar sömn
I = inaktiv
R = körande
S = sovande
T = stoppad av jobbstyrsignal
t = stoppad av felsökare under spårning
Z = zombie
Uppgifter som visas som körande bör man egentligen tänka på som redo att köra — deras task_struct
är helt enkelt representerad i Linux körkö. Även utan en sann SMP-maskin kan man se flera uppgifter i
detta tillstånd beroende på tops fördröjningsintervall och nice-värde.
DELT — Storlek på delat minne (KiB)
En delmängd av resident minne (RES) som kan användas av andra processer. Det kommer inkludera delade
anonyma sidor och delade filstödda sidor. Det inkluderar även privata sidor som är avbildade på filer
som representerar programavbilder och delade bibliotek.
Se ”ÖVERSIKT, Linux minnestyper” för ytterligare detaljer.
SID — Sessions-id
En session är en samling processgrupper (se PGRP), vanligen etablerad av inloggningsskalet. En
nyavgrenad process går med i sin skapares session. Som konvention är detta värde lika med sessionens
första medlems process-ID (se PID), kallad sessionsledaren, vilket vanligen är inloggningsskalet.
STARTAD — Starttidsintervall
Tidslängden sedan systemstarten när en process startades. Alltså kommer den senast startade uppgiften
visa det största tidsintervallet.
Värdet kommer uttryckas som ”MM:SS” (minuter:sekunder). Men om intervallet är för stort för att få
plats i kolumnbredden kommer det att skalas som ”HH,MM” (timmar,minuter) och möjligen därutöver.
SAID — Sparat användar-id
Det sparade användar-ID:t.
KOMPPGID — Komplementära grupp-id:n
Eventuella kompletterande gruppers ID:n etablerade vid inloggning eller ärvda från en uppgifts
förälder. De visas i en kommaseparerad lista.
Obs: Fältet KOMPGID har, till skillnad mot de flesta kolumner, inte fast bredd. När det visas kommer
det plus eventuella andra kolumner med variabel bredd allokeras all återstående skärmbredd (upp till
de maximala 512 tecknen).
KOMPGRP — Komplementära gruppnamn
Eventuella kompletterande gruppers namn etablerade vid inloggning eller ärvda från en uppgifts
förälder. De visas i en kommaseparerad lista.
Obs: Fältet KOMPGRP har, till skillnad mot de flesta kolumner, inte fast bredd. När det visas kommer
det plus eventuella andra kolumner med variabel bredd allokeras all återstående skärmbredd (upp till
de maximala 512 tecknen)
SANV — Sparat användarnamn
Det sparade användarnamnet.
VÄXL — Växlad storlek (KiB)
Den tidigare residenta delen av en uppgifts adressutrymme skrivet till växlingsfilen när fysiskt
minne blir överanvänt.
Se ”ÖVERSIKT, Linux minnestyper” för ytterligare detaljer.
TGID — Trådgrupps-id
Trådgruppens ID som en uppgift hör till. Det är trådgruppledarens PID. I kärnans termer representerar
det de uppgifter som delar en mm_struct.
TID — CPU-tid
Total CPU-tid uppgiften har använt sedan den startades. När kumulativt läge är På listas varje
process med cpu-tiden som den och dess döda barn har använt. Man växlar kumulativt läge med ”S”,
vilket är både en kommandoradsflagga och ett interaktivt kommando. Se Det interaktiva kommandot ”S”
för ytterligare information om detta läge.
TID+ — CPU-tid, hundradelar
Samma som TID, men avspeglar mer noggrannhet genom hundradelar av sekunder.
TPGID — Tty-processgrupps-id
Förgrundsprocessens processgrupps-ID för den anslutna tty:n, eller -1 om en process inte är ansluten
till en terminal. Enligt konvention är detta värde lika med processgruppsledarens (se PGRP)
process-ID (se PID).
TTY — Styrande tty
Styrterminalens namn. Detta är vanligen enheten (serieporten, pty, etc.) processen startades ifrån,
och vilken den använder för inmatning och utmatning. Dock behöver inte en terminal vara kopplad till
en terminal, i vilket fall man ser en ”?” visad.
AID — Användar-id
Uppgiftens effektiva ägares användar-ID.
ANV — Använt minne (KiB)
Detta fält representerar ej växlat fysiskt minne en uppgift använder (RES) plus den utväxlade delen
av dess adressutrymme (VÄXL).
Se ”ÖVERSIKT, Linux minnestyper” för ytterligare detaljer.
ANVÄNDARE — Användarnamn
Uppgiftens effektiva ägares användarnamn.
URSS — Unika mängdens storlek
Den inte utväxlade andelen av fysiskt minne (”RSS”) som inte delas med någon annan process. Det
härleds fron filen ”smaps_rollup”.
Att komma åt smaps-värden är 10× dyrare än annan minnesstatistik och data för andra användare kräver
root-privilegier.
VIRT — Storleken på virtuellt minne (KiB)
Den totala mängden virtuellt minne som används av uppgiften. Den inkluderar all kod, data och delade
bibliotek plus sidor som har växlats ut och sidor som har avbildats men inte använts.
Se ”ÖVERSIKT, Linux minnestyper” för ytterligare detaljer.
WKAN — Sover i en funktion
Detta fält kommer visa namnet på kärnfunktionen i vilken uppgiften just nu sover. Körande uppgifter
kommer visa ett streck (”-”) i denna kolumn.
ioL — I/O-byte lästa
Antalet byte en process orsakade att de lästes från lagringsnivån.
Root-privilegier krävs för att visa ”io”-data för andra användare.
ioLåt — I/O-läsåtgärder
Antalet läs-I/O-åtgärder (systemanrop) för en process. Sådana anrop resulterar inte nödvändigtvis i
faktisk fysisk disk-I/O.
ioS — I/O-byte skrivna
Antalet byte en process orsakade att de skickades till lagringsnivån.
ioSåt — I/O-skrivåtgärder
Antalet skriv-I/O-åtgärder (systemanrop) för en process. Sådana anrop resulterar inte nödvändigtvis i
faktisk fysisk disk-I/O.
aSmu — Antal smutsiga sidor
Antalet sidor som har ändrats sedan de senast skrevs till extra lagring. Smutsiga sidor måste skrivas
till extra lagring före den motsvarande fysiska minnesplatsen kan användas för någon annan virtuell
sida.
Detta fält är föråldrat sedan linux 2.6 och är alltid noll.
aSmå — Antal större sidfel
Antalet stora sidfel som inträffat för en uppgift. Ett sidfel inträffar när en process försöker läsa
från eller skriva till en virtuell sida som inte för närvarande finns i dess adressrymd. Ett stort
sidfel är när extra lagring är inblandat i att göra sidan tillgänglig.
aSmå — Antal mindre sidfel
Antalet små sidfel som inträffat för en uppgift. Ett sidfel inträffar när en process försöker läsa
från eller skriva till en virtuell sida som inte för närvarande finns i dess adressrymd. Ett litet
sidfel blandar inte in åtkomst av extra lagring för att göra sidan tillgänglig.
nTR — Antal trådar
Antalet trådar kopplade till en process.
nrGRUPPER — CGROUP-namnrymd
Inoden för namnrymden som används för att dölja identiteten på styrgruppen i vilken processen är en
medlem.
nrIPK — IPK-namnrymd
Inoden för namnrymden som används för att isolera resurser för interprocesskommunikation (IPK) såsom
System V IPC-objekt och POSIX-meddelandeköer.
nrMNT — MNT-namnrymd
Inoden för namnrymden som används för att isolera monteringspunkter för filsystem och därmed erbjuder
olika vyer av filsystemshierarkin.
nrNÄT — NÄT-namnrymd
Inoden för namnrymden som används för att isolera resurser såsom nätverksenheter, IP-adresser,
IP-ruttläggning, portnummer etc.
nrPID — PID-namnrymd
Inoden för namnrymden som används för att isolera process-ID-nummer vilket betyder att de inte
behöver vara unika. Alltså kan varje sådan namnrymd ha sin egen ”init/systemd” (PID nr. 1) för att
hantera diverse initieringsuppgifter och skörda föräldralösa barnprocesser.
nrTID — TIDS-namnrymd
Inoden för namnrymden som låter processer se olika systemtider på ett sätt liknande det för
UTS-namnrymden.
nrANV — ANVÄNDAR-namnrymd
Inoden för namnrymden som används för att isolera användar- och grupp-ID-nummer. Alltså kan en
process ha ett normalt opriviligierat anändar-ID utanför en användarnamnrymd medan den har
användar-ID 0, men fullständiga root-privilegier, inuti den namnrymden.
nrUTS — UTS-namnrymd
Inoden för namnrymden som används för att isolera värdnamn och NIS-domännamn. UTS betyder helt enkelt
”UNIX Time-sharing System”.
vSt — Delta av antal stora sidfel
Antalet stora sidfel som har inträffat sedan den senaste uppdateringen (se aSto).
vSm — Delta av antal mindre sidfel
Antalet små sidfel som har inträffat sedan den senaste uppdateringen (se aSmå).
3b. HANTERING av fält
Efter att trycka det interaktiva kommandot ”f” (fälthantering) kommer man presenteras med en skärm som
visar: 1) namnet på ”aktuellt” fönster; 2) det utsedda sorteringsfältet; 3) alla fält i deras aktuella
ordning tillsammans med beskrivningar. Poster markerade med en asterisk är fält som visas just nu, i den
mån skärmbredden tillåter.
• Som intruktionerna på skärmen indikerar navigerar man mellan fälten med piltangenterna upp och
ner. Tangenterna PgUp, PgDn, Home och End kan också användas för att snabbt nå det första eller
sista tillgängliga fältet.
• Piltangenten höger väljer ett fält för att flyttas och piltangenten vänster eller tangenten
<Enter> fastställer det fältets placering.
• Tangenten ”d” eller <mellanslag> växlar ett fälts visningsstatus, och därmed förekomsten eller
frånvaron av asterisken.
• Tangenten ”s” markerar ett fält som sorteringsfältet. Se avsnittet 4c. UPPGIFTSOMRÅDETS kommandon,
SORTERING för ytterligare information om valet av sorteringsfält.
• Tangenterna ”a” och ”w” kan användas för att bläddra igenom alla tillgängliga fönster och
tangenterna ”q” eller <Esc> går ur fälthanteringen.
Fälthanteringsskärmen kan även användas för att ändra ”aktuell” fönster-/fältgrupp i antingen
helskärmsläge eller alternativt visningsläge. Det som var målet när ”q” eller <Esc> trycktes kommer att
göras aktuellt när man återgår till top-visningen. Se avsnittet 5. ALTERNATIVA SKÄRMARS utseende och det
interaktiva kommandot ”g” för kunskap om aktuella fönster och fältgrupper.
Obs: ett fönster som har rullats horisontellt kommer att återställas om några fältändringar görs via
fälthanteringsskärmen. Eventuell vertikal rullningsposition, däremot, kommer inte påverkas. Se avsnittet
5c. RULLA ett fönster för ytterligare information om att rulla vertikalt och horisontellt.
4. INTERAKTIVA kommandon
Listade nedan är ett kort register över kommandon i kategorier. Några kommandon förekommer mer än en gång
— deras betydelse eller omfattning kan variera beroende på sammahanget i vilket de ges.
4a. Globala-kommandon
<Ent/Sp> ?, =, 0,
A, B, d, E, e, g, H, h, I, k, q, r, s, W, X, Y, Z,
^G, ^K, ^N, ^P, ^U, ^L, ^R
4b. Sammanfattningsområdets.kommandon
C, l, t, m, 1, 2, 3, 4, 5, !
4c. Uppgiftområdets-kommandon
Utseende: b, J, j, x, y, z
Innehåll: c, F, f, O, o, S, U, u, V, v, ^E
Storlek: #, i, n
Sortering: <, >, f, R
4d. FÄRGavbildning
<Ret>, a, B, b, H, M, q, S, T, w, z, 0 - 7
5b. Kommandon-för-fönster
-, _, =, +, A, a, G, g, w
5c. Rulla-ett-fönster
C, Upp, Ned, Vänster, Höger, PgUp, PgDn, Home, End
5d. Söka-i-ett-fönster
L, &
5e. Filtrera-i-ett-fönster
O, o, ^O, =, +
4a. GLOBALA kommandon
De globala interaktiva kommandona är alltid tillgängliga påde i helskärmsläge och alternativt
visningsläge. Dock är några av dessa interaktiva kommandon inte tillgängliga när man kör i säkert läge.
Om man vill veta i förväg huruvida eller inte ens top har säkrats, fråga helt enkelt efter hjälp och
titta på systemsammanfattningen på den andra raden.
<Enter> eller <Mellanslag> :Uppdatera visningen
Dessa kommandon väcker upp top och som följd av mottagande av någon indata kommer hela skärmen
ritas om. De framtvingar även en uppdatering av eventuella ändringar i drift av cpu eller fysiskt
minne.
Man kan använda vilken som helst av dessa tangenter om man har ett långt fördröjningsintervall och
vill se den aktuella statusen.
? | h :Hjälp
Det finns två hjälpnivåer tillgängliga. Den första kommer ge en påminnelse om alla gruldäggande
interaktiva kommandon. Om top är säkrad kommer den skärmen vara förkortad.
Att trycka ”h” eller ”?” på den hjälpskärmen kommer ta en till hjälp för de interaktiva kommandon
som är tillämpliga på alternativt visningsläge.
= :Gå ur visningsbegränsningar
Tar bort begränsningar på vad som visas. Detta kommando kommer återställa kommandon ”i” (inaktiva
uppgifter), ”n” (max uppgifter), ”v” (dölj barn) och ”F” fokus som kan vara aktiva. Det avslutar
också PID-monitorering, användarfiltrering, annan filtrering, lokaliseringsbearbetning och
kombinera-Cpu-läge.
Dessutom, om fönstret har rullats kommer det at återställas av detta kommando.
0 :Nollundertryckningsväxel
Detta kommando styr huruvida nollor visas eller undertrycks för många av fälten i ett
uppgiftsfönster. Fält som AID, GID, NI, PR eller P påverkas inte av denna växel.
A :Alternativt visningslägesväxel
Detta kommando kommer att byta mellan helskärmsläge och alternativt visningsläge. Se avsnittet 5.
ALTERNATIVA SKÄRMARS utseende och det interaktiva kommandot ”g” för insikt i aktuella fönster och
fältgrupper.
B :Fetstil-avaktiverings/aktiveringsväxel
Detta kommando kommer påverka användningen av terminalegenskapen feltstil och ändrar både
sammanfattningsområdet och . t för ”aktuellt” fönster. Även om det är tänkt i första hand för
dumma terminaler kan det användas när som helst.
Obs: när denna växel är På och top kör i monokromt läge kommer hela skärmen uppträda som normal
text. Alltså, om inte växeln ”x” och/eller ”y” använder omvänd markering kommer det inte finnas
någon visuell bekräftelse ens att de är på.
* d | s :Ändra tidsfördröjningsintervallet
Man får frågan om att ange fördröjningstiden, i sekunder, mellan skärmuppdateringar.
Delar av sekunder respekteras, men ett negativt tal är inte tillåtet. Att ange 0 medför (nästan)
kontinuerliga uppdateringar, med en otillfredsställande bild eftersom systemet och tty-drivritunen
försöker hänga med i tops begäranden. Fördröjningsvärdet är omvänt proportionellt till
systembelastningen, så sätt det med försiktighet.
Om man vid något tillfälle vill veta den aktuella fördröjningstiden, be helt enkelt om hjälp och
se systemsammanfattningen på andra raden.
E :Styr sammanfattningens minnesskala i sammanfattningsområdet
Med detta kommando kan man gå runt mellan de möjliga minnesskalningarna i sammanfattningsområdet
vilket går från KiB (kibibyte ller 1 024 byte) till EiB (exbibyte eller 1 152 921 504 606 846 976
byte).
Om man ser ett ”+” mellan ett visat tal och den följande etiketten betyder det att top var tvunget
att hugga av en del av det talet. Genom att öka skalfaktorn kan sådan avhuggning undvikas.
e :Styr uppgiftsminnesskallan i uppgiftsområdet
Med detta kommando kan man gå runt mellan de tillgängliga minnesskalningarna i uppgiftsområdet
viket går från KiB (kibibyte eller 1 024 byte) till PiB (pebibyte eller 1 125 899 906 842 624
byte).
Även om top kommer försöka respektera den valda målintervallet kan ytterligare skalning
fortfarande vara nödvändigt för att få plats med aktuella värden. OM man vill se ett mer homgent
resultat i minneskolumnerna är att höja skalintervallet vanligen ett sätt att nå det målet. Att
öka det för högt kommer dock förmodligen skapa ett resultat med bara nollor vilket inte kan
undertryckas med det interaktiva kommandot ”0”.
g :Välj en annan fönster-/fältgrupp
Man kommer få frågan om att ange ett tal mellan 1 och 4 som anger den fältgrupp som skall göras
till ”aktuellt” fönster. Man blir snart bekväm med dessa 4 fönster, särskilt efter att ha
experimenterat med alternativt visningsläge.
H :Trådlägesväxel
När denna växel är På kommer enskilda trådar visas för alla processer i alla synliga
uppgiftsfönster. Annars visar top en sammanfattning av alla trådar i varje process.
I :Irix-/Solaris-lägesväxel
När man arbetar i Solaris-läge (”I” växlat Av) kommer en uppgifts cpu-användning delas med det
totala antalet cpu:er. Efter att ge detta kommando blir man meddelad om det nya tillståndet för
denna växel.
* k :Döda en uppgift
Man får frågan om vilken PID och signalen som skall skickas.
Att inte ange någon PID eller ett negativt tal kommer tolkas som standardvärdet i frågan (den
första uppgift som är listad). Ett PID-värde på noll betyer programmet top självt.
Standardsignalen, som den avspeglas i frågan, är SIGTERM. Man kan dock skicka vilken signal som
helst, via nummer eller namn.
Om man vill avbryta dödandeprocessen, gör men en av följande beroende på hur långt man kommit:
1) vid frågan om pid, skriv ett ogiltigt nummer
2) vid frågan om signal, skriv 0 (eller godtycklig ogiltig signal)
3) vid godtycklig fråga, skriv <Esc>
q :Avsluta
* r :Ändra nice för en uppgift
Man får fråga om ett PID och sedan värdet att sätta dess nice till.
Att inte ange någon PID eller ett negativt tal kommer tolkas som standardvärdet i frågan (den
första uppgift som är listad). Ett PID-värde på noll betyer programmet top självt.
Ett positivt nice-värde gör att processen förlorar prioritet. Omvänt gör ett negativt nice-värde
att processen ses mer fördelaktigt av kärnan. Som en allmän regel kan vanliga användare bara öka
nice-värdet och hindras från att sänka det.
Om man vill avbryta processen att ändra nice-värde, gör men en av följande beroende på hur långt
man kommit:
1) vid frågan om pid, skriv ett ogiltigt nummer
2) vid frågan om nice, skriv <Enter> utan någon indata
3) vid godtycklig fråga, skriv <Esc>
W :Skriv konfigurationsfilen
Detta kommer spara alla valda alternativ och växlar plus det aktuella visningsläget och
fördröjningstiden. Genom att ge detta kommando just före man avslutar top kan man återstarta
senare i exakt samma tillstånd.
X :Extra fältbredd
Några fält har fix bred och är inte skalbara. Som sådana är de föremål för avhuggning vilket
indikeras av ett ”+” i den sista positionen.
Detta interaktiva kommando kan användas för att ändra bredden på följande fält:
fält standard fält standard fält standard
GID 5 GRUPP 8 VKAN 10
LOGID 5 LXC 8 nrGRUPPER 10
VAID 5 VANV 8 nrIPK 10
SUID 5 SANV 8 nrMNT 10
AID 5 TTY 8 nrNÄT 10
ANVÄNDARE 8 nrPID 10
nrTID 10
nrANV 10
nrUTS 10
Man får frågan om mängden att lägga till till standardbredderna visade ovan. Att ange noll
återställer till dessa standardvärden.
Om man anger ett negativt tal kommer top automatiskt öka kolumstorleken så mycket som behövs tills
det inte finns någon mer avhuggen data.
Obs: oavsett om de ökas explicit eller automatiskt minskas aldrig bredden på dessa fält av top.
För att smalna av dem måste man ange ett mindre tal eller återställa standardvärdena.
Y :Inspektera annan utmatning
Efter att man gett det interaktiva kommandog ”Y” kommer man få frågan om en mål-PID. Att skriva
ett värde eller godta standardvärdet resulterar i en separat skärm. Den skärmen kan användas för
att se olika filer eller rör-kommandons utdata medan den normala iterativa uppdateringen av top är
pausad.
Obs: detta interaktiva kommando är bara fullt ut förverkligat när stödjande poster manuellt har
lagts till till slutet av konfigurationsfilen för top. För detaljer om att skapa dessa poster, Se
avsnittet 6b. LÄGGA TILL INSPEKTIONSposter.
De flesta tangenter som används för att styra inspektionsfunktionen visas i dess huvudprolog. Det
finns dock ytterligare tangenter tillgängliga när man har valt en viss fil eller ett visst
kommando. De är bekanta för den som har använt bläddraren ”less” och sammanfattas här för framtida
referens.
tangent funktion
= växla statusrad, fil eller rör
/ sök, ekvivalent med ”L” lokalisera
n sök nästa, ekvivalent med ”&” lokalisera nästa
<Mellanslag> rulla ner, ekvivalent med <PgDn>
b rulla upp, ekvivalent med <PgUp>
g första raden, ekvivalent med <Home>
G sista raden, ekvivalent med <End>
Z :Byt färgavbildning
Med detta kommando tas man till en separat skärm där man kan ändra färger för ”aktuellt” fönster,
eller för alla fönster. För detaljer om detta interaktiva kommando se avsnittet 4d.
FÄRGavbildning.
^G :Visa-styrgrupper (Ctrl-tangent + ”g”)
^K :Visa-kommandorad (Ctrl-tangent + ”k”)
^N :Visa-miljö (Ctrl-tangent + ”n”)
^P :Visa-namnrymder (Ctrl-tangent + ”p”)
^U :Visa-kompletterande-grupper (Ctrl-tangent + ”u”)
Tillämpat på den första visade processen kommer dessa kommandon visa den uppgiftens fullständiga
(eventuellt radbrutna) information. Sådana data kommer visas i ett separat fönster längst ner på
skärmen medan normal top-monitorering fortsätter.
Att trycka samma ”Ctrl”-kommando en andra gång tar bort det separata fönstret och detsamma gör
kommandot ”=”. Att trycka en annan ”Ctrl”-kombination medan en redan är aktiv byter omedelbart
till den nya informationen.
Värt att notera bland dessa möjligheter är kommandot Ctrl+N (miljö). Dess utdata kan vara
omfattande och inte lätt att läsa när den är radbruten. En mer läsbar version kan uppnås med ett
”Inspektera”-post i rcfile-filen liksom den följande.
pipe ^I Miljö ^I cat /proc/%d/environ | tr '\0' '\n'
Se det interaktiva kommandot ”Y” ovan och avsnittet 6b. LÄGGA TILL INSPEKTIONSposter för
ytterligare information.
Som ett alternativ till ”Inspektera”, och tillgängligt för alla dessa ”Ctrl”-kommandon kan
tabulatortangenten användas för att markera enskilda element i bottenfönstret.
^L :Loggade-meddelanden (Ctrl-tangent + ”l”)
De 10 senaste meddelandena visas i ett separat fönster längst ner på skärmen samtidigt som normal
top-monitorering fortsätter. Att trycka ”^L” en andra gång tar bort det fönstret och detsamma gör
kommandot ”=”. Använd tabulatortangenten för att markera enskilda meddelanden.
* ^R :Ändra-nice-på-en-autogrupp (Ctrl-tangent + ”r”)
Man får fråga om en PID och sedan värdet på dess autogrupps AGNI.
Att inte ange någon PID kommer tolkas som standardvärdet som visas i prompten (den första visade
uppgiften).
Ett positivt AGNI-värde kommer göra att processer i den autogruppen förlorar prioritet. Omvänt gör
ett negativt värde att de kommer betraktas mer förmånligt av kärnan. Vanliga användare tillåts
inte sätta negativa AGNI-värden.
Om man vill avbryta processen att ändra nice-värde skriver man <Esc>.
* Kommandon som visas med en asterisk (”*”) är inte tillgängliga i säkert läge, inte heller kommer de
visas på hjälpskärm nivå-1.
4b. SAMMANFATTNINGSOMRÅDETS kommandon
Sammanfattningsområdets interaktiva kommandon är alltid tillgängliga i både helskärmsläge och alternativt
visningsläge. De påverkar de inledande raderna på skärmen och avgör positionen för meddelanden och
frågor.
Dessa kommandon påverar alltid bara ”aktuell” fönster-/fältgrupp. Se avsnittet 5. ALTERNATIVA SKÄRMARS
utseende och det interaktiva kommandot ”g” för kunskap om ”aktuellt” fönster och fältgrupper.
C :Visa rullkoordinatersväxel
Växla ett informationsmeddelande som visas när meddelanderaden inte används till något annat. För
ytterligare information se avsnittet 5c. RULLA ett fönster.
l :Lastgenomsnitts/uppetidsväxel
Detta är också raden som innehåller programnamnet (möjligen ett alias) när man kör i helskärmsläge
eller namnet på ”aktuellt” fönster när man kör i alternativt visningsläge.
t :Uppgifts/cpu-tillståndsväxel
Detta kommando påverkar från 2 till många sammanfattningsområdesrader, beroende på tillståndet hos
kommandoflaggorna ”1”, ”2” eller ”3” och huruvida eller inte top kör under sant SMP.
Denna del av av sammanfattningsområdet påverkas även av den den interaktiva kommandoflaggan ”H”,
eftersom den avspeglas i den totala etiketten vilken visar antinge uppgifter eller trådar.
Detta kommando fungerar som en 4-vägsväxel, och roterar genom dessa lägen:
1. detaljerade procentsatser efter kategori
2. förkortade användar/system och total % + stapeldiagram
3. förkortade användar/system och total % + blockdiagram
4. slå av visning av uppgifter och cpu-tillstånd
När man kör i endera av de grafiska lägena blir skärmen mycket mer meningsfull när individuella
CPU:er eller NUMA-noder också visas. Se kommandona ”1”, ”2” och ”3” nedan för ytterligare
information.
m :Minnes-/växlingsanvändningsväxel
Detta kommando påverkar de två sammanfattningsområdesraderna som hanterar fysiskt och virtuellt
minne.
Detta kommando fungerar som en 4-vägsväxel, och roterar genom dessa lägen:
1. detaljerade procentsatser efter minnestyp
2. förkortad % använt/totalt tillgängligt + stapeldiagram
3. förkortad % använt/totalt tillgängligt + blockdiagram
4. slå av visning av minne
1 :Enkla/separata cpu-tillståndsväxel
Detta kommando påverkar hur kommandot ”t”:s cpu-tillståndsdel visas. Även om denna växel finns
först och främst för att hantera massivt parallella SMP-maskiner är den itne begränsad endast till
SMP-miljöer.
När man ser ”%Cpu(s):' i sammanfattningsområde är växeln ”1” På och all cpu-information samlas på
en enda rad. Annars visas varje cpu separat som: ”%Cpu0, %Cpu1, …” upp till den tillgängliga
skärmhöjden.
2 :NUMA-noder/cpu-sammanfattningsväxel
Detta kommando vexlar mellan kommandot ”1” cpu-sammanfattnignsskärm (endast) eller en
sammanfattningsskärm plus cpu-användningsstatistiken för varje NUMA-nod. Det är endast
tillgängligt om ett system har det nödvändiga stödet för NUMA.
3 :Expandera-NUMA-nod
Man erbjuds att ange ett nummer som representerar en NUMA-nod. Därefter kommer en
nodsammanfattning plus statistik för varje cpu i den noden att visas tills kommandoflaggan ”1”,
”2” eller ”4” trycks. Detta interaktiva kommando är endast tillgängligt om ett system har det
nödvändiga stödet för NUMA.
4 :Visa-flera-element-intillväxel
Denna kommandoflagga slår Av flaggan ”1” och visar flera CPU- och minnesresultat på varje rad.
Varje följande tangent ”4” lägger till en ytterligare CPU tills den återgår igen till separata
rader för CPU- och minnesresultat.
Maximalt 8 CPU:er per rad kan visas på detta sätt. Dock kan avhuggning av data förekomma före
maximum nås. Detta är särskilt sant när man visar detaljerad statistik via kommandoflaggan ”t”
eftersom sådana data inte kan skalas såsom den grafiska representationen.
Om man önskar att snabbt avsluta intilläge utan att gå igenom alla sätt till 8, tryck helt enkelt
på kommandoflaggan ”1”.
5 :Visa-P-kärnor-och-E-kärnorväxel
Denna kommandoflagga är endast aktiv när växeln ”t” är På och växlarna ”1”, ”2”, ”3” och ”!” är
Av, alltså visar individuella CPU-resultat. Den antar att en plattform har flera kärnor av två
olika typer, antingen multitrådade (P-kärnor) eller enkeltrådade (E-kärnor).
Medan normalt varje cpu visas som ”%Cpu0, %Cpu1, …” kan denna växel användas för att identifiera
och/eller filtrera dessa :er efter sin kärntyp, antinge P-kärna (prestanda) eller E-kärna
(effektivitet).
Den 1:a gången ”5” skrivs visas varje CPU som ”CpP” eller ”%CpE” som representerar de två
kärntyperna. Den 2:a gången kommer endast P-kärnor (%CpP) visas. Den 3:e gången visas E-kärnor
(%CpE). När denna kommandoflagga trycks den 4:e gången återgår CPU-visningen till den vanliga
konventionen ”%Cpu”.
Om inte separata prestanda och effektiva kategorier finns har denna kommandoflagga ingen effekt.
! :Kombinera-cpu:er-lägesväxel
Denna kommandoflagga är avsedd för massivt parallella SMP-miljöer där, även med kommandoflaggan
”4”, inte alla processer kan visas. Med varje tryck på ”!” dubblas antalet cpu:er som kombineras
och därmed reduceras det totala antalet cpu-rader som visas.
Till exempel, med det första trycket på ”!” kmmer två cpu:er kombineras och visas som ”0-1, 2-3,
…” istället för de normala ”%Cpu0, %Cpu1, %Cpu2, %Cpu3, …”. Med en andra kommandoflagga ”!”
kombineras fyra cpu:er och visas som ”0-3, 4-7, …”. Sedan med ett tredje tryck på ”!”, kombineras
åtta cpu:er, och visas som ”0-7, 8-15, …”, etc.
Så fortsätter det tills individuella cpu:er återigen visas och påverkar de båda växlarna ”1” och
”4” (en eller flera kolumner). Används kommandot ”=” för att avsluta läget Kombinera-cpu:er.
Obs: om hela sammanfattningsområdet har slagits Av för något fönster skulle man bara ha kvar
meddelanderaden. På detta sätt har man då maximerat de tillgängliga raderna för uppgifter men
(tillfälligt) offrat programnamnet i helskärmsläge eller namnet på ”aktuellt” fönster när man är i
alternativt visningsläge.
4c. UPPGIFTOMRÅDETS kommandon
Uppgiftsområdets interaktiva kommandon är alltid tillgängliga i helskärmsläge.
Uppgiftsområdets interaktiva kommandon är aldrig tillgängliga alternativt visningsläge om
uppgiftsvisningen för ”aktuellt” fönster har slagits Av (se avsnittet 5. ALTERNATIVA SKÄRMARS utseende).
UTSEENDET på uppgiftsfönstret
J :Justera numeriska kolumnerväxel
Växlar mellan högerjusterad (standard) och vänsterjusterad numerisk information. Om den numeriska
datan helt fyller ut den tillgängliga kolumnen kan denna endast påverka kolumnhuvudet.
j :Justera teckenkolumnerväxel
Växlar mellan vänsterjusterad (standard) och högerjusterad teckeninformation. OM teckendatan helt
fyller ut den tillgängliga kolumnen kan denna kommandoflagga endast påverka kolumnhuvudet.
Följande kommandon kommer även att påverkas av tillståndet hos den globala växeln ”B” (aktivera
fetstil).
b :Fet/inversväxel
Detta kommando kommer påverka hur växlarna ”x” och ”y” visas. Det kan också påverka
sammanfattningsområdet när stapeldiagram har valts för cpu-tillstånd eller minnesanvändning via
växlarna ”t” eller ”m”.
x :Kolumnmarkeringsväxel
Ändrar markeringen för det aktuella sorteringsfältet. Om man glömmer vilket fält som sorteras kan
detta kommando fungera som en snabb visuell påminnelse, förutsat att sorteringsfältet visas.
Sorteringsfältet behöver inte vara synligt på grund av att
1) det finns otillräckligt med skärmbredd
2) det interaktiva kommandot ”f” har slaget Av det
y :Radmarkeringsväxel
Byter markering för ”körande” uppgifter. För ytterligare kunskap om detta uppgiftstillstånd, se
avsnittet 3a. BESKRIVNING av fält, fältet ”S” (processtatus).
Användning av denna möjlighet ger viktiga kunskaper om systemets hälsa. Den enda kostnaden kommer
vara några få ytterligare tty-flyktföljder.
z :Färg/monokromväxel
Byter det aktuella fönstret mellan det senast valda färgschemat och den äldre formen av
svart-på-vitt eller vitt-på-svart. Detta kommando kommer ändra bådet sammanfattningsområdet och
uppgiftsområdet men påverkar inte tillståndet hos växlarna ”x”, ”y” eller ”b”.
INNEHÅLL i uppgiftsfönstret
c :Kommandorad/programnamnväxel
Detta kommando kommer att följas oavsett huruvida kolumnen KOMMANDO är synlig för närvarande eller
inte. Skulle det fältet senare visas kommer ändringen man gjorde visas.
F :Behåll-föräldrafokusväxel
I skogsvysläge fungerar denna tangent som en växel till att behålla fokus på en måluppgift,
förmodligen en med avgrenade barn. Om skogsvysläget är Av har denna tangent ingen effekt.
Växeln tillämpas på den första (översta) processen i det ”aktuella” fönstret. När det är etablerat
visas alltid uppgiften som den första (översta) processen tillsammans med dess avgrenade barn.
Alla andra processer kommer utelämnas.
Obs: tangenter som ”i” (inaktiva uppgifter), ”n” (max uppgifter), ”v” (dölj barn) och filter av
användare/övrigt fortsätter att vara tillgängliga och kan påverka vad som visas.
f :Fälthantering
Denna tangent visar en separat skärm där man kan ändra vilka fält som visas, deras ordning och
även utse sorteringsfältet. För ytterligare information om detta interaktiva kommando se avsnittet
3b. HANTERING av fält.
O | o :Övrig-filtrering
Man kommer få en fråga om urvalskriterier som sedan avgör vilka uppgifter som kommer visas i
”aktuellt” fönster. Kriterierna kan göras skiftlägeskänsliga eller så kan skiftläget ignoreras.
Och man bestämmer om top skall inkludera eller exkludera matchande uppgifter.
Se avsnittet 5e. FILTRERA i ett fönster för detaljer om dessa och andra relaterade interaktiva
kommandon.
S :Kumultativ-tids-lägesväxel
När kumulativt läge är På listas varje process med cpu-tiden som den och dess döda barn har
använt.
När Av kommer program som grenar av i många separata uppgifter förefalla mindre krävande. För
program som ”init” eller ett skal är detta lämpligt men för andra, som kompilatorer, kanske inte.
Experminetera med två uppgiftsfönster som delar samma sorteringsfält men med olika ”S”-tillstånd
och se vilken representation du föredrar.
Efter att ha gett detta kommando blir man informerad om det nya tillstånded hos denna växel. Om
man vill veta i förväg huruvida kumulativt läge är på eller inte, be helt enkelt om hjälp och se
fönstersammanfattningen på andra raden.
U | u :Visa-endast-specifik-användare
Man får frågan om uid eller namn på användaren som skall visas. Flaggan -u matchar den effektiva
användaren medan flaggan -U matchar godtycklig användare (verklig, effektiv, sparad eller
filsystem).
Därefter visas endast matchande användare i det uppgiftsfönstert, eller möjligen visas inga
processer. Genom att inleda med ett utropstecken (”!”) före anvädare-id eller -namn instruerar man
top att visa endast processer med användare som inte matchar den angivna.
Olika uppgiftsfönster kan användas för att filtrera olika användare. Senare, om man vill se alla
användare igen i ”aktuellt” fönster, ge detta kommando igen men tryck bara <Enter> vid frågan.
V :Skogsvyslägesväxel
I detta läge ordnas processer om efter sina föräldrar och layouten av kolumnen KOMMANDO liknar den
hos ett träd. I skogsvysläge är det fortfarande möjligt att växla mellan programnamn och
kommandorad (se det interaktiva kommandot ”c” eller mellan processer och trådar (se det
interaktiva kommandot ”H”).
Obs: att att trycka godtycklig tangent som anger sorteringsordning kommer lämna skogsvysläge i det
aktuella fönstret. Se avsnittet 4c. UPPGIFTOMRÅDETS kommandon, SORTERING för information om dessa
tangenter.
v :Dölj/visa barn-växel
I skogsvysläge fungerar denna tangent som en växel mellan att fälla ihop eller expandera en
förälders barn.
Växeln fungerar endast mot den första (översta) processen i det aktuella fönstret. se avsnittet
5c. RULLA ett fönster för ytterligare information om vertikal rullning.
Om målprocessen inte har grenat av några barn har denna tangent ingen effekt. Den har inte heller
någon effekt när man inte är i skogsvyläge.
^E :Skala-CPU-tidsfält (Ctrl-tangent + ”e”)
”Tids”fälten visas normalt med den största precisionen deras bredd tillåter. Denna växel reducerar
den precisionen tills det slår runt. Den illustrerar även skalningen dessa fält kan uppvisa
automatiskt, vilket vanligen beror på hur länge systemet kör.
Till exempel, om ”MMM:SS.hh” visas, skulle varje tryck på ^E ändra det till: ”MM:SS”, ”timmar,MM”,
”dagar+timmar” och slutligen ”veckor+dagar”.
Alla tidsfält är inte föremål för hela intervallet av sådan skalning.
STORLEK på uppgiftsfönster
i :Inaktiv-processväxel
Visar alla uppgifter eller bara aktiva uppgifter. När denna växel är Av kommer uppgifter som inte
använt någon CPU sedan den senaste uppdateringen inte att visas. Dock, på grund av granulariteten
hos fälten %CPU och TID+, kan några processer fortfarande visas som förefaller inte ha använt
någon CPU.
Om detta kommando används på den sista uppgiftsvisningen när man är i alternativt visningsläge, då
kommer den inte påverka fönsterstorleken, eftersom alla föregående uppgiftsvisningar redan kommer
ha ritats ut.
n | # :Ange maximala uppgifter
Man kommer ombeds ange antalet uppgifter att visa. Det lägre av talet och det tillgängliga antalet
skärmrader kommer användas.
När är i alternativt visningsläge ger detta kommando precis kontroll över storleken på varje
samtidigt synlig uppgiftsvisning, utom den allra sista. Det kommer inte påverka det sista
fönstrets storlek, eftersom alla föregående uppgiftsvisningar redan kommer ha ritats ut.
Obs: om man vill öka storleken på den sista synliga uppgiftsvisningen när man är i alternativt
visningsläge, minska helt enkelt storleken på uppgiftsvisningen ovanför den.
SORTERING av uppgiftsfönster
För kompatibilitet stödjer denna top de flesta tidigare top sorteringstangenter. Eftersom detta
primärt är en tjänst till tidigare användare av top, finns dessa kommandon inte med på någon
hjälpskärm.
kommando sorteringsfält stödjs
A starttid (ej visat) Nej
M %MEM Ja
N PID Ja
P %CPU Ja
T TIME+ Ja
Före man använder någon av följande sorteringsmöjligheter föreslår top att man tillfälligt slår på
kolumnmarkering med det interaktiva kommandog ”x”. Det kommer hjälpa att säkerställa att den faktiska
sorteringsmiljön motsvarar ens avsikt.
Följande interaktiva kommandon kommer bara följas när det aktuella sorteringsfältet är synligt.
Anledning till att sorteringsfältet inte är synligt kan vara för att:
1) det finns otillräckligt med skärmbredd
2) det interaktiva kommandot ”f” slog Av det
< :Flytta sorteringsfält åt vänster
Flyttar sorteringskolumnen åt vänster om inte det aktuella sorteringsfältet är det första
fältet som visas.
> :Flytta sorteringsfält åt höger
Flyttar sorteringskolumnen åt höger om inte det aktuella sorteringsfältet är det sista fältet
som visas.
Följande interaktiva kommandon kommer alltid följas oavsett huruvida det akutella sorteringsfältet är
synligt eller inte.
f :Fälthantering
Denna tangent visar en separat skärm där man kan ändra vilket fält so används som
sorteringskolumn, bland andra funktioner. Detta kan vara ett bekvämt sätt att enkelt verifiera
det aktuella sorteringsfältet när man kör top med kolumnmarkeringen Av.
R :Inverst/Normalt sorteringsfältsväxel
Genom att använda detta interaktiva kommando kan man byta mellan hög-till-låg och låg-till-hög
sortering.
4d. FÄRGavbildning
När man ger det interaktiva kommandot ”Z” visas en separat skärm. Den skärmen kan användas för att ändra
färgerna i bara det ”aktuella” fönstret eller i alla fyra fönstren innan man återvänder till
top-visningen.
Följande interaktiva kommandon är tillgängliga.
4 versala bokstäver för att välja ett mål
8 nummer för att välja en färg
normala tillgänliga växlar
B :fetstil avaktivera/aktivera
b :körande uppgift ”fet”/invers
z :färg/mono
andra tillgängliga kommandon
a/w :verkställ, gå sedan till nästa/föregående
<Enter> :verkställ och avsluta
q :avbryt aktuella ändringar och avsluta
Om man använder ”a” eller ”w” för att gå igenom målfönster kommer man ha använt det färgschema som
visades när man lämnade det fönstret. Man kan naturligtvis enkelt återvända till ett fönster och
återapplicera andra färger eller helt slå Av färger med växeln ”z”.
Färgavbildningsskärmen kan även användas för att ändra den ”aktuella” fönster-/fältgruppen i antingen
helskärmsläge eller alternativt visningsläge. Oavsett vad som var målet när ”q” eller <Enter> trycktes
kommer göras aktuellt när man återvänder till top-visningen.
5. ALTERNATIVA SKÄRMARS utseende
5a. FÖNSTERöversikt
Fältgrupper/fönster:
I helskärmsläge finns det ett ensamt fönster representerat av hela skärmen. Det enda fönstret kan
fortfarande ändras till att visa 1 av 4 olika fältgrupper (se det interaktiva kommandot ”g”, repeterat
nedan). Vart och ett av de 4 fältgrupperna har ett unikt separat konfigurerbart sammanfattningsområde
och sitt egen konfigurerbara uppgiftsområde.
I alternativt visningsläge kan dessa 4 underliggande fältgrupper nu göras synliga samtidigt, eller kan
slås Av individuellt på kommando.
Sammanfattningsområdet kommer alltid finnas, även om det endast är meddelanderaden. Vid varje given
tidpunkt kan endast ett sammanfattningsområde visas. Dock, beroende på givna kommandon, kan det finnas
från noll till fyra separata uppgiftsvisningar samtidigt visade på skärmen.
Aktuellt fönster:
Det ”aktuella” fönstret är fönstret som är kopplat till sammanfattningsområdet och fönstret till
vilket uppgiftsrelaterade kommandon alltid skickas. Eftersom man i alternativt visningsläge kan växla
Av uppgiftsvisningen kan några kommandot vara begränsade för ”aktuellt” fönster.
En ytterligare komplikation uppstår när man har slagit Av den första raden i sammanfattningsområdet. I
och med att fönsternamnet försvinner (raden som växlas med ”l”) vet man inte enkelt vilket fönster som
är det ”aktuella” fönstret.
5b. KOMMANDON för fönster
- | _ :Visa/dölj fönsterväxel
Tangenten ”-” slår På och Av det ”aktuella” fönstrets uppgiftsvisning. När det är På kommer det
uppgiftsområdet att visa ett minimum av kolumhuvuden som har angivits med det interaktiva
kommandot ”f”. Det kommer även avspegla eventella andra flaggor/växlar för uppgiftsområdet som har
tillämpats vilket resulterar i noll eller flera uppgifter.
Tangenten ”_” gör detsamma för alla uppgiftsvisningar. Med andra ord byter det mellan den för
närvarande synliga uppgiftsvisningen och alla uppgiftsvisning man har slagit Av. Om alla 4
uppgiftsvisningarna är syniga för närvarande kommer detta interaktiva kommando lämna kvar
sammanfattningsområdet som det enda synliga elementet.
* = | + :Utjämna/återställ fönster
Tangenten ”=” tvingar det ”aktuella” fönstrets uppgiftsvisning att vara synlig. Det återställer
också eventuella kommandon ”i” (inaktiva uppgifter), ”n” (max uppgifter), ”u/U” (användarfilter),
”o/O” (övriga filter), ”v” (dölj barn), ”F” fokuserat, ”L” (lokalisera) och ”!” (kombinera
cpu:er). Dessutom, om fönstret är rullat, kommer det att återställas med detta kommando. Se
avsnittet 5c. RULLA ett fönster för ytterligare information avseende vertikal och horisontell
rullning.
Tangenten ”+” gör detsamma för alla fönster. De fyra uppgiftsvisningarna kommer komma tillbaka,
jämnt balanserade, samtidigt som de behåller eventuella anpassningar som tidigare har gjorts
utöver de som anges för det interaktiva kommandot ”=”.
* A :Alternativt visningslägesväxel
Detta kommando kommer byta mellan helskärmsläge och alternativt visningsläge.
Första gången man ger detta kommando kommer alla fyra uppgiftsvisningar att visas. Därefter kommer
man när man byter läge bara se de uppgiftsvisning man har valt att göra synliga.
* a | w :Nästa fönster framåt/bakåt
Detta kommer byta det ”aktuella” fönstret, vilket i sin tur byter fönstret till vilket kommandon
riktas. Dessa tangenter fungerar på ett cirkulärt sätt så att man kan nå alla fönster med vilken
som helst av tangenterna.
Under antagandet att fönsternamnet är synligt (man inte har slagit Av ”l”) så är när namnet på
”aktuellt” fönster tappar sin markering/färg är det en påminnelse om att uppgiftsvisningen är Av
och många kommandon kommer vara begränsade.
G :Ändra fönster-/fältgruppsnamn
Man ombeds ange ett nytt namn som skall användas för det ”aktuella” fönstret. Det kräver itne att
fönsternamnet är synligt (att växeln ”l” är På).
* De interaktiva kommandon som visas med en asterisk (”*”) har användning vid sidan av alternativt
visningsläge.
=, A, g är alltid tillgängliga
a, w fungerar på samma sätt med färgavbildning
och fälthantering
* g :Välj ett annat fönster/fältgrupp
Man ombeds ange ett nummer mellan 1 och 4 som anger den fältgrupp som skall göras till ”aktuellt”
fönster.
I helskärmsläge är detta kommando nödvändigt för att ändra ”aktuellt” fönster. I alternativt
visningsläge är det bara ett mindre bekvämt alterantiv till kommandona ”a” och ”w”.
5c. RULLA ett fönster
Typiskt är ett uppgiftsfönster en partiell vy in i systemets totala uppgifter/trådar som visar endast
några av de tillgängliga fälten/kolumnen. Med dessa rullningstangenter kan man flytta den vyn vertikalt
eller horisontellt för att uppvisa valfri uppgift eller kolumn.
Upp,PgUp :Rulla uppgifter
Flytta vyn upp mot den första uppgiftsraden, tills den första uppgiften visas på den översta raden av
det ”aktuella” fönstret. Piltangenten upp flyttar en rad medan PgUp rullar hela fönstret.
Ned,PgDn :Rulla uppgifter
Flytta vyn ned mot den sista uppgiftsraden, tills den sista uppgiften är den enda som visas på den
översta raden av det ”aktuella” fönstret. Piltangenten ned flyttar en rad medan PgDn rullar hela
fönstret.
Vänster,Höger :Rulla kolumner
Flytta vyn av visningsbara fält horisontellt en kolumn åt gången.
Obs: som en påminnelse, vissa fält/kolumner har inte fast bredd utan allokerar all återstånende
skärmbredd när de är synliga. När man rullar till höger eller vänster kan den funktionen medföra i
några oväntade resultat initialt.
Dessutom finns det speciella möjligheter för alla fält med variabel bredd när de är det sista visade
fältet. När det fältet nås via höger piltangent, och det alltså är den enda visade kolumnen, kan man
fortsätta rulla horisontellt inom ett sådant fält. Se det interaktiva kommandot ”C” nedan för
ytterligare information.
Home :Hoppa till hemposition
Positionera om visningen till orullade koordinater.
End :Hoppa till slutposition
Positionera om visningen så att den högraste kolumnen visar det sista visningsbara fältet och
nedersta uppgiften representerar den sista uppgiften.
Obs: från denna position är det fortfarande möjligt att rulla ned och höger med piltangenterna. Detta
gäller ända tills en enda kolumn och en enda uppgift är kvar som det enda visade elementet.
C :Visa rullningskoordinatersväxel
Växla ett informationsmeddelande som visas närhelst meddelanderaden inte används till något annat.
Det meddelandet kan ta en av två former beroende på huruvida en kolumn med variabel bredd också har
rullats eller inte.
rullkoordinater: y = n/n (uppgifter), x = n/n (fält)
rullkoordinater: y = n/n (uppgifter), x = n/n (fält) + nn
Koordinaterna som visas som n/n är relativa till det övre vänstra hörnet av det ”aktuella” fönstret.
Det ytterligare ”+ nn” representerar förskjutningen in i en kolumn med variabel bredd när den har
rullats horisontellt. En sådan förskjutning går i normala 8-teckens tabulatorsteg via höger och
vänster piltangent.
y = n/n (uppgifter)
Det första n representerar den översta synliga uppgiften och styrs av rullningstangenter. Det
andra n uppdateras automatiskt att avspegla det totala antalet uppgifter.
x = n/n (fält)
Det första n representerar den nänstraste visade uppgiften och styrs av rullningstangenter. Det
andra n är det totala antalet visningsbara fält och bestäms med det interaktiva kommandot ”f”.
Det ovanstående interaktiva kommandona är alltid tillgängliga i helskärmsläge men aldrig tillgängliga i
alternativt visningsläge om uppgiftsvisningen för ”aktuellt” fönster har slagits Av.
Obs: när någon sorts filtrering är aktiv kan man räkna med några mindre avvikelser när man rullar
eftersom inte alla uppgifter kommer vara synliga. Detta är särskilt uppenbart när man använder
piltangenterna upp/ned.
5d. SÖKA i ett fönster
Man kan använda dessa interaktiva kommandon för att hitta en uppgiftsrad som innehåller ett visst värde.
L :Lokalisera en sträng
Man ombeds ge en skiftlägeskänslig sträng att lokalisera med start från de aktuella
fönsterkoordinaterna. Det finns inga begränsningar på söksträngens innehåll.
Sökningar är inte begränsade till värden från ett ensamt fält eller kolumn. Alla värden som visas i
en uppgiftsrad är tillåtna i en söksträng. Man kan inkludera mellanslag, siffror, symboler och till
och med skogsvyns illustration.
Att skriva <Enter> utan någon indata får effekten att avaktivera tangenten ”&” tills en ny söksträng
skrivs in.
& :Lokalisera nästa
Under antagandet att en söksträng har etablerats, top kommer försöka att hitta nästa förekomst.
När en träff hittas positioneras det aktuella fönstret om vertikalt så att uppgiftsraden som innehåller
den strängen är först. Meddelandet om rullningskoordinater kan ge bekräftelse om sådan vertikal
ompositionering (se det interaktiva kommandot ”C”). Horisantal skrollning ändras dock aldrig via
sökningar.
Tillgängligheten av en matchande sträng kommer påverkas av följande faktorer.
a. Vilka fält som är visningsbara bland alla tillgängliga,
se avsnittet 3b. HANTERING av fält.
b. Rullning av ett fönster vertikalt och/eller horisontellt,
se avsnittet 5c. RULLA ett fönster.
c. Tillståndet på växeln kommando/kommandorad,
se det interaktiva kommandot ”c”.
d. Stabiliteten hos den valda sorteringskolumnen,
till exempel är PID bra men %CPU dåligt.
Om en sökning misslyckas kan att återställa det ”aktuella” fönstret till hempositionen (orullat), att
rulla horisontellt, att visa kommandorader eller att välja ett mer stabilt sorteringsfält ändå ge en
lyckad ”&”-sökning.
Det ovanstående interaktiva kommandona är alltid tillgängliga i helskärmsläge men aldrig tillgängliga i
alternativt visningsläge om uppgiftsvisningen för ”aktuellt” fönster har slagits Av.
5e. FILTRERA i ett fönster
Man kan använda denna funktion ”övrigt filter” för att etablera urvalskriteria som sedan kommer att
avgöra vilka uppgifter som visas i det ”aktuella” fönstret. Sådana filter kan göras varaktiga om de
sparas i rcfile:n via det interaktiva kommandot ”W”.
Att skapa ett filter kräver: 1) ett fältnamn; 2) en operator; och 3) ett urvalsvärde, åtminstone. Detta
är det mest komplexa av tops användarinmatningskrav, så när man gör ett misstag kommer återkallande av
kommando att vara din vän. Kom ihåg piltangenterna upp/ned eller deras alias när du får frågan om
inmatning.
Filtergrunder
1. fältnamn är skiftlägeskänsliga och stavas som i huvudet
2. urvalsvärden behöver inte utgöra hela det visade fältet
3. ett urval är antingen skiftlägseokänsligt eller känsligt för skiftläge
4. standard är att inkludera, ett inledande ”!” markerar exkludering
5. flera urvalksriterium kan användas på ett uppgiftsfönster
6. inkluderings- och exkluderingskriterium kan användas samtidigt
7. 1 likhetsfiltren och 2 jämförande filter kan blandas fritt
8. separata unika filter hanteras för varje uppgiftsfönster
Om ett fält inte är påslaget eller inte visas för närvarande kommer inte urvalskriteriumet påverka vad
som visas. Skulle ett filtrerat fält senare bli synligt kommer urvalskriteriumet användas då.
Tangentbordssammanfattning
O :Annat filter (versalt)
Man ombeds skapa ett skiftlägskänsligt filter.
o :Annat filter (gement)
Man ombeds skapa ett filter som ignorerar skiftläge vid matchning.
^O :Visa aktiva filter (Ctrl-tangent + ”o”)
Detta kan fungera som en påminnelse om vilka filter som är aktiva i det ”aktuella” fönstret. En
sammanfattning kommer visas på meddelanderaden till man trycker på tangenten <Enter>.
= :Återställ filtrering i aktuellt fönster
Detta tömmar alla gjorda urvalskriterier i det ”aktuella” fönstret. Det har även ytterligare
effekter, så se avsnittet 4a. GLOBALA kommandon.
+ :Återställ filtrering i alla fönster
Detta tömmar alla gjorda urvalskriterier i alla fönster, under antagandet att man är i alternativt
visningsläge. Liksom med det interaktiva kommandot ”=” har även detta ytterligare konsekvenser, så
man kan vilja se avsnittet 5b. KOMMANDON för fönster.
Inmatningskrav
Vid frågan om urvalskriterier måste de data man ger ta en av två former. Det finns 3 nödvändiga bitar
information, med en frivillig 4:e. Dessa exempel använder mellanslag för tydlighet men ens inmatning
gör i allmänhet inte det.
#1 #2 #3 ( obligatorisk)
Fältnamn ? inkludera-om-värde
! Fältnamn ? exkludera-om-värde
#4 ( frivilligt )
Posterna #1, #3 och #4 bör vara självförklarande. Post #2 representerar påde en nödvändig avgränsare
och operatorn som måste vara en av antingen likhet (”=”) eller relation (”<” eller ”>”).
Likhetsoperatorn ”=” behöver bara en partiell matchning och det kan begränsa kraven på ”om-värdet”.
Relationsoperatorerna ”>” eller ”<” gör alltid strängjämförelser, även med numeriska fält. De är
gjorda för att fungera med ett fälts standardjustering och med homogena data. När några fälts
numeriska storlekar har varit föremål för skalning medan andra inte har det, då är datan inte längre
homogen.
Om man skapar ett relationsfilter och man har ändrat standardvärdet för numerisk- eller
teckenjustering är det troligt att det filtret misslyckas. När ett relationsfilter används på ett
minnesfält och man inte har ändrat skalningen kan det generera missledande resultat. Detta händer,
till exempel, för att ”100.0m” (MiB) skulle förefalla större än ”1.000g” (GiB) när de jämförs som
strängar.
Om det filtrerade resultatet verkar misstänkt, kan att ändra justeringen eller skalningen åstadkomma
det önskade resultatet. Se de interaktiva kommandona ”j”, ”J” och ”e” för ytterligare information.
Potentiella problem
Dessa GRUPPfilter kan ge exakt samma resultat eller så kan det andra inte visa någonting alls, bara
ett blankt uppgiftsfönster.
GRUPP=root ( endast samma sak när de )
GRUPP=ROOT ( skapats via gement ”o” )
Endera av dessa RES-filter kan ge inkonsistenta och/eller missledande resultat, beroende på den
aktuella minnesskalningsfaktorn. Eller så kan båda filtren ge exakt samma resultat.
RES>9999 ( endast samma resultat när )
!RES<10000 ( minnesskalningen är ”KiB” )
Detta aSmå-filter illustrerar ett problem som är unikt för skalbara fält. Detta specifika fält kan
visa maximalt 4 siffror, utöver vilket värden automatiskt skalas till KiB eller större. Så medan
värden större än 9999 förekommer, kommer de att uppträda som 2.6m, 197k, etc.
aSmå>9999 ( alltid ett tomt uppgiftsfönster )
Potentiella lösningar
Dessa exempel illustrerar hur annan filtrering kan göras på ett kreativt sätt för att uppnå nästan
vilket önskat resultat som helst. Enkla citationstecken visas ibland för att avgränsa mellanrum som är
del av ett filter eller för att representera en begäran om status (^O) precist. Men om man använder
dem med om-värden i verkligheten skulle inga matchningar hittas.
Under antagandet att fältet aTR visas kommer det första filtret resultera i att endast multitrådade
processer visas. Det påminner oss också om att ett efterföljande mellanslag utgör en del av varje
visat fält. Det andra filtret åstadkommer precis samma sak med mindre att skriva.
!aTR=` 1 ' ( ` endast för tydlighet )
aTR>1 ( samma sak med mindre indata )
Med skogsvysläget aktivt och kolumnen KOMMANDO synlig fäller det här filtret i praktiken ihop
barnprocesser så att endast 3 nivåer visas.
!KOMMANDO=` `- ' ( ` endast för tydlighet )
De sista två filtren kommer som svar på tangenten för statusbegärande (^O). I praktiken skulle varje
filter ha krävt en separat inmatning. Exemplet PR visar de två samtidiga filtren som behövs för att
visa uppgifter med prioriteter på 20 eller mer, eftersom några kan vara negativa. Sedan genom att
utnyttja efterföljande blanktecken skulle serien av aSmå-filter åstadkomma det misslyckade syftet
”9999” som diskuterades ovan.
`PR>20' + `!PR=-' ( 2 för rätt resultat )
`!aSmå=0 ' + `!aSmå=1 ' + `!aSmå=2 ' + `!aSmå=3 ' …
6. FILER
6a. PERSONLIG konfigurationfil
Denna fil skapas eller uppdateras via det interaktiva kommandot ”W”.
Den gamla versionen skrivs som ”$HOME/.ditt-namn-4-top” + ”rc” med en inledande punkt.
En nyligen skapad konfigurationsfil skrivs som ”procps/ditt-namn-4-top” + ”rc” utan en inledande punkt.
Procps-katalogen kommer ligga under antingen $XDG_CONFIG_HOME när den är satt till en aboslut sökväg
eller katalogen $HOME/.config.
Även om den inte är avsedd att redigeras manuellt följer här den allmänna layouten:
global # rad 1: programmets namn-/aliasnotation
" # rad 2: id,altscr,irixps,delay,curwin
för var # rad a: winname,fieldscur
fönster # rad b: winflags,sortindx,maxtasks,etc
" # rad c: summclr,msgsclr,headclr,taskclr
global # rad 15: ytterligare blandade inställningar
" # eventuella återstående rader är ägnade åt valfria
" # aktiva ”andra filter” diskuterade i avsnitt 5e ovan
" # plus ”inspektions”-poster diskuterade i avsnitt 6b nedan
Om inte en giltig absolut sökväg till rcfil:en kan skapas kommer anpassningar gjorda till en körade top
vara omöjliga att bevara.
6b. LÄGGA TILL INSPEKTIONSposter
För att utnyttja det interaktiva kommandot ”Y” måste man lägga till poster till slutet av tops personliga
konfigurationsfil. Sådana poster visar en fil som skall läsas eller kommandon/rör som skall köras vars
resultat sedan kommer visas i ett separat rullbart, sökbart fönster.
Om man inte vet platsen för eller namnet på ens top-rcfil, använd det interaktiva kommandot ”W” för att
skriva om den och notera dessa detaljer.
Inspektionsposter kan läggas till med en omdirigerad echo eller genom att redigera konfigurationsfilen.
Omdirigering av echo riskerar att skriva över rcfile:n ifall det skulle ersätta (>) istället för att
lägga till (>>) till den filen. Omvänt, när man använder en redigerare måste man vara noga att inte skada
befintliga rader, där några av dem kan innehålla oskrivbara data eller ovanliga tecken beroende på
versionen av top under vilken den konfigurationsfilen sparades.
De inspektionsposter som börjar med ett ”#”-tecken som ignoreras, oavsett deras innehåll. Annars består
de av följande 3 element, varav vart och ett måste separeras av ett tabulatortecken (alltså 2 ”\t”
totalt):
.type: ordagrannt ”file” eller ”pipe”
.name: val visat på inspektionsskärmen
.fmts: sträng representerande en sökväg eller ett kommando
De två typerna av inspektionsposter är inte utbytbara. De markerade ”file” kommer hämtas med fopen och
måste referera en ensam fil i ”.fmts”-elementet. Poster som anger ”pipe” kommer använda popen, deras
”.fmts”-element kan innehålla flera kommandon i rör och inget av dem kan vara interaktivt.
Om filen eller röret som representeras i ”.fmts” hanterar den specifika PID som matas in eller accepteras
på förfrågan så måste formatsträngen även innehålla specificeraren ”%d”, som dessa exempel illustrerar.
.fmts= /proc/%d/numa_maps
.fmts= lsof -P -p %d
Specifikt för poster av typen ”pipe” kan man även vilja omdirigera standard fel till standard ut för ett
mer fullständigt resultat. Formatsträngen blir alltså:
.fmts= pmap -x %d 2>&1
Här är exempel på båda typerna av inspektionsposter som de kan förekomma i rcfil:en. Den första posten
kommer ignoreras på grund av det inledande ”#”-tecknet. För tydlighets skull är
låtsastabulatorillustrationen (^I) omgiven av ett extra mellanslag men de faktiska tabulatorerna skall
inte vara det.
# pipe ^I Uttag ^I lsof -n -P -i 2>&1
pipe ^I Öppna filer ^I lsof -P -p %d 2>&1
file ^I NUMA-info ^I /proc/%d/numa_maps
pipe ^I Logg ^I tail -n100 /var/log/syslog | sort -Mr
Med undantag för den utkommenterade posten ovan visar dessa exempel vad som skulle kunna echo:as för att
åstadkomma liknande resultat, under antagandet att rcfil:ens namn var ”.toprc”. På grund av de inbäddade
tabulatortecknen skall dock var och en av dessa rader föregås av ”/bin/echo -e”, inte bara ett ensamt
”echo”, för att aktivera tolkning av omvända snedstreck oavsett vilket skal man använder.
"pipe\tÖppna filer\tlsof -P -p %d 2>&1" >> ~/.toprc
"file\tNUMA-info\t/proc/%d/numa_maps" >> ~/.toprc
"pipe\tLogg\ttail -n200 /var/log/syslog | sort -Mr" >> ~/.toprc
Om någon inspektionspost man skapar ger utdata med oskrivbara tecken kommer de visas med antingen
notationen ^C eller hexadesimalt <FF> där formen beror på deras värde. Detta gäller även tabulatortecken,
vilka kommer visas som ”^I”. Om man vill ha en mer sann representation bör alla inbäddade tabulatorer
expanderas. Följande exempel tar vad som skulle kunna ha varit en ”file”-post men använder en ”pipe”
istället för att expandera de inbäddade tabulatorerna.
# det följande skulle ha innehållit ”\t” …
# file ^I <ditt_namn> ^I /proc/%d/status
# men detta kommer eliminera inbäddade ”\t” …
pipe ^I <ditt_namn> ^I cat /proc/%d/status | expand -
Obs: några program kan bero på SIGINT för att avsluta. Därför måste man, om en ”pipe” som den följande
skapas, använda Ctrl-C för att avsluta den för att kunna se resultatet. Detta är det enda tillfälle då
ett ”^C” inte även kommer avsluta top.
pipe ^I Spåra ^I /usr/bin/strace -p %d 2>&1
Slutligen, även om poster av typen ”pipe” har diskuterats i termer av rör och kommandon finns det inget
som hindrar att man också inkluderar skalskript. Kanske även nyskapade skript gjorde specifikt för det
interaktiva kommandot ”Y”.
Till exempel, allteftersom antalet inspektposter man har växer med tiden kommer raden ”Alternativ:” att
huggas av när skärmbredden överskrids. Det påverkar inte funktionen annat än att det gör några val
osynliga. Om några val förloras på grund av avhuggning men man vill se fler alternativ finns det dock en
enkel lösning som antyds nedan.
Inspektion Paus vid pid …
Använd: vänster/höger och <Retur> …
Alternativ: hjälp 1 2 3 4 5 6 7 8 9 10 11 …
Posterna i tops rcfil kunde ha ett nummer som elementet ”.name” och posten ”hjälp” kunde identifiera ett
skalskript man skriver som förklarar vad dessa numrerade val faktiskt betyder. På så sätt kan många fler
val vara synliga.
6c. SYSTEMkonfigurtionsfil
Denna konfigurationsfil representerar standardvärden för alla användare som inte har sparat sin egen
konfigurationsfil. Formatet speglar exakt den personliga konfigurationsfilen och kan även innehålla
”inspektions”-poster som förklaras ovan.
Att skapa den är enkelt.
1. Konfigurera top som den skall vara för installationen och bevara den konfigurationen med det
interaktiva kommandot ”W”.
2. Lägg till och prova eventuella önskade ”inspektions”-poster.
3. Kopiera den konfigurationsfilen till katalogen /etc/ som ”topdefaultrc”.
6d. SYSTEMbegränsningsfil
Förekomsten av denna fil kommer påverka vilken version av hjälpskärmen som visas för en vanlig användare.
Viktigare än så kommer den begränsa vad vanliga användare tillåts göra när top kör. De kommer inte att
kunna ge följande kommandon.
k Döda en uppgift
r Ändra nice-värde för en uppgift
d el. s Ändra fördröjnings-/sovintervall
Denna konfigurationsfil skapas inte av top. Istället skapas den manuellt och placeras i katalogen /etc/
som ”toprc”.
Den skall ha precis två rader, som visas i detta exempel:
s # rad 1: växel för byte till säkert läge
5.0 # rad 2: fördröjningsintervall i sekunder
7. MILJÖVARIABLER
Värdet som sätts på följande är oviktigt, bara att den finns.
LIBPROC_HIDE_KERNEL
Detta kommer förhindra visningen av alla kärntrådar och utesluta sådana processer från
sammanfattningsområdets sammanräkning av uppgifter/trådar.
8. DUMMA TRICK-exempel
Många av dessa trick fungerar bäst när man ger top ett lyft i schemaläggningen. Så planera att starta den
med ett nice-värde på -10, under antagandet att du har rätt till det.
7a. Kärnmagi
För dessa dumma trick behöver top helskärmsläge.
• Användargränssnittet, via frågor och hjälp, implicerar avsiktligen att fördröjningsintervallet är
begränsat till tiondelar av en sekund. Det står en dock fritt att sätta godtyckligt önskat värde. Vill
man se Linux i sin bästa schemaläggningsform, prova en fördröjning på 0,09 sekunder eller mindre.
För detta experiment öppna en xterm och maximera den. Gör sedan följande:
. ge en schemaläggningslyft och en kort fördröjning via
nice -n -10 top -d.09
. håll markering av sorteringskolumn Av för att
minimera sökvägslängd
. slå På markering med invers text för betoning
. prova olika sorteringskolumner (TID/MIN fungerar bra),
och vanlig eller omvänd sortering för att ta fram de
mest aktiva processerna i bild
Vad man får se är en väldigt upptagen Linux som gör vad den alltid gjort, men det fanns inget program
tillgängligt för att illustrera detta.
• Under en xterm med ”vitt-på-svart”-färger sätt i tops färgavbildningsskärm uppgiftsfärgen till svart
och se till att uppgiftsmarkering är satt till fetstil, inte invers. Sätt sedan
fördröjningsintervallet till runt 0,3 sekunder.
Efter att ha fått de mest aktiva processerna i bild är vad man får se de spöklika avbilderna av de jus
nu körande uppgifterna.
• Radera den befintliga rcfil:en elelr skapa en ny symbolisk länk. Starta denna nya version och skriv
sedan ”T” (en hemlig tangent, se avsnittet 4c. uppgiftsområdets kommandon, SORTERING) följt av ”W” och
”q”. Slutligen, starta om programmet med -d0 (noll i fördröjning).
Skärmen kommer uppdateras med tre gånger så hög hastighet som den tidigare top, en 300 %
hastighetsuppdatering. Eftersom top klättrar uppför TID-stegen, var så tålmodig som möjligt under
spekulation huruvida top någonsin kommer nå toppen, eller inte.
7b. Studsande fönster
För dessa dumma trick behöver top alternativt visningsläge.
• Med 3 eller 4 uppgiftsvisningar synliga, välj något annat fönster än det sista och slå Av inaktiva
processer med det interaktiva kommandot ”i”. Beroende på var du använde ”i” studsar ibland flera
uppgiftsvisningar och ibland är det som ett dragspel, eftersom top gör sitt bästa för att allokera
plats.
• Sätt varje fönsters sammanfattningsrader olika: en utan minne (”m”); ett annat utan tillstånd (”t”);
kanske ett utan något alls, bara meddelanderaden. Håll sedan ner ”a” eller ”w” och se en variation av
studsande fönster — hoppande fönster.
• Visa alla 4 fönstren och för vart och ett i ordning sätt inaktiva processer Av med det interaktiva
kommandot ”i”. Du har just gått in i zonen ”extrem studs”.
7c. Den stora fågelns fönster
Detta dumma trick behöver också alternativt visningsläge.
• Visa alla 4 fönster och se till att 1:Def är det ”aktuella” fönstret. Öka sedan fönsterstorleken med
det interaktiva kommandot ”n” tills alla de andra uppgiftsvisningarna ”tryckts ur boet”.
När de alla har tryckts undan, växla mellan alla synliga/osynliga fönster genom att använda
kommandoflaggaan ”_”. Fundera sedan på detta:
narras top eller berättar den sanningsenligt din påtvingade sanning?
7d. Den gamla förväxlingen
Detta dumma trick fungerar bäst utan alternativt visningsläge eftersom justering är aktivt på basis av
varje fönster.
• Starta top och gör KOMMANDO till den sista (högraste) kolumnen som visas. Om nödvändigt, använd
kommandoflaggan ”c” för att visa kommandorader och se till att skogsvyläget är aktivt med
kommandoflaggan ”V”.
Använd sedan piltangenterna upp/ned för att placera skärmen så att några avhuggna kommandorader visas
(”+” i sista positionen). Man kan behöva ändra storlek på sin xterm för att åstadkomma trunkering.
Använd slutligen kommandoflaggan ”j” för att göra kolumnen KOMMANDO högerjusterad.
Använd nu höger piltangent för att nå kolumnen KOMMANDO. Fortsätt med höger piltangent, och titta noga
riktingen på rörelsen för kommandoraderna som visas.
några rader rör sig till vänster, medan andra rör sig åt höger
slutligen kommer alla rader växla runt, och röra sig åt höger
9. FEL
Skicka felrapporter till procps@freelists.org. Skicka synpunkter på översättningen till
tp-sv@listor.tp-sv.se
10. SE även
free(1), ps(1), uptime(1), atop(1), slabtop(1), vmstat(8), w(1)
procps-ng Augusti 2023 TOP(1)