TOP(1) General Commands Manual TOP(1) NUME top - Afieaza procesele Linux REZUMAT top [opiune ...] DESCRIERE Programul top ofera o vizualizare dinamica in timp real a sistemului care ruleaza. Poate afia un rezumat al informaiilor sistem, precum i o lista a procese sau fire de execuie) gestionate in prezent de catre nucleu. Tipurile de informaii rezumate ale sistemului afiate i tipurile, ordinea i dimensiunea informaiilor afiate pentru procese sunt toate configurabile de utilizator i acea configuraie poate fi persistenta in timpul repornirilor. Programul ofera o interfaa interactiva limitata pentru manipularea procesului, precum i o interfaa mult mai extinsa pentru configurarea personala -- cuprinzand fiecare aspect al funcionarii sale. i in timp ce top este menionat in acest document, suntei liber sa denumii programul oricum dorii. Noul nume, eventual un alias, va fi apoi reflectat pe afiajul lui top i va fi folosit la citirea i scrierea unui fiier de configurare. PREZENTARE GENERALA Documentaie Cuprins PREZENTARE GENERALA Funcionarea programului Tipuri de memorie Linux 1. Opiuni pentru LINIA DE COMANDA 2. Afiarea REZUMATULUI a. Mediile de INCARCARE i TIMPUL de FUNCIONARE b. SARCINI i Stari CPU c. Utilizarea MEMORIEI 3. CAMPURI / Afiarea coloanelor a. DESCRIEREA Campurilor b. GESTIONAREA Campurilor 4. Comenzi INTERACTIVE a. Comenzi GLOBALE b. Comenzi din ZONA de REZUMAT c. Comenzi din ZONA de SARCINI 1. Aspect 2. Coninut 3. Dimensiune 4. Sortare d. Comenzile FERESTREI DE JOS e. Paleta de CULORI 5. Dispoziii privind AFIAREA ALTERNATIVA a. Prezentare generala pentru ferestre b. Comenzi pentru ferestre c. Derularea unei ferestre d. Cautarea intr-o fereastra e. Filtrarea intr-o fereastra 6. FIIERE a. Fiier de configurare PERSONAL b. Adaugarea de intrari de INSPECTARE c. Fiier de configurare a SISTEMULUI d. Fiier de restricii ale SISTEMULUI 7. VARIABILE DE MEDIU 8. Exemplu de TRUCURI STUPIDE a. Magia nucleului b. Ferestre care apar c. Fereastra Pasarea Mare d. Vechiul comutator 9. ERORI, 10. CONSULTAI I Funcionarea programului Cand lucrai cu top, cele mai importante taste sunt tasta de ajutor (h sau ?) i tasta de ieire (,,q"). Alternativ, putei utiliza pur i simplu tasta tradiionala de intrerupere (^C) cand ai terminat. Cand pornii pentru prima data, vi se vor prezenta aceste elemente tradiionale in ecranul principal al top: 1) Zona de rezumat; 2) Antet Campuri/Coloane; 3) Zona de sarcini. Fiecare dintre acestea va fi explorata in seciunile care urmeaza. Exista, de asemenea, o linie de intrare/mesaj intre zona de rezumat i antetul coloanelor care nu are nevoie de explicaii suplimentare. Ecranul principal al top este, in general, destul de adaptabil la modificarile dimensiunilor terminalului sub X-Windows. Alte ecrane top pot fi mai puin adaptabile, mai ales cele cu text static. Totui, aceasta depinde in cele din urma de managerul de ferestre i de emulatorul de terminal, in particular. Pot exista ocazii in care viziunea lor asupra dimensiunii terminalului i a coninutului curent difera de viziunea lui top, care se bazeaza intotdeauna pe apelurile sistemului de operare. In urma oricarei operaiuni de redimensionare, daca un ecran top este corupt, apare incomplet sau dezordonat, simpla tastare a ceva inofensiv, cum ar fi un caracter de punctuaie sau o tasta de micare a cursorului, il va restabili de obicei. In cazuri extreme, urmatoarea secvena va avea aproape sigur, acest efect: tasta/cmd obiectiv ^Z suspendare top fg reluare top foreaza redesenarea ecranului (daca este necesar) Dar daca afiajul este inca corupt, mai exista un pas pe care il putei incerca. Introducei aceasta comanda dupa ce top a fost suspendat, dar inainte de al relua. tasta/cmd obiectiv reset restabilete configurarile terminalului Nota: laimea afiajului lui top va fi limitata la 512 poziii. Afiarea tuturor campurilor necesita aproximativ aproximativ 250 de caractere. Laimea ramasa a ecranului este de obicei alocata oricaror coloane cu laime variabila vizibile in prezent. Coloanele cu laime variabila, cum ar fi COMANDA, sunt notate in subiectul 3a. DESCRIEREA Campurilor. Laimea reala de ieire poate fi, de asemenea, influenata de opiunea ,,-w", care este discutata in subiectul 1. Opiuni pentru LINIA DE COMANDA. In cele din urma, unele dintre ecranele sau funciile lui top necesita utilizarea tastelor de micare a cursorului, cum ar fi tastele sagei standard plus tastele <>, <>, <> i <>. Daca terminalul sau emulatorul dumneavoastra nu furnizeaza acele chei, urmatoarele combinaii sunt acceptate ca alternative: tasta taste echivalente Stanga alt + h Jos alt + j Sus alt + k Dreapta alt + l Home alt + ctrl + h PgDn alt + ctrl + j PgUp alt + ctrl + k End alt + ctrl + l Tastele sageata Sus i Jos au o semnificaie speciala atunci cand solicitarea liniei de intrare este terminata cu tasta . Aceste taste, sau aliasurile lor, pot fi folosite pentru a prelua liniile de intrare anterioare care pot fi apoi editate i reintroduse. i exista patru taste suplimentare disponibile orientate pe linia de intrare. tasta semnificaia speciala Sus reapeleaza irurile mai vechi pentru re-editare Jos reapeleaza irurile mai noi sau terge intreaga linie Insert comuta intre modurile de inserare i suprascriere Delete elimina caracterul de la cursor, deplasandu-le pe celelalte spre stanga Home salta la inceputul liniei de intrare End salta la sfaritul liniei de intrare Tipuri de memorie Linux Pentru scopurile noastre, exista trei tipuri de memorie, din care unul este opional. Primul este memoria fizica, o resursa limitata in care codul i datele trebuie sa se gaseasca atunci cand sunt executate sau refereniate. Urmatorul este fiierul de interschimb(swap) opional, unde memoria modificata (murdara) poate fi salvata i ulterior preluata daca se solicita prea multe memorie fizica. In cele din urma, avem memoria virtuala, o resursa aproape nelimitata care servete urmatoarele obiective: 1. abstractizare, libera de adresele sau limitele memoriei fizice 2. izolare, fiecare proces intr-un spaiu de adrese separat 3. partajare, o singura memorizare(mapping) poate satisface nevoi multiple 4. flexibilitate, atribuirea unei adrese virtuale unui fiier Indiferent de care dintre aceste forme o poate lua memoria, toate sunt gestionate ca pagini (de obicei 4096 de octei), dar sunt exprimate implicit in top ca Kio (kibioctei). Memoria discutata la punctul ,,2c. Utilizarea MEMORIEI" se ocupa de memoria fizica i fiierul de interschimb(swap) pentru sistemul in ansamblul sau. Memoria examinata la punctul ,,3. CAMPURI / Afiarea coloanelor" cuprinde toate cele trei tipuri de memorie, dar pentru procese individuale. Pentru fiecare astfel de proces, fiecare pagina de memorie este restricionata la un singur cadran din tabelul de mai jos. Atat memoria fizica, cat i memoria virtuala pot include oricare dintre cele patru, in timp ce fiierul de interschimb (swap) include doar de la #1 la #3. Memoria din cadranul #4, cand este modificata, acioneaza ca propriul fiier de interschimb dedicat. Privata | Partajata 1 | 2 Anonima . stack | . malloc() | . brk()/sbrk() | . POSIX shm* . mmap(PRIVATE, ANON) | . mmap(SHARED, ANON) -----------------------+---------------------- . mmap(PRIVATE, fd) | . mmap(SHARED, fd) Pe baza fiierului . pgms/shared libs | 3 | 4 Urmatoarele pot ajuta la interpretarea valorilor de memorie la nivel de proces afiate sub forma de coloane scalabile i discutate in subiectul ,,3a. DESCRIEREA Campurilor". %MEM - pur i simplu RES imparita la memoria fizica totala CODE - poriunea ,,pgms" din cadranul 3 DATA - intreaga poriune din cadranul 1 a VIRT plus toate paginile salvate in fiiere mmap explicite din cadranul 3 RES - orice ocupa memorie fizica care, incepand cu Linux-4.5, este suma urmatoarelor trei campuri: RSan - paginile cadranului 1, care includ orice pagini din cadranul 3 anterior, daca sunt modificate RSfd - paginile cadranului 3 i cadranului 4 RSsh - paginile cadranului 2 RSlk - subset de RES care nu poate fi transferat (orice cadran) SHR - subset de RES (exclude 1, include toate 2 i 4, unele 3) SWAP - potenial orice cadran, cu excepia cadranului 4 USED - pur i simplu suma dintre RES i SWAP VIRT - tot ce este in uz i/sau rezervat (toate cadranele) Nota: Chiar daca imaginile de program i bibliotecile partajate sunt considerate private pentru un proces, ele vor fi considerate ca fiind partajate (SHR) de catre nucleu. 1. Opiuni pentru LINIA DE COMANDA Argumentele obligatorii pentru opiunile lungi sunt deasemenea obligatorii pentru opiunile scurte. Dei nu este necesar, semnul egal poate fi folosit cu fiecare forma de opiune, iar spaiile in alb inainte i/sau dupa ,,=" sunt permise. -b, --batch Pornete top in modul Loturi de comenzi (Batch), care poate fi util pentru a trimite ieirea din top catre alte programe sau catre un fiier. In acest mod, top nu accepta intrari i ruleaza pana la limita de iteraii pe care ai stabilit-o cu opiunea de linie de comanda ,,-n" sau pana cand este omorat. -c, --cmdline-toggle Lanseaza top cu ultima stare ,,c" memorata inversata. Astfel, daca top afia linii de comanda, acum acel camp va afia numele programelor i invers. Consultai comanda interactiva ,,c" pentru informaii suplimentare. -d, --delay = SECUNDE [.ZECIMI] Specifica intarzierea dintre actualizarile ecranului i inlocuiete valoarea corespunzatoare din fiierul de configurare personal sau valoarea implicita de pornire. Ulterior, aceasta valoare poate fi modificata cu ajutorul comenzilor interactive ,,d" sau ,,s". Fraciunile de secunde sunt luate in calcul, dar nu este permis un numar negativ. Cu toate acestea, in toate cazurile, astfel de modificari sunt interzise daca top ruleaza in modul Securizat, cu excepia root (cu excepia cazului in care a fost utilizata opiunea de linie de comanda ,,s"). Pentru informaii suplimentare despre modul Securizat, consultai subiectul 6d. Fiier de restricii ale SISTEMULUI. -E, --scale-summary-mem = k | m | g | t | p | e Solicita lui top sa foreze ca memoria zonei de rezumat sa fie afiata dupa cum urmeaza: k = kibioctei m = mebioctei g = gibioctei t = tebioctei p = pebioctei e = exbioctei Ulterior, acest lucru poate fi schimbat cu ajutorul comenzii ,,E". -e, --scale-task-mem = k | m | g | t | p Solicita lui top sa foreze ca memoria zonei de sarcini sa fie afiata dupa cum urmeaza: k = kibioctei m = mebioctei g = gibioctei t = tebioctei p = pebioctei Ulterior, acest lucru poate fi schimbat cu ajutorul comenzii ,,e". -H, --threads-show Solicita lui top sa afieze firele de execuie individuale. Fara aceasta opiune de linie de comanda, este afiata o insumare a tuturor firelor de execuie din fiecare proces. Ulterior, acest lucru poate fi modificat cu ajutorul comenzii interactive ,,H". h, --help Afieaza acest mesaj de ajutor, apoi iese. -i, --idle-toggle Lanseaza top cu ultima stare ,,i" memorata inversata. Cand aceasta comutare este Dezactivata (Off), sarcinile care nu au folosit niciun procesor de la ultima actualizare nu vor fi afiate. Pentru informaii suplimentare cu privire la acest comutator, consultai subiectul 4c. Comenzi din ZONA de SARCINI, Dimensiune. -n, --iterations = NUMAR Specifica numarul maxim de iteraii, sau de cadre, pe care top trebuie sa le produca inainte de a se incheia. -O, --list-fields Aceasta opiune acioneaza ca o forma de ajutor pentru opiunea ,,-o" prezentata mai jos. Aceasta va face ca top sa afieze fiecare dintre numele campurilor disponibile pe o linie separata, apoi va iei. Aceste nume sunt obiectul traducerii NLS (National Language Support ,,Suport pentru limba naionala"). -o, --sort-override = NUME_CAMP Specifica numele campului pe care vor fi sortate sarcinile, independent de ceea ce se reflecta in fiierul de configurare. Putei adauga un ,,+" sau ,,-" la numele campului pentru a schimba, de asemenea, direcia de sortare. Un ,,+" inainte va fora sortarea de la mare la mic, in timp ce un ,,-" va asigura o ordonare de la mic la mare. Aceasta opiune exista in primul rand pentru a sprijini operarea in modul automat/loturi de comenzii. -p, --pid = LISTA_PID (ca: 1,2,3, ... sau -p1 -p2 -p3 ...) Monitorizeaza numai procesele cu ID-urile de proces specificate. Cu toate acestea, atunci cand este combinat cu modul Fire de execuie (,,H"), toate procesele din grupul de fire (a se vedea TGID) al fiecarui PID monitorizat vor fi de asemenea afiate. Aceasta opiune poate fi data de pana la 20 de ori sau putei furniza o lista delimitata prin virgule cu pana la 20 de pid-uri. Este permisa combinarea ambelor abordari. O valoare pid de zero va fi tratata ca fiind id-ul de proces al programului top insui, odata ce acesta ruleaza. Aceasta este doar o opiune de linie de comanda i daca dorii sa revenii la funcionarea normala, nu este necesar sa parasii i sa repornii top -- pur i simplu lansai oricare dintre aceste comenzi interactive: ,,=", ,,u" sau ,,U". Opiunile de linie de comanda ,,p", ,,u" i ,,U" se exclud reciproc. -S, --accum-time-toggle Lanseaza top cu ultima stare ,,S" memorata inversata. Atunci cand modul de Timp cumulat este Activat (On), fiecare proces este listat cu timpul de procesare pe care el i copiii sai mori l-au folosit. Consultai comanda interactiva ,,S" pentru informaii suplimentare privind acest mod. -s, --secure-mode Lanseaza tops cu modul securizat forat, chiar i pentru root. Acest mod este mult mai bine controlat prin intermediul unui fiier de configurare a sistemului (a se vedea subiectul 6. FIIERE). -U, --filter-any-user = UTILIZATOR (ca: numar sau nume) Afieaza numai procesele cu un id de utilizator sau un nume de utilizator care se potrivete cu cel dat. Aceasta opiune se potrivete cu orice utilizator (real, efectiv, salvat sau sistemul de fiiere). Adaugarea unui semn de exclamare (,,!") la ID-ul sau numele utilizatorului ii indica lui top sa afieze numai procesele cu utilizatori care nu se potrivesc cu cel furnizat. Opiunile de linie de comanda ,,p", ,,U" i ,,u" se exclud reciproc. -u, --filter-only-user = UTILIZATOR (ca: numar sau nume) Afieaza numai procesele cu un id de utilizator sau un nume de utilizator care se potrivete cu cel dat. Aceasta opiune se potrivete numai cu ID-ul de utilizator efectiv. Adaugarea unui semn de exclamare (,,!") la ID-ul sau numele utilizatorului ii indica lui top sa afieze numai procesele cu utilizatori care nu se potrivesc cu cel furnizat. Opiunile de linie de comanda ,,p", ,,U" i ,,u" se exclud reciproc. V, --version Afieaza informaiile despre versiune, apoi iese. -w, --width [=COLOANE] In modul Loturi de comenzi (Batch), atunci cand este utilizata fara un argument, top va formata ieirea folosind variabilele de mediu COLUMNS= i LINES=, daca sunt definite. In caz contrar, laimea va fi fixata la maximum de 512 coloane. Cu un argument, laimea de ieire poate fi micorata sau marita (pana la 512), dar numarul de randuri este considerat nelimitat. In modul de afiare normal, atunci cand este utilizata fara un argument, top va incerca sa formateze ieirea folosind variabilele de mediu COLUMNS= i LINES=, daca sunt definite. Cu un argument, laimea de ieire poate fi doar micorata, nu i marita. Indiferent daca se utilizeaza variabilele de mediu sau un argument cu opiunea ,,-w", atunci cand nu se afla in modul Loturi de comenzi (Batch), dimensiunile reale ale terminalului nu pot fi niciodata depaite. Nota: Fara utilizarea acestei opiuni de linie de comanda, laimea de ieire se bazeaza intotdeauna pe terminalul la care a fost invocat top, indiferent daca este sau nu in modul Loturi de comenzi (Batch). -1, --single-cpu-toggle Lanseaza top cu ultima poriune memorata a starilor Cpu din zona de rezumat inversata. Fie toate informaiile despre cpu vor fi afiate pe un singur rand, fie fiecare cpu va fi afiat separat, in funcie de starea comenzii de comutare a nodului NUMA (,,2"). Pentru informaii suplimentare, consultai comenzile interactive ,,1" i ,,2". 2. Afiarea REZUMATULUI Fiecare dintre urmatoarele trei zone este controlata individual prin intermediul uneia sau mai multor comenzi interactive. A se vedea subiectul 4b. Comenzi din ZONA de REZUMAT pentru informaii suplimentare referitoare la aceste dispoziii. 2a. Mediile de INCARCARE i TIMPUL de FUNCIONARE Aceasta poriune consta dintr-o singura linie care conine: numele programului sau al ferestrei, in funcie de modul de afiare ora curenta i durata de timp de la ultima pornire (timpul de funcionare) numarul total de utilizatori incarcarea medie a sistemului in ultimele 1, 5 i 15 minute 2b. SARCINI i Stari CPU Aceasta poriune consta din minim doua linii. Intr-un mediu SMP, liniile suplimentare pot reflecta procentele individuale ale starii CPU. Prima linie afieaza numarul total de sarcini sau de fire de execuie, in funcie de starea comutatorului de mod al Firelor de execuie. Acest total este clasificat in continuare astfel: displayed process status (`S') --------- -------------------- running R sleep S + any remaining d-sleep D stopped T + t zombie Z A doua linie arata procentajele de stare a CPU in funcie de intervalul de la ultima reimprospatare. In mod implicit, sunt afiate procentele pentru aceste categorii individuale. In funcie de versiunea nucleului dumneavoastra, este posibil ca ultimul camp, st, sa nu fie afiat. us : timpul de execuie al proceselor de utilizator fara curtoazie (cu prioritate de execuie ridicata) sy : timpul de rulare al proceselor nucleului ni : timpul de execuie al proceselor de utilizator cu curtoazie (cu prioritate de execuie scazuta) id : timpul petrecut in gestionarea inactivitaii nucleului wa : timpul de ateptare pentru finalizarea intrarilor/ieirilor hi : timpul petrecut la deservirea intreruperilor hardware si : timpul petrecut la deservirea intreruperilor software st : timpul furat de la aceasta maina virtuala de catre hipervizor Dincolo de prima linie de sarcini/fire de execuie, exista moduri alternative de afiare a procesorului, disponibile prin intermediul comenzii ,,t" cu 4 direcii de comutare. Aceste moduri afieaza un rezumat simplificat format din aceste elemente: a b c d %Cpu(s): 75.0/25.0 100[ ... ] Unde: a) este procentul ,,utilizator" (us + ni); b) este procentul ,,sistem" (sy + hi + si + guests); c) este procentul total; i d) este unul dintre cele doua grafice vizuale ale acelor reprezentari. Astfel de grafice reflecta, de asemenea, poriuni separate ,,utilizator" i ,,sistem". Daca comanda de comutare ,,"' este utilizata pentru a obine mai mult de doua procesoare (CPU) pe linie, rezultatele vor fi reduse i mai mult, eliminandu-se elementele a) i b). Cu toate acestea, aceste informaii sunt inca reflectate in graficul propriu-zis, presupunand ca culoarea este activa sau, in caz contrar, ca sunt afiate bare i blocuri. A se vedea subiectul 4b. Comenzi din ZONA de REZUMAT pentru informaii suplimentare privind comenzile de comutare ,,t" i ,,4". 2c. Utilizarea MEMORIEI Aceasta poriune este formata din doua linii care pot exprima valori de la kibioctei (Kio) la exbioctei (Eio), in funcie de factorul de scalare aplicat prin intermediul comenzii interactive ,,E". Campurile sursa /proc/meminfo sunt afiate intre paranteze. Prima linie reflecta memoria fizica, clasificata ca: total ( MemTotal ) free ( MemFree ) used ( MemTotal - MemAvailable ) buff/cache ( Buffers + Cached + SReclaimable ) A doua linie reflecta in principal memoria virtuala, clasificata ca: total ( SwapTotal ) free ( SwapFree ) used ( SwapTotal - SwapFree ) avail ( MemAvailable, care este Memoria fizica) Cantitatea disponibila (avail) de pe a doua linie este o estimare a memoriei fizice disponibile pentru lansarea de noi aplicaii, fara utilizarea spaiului de interschimb (swapping). Spre deosebire de campul ,,libera", aceasta incearca sa ina cont de zonele de prestocare (cache) ale paginilor uor de recuperat i blocurile de memorie ,,slabs". Este disponibila pe nucleele 3.14, emulata pe nucleele 2.6.27+, altfel la fel ca ,,libera". In modurile de afiare a memoriei alternative, sunt afiate doua linii de rezumat abreviate, formate din aceste elemente: a b c Gio Mem : 18.7/15.738 [ ... ] Gio Swap: 0.0/7.999 [ ... ] Unde: a) este procentul utilizat; b) este totalul disponibil; i c) este unul dintre cele doua grafice vizuale ale acestor reprezentari. In cazul memoriei fizice, procentul reprezinta totalul minus cantitatea disponibila estimata menionata mai sus. Graficul ,,Mem" in sine este imparit intre poriunea de memorie utilizata care nu se afla in memoria cache i orice memorie ramasa care nu este altfel luata in considerare de cantitatea de memorie disponibila. A se vedea subiectul 4b. Comenzi din ZONA de REZUMAT i comanda ,,m" pentru informaii suplimentare despre acea comutare speciala in 4 cai. Acest tabel poate ajuta la interpretarea valorilor scalate afiate: Kio = kibioctei = 1024 octei Mio = mebioctei = 1024 Kio = 1.048.576 octei Gio = gibioctei = 1024 Mio = 1.073.741.824 octei Tio = tebioctei = 1024 Gio = 1.099.511.627.776 octei Pio = pebioctei = 1024 Tio = 1.125.899.906.842.624 octei Eio = exbioctei = 1024 Pio = 1.152.921.504.606.846.976 octei 3. CAMPURI / Coloane 3a. DESCRIEREA Campurilor Mai jos sunt enumerate campurile de procesare (coloanele) disponibile in top. Acestea sunt afiate in ordine alfabetica ascii stricta. Putei personaliza poziia lor i daca sunt sau nu afiabile cu ajutorul comenzii interactive ,,f" (Gestionarea campurilor). Orice camp poate fi selectat drept camp de sortare, iar dvs. putei controla daca acestea sunt sortate de la mare la mic sau de la mic la mare. Pentru informaii suplimentare privind dispoziiile de sortare, consultai subiectul 4c. Comenzi din ZONA de SARCINI, Sortare. Campurile legate de memoria fizica sau de memoria virtuala se refera la ,,(Kio)", care reprezinta modul de afiare fara sufix. Cu toate acestea, aceste campuri pot fi scalate de la Kio la Pio. Aceasta scalare este influenata prin intermediul comenzii interactive ,,e" sau stabilita la pornire printr-o opiune de compilare. %CPU -- Utilizarea CPU-ului Procentul sarcinii din timpul de CPU scurs de la ultima actualizare a ecranului, exprimata ca procent din timpul total al CPU. Intr-un mediu SMP adevarat, daca un proces are mai multe fire de execuie i top nu funcioneaza in modul ,,Fire de execuie", pot fi raportate cantitai mai mari de 100%. Putei sa activai modul ,,Fire de execuie" cu ajutorul comenzii interactive ,,H". De asemenea, pentru mediile cu mai multe procesoare, daca modul Irix este dezactivat (Dezact.), top va funciona in modul Solaris, in care utilizarea cpu a unei sarcini va fi imparita la numarul total de procesoare. Putei comuta modurile Irix/Solaris cu ajutorul comenzii interactive ,,I". Nota: Atunci cand se executa in modul de vizualizare arborescenta (,,V") cu copii colapsai (,,v"), acest camp va include i timpul CPU al acelor copii nevazui. A se vedea subiectul 4c. Comenzi din ZONA de SARCINI, Coninut pentru mai multe informaii privind comutatoarele ,,V" i ,,v". %CUC -- Utilizarea CPU-ului Acest camp este identic cu %CUU de mai jos, cu excepia faptului ca procentul reflecta i procesele copil recoltate. %CUU -- Utilizarea CPU-ului Utilizarea totala a CPU a unei sarcini imparita la timpul de execuie scurs, exprimata ca procent. In cazul in care un proces afieaza in prezent o utilizare ridicata a CPU, acest camp poate ajuta la determinarea daca acest comportament este normal. In schimb, daca un proces are o utilizare scazuta a CPU in prezent, %CUU poate reflecta solicitari istorice mai mari de-a lungul vieii sale. %MEM -- Utilizarea memoriei (RES) Procentul de memorie fizica disponibila a unei sarcini care este in prezent rezidenta. Consultai ,,PREZENTARE GENERALA, Tipuri de memorie Linux" pentru detalii suplimentare. AGID -- Identificator de autogrup Identificatorul auto-grupului asociat unui proces. Aceasta caracteristica funcioneaza impreuna cu planificatorul CFS pentru a imbunatai performana biroului interactiv. Cand ,,/proc/sys/kernel/sched_autogroup_enabled" este activat, un nou grup automat este creat cu fiecare sesiune noua (a se vedea SID). Toate procesele bifurcate ulterior din acea sesiune motenesc apartenena la acest grup automat. Nucleul incearca apoi sa egalizeze distribuia ciclurilor CPU intre astfel de grupuri. Astfel, un auto-grup cu multe procese intensive de CPU (de exemplu <>) nu va domina un auto-grup cu doar unul sau doua procese. Cand se afieaza -1 inseamna ca aceasta informaie nu este disponibila. AGNI -- Valoarea prioritaii auto-grupului Valoarea prioritaii (nice) a auto-grupului care afecteaza planificarea tuturor proceselor din grupul respectiv. O valoare ,,nice" negativa inseamna o prioritate mai mare, in timp ce o valoare ,,nice" pozitiva inseamna o prioritate mai mica. CGNAME -- Numele grupului de control Numele grupului de control caruia ii aparine un proces, sau ,,-" daca nu se aplica procesului respectiv. Aceasta va fi de obicei ultima intrare din lista completa a grupurilor de control, aa cum se arata in urmatorul titlu (CGROUPS). La fel ca i acolo, acest camp este de o laime variabila. CGROUPS -- Grupuri de control Numele grupului/grupurilor de control caruia ii aparine un proces, sau ,,-" daca nu se aplica procesului respectiv. Grupurile de control asigura alocarea resurselor (procesor, memorie, laime de banda de reea etc.) intre grupurile de procese definite de instalare. Acestea permit un control fin asupra alocarii, refuzarii, prioritizarii, gestionarii i monitorizarii acestor resurse. Pe un sistem pot exista simultan mai multe ierarhii diferite de grupuri de control ,,cgroups", fiecare ierarhie fiind ataata la unul sau mai multe subsisteme. Un subsistem reprezinta o singura resursa. Nota: Campul ,,CGROUPS", spre deosebire de majoritatea coloanelor, nu are o laime fixa. Atunci cand este afiat, acestuia i oricaror alte coloane cu laime variabila li se aloca toata laimea ramasa pe ecran (pana la maximum 512 caractere). Chiar i aa, astfel de campuri cu laime variabila pot suferi trunchieri. A se vedea subiectul 5c. Derularea unei ferestre pentru informaii suplimentare privind accesarea oricaror date trunchiate. CLS -- Clasa de planificare Politica curenta de planificare a sarcinii, care poate fi una dintre: - = nu a fost raportata TS = SCHED_OTHER FF = SCHED_FIFO RR = SCHED_RR B = SCHED_BATCH ISO = SCHED_ISO IDL = SCHED_IDLE DLN = SCHED_DEADLINE ? = valoare necunoscuta CODE -- Dimensiunea codului (Kio) Cantitatea de memorie fizica dedicata in prezent codului executabil, cunoscuta i sub numele de dimensiunea setului rezident de text ,,Text Resident Set size" sau ,,TRS". Consultai ,,PREZENTARE GENERALA, Tipuri de memorie Linux" pentru detalii suplimentare. COMMAND -- Numele comenzii sau Linia de comanda Afieaza linia de comanda utilizata pentru a porni o sarcina sau numele programului asociat. Comutai intre linia de comanda i nume cu ,,c", care este atat o opiune de linie de comanda, cat i o comanda interactiva. Daca ai ales sa afiai liniile de comanda, procesele fara o linie de comanda (cum ar fi firele de execuie ale nucleului) vor fi afiate doar cu numele programului intre paranteze, ca in acest exemplu: [kthreadd] Acest camp poate fi influenat, de asemenea, de modul de afiare a vizualizarii arborescente. Consultai comanda interactiva ,,V" pentru informaii suplimentare privind acest mod. Nota: Campul COMANDA, spre deosebire de majoritatea coloanelor, nu are o laime fixa. Atunci cand este afiat, acesta, precum i orice alte coloane cu laime variabila, vor fi alocate toate coloanele laimea ramasa a ecranului (pana la maximum 512 caractere). Chiar i aa, astfel de campuri cu laime variabila ar putea suferi trunchiere. Acest lucru se intampla in special adevarat pentru acest camp atunci cand sunt afiate linii de comanda (comanda interactiva ,,c"). A se vedea subiectul 5c. Derularea unei ferestre pentru informaii suplimentare informaii suplimentare privind accesarea oricaror date trunchiate. DATA -- Dimensiunea date + stiva (Kio) Cantitatea de memorie privata rezervata de un proces. Este cunoscuta i sub numele de setul de date rezident ,,Data Resident Set" sau ,,DRS". Este posibil ca aceasta memorie sa nu fie inca repartizata in memoria fizica (RES), dar va fi intotdeauna inclusa in cantitatea de memorie virtuala (VIRT). Consultai ,,PREZENTARE GENERALA, Tipuri de memorie Linux" pentru detalii suplimentare. Docker-- ID-ul containerului Docker Identitatea (hash prescurtat) containerului docker in care ruleaza o sarcina. Daca un proces nu ruleaza in interiorul unui container, va fi afiata o liniua (,,-"). ELAPSED -- Timpul de rulare scurs Perioada de timp de la inceputul unui proces. Astfel, sarcina cea mai recent inceputa va afia cel mai mic interval de timp. Valoarea va fi exprimata ca ,,HH,MM" (ore, minute), dar este supusa unei scalari suplimentare daca intervalul devine prea mare pentru a se potrivi cu laimea coloanei. In acel moment, va fi scalata la ,,DD+HH" (zile+ore) i, daca este cazul, i mai departe. ENVIRON -- Variabile de mediu Afieaza toate variabilele de mediu, daca exista, aa cum sunt vazute de procesele respective. Aceste variabile vor fi afiate in ordinea lor nativa bruta, nu in ordinea in care suntei obinuit sa le vedei cu un ,,set" necalificat. Nota: Campul ,,ENVIRON", spre deosebire de majoritatea coloanelor, nu are o laime fixa. Atunci cand este afiat, acestuia i oricaror alte coloane cu laime variabila li se va aloca toata laimea ramasa pe ecran (pana la maximum 512 caractere). Chiar i aa, astfel de campuri cu laime variabila ar putea suferi trunchiere. Acest lucru este valabil in special pentru acest camp. A se vedea subiectul 5c. Derularea unei ferestre pentru informaii suplimentare privind accesarea oricaror date trunchiate. EXE -- Ruta catre executabil In cazul in care este disponibila, aceasta este ruta completa catre executabil, inclusiv numele programului. Nota: Campul EXE, spre deosebire de majoritatea coloanelor, nu are o laime fixa. Atunci cand este afiat, acestuia i oricaror alte coloane cu laime variabila li se va aloca toata laimea ramasa pe ecran (pana la maximum 512 caractere). Flags -- Indicatori sarcina Aceasta coloana reprezinta indicatorii de planificare cureni ai sarcinii, care sunt exprimai in notaie hexazecimala i fara zerouri. Aceti indicatori sunt documentai oficial in . GID -- Identificatorul de grup Identificatorul grupului efectiv. GROUP -- Numele grupului Numele grupului efectiv. LOGID -- Identificatorul utilizatorului autentificat Identificatorul utilizatorului folosit la autentificare. Cand este afiat ,,-1", inseamna ca aceasta informaie nu este disponibila. LXC -- Numele containerului Lxc Numele containerului lxc in care ruleaza o sarcina. Daca un proces nu ruleaza in interiorul unui container, va fi afiata o liniua (,,-"). NI -- Valoarea curtoaziei ,,nice" Valoarea curtoaziei sarcinii. O valoare de curtoazie negativa inseamna o prioritate mai mare, in timp ce o valoare de curtoazie pozitiva inseamna o prioritate mai mica. Zero in acest camp inseamna pur i simplu ca prioritatea nu va fi ajustata la determinarea capacitaii de desfaurare a unei sarcini. Nota: Aceasta valoare afecteaza numai prioritatea de planificare in raport cu alte procese din acelai auto-grup. A se vedea campurile ,,AGID" i ,,AGNI" pentru informaii suplimentare despre auto-grupuri. NU -- Ultimul nod NUMA cunoscut Un numar reprezentand nodul NUMA asociat cu ultimul procesor utilizat (,,P"). Cand este afiat ,,-1" inseamna ca informaiile NUMA nu sunt disponibile. Consultai comenzile interactive ,,2" i ,,3" pentru prevederi suplimentare NUMA care afecteaza Zona de Rezumat. OOMa -- Factorul de ajustare a depairii limitelor memoriei disponibile Valoarea, care variaza de la -1000 la +1000, se adauga la estimarea actuala de depaire a memoriei (OOMs), care este apoi utilizat pentru a determina ce sarcina trebuie eliminata atunci cand memoria este epuizata. OOMs -- Estimarea de depaire a memoriei Valoarea, cuprinsa intre 0 i +1000, utilizata pentru a selecta sarcina (sarcinile) care urmeaza sa fie omorate atunci cand memoria este epuizata. Zero se traduce prin ,,nu omori niciodata", in timp ce 1000 inseamna ,,omoara intotdeauna". P -- Ultimul CPU utilizat (SMP) Un numar care reprezinta ultimul procesor utilizat. Intr-un mediu SMP adevarat, acest numar se va schimba probabil frecvent, deoarece nucleul utilizeaza in mod intenionat o afinitate slaba. De asemenea, simplul fapt de a rula top poate rupe aceasta afinitate slaba i poate face ca mai multe procese sa schimbe procesoarele mai des (din cauza necesitaii suplimentare de timp cpu).. PGRP -- Identificatorul grupului de procese Fiecare proces este membru al unui grup de procese unic, care este utilizat pentru distribuirea semnalelor i de catre terminale pentru a arbitra cererile de intrare i ieire. Atunci cand un proces este creat (bifurcat), acesta devine membru al grupului de procese al parintelui sau. Prin convenie, aceasta valoare este egala cu identificatorul procesului (a se vedea PID) al primului membru al unui grup de procese, numit liderul grupului de procese. PID -- Identificatorul procesului Identificatorul unic de proces al sarcinii, care se reinnoiete periodic, dar nu repornete niciodata de la zero. In termeni de nucleu, este o entitate care poate fi gestionata definita de o ,,task_struct". Aceasta valoare poate fi, de asemenea, utilizata ca: un ID de grup de procese (a se vedea PGRP); un ID de sesiune pentru liderul sesiunii (a se vedea SID); un ID de grup de fire de execuie pentru liderul grupului de fire de execuie (a se vedea TGID); i un ID de grup de procese TTY pentru liderul grupului de procese (a se vedea TPGID). PPID -- Identificatorul procesului parinte Identificatorul de proces (pid) al parintelui unei sarcini. PR -- Prioritatea Prioritatea de planificare a sarcinii. Daca vedei ,,rt" in acest camp, inseamna ca sarcina se executa cu prioritate de planificare in timp real. In Linux, prioritatea in timp real este oarecum inelatoare, deoarece, in mod tradiional, sistemul de operare in sine nu era predictibil. i, dei nucleul 2.6 poate fi facut in mare parte predictibil, nu este intotdeauna aa. PSS -- Proporia de memorie rezidenta, smaps (Kio) Proporia din poriunea de ,,RSS" a acestei sarcini in care fiecare pagina este imparita la numarul de procese care o partajeaza. Este, de asemenea, suma campurilor ,,PSan", ,,PSfd" i ,,PSsh". De exemplu, daca un proces are 1000 de pagini rezidente singur i 1000 de pagini rezidente partajate cu un alt proces, ,,PSS"-ul acestuia va fi de 1500 (multiplicat cu dimensiunea paginii (1000 x 1,5)). Accesarea valorilor smaps este de 10 ori mai costisitoare din punct de vedere computaional decat accesarea altor statistici de memorie, iar datele pentru ali utilizatori necesita privilegii ,,root". PSan -- Proporia de memorie anonima, smaps (Kio) PSfd -- Proporia de memorie pe fiier, smaps (KiB) PSsh -- Proporia de memorie shmem, smaps (KiB) La fel ca i in cazul lui ,,PSS" de mai sus (memorie rezidenta proporionala totala), aceste campuri reprezinta proporia parii din fiecare tip de memorie care revine acestei sarcini, imparita la numarul de procese care o partajeaza. Accesarea valorilor smaps este de 10 ori mai costisitoare din punct de vedere computaional decat accesarea altor statistici de memorie, iar datele pentru ali utilizatori necesita privilegii ,,root". RES -- Dimensiunea memoriei rezidente (Kio) Un subset al spaiului de adrese virtuale (VIRT) reprezentand memoria fizica (fara memoria spaiului de interschimb ,,swap") pe care o sarcina o folosete in prezent. Este, de asemenea, suma campurilor ,,RSan", ,,RSfd" i ,,RSsh". Aceasta poate include pagini anonime private, pagini private alocate fiierelor (inclusiv imagini de program i biblioteci partajate) i pagini anonime partajate. Toata aceasta memorie este susinuta de fiierul ,,swap" reprezentat separat la seciunea SWAP. In cele din urma, acest camp poate include, de asemenea, pagini partajate susinute de fiiere care, atunci cand sunt modificate, acioneaza ca un fiier ,,swap" dedicat i, prin urmare, nu vor afecta niciodata SWAP. Consultai ,,PREZENTARE GENERALA, Tipuri de memorie Linux" pentru detalii suplimentare. RSS -- Memoria rezidenta, smaps (Kio) O alta vizualizare, mai precisa, a memoriei fizice (fara memoria spaiului de interschimb ,,swap") a procesului. Este obinuta din fiierul ,,smaps_rollup" i este, in general, puin mai mare decat cea prezentata pentru RES. Accesarea valorilor smaps este de 10 ori mai costisitoare din punct de vedere computaional decat accesarea altor statistici de memorie, iar datele pentru ali utilizatori necesita privilegii ,,root". RSan -- Dimensiunea memoriei rezidente anonime (Kio) Un subset de memorie rezidenta (RES) care reprezinta pagini private care nu sunt alocate unui fiier. RSfd -- Dimensiunea memoriei rezidente cu suport de fiiere (Kio) Un subset de memorie rezidenta (RES) reprezentand paginile implicit partajate care suporta imagini de program i biblioteci partajate. Include, de asemenea, alocari explicite ale fiierelor, atat private, cat i partajate. RSlk -- Dimensiunea memoriei rezidente blocate (Kio) Un subset de memorie rezidenta (RES) care nu poate fi interschimbata. RSsh -- Dimensiunea memoriei partajate rezidente (Kio) Un subset de memorie rezidenta (RES) reprezentand paginile ,,shm*/mmap" anonime partajate in mod explicit. RUID -- Identificatorul utilizatorului real Identificatorul utilizatorului real. RUSER -- Numele utilizatorului real Numele utilizatorului real. S -- Starea procesului Starea sarcinii, care poate fi una dintre urmatoarele: D = in somn neintrerupt I = inactiva R = ruleaza S = dormind T = oprita de semnalul de control al lucrarii t = oprita de depanator in timpul urmaririi Z = zombi Sarcinile afiate ca ruland ar trebui sa fie considerate mai degraba ca fiind pregatite sa ruleze -- task_struct lor este reprezentat pur i simplu in coada de execuie Linux. Chiar i in lipsa unei maini SMP adevarate, este posibil sa vedei numeroase sarcini in aceasta stare, in funcie de intervalul de intarziere i de valoarea ,,nice" a lui top. SHR -- Dimensiunea memoriei partajate (Kio) Un subset de memorie rezidenta (RES) care poate fi utilizat de alte procese. Acesta va include pagini anonime partajate i pagini partajate susinute de fiiere. De asemenea, include pagini private asociate la fiiere reprezentand imagini de program i biblioteci partajate. Consultai ,,PREZENTARE GENERALA, Tipuri de memorie Linux" pentru detalii suplimentare. SID -- Identificatorul sesiunii O sesiune este o colecie de grupuri de procese (a se vedea PGRP), stabilite de obicei de shell-ul de conectare. Un proces nou bifurcat se alatura sesiunii creatorului sau. Prin convenie, aceasta valoare este egala cu ID-ul procesului (a se vedea PID) al primului membru al sesiunii, numit lider de sesiune, care este de obicei shell-ul de conectare. STARTED -- Intervalul de timp de pornire Durata de timp scursa de la pornirea sistemului cand a fost iniiat un proces. Astfel, cea mai recenta sarcina pornita va afia cel mai mare interval de timp. Valoarea va fi exprimata ca ,,MM:SS" (minute:secunde). Dar daca intervalul este prea mare pentru a se potrivi cu laimea coloanei, acesta va fi scalat ca ,,HH,MM" (ore, minute) i, eventual, mai departe. SUID -- Identificatorul utilizatorului salvat Identificatorul utilizatorului salvat. SUPGIDS -- Identificatori de grup suplimentari Identificatorii oricaror grupuri suplimentare stabilite la conectare sau motenite de la parintele unei sarcini. Acestea sunt afiate intr-o lista delimitata prin virgule. Nota: Campul SUPGIDS, spre deosebire de majoritatea coloanelor, nu are o laime fixa. Atunci cand este afiat, acestuia i oricaror alte coloane cu laime variabila li se va aloca toata laimea ramasa pe ecran (pana la maximum 512 caractere). SUPGRPS -- Nume de grupuri suplimentare Numele oricaror grupuri suplimentare stabilite la conectare sau motenite de la parintele unei sarcini. Acestea sunt afiate intr-o lista delimitata prin virgule. Nota: Campul SUPGRPS, spre deosebire de majoritatea coloanelor, nu are o laime fixa. Atunci cand este afiat, acestuia i oricaror alte coloane cu laime variabila li se va aloca toata laimea ramasa pe ecran (pana la maximum 512 caractere). SUID -- Numele utilizatorului salvat Numele utilizatorului salvat. SWAP -- Dimensiunea spaiului de interschimb (Kio) Poriunea rezidenta anterior a spaiului de adrese al unei sarcini care se scrie in fiierul ,,swap" atunci cand memoria fizica este suprasolicitata. Consultai ,,PREZENTARE GENERALA, Tipuri de memorie Linux" pentru detalii suplimentare. TGID -- Identificatorul grupului de fire de execuie Identificatorul grupului de fire de execuie din care face parte o sarcina. Este PID-ul liderului grupului de fire. In termeni de nucleu, reprezinta acele sarcini care partajeaza o structura mm_struct. TIME -- Timpul CPU Timpul total CPU pe care sarcina a folosit-o de cand a inceput. Cand modul cumulativ este Activat (On), fiecare proces este listat cu timpul cpu pe care l-au folosit el i copiii sai mori. Comutai modul Cumulativ cu ,,S", care este atat o opiune de linie de comanda, cat i o comanda interactiva. Consultai comanda interactiva ,,S" pentru informaii suplimentare despre acest mod. TIME+ -- Timpul CPU, in sutimi de secunda La fel ca TIMPUL, dar reflectand mai multa finee prin sutimi de secunda. TPGID -- Identificatorul grupului de procese care controleaza terminalul (tty) Identificatorul grupului de procese al procesului din prim-plan pentru terminalul (tty) conectat sau ,,-1" daca un proces nu este conectat la un terminal. Prin convenie, aceasta valoare este egala cu identificatorul de proces (a se vedea PID) al liderului grupului de procese (a se vedea PGRP). TTY -- Terminalul de control Numele terminalului de control. Acesta este, de obicei, dispozitivul (port serial, pty etc.) de la care a fost pornit procesul i pe care il folosete pentru intrare sau ieire. Cu toate acestea, nu este necesar ca o sarcina sa fie asociata cu un terminal, caz in care vei vedea afiat ,,?". UID -- Identificatorul utilizatorului Identificatorul de utilizator efectiv al proprietarului sarcinii. USED -- Memoria utilizata (Kio) Acest camp reprezinta memoria fizica fara memoria din spaiul de interschimb pe care o sarcina o folosete (RES) plus poriunea spaiului de interschimb din spaiul sau de adrese (SWAP). Consultai ,,PREZENTARE GENERALA, Tipuri de memorie Linux" pentru detalii suplimentare. USER -- Numele utilizatorului Numele de utilizator efectiv al proprietarului sarcinii. USS -- Dimensiune unica a setului Poriunea de memorie fizica fara memoria din spaiul de interschimb (,,RSS") care nu este partajata cu nici un alt proces. Este derivata din fiierul ,,smaps_rollup". Accesarea valorilor smaps este de 10 ori mai costisitoare din punct de vedere computaional decat accesarea altor statistici de memorie, iar datele pentru ali utilizatori necesita privilegii ,,root". VIRT -- Dimensiunea memoriei virtuale (Kio) Cantitatea totala de memorie virtuala utilizata de sarcina. Include tot codul, datele i bibliotecile partajate plus paginile care au fost schimbate i paginile care au fost alocate, dar nu utilizate. Consultai ,,PREZENTARE GENERALA, Tipuri de memorie Linux" pentru detalii suplimentare. WCHAN -- Dormirea in funcie Acest camp va afia numele funciei din nucleu in care doarme in prezent sarcina. Sarcinile care ruleaza vor afia o liniua (,,-") in campul din aceasta coloana. ioR -- Numarul de octei de In/Ie citii Numarul de octei pe care un proces i-a determinat sa fie preluai din stratul de stocare. Sunt necesare privilegii de root pentru a afia datele de,,in/ie" pentru ali utilizatori. ioRop -- Numarul de operaii de citire de la In/Ie Numarul de operaii de citire a In/Ie (apeluri de sistem ,,syscalls") pentru un proces. Este posibil ca astfel de apeluri sa nu aiba ca rezultat o In/Ie efectiva a discului fizic. ioW -- Numarul de octei de In/Ie scrii Numarul de octei pe care un proces i-a determinat sa fie trimii la stratul de stocare. ioWop -- Numarul de operaii de scriere la In/Ie Numarul de operaii de scriere la In/Ie (apeluri de sistem ,,syscalls") pentru un proces. Este posibil ca astfel de apeluri sa nu aiba ca rezultat o In/Ie efectiva a discului fizic. nDRT -- Numarul de pagini corupte Numarul de pagini care au fost modificate de cand au fost scrise ultima data in memoria auxiliara. Paginile corupte trebuie sa fie scrise in memoria auxiliara. inainte ca locaia de memorie fizica corespunzatoare sa poata fi utilizata pentru o alta pagina virtuala. Acest camp a fost desfiinat odata cu linux 2.6 i este intotdeauna zero. nFD -- Numarul de descriptori de fiiere Numarul total de fiiere deschise asociate cu un proces. nMaj -- Numarul de erori de pagina majore Numarul de erori de pagina majore care au avut loc pentru o sarcina. O eroare de pagina apare atunci cand un proces incearca sa citeasca sau sa scrie pe o pagina virtuala care nu este prezenta in acel moment in spaiul sau de adrese. O eroare majora de pagina este atunci cand este implicat un acces la o stocare auxiliara pentru a face pagina respectiva disponibila. nMaj -- Numarul de erori de pagina minore Numarul de erori de pagina minore care au avut loc pentru o sarcina. O eroare de pagina apare atunci cand un proces incearca sa citeasca sau sa scrie pe o pagina virtuala care nu este prezenta in acel moment in spaiul sau de adrese. O eroare de pagina minora nu implica accesul la stocarea auxiliara pentru a face pagina respectiva disponibila. nTH -- Numarul de fire de execuie Numarul de fire de execuie asociate unui proces. nsCGROUP -- Spaiul de nume al grupului de control ,,CGROUP" Nodul-i al spaiului de nume utilizat pentru a ascunde identitatea grupului de control al carui membru este procesul. nsIPC -- Spaiul de nume IPC Nodul-i al spaiului de nume utilizat pentru a izola resursele de comunicare interproces (IPC), cum ar fi obiectele IPC System V i cozile de mesaje POSIX. nsMNT -- Spaiul de nume MNT Nodul-i al spaiului de nume utilizat pentru a izola punctele de montare a sistemului de fiiere, oferind astfel diferite vizualizari ale ierarhiei sistemului de fiiere. nsNET -- Spaiul de nume NET Nodul-i al spaiului de nume utilizat pentru a izola resurse precum dispozitive de reea, adrese IP, rutare IP, numere de port, etc. nsPID -- Spaiul de nume PID Nodul-i al spaiului de nume utilizat pentru a izola numerele de identificare a proceselor, ceea ce inseamna ca acestea nu trebuie sa ramana unice. Astfel, fiecare astfel de spaiu de nume ar putea avea propriul ,,init/systemd" (PID #1) pentru a gestiona diverse sarcini de iniializare i pentru a culege procesele copil orfane. nsTIME -- Spaiul de nume TIME Nodul-i al spaiului de nume care permite proceselor sa vada diferite ore de sistem intr-un mod similar cu spaiul de nume UTS. nsUSER -- Spaiul de nume USER Nodul-i al spaiului de nume utilizat pentru a izola numerele de identificare ale utilizatorilor i grupurilor. Astfel, un proces ar putea avea un ID de utilizator normal, fara privilegii, in afara unui spaiu de nume de utilizator, in timp ce in interiorul acelui spaiu de nume ar putea avea un ID de utilizator 0, cu privilegii complete de root. nsUTS -- Spaiul de nume UTS Nodul-i al spaiului de nume utilizat pentru a izola numele de gazda i numele de domeniu NIS. UTS inseamna pur i simplu "UNIX Time-sharing System" (Sistemul UNIX de partajare a timpului). vMj -- Numarul delta de erori de pagina majore Numarul de erori de pagina majore care au avut loc de la ultima actualizare (a se vedea nMaj). vMn -- Numarul delta de erori de pagina minore Numarul de erori de pagina minore care au avut loc de la ultima actualizare (a se vedea nMin). 3b. GESTIONAREA campurilor Dupa apasarea comenzii interactive ,,f" (Gestionarea campurilor) vi se va afia un ecran care arata: 1) numele ferestrei ,,actuale"; 2) campul de sortare desemnat; 3) toate campurile in ordinea lor curenta impreuna cu descrierile. Intrarile marcate cu un asterisc sunt campurile afiate in prezent, daca laimea ecranului o permite. o Dupa cum indica instruciunile de pe ecran, navigai printre campuri cu tastele sagei Sus i Jos. Tastele ,,PgUp", ,,PgDn", ,,Home" i ,,End" pot fi, de asemenea, folosite pentru a ajunge rapid la primul sau ultimul camp disponibil. o Tasta sageata Dreapta selecteaza un camp pentru repoziionare, iar tasta sageata Stanga sau tasta valideaza plasarea campului respectiv. o Tasta ,,d" sau bara de Spaiu comuta starea de afiare a unui camp i, prin urmare, prezena sau absena asteriscului. o Tasta ,,s" desemneaza un camp ca fiind campul de sortare. A se vedea subiectul 4c. ,,Comenzi din zona de sarcini, Sortare" pentru informaii suplimentare privind selectarea unui camp de sortare. o Tastele ,,a" i ,,w" pot fi folosite pentru a parcurge toate ferestrele disponibile, iar tastele ,,q" sau fac ieirea din ,,Gestionarea campurilor". Ecranul de ,,Gestionarea campurilor" poate fi utilizat, de asemenea, pentru a schimba fereastra/grupul de campuri ,,curent", fie in modul ecran complet, fie in modul de afiare alternativa. Ceea ce a fost vizat atunci cand a fost apasata tasta ,,q" sau va fi facut curent atunci cand revenii la afiarea top. A se vedea subiectul 5. Dispoziii privind AFIAREA ALTERNATIVA i comanda interactiva ,,g" pentru o perspectiva asupra ferestrelor i grupurilor de campuri ,,curente". Nota: Orice fereastra care a fost derulata pe orizontala va fi restabilita in cazul in care se efectueaza modificari ale campurilor prin intermediul ecranului ,,Gestionarea campurilor". Cu toate acestea, orice poziie derulata pe verticala nu va fi afectata. Consultai subiectul 5c. Derularea unei ferestre pentru informaii suplimentare privind derularea pe verticala i orizontala. 4. Comenzi INTERACTIVE Mai jos este listat un scurt index al comenzilor din categorii. Unele comenzi apar de mai multe ori -- semnificaia sau domeniul lor pot varia in funcie de contextul in care sunt emise. 4a. Comenzi GLOBALE iu> ?, =, 0, A, B, d, E, e, g, H, h, I, k, q, r, s, W, X, Y, Z, ^E, ^R 4b. Comenzi din ZONA de REZUMAT C, l, t, m, 1, 2, 3, 4, 5, ! 4c. Comenzi din ZONA de SARCINI Aspect: b, J, j, x, y, z Coninut: c, F, f, O, o, S, U, u, V, v Dimensiune: #, i, n Sortare: <, >, f, R 4d. Comenzile FERESTREI DE JOS ^A, ^G, ^K, ^L, ^N, ^P, ^U, Tab, Shift+Tab 4e. Paleta de CULORI , a, B, b, H, M, q, S, T, w, z, @, 0 - 7 5b. Comenzi pentru ferestre -, _, =, +, A, a, G, g, w 5c. Derularea unei ferestre C, Sus, Jos, Stanga, Dreapta, PgUp, PgDn, Home, End 5d. Cautarea intr-o fereastra L, & 5e. Filtrarea intr-o fereastra O, o, ^O, =, + 4a. Comenzi GLOBALE Comenzile interactive globale sunt intotdeauna disponibile atat in modul ecran complet, cat i in modul de afiare alternativa. Cu toate acestea, unele dintre aceste comenzi interactive nu sunt disponibile atunci cand se executa in modul ,,Securizat". Daca dorii sa tii dinainte daca top) a fost sau nu securizat, nu avei decat sa cerei Ajutor i sa vedei rezumatul sistemului pe a doua linie. sau iu> :Reimprospatare afiare Aceste comenzi reactiveaza top i, dupa primirea oricarei intrari, intregul afiaj va fi redesenat. De asemenea, ele foreaza o actualizare a oricaror modificari aduse de comenzile interactive cpu-ului sau memoriei fizice. Utilizai oricare dintre aceste taste daca avei un interval de intarziere mare i dorii sa vedei starea curenta, ? | h :Ajutor Sunt disponibile doua niveluri de ajutor. Primul va va reaminti toate comenzile interactive de baza. Daca top este securizat, acest ecran va fi abreviat. Tastand ,,h" sau ,,?" pe acest ecran de ajutor, vei accesa ajutorul pentru acele comenzi interactive aplicabile in modul de afiare alternativa. = :Elimina limitele de afiare Elimina restriciile privind ceea ce se afieaza. Aceasta comanda va anula orice comenzi ,,i" (sarcini inactive), ,,n" (sarcini maxime), ,,v" (ascunde copii) i ,,F" (focalizare). care ar putea fi active. De asemenea, permite ieirea de la monitorizarea PID, filtrarea utilizatorului, alte filtre, procesarea Cautarii i modul de Combinare a CPU-urilor. In plus, daca fereastra a fost derulata, aceasta va fi restabilita cu aceasta comanda. 0 :comutare afiare/suprimare Zerouri Aceasta comanda determina daca zerourile sunt afiate sau suprimate pentru multe dintre campurile din fereastra unei sarcini. Campuri precum UID, GID, NI, PR sau P nu sunt afectate de aceasta comutare. A :comutare Mod de afiare alternativa Aceasta comanda va comuta intre modul de afiare pe ecran complet i modul de afiare alternativa. A se vedea subiectul 5. Dispoziii privind AFIAREA ALTERNATIVA i comanda interactiva ,,g" pentru a obine informaii despre ferestrele i grupurile de campuri ,,actuale". B :comutare Activeaza/dezactiveaza afiarea in Aldin Aceasta comanda va influena utilizarea capacitaii de afiare in <> a ,,termifo" (terminfo bold) i modifica atat zona de rezumat, cat i zona de sarcini pentru fereastra ,,curenta". In timp ce este destinata in primul rand utilizarii cu terminale simple, neevoluate, ea poate fi aplicata oricand. Nota: Cand aceasta comutare este Activata (On) i top funcioneaza in modul monocrom, intregul afiaj va aparea ca text normal. Astfel, cu excepia cazului in care comenzile ,,x'"i/sau ,,y'"folosesc inversarea pentru accentuare, nu va exista nicio confirmare vizuala ca acestea sunt activate. * d | s :Modifica intervalul de intarziere Vi se va solicita sa introducei timpul de intarziere, in secunde, intre actualizarile afiarii Fraciunile de secunda sunt recunoscute, dar nu se accepta un numar negativ. Introducerea valorii 0 determina actualizari (aproape) continue, cu un rezultat nesatisfacator. deoarece sistemul i controlorul terminalului (tty) incearca sa ina pasul cu cerinele emise de top. Valoarea intarzierii este invers proporionala cu incarcarea sistemului, aa ca stabilii-o cu atenie. Daca, in orice moment, dorii sa tii care este timpul de intarziere actual, cerei pur i simplu sa primii Ajutor i vizualizai rezumatul sistemului pe a doua linie. E :Foreaza scalarea rezumatului de memorie in Zona de Rezumat Cu aceasta comanda putei parcurge scara de memorie disponibila in Zona de Rezumat, care variaza de la Kio (kibioctei sau 1.024 de octei) la Eio (exbibioctei sau 1.152.921.504.606.846.976 de octei). Daca vedei un ,,+" intre un numar afiat i urmatoarea eticheta, inseamna ca top a fost forat sa trunchieze o parte din acel numar. Prin creterea factorului de scalare, o astfel de trunchiere poate fi evitata. E :Foreaza scalarea memoriei sarcinilor in Zona de Sarcini Cu aceasta comanda putei parcurge scara de memorie disponibila pentru Zona de Sarcini, care variaza de la Kio (kibioctei sau 1.024 de octei) la Pio (pebioctei sau 1.125.899.906.842.624 de octei). Dei top va incerca sa respecte intervalul inta selectat, este posibil sa fie necesara o scalare suplimentara pentru a se adapta la valorile actuale. In cazul in care dorii sa vedei un rezultat mai omogen in coloanele de memorie, marirea plajei de scalare va indeplini de obicei acest obiectiv. Creterea prea mare a acesteia, cu toate acestea, este posibil sa produca un rezultat complet zero, care nu poate fi suprimat cu comanda interactiva ,,0". g :Alege o alta fereastra/grup de campuri Vi se va cere sa introducei un numar intre 1 i 4 pentru a desemna grupul de campuri care trebuie sa devina fereastra ,,curenta". In scurt timp, va vei simi confortabil cu aceste 4 ferestre, mai ales dupa ce vei experimenta cu modul de afiare alternativa. H :comutare Mod fire de execuie Atunci cand acest comutator este Activat (On), vor fi afiate firele individuale pentru toate procesele in toate ferestrele de sarcini vizibile. In caz contrar, top afieaza o insumare a tuturor firelor din fiecare proces. I :comutare Mod Irix/Solaris Atunci cand funcioneaza in modul Solaris (,,I" Dezactivata (Off)), utilizarea cpu a unei sarcini va fi imparita la numarul total de unitai centrale de procesare. Dupa lansarea acestei comenzi, vi se va comunica noua stare a acestei comutari. * k :Omoara o sarcina Vi se va solicita un PID i apoi semnalul de trimis. Daca nu se introduce niciun PID sau daca se introduce un numar negativ, acesta va fi interpretat ca fiind valoarea implicita afiata in prompt (prima sarcina afiata). O valoare PID de zero inseamna programul propriu-zis top. Semnalul implicit, aa cum se reflecta in prompt, este SIGTERM. Cu toate acestea, putei trimite orice semnal, prin introducerea numarului sau numelui acestuia. Daca dorii sa intrerupei procesul de omorare, efectuai una dintre urmatoarele aciuni, in funcie de progresul inregistrat: 1) la promptul pid, introducei un numar invalid 2) la promptul de semnal, introducei 0 (sau orice semnal nevalid) 3) la orice prompt, tastai q :Ieire * r :Modifica valoarea de curtoazie ,,nice" a unei sarcini Vi se va solicita un PID i apoi o valoare de curtoazie ,,nice" pentru acesta. Daca nu se introduce niciun PID sau daca se introduce un numar negativ, acesta va fi interpretat ca fiind valoarea implicita afiata in prompt (prima sarcina afiata). O valoare PID de zero inseamna programul propriu-zis top. O valoare pozitiva de curtoazie ,,nice" va face ca un proces sa piarda prioritatea de execuie. In schimb, o valoare negativa de curtoazie ,,nice" va face ca un proces sa fie privit mai favorabil de catre nucleu. Ca regula generala, utilizatorii obinuii nu pot decat sa mareasca valoarea de curtoazie ,,nice", i nu au voie sa o reduca. Daca dorii sa intrerupei procesul de schimbare a valorii de curtoazie ,,nice", efectuai una dintre urmatoarele aciuni, in funcie de progresul inregistrat: 1) la promptul pid, introducei un numar nevalid 2) la promptul de curtoazie ,,nice", tastai fara nici o intrare 3) la orice prompt, tastai W :Scrie fiierul de configurare Aceasta va salva toate opiunile i comutatoarele, precum i modul de afiare i timpul de intarziere curente. Prin emiterea acestei comenzi chiar inainte de a iei din top, vei putea reporni mai tarziu exact in aceeai stare. X :Laime extra-fixata Unele campuri au laime fixa i nu sunt scalabile. Ca atare, acestea pot fi trunchiate, ceea ce va fi indicat printr-un ,,+" in ultima poziie. Aceasta comanda interactiva poate fi utilizata pentru a modifica laimile urmatoarelor campuri: campul implicit campul implicit campul implicit GID 5 Docker 8 WCHAN 10 LOGID 5 GROUP 8 nsCGROUP 10 RUID 5 LXC 8 nsIPC 10 SUID 5 RUSER 8 nsMNT 10 UID 5 SUSER 8 nsNET 10 TTY 8 nsPID 10 USER 8 nsTIME 10 nsUSER 10 nsUTS 10 Vi se va solicita valoarea care urmeaza sa fie adaugata la laimile implicite prezentate mai sus. Daca introducei zero, se revine la valorile implicite. Daca introducei un numar negativ, top va crete automat dimensiunea coloanei, dupa cum este necesar, pana cand nu mai exista date trunchiate. Nota: Fie ca sunt marite in mod explicit sau automat, laimile acestor campuri nu sunt niciodata reduse de top. Pentru a le restrange, trebuie sa specificai un numar mai mic sau sa restabilii valorile implicite. Y :Inspecteaza o alta ieire Dupa lansarea comenzii interactive `Y', vi se va cere un PID inta. Introducerea unei valori sau acceptarea valorii implicite are ca rezultat obinerea unui ecran separat. Acest ecran poate fi utilizat pentru a vizualiza o varietate de fiiere sau de ieire a comenzilor canalizate in timp ce afiajul iterativ normal al top este pus in pauza. Nota: Aceasta comanda interactiva este realizata pe deplin numai atunci cand intrarile de sprijin au fost adaugate manual la sfaritul fiierului de configurare al top. Pentru detalii privind crearea acestor intrari, consultai subiectul 6b. Adaugarea de intrari de INSPECTARE. Majoritatea tastelor utilizate pentru a naviga cu funcia Inspectare sunt reflectate in prologul antetului acesteia. Cu toate acestea, exista taste suplimentare disponibile dupa ce ai selectat un anumit fiier sau o anumita comanda. Acestea sunt familiare oricui a folosit pagerul <> o data i sunt rezumate aici pentru referine viitoare: tasta funcia = linie de stare alternativa, fiier sau conducta / gasete, echivalent cu ,,L" pentru localizeaza n gasete urmatorul, echivalent cu ,,&" pentru localizeaza urmatorul iu> deruleaza in jos, echivalent cu b deruleaza in sus, echivalent cu g prima linie, echivalent cu G ultima linie, echivalent cu Z :Schimba paleta de culori Aceasta tasta va va duce la un ecran separat unde putei schimba culorile pentru fereastra ,,curenta" sau pentru toate ferestrele. Pentru detalii privind aceasta comanda interactiva, consultai subiectul 4d. Paleta de CULORI. ^E :Scaleaza campurile de timp CPU (tasta Ctrl + ,,e") In mod normal, campurile ,,timp" sunt afiate cu cea mai mare precizie pe care o permite laimea lor. Acest comutator reduce aceasta precizie pana cand aceasta se incadreaza. Ea ilustreaza, de asemenea, scalarea pe care aceste campuri o pot experimenta automat, care depinde de obicei de durata de funcionare a sistemului. De exemplu, daca este afiat ,,MMM:SS.hh", fiecare apasare de tasta ^E il va schimba in: ,,MM:SS", ,,Ore,MM", ,,Zile+ore" i, in final, ,,Saptamani+zile". Nu toate campurile de timp sunt supuse la o gama completa de astfel de scalari. * ^R :Modifica valoarea de curtoazie ,,nice" a unui auto-grup (tasta Ctrl + ,,r") Vi se va solicita un PID i apoi valoarea de curtoazie ,,nice" pentru acest auto-grup AGNI. Daca nu se introduce niciun PID, se va interpreta ca fiind valoarea implicita afiata in prompt (prima sarcina afiata). O valoare AGNI pozitiva va face ca procesele din acel auto-grup sa piarda prioritate. Dimpotriva, o valoare negativa face ca acestea sa fie privite mai favorabil de catre nucleu. Utilizatorii obinuii nu au voie sa stabileasca valori AGNI negative. Daca dorii sa intrerupei procesul de modificare a valoarii de curtoazie ,,nice", tastai . * Comenzile marcate cu un asterisc (`*') nu sunt disponibile in modul Securizat i nici nu vor fi afiate pe primul nivel al ecranului de ajutor. 4b. Comenzi din ZONA de REZUMAT Comenzile interactive din zona de rezumat sunt intotdeauna disponibile atat in modul ecran complet, cat i in modul de afiare alternativa. Acestea afecteaza liniile de inceput ale fiierului afiajului i vor determina poziia mesajelor i a solicitarilor. Aceste comenzi au intotdeauna un impact doar asupra ferestrei/grupului de campuri ,,curent". A se vedea subiectul 5. Dispoziii privind AFIAREA ALTERNATIVA i comanda interactiva ,,g" pentru o perspectiva asupra ferestrelor i grupurilor de campuri ,,curente". C :comutare Afieaza coordonatele de derulare Activeaza un mesaj informativ care este afiat ori de cate ori linia de mesaje nu este utilizata in alt mod. Pentru informaii suplimentare, consultai subiectul 5c. Derularea unei ferestre. l :comutare Media de incarcare / Timp de funcionare Aceasta este, de asemenea, linia care conine numele programului (eventual un alias) atunci cand se opereaza in modul ecran complet sau numele ferestrei ,,curente" atunci cand se opereaza in modul de afiare alternativa. t :comutare Sarcina / Stari CPU Aceasta comanda afecteaza de la 2 la mai multe linii ale Zonei de Rezumat, in funcie de starea comutatoarelor de comanda ,,1", ,,2" sau ,,3" i daca top ruleaza sau nu in SMP real. Aceasta parte a zonei de rezumat este, de asemenea, influenata de comanda de comutare interactiva ,,H", aa cum se reflecta in eticheta totala care arata fie Tasks (Sarcini) sau Threads (Fire de execuie). Aceasta comanda servete ca un comutator cu patru poziii, trecand prin aceste moduri: 1. procentaje detaliate pe categorii 2. procentaj abreviat utilizator/sistem i total + grafic cu bare 3. procentaj abreviat utilizator/sistem i total + grafic cu blocuri 4. dezactiveaza afiarea sarcinilor i a starilor CPU Cand opereaza in oricare dintre modurile grafice, afiajul devine mult mai semnificativ atunci cand sunt afiate i procesoarele individuale sau nodurile NUMA. Consultai comenzile ,,1", ,,2" i ,,3" de mai jos pentru informaii suplimentare. m :comutare Utilizare Memorie/Swap Aceasta comanda afecteaza cele doua linii din Zona de Rezumat care se ocupa de memoria fizica i virtuala. Aceasta comanda servete ca un comutator cu patru poziii, trecand prin aceste moduri: 1. procentaje detaliate dupa tipul de memorie 2. procentaj utilizata/total disponibila abreviat + grafic cu bare 3. procentaj utilizata/total disponibila abreviat + grafic cu blocuri 4. dezactiveaza afiarea memoriei 1 :comutare Stari CPU pe o linie unica / pe linii separate Aceasta comanda afecteaza modul in care este afiata poriunea Stari Cpu a comenzii ,,t". Dei aceasta comutare exista in primul rand pentru a servi mainilor SMP masiv-paralele, nu este limitata doar la mediile SMP. Cand vedei ,,%Cpu(s):" in zona de rezumat, comanda de comutare ,,1" este activata i toate informaiile despre CPU sunt adunate pe o singura linie. In caz contrar, fiecare CPU este afiat separat ca: ,,%Cpu0, %Cpu1, ..." pana la inalimea disponibila a ecranului. 2 :comutare Rezumat Noduri NUMA/CPU Aceasta comanda comuta intre afiarea (doar) a rezumatului de CPU al comenzii ,,1" sau afiarea rezumatului i a statisticilor de utilizare a CPU pentru fiecare nod NUMA. Este disponibila numai daca un sistem are suportul NUMA necesar. 3 :Extinde Nodul NUMA. Vei fi invitat sa introducei un numar care reprezinta un nod NUMA. Ulterior, va fi afiat un rezumat al nodului plus statisticile pentru fiecare CPU din acel nod pana cand se apasa comanda de comutare ,,1", ,,2" sau ,,4". Aceasta comanda interactiva este disponibila numai daca un sistem are suportul NUMA necesar. 4 :comutare Afieaza mai multe elemente adiacente Aceasta comanda dezactiveaza comanda ,,1" i afieaza mai multe rezultate CPU i de memorie pe fiecare linie. Fiecare tasta ,,4" succesiva adauga un alt CPU pana cand se revine din nou la linii separate pentru rezultatele provenite de la CPU i memorie. In acest mod pot fi afiate maximum 8 CPU-uri pe linie. Cu toate acestea, este posibil ca datele sa fie trunchiate inainte de a se ajunge la maxim. Acest lucru este cu sigurana valabil atunci cand se afieaza statistici detaliate prin intermediul comenzii de comutare ,,t", deoarece astfel de date nu pot fi scalate la fel ca reprezentarile grafice. Daca se dorete sa se iasa rapid din modul adiacent fara a se ajunge pana la 8, este suficient sa se foloseasca comanda ,,1". 5 :comutare Afieaza P-Core i E-Core Aceasta comanda este activa numai atunci cand comanda de comutare ,,t" este activata, iar comenzile de comutare ,,1", ,,2", ,,3" i ,,!" sunt dezactivate, afiand astfel rezultatele individuale ale procesorului. Aceasta presupune ca o platforma are mai multe nuclee de doua tipuri distincte, fie ,,multi-threaded" (P-Core), fie ,,single-threaded" (E-Core). In timp ce, in mod normal, fiecare CPU este afiat ca ,,%Cpu0, %Cpu1, ...", aceasta comutare poate fi utilizata pentru a identifica i/sau filtra aceste CPU-uri in funcie de tipul de nucleu, fie P-Core (performana), fie E-Core (eficiena). Prima data cand se apasa ,,5", fiecare unitate centrala este afiata ca ,,%CpP" sau ,,%CpE", reprezentand cele doua tipuri de nuclee. A 2-a oara, vor fi afiate doar nucleele P-Core (%CpP). A 3-a oara, doar nucleele E-Core (%CpE) sunt afiate. Cand aceasta comanda de comutare este apasata pentru a 4-a oara, afiajul CPU revine la convenia normala ,,%Cpu'. In cazul in care nu exista categorii separate de performana i eficiena, aceasta comanda nu va avea niciun efect. ! :comutare Modul Combinare CPU-uri Aceasta comanda de comutare este destinata mediilor SMP masiv paralele in care, chiar i cu comanda de comutare ,,4", nu pot fi afiate toate procesoarele. La fiecare apasare a tastei ,,!" numarul de CPU-uri combinate se dubleaza, reducand astfel numarul total de linii de CPU-uri afiate. De exemplu, la prima apasare a tastei ,,!" se va combina o unitate de procesare suplimentara i va fi afiata ca ,,0-1, 2-3, ..." in loc de ,,%Cpu0, %Cpu1, %Cpu2, %Cpu3, ...". Cu o a doua apasare a comenzii de comutare ,,!", patru CPU-uri sunt combinate i afiate ca ,,0-3, 4-7, ...". Apoi, a treia apasare a comenzii ,,!", combina opt CPU-uri, ce se afieaza ca ,,0-7, 8-15, ...", etc. Aceasta progresie continua pana cand se afieaza din nou fiecare CPU i are un impact atat asupra comenzii de comutare ,,1", cat i asupra comenzii de comutare ,,4" (una sau mai multe coloane). Utilizai comanda ,,=" pentru a iei din modul de Combinare a CPU-urilor. Nota: Daca intreaga zona de rezumat a fost dezactivata pentru orice fereastra, vei ramane doar cu linia de mesaj. In acest fel, vei avea maximizate randurile de sarcini disponibile, dar sacrificat (temporar) numele programului in modul ecran complet sau numele ferestrei ,,curente" atunci cand se afla in modul de afiare alternativa. 4c. Comenzi din ZONA de SARCINI Comenzile interactive din Zona de Sarcini sunt intotdeauna disponibile in modul ecran complet. Comenzile interactive din zona de sarcini nu sunt niciodata disponibile in modul de afiare alternativa daca afiarea sarcinilor din fereastra ,,curenta" a fost dezactivata (a se vedea tema 5. Dispoziii privind AFIAREA ALTERNATIVA). ASPECTUL ferestrei de sarcini J :comutare Justificarea(alinierea) coloanelor numerice Alterneaza intre datele numerice justificate la dreapta (valoarea implicita) i cele justificate la stanga. In cazul in care datele numerice umplu complet coloana disponibila, aceasta comanda de comutare poate avea un impact doar asupra antetului coloanei. j :comutare Justificarea(alinierea) coloanelor de caractere Alterneaza intre datele de caractere justificate la stanga (valoarea implicita) i cele justificate la dreapta. In cazul in care datele de caractere umplu complet coloana disponibila, aceasta comanda de comutare poate avea un impact doar asupra antetului coloanei. Urmatoarele comenzi vor fi, de asemenea, influenate de starea comutatorului global ,,B" (activeaza Aldin). b :comutare Aldin / Invers Aceasta comanda va avea un impact asupra modului in care sunt afiate comutatoarele ,,x" i ,,y". De asemenea, poate avea un impact asupra Zonei de Rezumat atunci cand a fost selectat un grafic cu bare pentru starile CPU sau utilizarea memoriei prin intermediul comenzilor de comutare ,,t" sau ,,m". x :comutare Evideniere coloana Modifica evidenierea pentru campul de sortare curent. Daca uitai ce camp este sortat, aceasta comanda poate servi ca o reamintire vizuala rapida, cu condiia ca campul de sortare sa fie afiat. Campul de sortare ar putea sa nu fie vizibil deoarece: 1) laimea ecranului este insuficienta 2) comanda interactiva ,,f" l-a dezactivat y :comutare Evideniere rand Modifica evidenierea sarcinilor ,,care ruleaza". Pentru informaii suplimentare despre aceasta stare a sarcinilor, consultai subiectul 3a. DESCRIEREA campurilor, campul ,,S" (Starea procesului). Utilizarea acestei prevederi ofera informaii importante despre starea de sanatate a sistemului dumneavoastra. Singurele costuri vor fi cateva secvene suplimentare de eludare tty. z :comutare Culori/Monocromie Comuta fereastra ,,curenta" intre ultima schema de culori utilizata i forma mai veche de negru pe alb sau alb pe negru. Aceasta comanda va modifica atat Zona de Rezumat, cat i Zona de Sarcini, dar nu afecteaza starea comutatoarelor ,,x", ,,y" sau ,,b". CONINUTUL ferestrei de sarcini c :comutare Linia de comanda / Nume program Aceasta comanda va fi onorata indiferent daca coloana COMANDA este sau nu vizibila in prezent. Mai tarziu, daca acest camp va fi afiat, modificarea pe care ai aplicat-o va fi vizibila. F :comutare Menine atenia asupra parintelui Cand va aflai in modul de vizualizare arborescenta, aceasta tasta are rolul de a comuta pentru a menine concentrarea pe o sarcina inta, probabil una cu copii bifurcai. In cazul in care modul de vizualizare a padurii este Dezactivat (Off), aceasta tasta nu are niciun efect. Comutarea se aplica primului proces (cel mai de sus) din fereastra ,,curenta". Odata stabilita, sarcina respectiva este intotdeauna afiata ca fiind primul proces (cel mai de sus) impreuna cu copiii sai bifurcai. Toate celelalte procese vor fi suprimate. Nota: taste precum ,,i" (sarcini inactive), ,,n" (numarul maxim de sarcini), ,,v" (ascunde copii) i filtrarea Utilizator/Altul raman accesibile i pot avea un impact asupra elementelor afiate. f :Gestionarea campurilor Aceasta tasta afieaza un ecran separat in care putei modifica campurile care sunt afiate, ordinea lor i, de asemenea, putei desemna campul de sortare. Pentru informaii suplimentare cu privire la aceasta comanda interactiva, consultai subiectul 3b. Gestionarea campurilor. O | o :Alta filtrare Vi se va cere sa introducei criteriile de selecie care vor determina apoi ce sarcini vor fi afiate in fereastra ,,curenta". Criteriile dumneavoastra pot fi facute sensibile la majuscule sau minuscule sau pot fi ignorate. i dumneavoastra stabilii daca top trebuie sa includa sau sa excluda sarcinile care coincid. Consultai subiectul 5e. ,,Filtrarea intr-o fereastra" pentru detalii despre aceste comenzi interactive i alte comenzi interactive conexe. S :comutare Modul de timp cumulat Cand modul cumulativ este Activat (On), fiecare proces este listat cu timpul de procesare pe care acesta i copiii sai mori l-au folosit. Cand este Dezactivat (Off), programele care se bifurca in mai multe sarcini separate vor parea mai puin solicitante. Pentru programe precum <> sau un shell acest lucru este adecvat, dar pentru altele, precum compilatoarele, poate ca nu. Experimentai cu doua ferestre de sarcini care impart acelai camp de sortare, dar cu stari ,,S" diferite i vedei ce reprezentare preferai. Dupa lansarea acestei comenzi, vei fi informat cu privire la noua stare a acestei comutari. Daca dorii sa tii in avans daca modul cumulativ este sau nu activ, pur i simplu cerei Ajutor i vizualizai rezumatul ferestrei pe a doua linie. U | u :Afieaza numai un anumit utilizator Vi se va solicita uid-ul sau numele utilizatorului care urmeaza sa fie afiat. Opiunea ,,-u" se potrivete cu utilizatorul efectiv, in timp ce opiunea ,,-U" se potrivete cu orice utilizator (real, efectiv, salvat sau din sistemul de fiiere). Ulterior, in fereastra de sarcini se vor afia numai utilizatorii corespunzatori sau, eventual, nu se va afia niciun proces. Precedarea cu un semn de exclamare (,,!") a ID-ului sau a numelui utilizatorului ii indica lui top sa afieze numai procesele cu utilizatori care nu se potrivesc cu cel furnizat. Diferite ferestre de sarcini pot fi utilizate pentru a filtra diferii utilizatori. Ulterior, daca dorii sa monitorizai din nou toi utilizatorii in fereastra ,,curenta", reluai aceasta comanda, dar apasai doar tasta la prompt. V :comutare Modul de vizualizare arborescent In acest mod, procesele sunt reordonate in funcie de parinii lor, iar structura coloanei COMANDA seamana cu cea a unui arbore. In modul de vizualizare arborescenta este inca posibil de a comuta intre numele programului i linia de comanda (a se vedea comanda interactiva ,,c") sau intre procese i fire de execuie (a se vedea comanda interactiva ,,H"). Nota: Apasarea oricarei taste care afecteaza ordinea de sortare va va scoate din modul de vizualizare arborescenta in fereastra ,,curenta". A se vedea subiectul 4c. Comenzi din ZONA de SARCINI, Sortare pentru informaii despre aceste taste. v :comutare Ascunde/ Afieaza copiii In modul de vizualizare arborescenta, aceasta tasta servete drept comutator pentru a restrange sau extinde copiii unui parinte. Comutarea se aplica primului proces (cel mai de sus) din fereastra ,,curenta". A se vedea subiectul 5c. Derularea unei ferestre pentru informaii suplimentare referitoare la derularea verticala. In cazul in care procesul inta nu a bifurcat niciun copil, aceasta cheie nu are niciun efect. De asemenea, nu are niciun efect atunci cand nu se afla in modul de vizualizare arborescenta. DIMENSIUNEA ferestrei de sarcini i :comutare Proces inactiv Afieaza toate sarcinile sau doar sarcinile active. Atunci cand acest comutator este Dezact. (Off), sarcinile care nu au utilizat niciun CPU de la ultima actualizare nu vor fi afiate. Cu toate acestea, datorita precizieii campurilor %CPU i TIME+, este posibil sa fie afiate in continuare unele procese care par sa nu fi utilizat niciun CPU. Daca aceasta comanda este aplicata la ultima afiare a sarcinii atunci cand se afla in modul de afiare alternativa, atunci nu va afecta dimensiunea ferestrei, deoarece toate afiarile anterioare ale sarcinii vor fi fost deja desenate. n | # :Stabilete numarul maxim de sarcini Vi se va solicita sa introducei numarul de sarcini care trebuie afiate. Se va utiliza valoarea cea mai mica dintre numarul dumneavoastra i numarul randurilor disponibile pe ecran. Atunci cand este utilizata in modul de afiare alternativa, aceasta este comanda care va ofera un control precis asupra marimii fiecarei afiari de sarcini vizibile in prezent, cu excepia ultimei. Aceasta nu va afecta dimensiunea ultimei ferestre, deoarece toate afiajele anterioare au fost deja desenate. Nota: Daca dorii sa marii dimensiunea ultimului afiaj de sarcini vizibil atunci cand va aflai in modul de afiare alternativa, reducei pur i simplu dimensiunea afiajului (afiajelor) de sarcini de deasupra acestuia. Sortarea ferestrei de sarcini Din motive de compatibilitate, acest top suporta majoritatea tastelor de sortare din fostul top. Deoarece acesta este in primul rand un serviciu pentru fotii utilizatori de top, aceste comenzi nu apar in niciun ecran de ajutor. comanda campul sortat acceptata A ora-pornirii (neafiata) Nu M %MEM Da N PID Da P %CPU Da T TIME+ Da Inainte de a utiliza oricare dintre urmatoarele metode de sortare, top va sugereaza sa activai temporar evidenierea coloanelor cu ajutorul comenzii interactive ,,x". Acest lucru va ajuta la asigurarea ca mediul real de sortare corespunde inteniei dumneavoastra. Urmatoarele comenzi interactive vor fi executate numai atunci cand campul de sortare curent este vizibil. Este posibil ca acest camp de sortare sa nu fie vizibil deoarece: 1) laimea ecranului este insuficienta 2) comanda interactiva ,,f" l-a Dezact. (Off) < :Muta campul de sortare la stanga Muta coloana de sortare la stanga, cu excepia cazului in care campul de sortare curent este primul camp afiat. < :Muta campul de sortare la dreapta Muta coloana de sortare la dreapta, cu excepia cazului in care campul de sortare curent este ultimul camp afiat. Urmatoarele comenzi interactive vor fi intotdeauna executate indiferent daca este sau nu vizibil campul de sortare curent. f :Gestionarea campurilor Aceasta tasta afieaza un ecran separat in care, printre alte funcii, putei schimba campul utilizat ca coloana de sortare. Aceasta poate fi o modalitate convenabila de a verifica pur i simplu campul de sortare curent, atunci cand se executa top cu evidenierea coloanelor Dezactivata (Off). R :comutare Sortare inversa/normala campului Folosind aceasta comanda interactiva, putei alterna intre sortarea de la mare la mic i de la mic la mare. 4d. Comenzile FERESTREI DE JOS Cele mai recente 10 mesaje sunt afiate intr-o fereastra separata in partea de jos a ecranului, in timp ce monitorizarea normala a top continua. Apasarea combinaiei de taste ,,^L" a a doua oara elimina aceasta fereastra, la fel ca i comanda ,,=". Folosii tasta Tab pentru a evidenia mesajele individuale. ^K :Afieaza Linia de comanda (tasta Ctrl + ,,k") ^G :Afieaza grupurile de control (tasta Ctrl + ,,g") ^K :Afieaza Linia de comanda (tasta Ctrl + ,,k") ^L :Afieaza mesajele jurnalizate (tasta Ctrl + ,,l") ^N :Afieaza mediul (tasta Ctrl + ,,n") ^P :Afieaza spaiile de nume (tasta Ctrl + ,,p") ^U :Afieaza grupurile suplimentare (tasta Ctrl + ,,u") Aplicate la primul proces afiat, aceste comenzi vor afia toate informaiile complete (potenial infaurate) ale sarcinii respective. Aceste date vor fi afiate intr-o fereastra separata in partea de jos a ecranului, in timp ce monitorizarea normala top continua. Tasta Tab sau combinaia de taste Shift+Tab poate fi utilizata pentru a evidenia elemente individuale care sunt afiate in fereastra de jos. Printre aceste dispoziii se numara i comanda Ctrl+N (mediu). Ieirea acesteia poate fi extinsa i nu este uor de citit atunci cand este desfaurata pe mai multe linii. O versiune mai uor de citit poate fi obinuta cu o intrare de ,,Inspectare" in fiierul rc (de configurare), cum ar fi urmatoarea: pipe ^I Environment ^I cat /proc/%d/environ | tr '\0' '\n' A se vedea comanda interactiva ,,Y" de mai sus i subiectul 6b. Adaugarea de intrari de INSPECTARE pentru informaii suplimentare. Spre deosebire de celelalte comenzi, Ctrl+L (mesaje inregistrate) nu este asociata cu o sarcina specifica. Mai degraba, pana la 10 dintre cele mai recente mesaje emise de top) sunt rechemate pentru revizuire. 4e. Paleta de CULORI Cand lansai comanda interactiva ,,Z", vi se va afia un ecran separat. Acest ecran poate fi folosit pentru a schimba culorile doar in fereastra ,,actuala" sau in toate cele patru ferestre inainte de a reveni la afiajul de top. Sunt disponibile urmatoarele comenzi interactive: 4 majuscule pentru a selecta o inta 8 numere pentru a selecta o culoare (@ selecteaza fara culoare) comenzi de comutare disponibile: B :activeaza/dezactiveaza afiarea in ,,aldin" b :afieaza in ,,aldin"/invers sarcinile ce ruleaza z :afiare in culori/monocromatica alte comenzi disponibile: a/w :aplica, apoi va trece la urmatorul/precedentul :aplica i iese q :abandoneaza schimbarile facute i iese Daca utilizai ,,a" sau ,,w" pentru a parcurge fereastra vizata, vei gasii aplicata schema de culori care a fost afiata cand ai parasit fereastra respectiva. Desigur, putei reveni cu uurina la orice fereastra i sa aplicai din nou culori diferite sau sa dezactivai complet culorile cu ajutorul comenzii ,,z". Ecranul ,,Paleta de culori" poate fi utilizat, de asemenea, pentru a schimba grupul de ferestre/campuri ,,curente", fie in modul ecran complet, fie in modul de afiare alternativa. Ceea ce a fost vizat atunci cand s-a apasat tasta ,,q" sau , va deveni curent atunci cand revenii la afiajul top. 5. Dispoziii privind AFIAREA ALTERNATIVA 5a. Prezentare generala pentru ferestre Grupuri de campuri/Ferestre: In modul ecran complet, exista o singura fereastra reprezentata de intregul ecran. Aceasta fereastra unica poate fi modificata pentru a afia 1 din 4 grupuri de campuri diferite (a se vedea comanda interactiva ,,g", repetata mai jos). Fiecare dintre cele 4 grupuri de campuri are o Zona de Rezumat unica, configurabila separat, i propria sa Zona de Sarcini configurabila. In modul de afiare alternativa, cele 4 grupuri de campuri subiacente pot fi acum vizibile simultan sau pot fi Dezactivate (Off) individual, la alegerea dumneavoastra. Zona de rezumat va exista intotdeauna, chiar daca este vorba doar de linia de mesaje. La un moment dat, poate fi afiata o singura zona de rezumat. Cu toate acestea, in funcie de comenzile dumneavoastra, pe ecran pot exista de la zero pana la patru afiaje separate ale sarcinilor afiate in prezent. Fereastra curenta: Fereastra ,,curenta" este fereastra asociata cu Zona de Rezumat i fereastra catre care sunt direcionate intotdeauna comenzile legate de sarcini. Deoarece in modul de afiare alternativa putei Dezactiva (Off) afiarea sarcinilor, unele comenzi pot fi restricionate pentru fereastra ,,curenta". O alta complicaie apare atunci cand ai Dezact. (Off) prima linie din Zona de Rezumat. Odata cu pierderea numelui ferestrei (linia comutata de comanda ,,l"), nu vei ti cu uurina ce fereastra este fereastra ,,curenta". 5b. Comenzi pentru ferestre - | _ :comutare Afieaza/Ascunde ferestre Tasta ,,-" Activeaza (On) i Dezactiveaza (Off) afiarea sarcinilor din fereastra ,,curenta". Atunci cand este Activata (On), aceasta Zona de Sarcini va afia un minim de antet de coloane pe care l-ai stabilit cu comanda interactiva ,,f". Aceasta va reflecta, de asemenea, orice alte opiuni/comutari ale zonei de sarcini pe care le-ai aplicat i care produc zero sau mai multe sarcini. Tasta ,,_" face acelai lucru pentru toate afiarile de sarcini. Cu alte cuvinte, aceasta comuta intre afiajul (afiajele) de sarcini vizibil(e) in acel moment i orice afiaje de sarcini pe care le-ai Dezact. (Off). In cazul in care toate cele 4 afiaje de sarcini sunt vizibile in prezent, aceasta comanda interactiva va lasa Zona de Rezumat ca unic element de afiare. * = | + :Egalizare/Restaurare ferestre Tasta ,,=" foreaza afiarea sarcinii ferestrei ,,curente" sa fie vizibila. De asemenea, anuleaza orice sarcina activa ,,i" (sarcini inactive), ,,n" (numarul maxim de sarcini), ,,u/U" (filtru utilizator), ,,o/O" (alte filtre), ,,v" (ascunde procesul-copil), ,,F" (focalizarea), ,,L" (localizarea) i ,,!" (combinare CPU-uri). De asemenea, in cazul in care fereastra a fost derulata, aceasta va fi restaurata cu aceasta comanda. A se vedea subiectul 5c. Derularea unei ferestre, pentru informaii suplimentare referitoare la derularea verticala i orizontala. Tasta ,,+" face acelai lucru pentru toate ferestrele. Cele patru afiaje de sarcini vor reaparea, echilibrate in mod egal, pastrand in acelai timp toate personalizarile aplicate anterior, in afara de cele menionate pentru comanda de comutare ,,=". * A :comutare Modul de afiare alternativa Aceasta comanda va comuta intre modul ecran complet i modul de afiare alternativa. Prima data cand lansai aceasta comanda, vor fi afiate toate cele patru afiaje de sarcini. Ulterior, atunci cand schimbai modurile, vei vedea numai afiajul (afiajele) de sarcini pe care ai ales sa le facei vizibile. * a | w :Fereastra urmatoare ,,inainte/inapoi" Acest lucru va schimba fereastra ,,curenta", care la randul ei va schimba fereastra catre care sunt direcionate comenzile. Aceste taste acioneaza in mod circular, astfel incat sa putei ajunge la orice fereastra dorita folosind oricare dintre aceste taste. Presupunand ca numele ferestrei este vizibil (nu ai comutat `l' in modul Dezact. (Off)), ori de cate ori numele ferestrei ,,curente" ii pierde tonalitatea/culoarea, acesta este un memento ca afiajul sarcinii este Dezact. (Off) i multe comenzi vor fi restricionate. G :Schimba numele ferestrei/grupului de campuri Vi se va solicita un nou nume care sa fie aplicat ferestrei ,,curente". Nu este necesar ca numele ferestrei sa fie vizibil (comutatorul `l' in modul Activat (On)). * Comenzile interactive marcate cu un asterisc (,,*") sunt utilizate in afara modului de afiare alternativa. =, A, g sunt intotdeauna disponibile a, w acioneaza la fel cu Paleta de culoril i Gestionarea campurilor * g :Alege o alta fereastra / un alt grup de campuri Vi se va cere sa introducei un numar intre 1 i 4 pentru a desemna grupul de campuri care trebuie sa devina fereastra ,,curenta". In modul ecran complet, aceasta comanda este necesara pentru a modifica fereastra ,,curenta". In modul de afiare alternativa, este pur i simplu o alternativa mai puin convenabila la comenzile ,,a" i ,,w". 5c. Derularea unei ferestre In mod obinuit, o fereastra de sarcini este o vizualizare pariala a tuturor sarcinilor/filelor unui sistem, care afieaza doar o parte din campurile/coloanele disponibile. Cu ajutorul acestor taste de defilare, putei deplasa aceasta vizualizare pe verticala sau pe orizontala pentru a dezvalui orice sarcina sau coloana dorita. Up,PgUp :Derulare sarcini Deplaseaza vizualizarea in sus spre primul rand de sarcini, pana cand prima sarcina este afiata in partea de sus a ferestrei ,,curente". Tasta sageata Sus deplaseaza o singura linie, in timp ce PgUp deruleaza intreaga fereastra. Down,PgDn :Derulare sarcini Deplaseaza vizualizarea in jos spre ultimul rand de sarcini, pana cand ultima sarcina este singura afiata in partea de sus a ferestrei ,,curente". Tasta sageata Jos deplaseaza o singura linie in timp ce PgDn deplaseaza intreaga fereastra. Left,Right :Derulare coloane Deplaseaza vizualizarea campurilor afiabile pe orizontala, coloana cu coloana. Nota: Ca reamintire, unele campuri/coloane nu au laime fixa, ci au alocata toata laimea ramasa a ecranului atunci cand sunt vizibile. Cand derulai la dreapta sau la stanga, aceasta funcie poate produce iniial rezultate neateptate. In plus, exista dispoziii speciale pentru orice camp cu laime variabila atunci cand este poziionat ca ultimul camp afiat. Odata ce campul respectiv este atins prin intermediul tastei sageata dreapta, i este astfel singura coloana afiata, putei continua sa derulai pe orizontala in cadrul unui astfel de camp. Pentru informaii suplimentare, consultai comanda interactiva ,,C" de mai jos. Home :Salt la poziia iniala Repoziioneaza afiajul la coordonatele de dinainte de derulare. End :Salt la poziia finala Repoziioneaza afiajul astfel incat cea mai din dreapta coloana sa reflecte ultimul camp afiabil, iar randul de jos al sarcinii sa reprezinte ultima sarcina. Nota: Din aceasta poziie este inca posibila derularea in jos i la dreapta cu ajutorul tastelor sageata. Acest lucru este valabil pana cand o singura coloana i o singura sarcina raman ca singurele element de afiare. C :comutare Afieaza coordonatele de derulare Comuta un mesaj informativ care este afiat ori de cate ori linia de mesaje nu este utilizata in alt mod. Acest mesaj va lua una dintre cele doua forme, in funcie de faptul daca o coloana cu laime variabila a fost sau nu derulata. coordonate derulare: y = n/n (sarcini), x = n/n (campuri) coordonate derulare: y = n/n (sarcini), x = n/n (campuri) + nn Coordonatele afiate ca n/n sunt relative la colul din stanga sus al ferestrei ,,curente". Cifra suplimentara ,,+ nn" reprezinta deplasarea intr-o coloana cu laime variabila atunci cand aceasta a fost derulata pe orizontala. O astfel de deplasare are loc in cantitai normale de 8 caractere de tabulare prin intermediul tastelor sageata dreapta i stanga. y = n/n (sarcini) Primul n reprezinta sarcina cea mai vizibila din partea de sus i este controlata prin intermediul tastelor de derulare. Al doilea n este actualizat automat pentru a reflecta totalul sarcinilor. x = n/n (campuri) Primul n reprezinta cea mai din stanga coloana afiata i este controlat prin intermediul tastelor de derulare. Al doilea n reprezinta numarul total de campuri afiabile i se stabilete cu ajutorul comenzii interactive ,,f". Comenzile interactive de mai sus sunt intotdeauna disponibile in modul ecran complet, dar nu sunt niciodata disponibile in modul de afiare alternativa daca afiarea sarcinilor din fereastra ,,curenta" a fost Dezactivata (Off). Nota: Cand orice forma de filtrare este activa, va putei atepta la unele uoare aberaii la defilare, deoarece nu toate sarcinile vor fi vizibile. Acest lucru este evident mai ales atunci cand utilizai tastele sagei Sus/Jos. 5d. Cautarea intr-o fereasra Putei utiliza aceste comenzi interactive pentru a localiza un rand de sarcini care conine o anumita valoare. L :Localizeaza un ir Vi se va solicita irul de caractere care trebuie localizat pornind de la coordonatele ferestrei curente. Nu exista restricii privind coninutul irului de cautare. Cautarile nu se limiteaza la valorile dintr-un singur camp sau dintr-o singura coloana. Toate valorile afiate intr-un rand de sarcini sunt permise intr-un ir de cautare. Putei include spaii, numere, simboluri i chiar grafice de vizualizare arborescenta. Apasarea tastei fara a introduce date va dezactiva efectiv tasta ,,&" pana cand se introduce un nou ir de cautare. & :Localizeaza urmatorul ir Presupunand ca a fost stabilit un ir de cautare, top va incerca sa localizeze urmatoarea apariie. Atunci cand se gasete o potrivire, fereastra curenta este repoziionata pe verticala astfel incat randul de sarcini care conine irul respectiv sa fie primul. Mesajul coordonatelor de derulare poate oferi o confirmare a acestei repoziionari verticale (a se vedea comanda interactiva ,,C"). Cu toate acestea, derularea orizontala nu este niciodata modificata prin intermediul cautarii. Disponibilitatea unui ir care sa corespunda va fi influenata de urmatorii factori. a. Ce campuri pot fi afiate din totalul disponibil, a se vedea 3b. GESTIONAREA Campurilor. b. Derularea unei ferestre pe verticala i/sau pe orizontala, a se vedea 5c. Derularea unei ferestre. c. Starea comutatorului ,,comanda/linia de comanda", a se vedea comanda interactiva ,,c". d. Stabilitatea coloanei de sortare aleasa, de exemplu, PID este bun, dar %CPU este inadecvat. In cazul in care o cautare eueaza, restabilirea poziiei iniiale a ferestrei ,,curente" (nederulata), derularea pe orizontala, afiarea liniilor de comanda sau alegerea unui camp de sortare mai stabil ar putea duce totui la o cautare ,,&" reuita. Comenzile interactive de mai sus sunt intotdeauna disponibile in modul ecran complet, dar nu sunt niciodata disponibile in modul de afiare alternativa daca afiarea sarcinilor din fereastra ,,curenta" a fost Dezactivata (Off). 5e. Filtrarea intr-o fereastra Putei utiliza aceasta caracteristica ,,Alt filtru" pentru a stabili criterii de selecie care vor determina apoi ce sarcini sunt afiate in fereastra ,,curenta". Astfel de filtre pot fi facute persistente daca sunt pastrate in fiierul de configurare prin intermediul comenzii interactive ,,W". Stabilirea unui filtru necesita: 1) un nume de camp; 2) un operator; i 3) o valoare de selecie, cel puin. Aceasta este cea mai complexa dintre cerinele de introducere a datelor de catre utilizator din top, astfel incat, atunci cand facei o greeala, reapelarea comenzilor va va fi prietena. Amintii-va tastele sageata Sus/Jos sau aliasurile lor atunci cand vi se cere sa introducei date. Noiuni de baza despre filtre 1. numele campurilor sunt sensibile la majuscule i se scriu ca in antet 2. nu este necesar ca valorile de selecie sa cuprinda intregul camp afiat 3. o selecie este fie insensibila la majuscule, fie sensibila la majuscule 4. implicit este includerea, punerea lui ,,!" inainte, indica excluderea 5. se pot aplica mai multe criterii de selecie la o fereastra de sarcini 6. criteriile de includere i de excludere pot fi utilizate simultan 7. Filtrele 1 de egalitate i 2 relaional pot fi amestecate in mod liber 8. se menin filtre unice separate pentru fiecare fereastra de sarcina Daca un camp nu este activat sau nu este vizualizat in prezent, atunci criteriile de selecie nu vor afecta afiarea. Ulterior, daca un camp filtrat devine vizibil, criteriile de selecie vor fi aplicate. Rezumat al comenzilor de la tastatura O :Alt filtru (cu majuscule) Vi se va solicita sa stabilii un filtru sensibil la majuscule. o :Alt filtru (cu minjuscule) Vi se va solicita sa stabilii un filtru care ignora majusculele atunci cand se potrivete. ^O :Afieaza filtrele active (tasta Ctrl + ,,o") Acest lucru poate servi ca o reamintire a filtrelor care sunt active in fereastra ,,curenta". Un rezumat va fi afiat pe linia de mesaje pana cand apasai tasta . = :Reiniializeaza filtrele in fereastra curenta Aceasta aciune terge toate criteriile de selecie din fereastra "curenta". Are, de asemenea, un impact suplimentar, aa ca n-ar fi rau sa consultai subiectul 4a. Comenzi GLOBALE. + :Reiniializeaza filtrele in toate ferestrele Aceasta operaie terge criteriile de selecie din toate ferestrele, presupunand ca va aflai in modul de afiare alternativa. Ca i comanda interactiva ,,=", i aceasta are consecine suplimentare aa ca ar fi bine sa consultai subiectul 5b. COMENZI pentru ferestre. Cerine de introducere Atunci cand vi se solicita criteriile de selecie, datele pe care le furnizai trebuie sa ia una dintre cele doua forme. Exista trei informaii obligatorii, iar a patra este opionala. Aceste exemple folosesc spaii pentru claritate, dar, in general, datele pe care le introducei dumneavoastra nu ar trebui sa le foloseasca. nr.1 nr.2 nr.3 ( necesare ) Nume camp ? include-daca-valoare ! Nume camp ? exclude-daca-valoare nr.4 ( opionale ) Elementele nr.1, nr.3 i nr.4 ar trebui sa fie auto-explicative. Elementul nr2 reprezinta atat un delimitator necesar, cat i operator, care trebuie sa fie unul dintre egalitatea (,,=") sau relaia (,,<" sau ,,>"). Operatorul de egalitate ,,=" necesita doar o potrivire pariala, ceea ce poate reduce cerinele de introducere a datelor ,,daca-valoare". Operatorii relaionali ,,>" sau ,,<" utilizeaza intotdeauna comparaii de iruri de caractere, chiar i in cazul campurilor numerice. Acetia sunt concepui pentru a funciona cu justificarea implicita a unui camp i cu date omogene. Atunci cand unele valori numerice ale unor campuri au fost supuse scalarii in timp ce altele nu, datele respective nu mai sunt omogene. Daca stabilii un filtru relaional i ai modificat justificarea implicita numerica sau de caractere, este posibil ca acel filtru sa eueze. Atunci cand un filtru relaional este aplicat unui camp de memorie i nu ai modificat scalarea, acesta poate produce rezultate inelatoare. Acest lucru se intampla, de exemplu, pentru ca ,,100.0m" (Mio) ar parea mai mare decat ,,1.000g" (Gio) atunci cand sunt comparate ca iruri de caractere. In cazul in care rezultatele filtrate par suspecte, simpla modificare a justificarii sau a scalarii poate atinge obiectivul dorit. Pentru informaii suplimentare, consultai comenzile interactive ,,j", ,,J" i ,,e". Probleme poteniale Aceste filtre GROUP ar putea produce exact aceleai rezultate sau cel de-al doilea ar putea sa nu afieze nimic, ci doar o fereastra de sarcini goala. GROUP=root ( aceleai rezultate doar atunci cand ) GROUP=ROOT ( este invocat prin intermediul minusculelor ,,o" ) Oricare dintre aceste filtre RES ar putea produce rezultate incoerente i/sau inelatoare, in funcie de factorul de scalare a memoriei curente. Sau ambele filtre ar putea produce exact aceleai rezultate. RES>9999 ( aceleai rezultate doar atunci cand ) !RES<10000 ( scalarea memoriei este fixata la ,,Kio" ) Acest filtru nMin ilustreaza o problema unica pentru campurile scalabile. Acest camp special poate afia maximum 4 cifre, dincolo de care valorile sunt scalate automat la Kio sau mai mult. Astfel, dei exista cantitai mai mari de 9999, acestea vor aparea ca 2,6m, 197k, etc. nMin>9999 ( intotdeauna o fereastra de sarcini goala ) Soluii poteniale Aceste exemple ilustreaza modul in care Alte filtre pot fi aplicate in mod creativ pentru a obine aproape orice rezultat dorit. Ghilimelele simple sunt uneori afiate pentru a delimita spaiile care fac parte dintr-un filtru sau pentru a reprezenta cu exactitate o cerere de stare (^O). Dar daca le-ai folosi cu ,,daca-valori" (valori condiionale), nu s-ar gasi nicio potrivire. Presupunand ca este afiat campul nTH (campul antet, de titlu), primul filtru va avea ca rezultat afiarea numai a proceselor cu mai multe fire de execuie. De asemenea, ne reamintete ca un spaiu de sfarit face parte din fiecare fiier camp afiat. Cel de-al doilea filtru obine exact aceleai rezultate cu mai puina tastare. !nTH=,, 1 " ( ,," doar pentru claritate ) nTH>1 ( acelai lucru mai direct (mai pe scurt) ) Cu modul Vizualizare arborescenta activ i cu coloana COMANDA la vedere, acest filtru reduce efectiv procesele copil astfel incat sunt afiate doar 3 niveluri. !COMMAND=,, ,,- " ( ,," doar pentru claritate ) Ultimele doua filtre apar ca raspuns la tasta de solicitare a starii (^O). In realitate, fiecare filtru ar fi necesitat o intrare separata. Exemplul PR prezinta cele doua filtre simultane necesare pentru a afia sarcinile cu prioritai de 20 sau mai mult, deoarece unele ar putea fi negative. Apoi, prin exploatarea spaiilor de urmarire, seria de filtre nMin ar putea atinge obiectivul euat ,,9999" discutat mai sus. `PR>20' + `!PR=-' ( 2 pentru un rezultat corect ) `!nMin=0 ' + `!nMin=1 ' + `!nMin=2 ' + `!nMin=3 ' ... 6. FIIERE 6a. Fiier de configurare PERSONAL Acest fiier este creat sau actualizat prin intermediul comenzii interactive ,,W". Versiunea veche este scrisa ca ,,$HOME/.numele-dvs.-pentru-top" + ,,rc" cu un punct inainte. Un fiier de configurare nou creat este scris ca procps/numele-dvs.-pentru-top" + ,,rc" fara un punct inainte. Directorul procps va fi subordonat fie lui $XDG_CONFIG_HOME atunci cand este stabilita ca o ruta absoluta, fie directorului $HOME/.config. Dei nu a fost conceput pentru a fi editat manual, iata prezentarea generala a fiierului de configurare: global # linia 1: numele programului/notaia ,,alias" a numelui -"- # linia 2: id,altscr,irixps,delay,curwin per ea # linia a: winname,fieldscur fereastra # linia b: winflags,sortindx,maxtasks,etc -"- # linia c: summclr,msgsclr,headclr,taskclr global # linia 15: configurari diverse suplimentare -"- # toate liniile ramase sunt dedicate ,,altor filtre" -"- # active opionale, discutate in seciunea 5e de mai sus, -"- # plus intrarile ,,inspect" discutate in seciunea 6b de mai jos. In cazul in care nu se poate stabili o ruta absoluta valida catre fiierul fiierul de configurare ,,rc", personalizarile facute la un top in execuie vor fi imposibil de pastrat. 6b. Adaugarea de intrari de INSPECTARE Pentru a exploata comanda interactiva ,,Y", trebuie sa adaugai intrari la sfaritul fiierului de configurare personal al top. Aceste intrari reflecta pur i simplu un fiier care trebuie citit sau o ,,comanda"/,,linie de comenzi in cascada" care urmeaza sa fie executata, ale carei rezultate vor fi apoi afiate intr-o fereastra separata care poate fi derulata i cautata. Daca nu cunoatei locaia sau numele fiierului dvs. configurare al top, utilizai comanda interactiva ,,W" pentru a-l rescrie i notai aceste detalii. Intrarile de inspectare pot fi adaugate cu ajutorul unui ecou redirecionat sau prin editarea fiierului de configurare. Redirecionarea unui ecou risca sa suprascrie fiierul configurare in cazul in care inlocuiete (>) in loc sa adauge (>>) la fiierul respectiv. In schimb, atunci cand se utilizeaza un editor, trebuie sa se aiba grija sa nu se corupa liniile existente, unele dintre acestea putand conine date neimprimabile sau caractere neobinuite, in funcie de versiunea de top sub care a fost salvat fiierul de configurare respectiv. Acele intrari Inspect (de inspectare) care incep cu caracterul ,,#" sunt ignorate, indiferent de coninut. In caz contrar, acestea sunt formate din urmatoarele 3 elemente, fiecare dintre ele trebuind sa fie separat de un caracter de tabulare (deci 2 ,,\t" in total): .type: fie ,,file" (fiier), fie ,,pipe" (conducta) .name: selecia afiata pe ecranul de Inspectare .fmts: ir reprezentand o ruta sau o comanda Cele doua tipuri de intrari de Inspectare nu sunt interschimbabile. Cele desemnate ,,file" vor fi accesate utilizand fopen() i trebuie sa faca referire la un singur fiier in elementul ,,.fmts". Intrarile care specifica ,,pipe" vor folosi popen(), elementul lor ,,.fmts" poate conine mai multe comenzi in linie i niciuna nu poate fi interactiva. In cazul in care fiierul sau linia de comenzi in cascada (pipeline) reprezentata in elementul ,,.fmts" se refera la un PID specific introdus sau acceptat atunci cand vi se solicita, atunci irul de format trebuie sa conina, de asemenea, specificatorul ,,%d", dupa cum ilustreaza aceste exemple. .fmts= /proc/%d/numa_maps .fmts= lsof -P -p %d Doar pentru intrarile de tip ,,pipe", ai putea dori, de asemenea, sa redirecionai ieirea de eroare standard catre ieirea standard pentru un rezultat mai cuprinzator. Astfel irul de format devine: .fmts= pmap -x %d 2>&1 Iata exemple de ambele tipuri de intrari Inspect aa cum ar putea aparea in fiierul de configurare. Prima intrare va fi ignorata din cauza caracterului iniial ,,#". Pentru mai multa claritate, pseudo-tabulatoarele (^I) sunt inconjurate de un spaiu suplimentar, dar tabulatoarele reale nu ar trebui sa fie. # pipe ^I Socluri ^I lsof -n -P -i 2>&1 pipe ^I Fiiere deschise ^I lsof -P -p %d 2>&1 file ^I Informaii NUMA ^I /proc/%d/numa_maps pipe ^I Jurnal ^I tail -n100 /var/log/syslog | sort -Mr Cu excepia intrarii comentate de mai sus, urmatoarele exemple arata ce ar putea fi transmis pentru a obine rezultate similare, presupunand ca numele fiierului de configurare este ,,.toprc". Cu toate acestea, din cauza caracterelor de tabulare incorporate, fiecare dintre aceste linii ar trebui sa fie precedata de ,,/bin/echo -e", nu doar de un simplu ,,echo", pentru a permite interpretarea barelor oblice inverse indiferent de shell-ul utilizat. "pipe\tFiiere deschise\tlsof -P -p %d 2>&1" >> ~/.toprc "file\tInformaii NUMA\t/proc/%d/numa_maps" >> ~/.toprc "pipe\tJurnal\ttail -n200 /var/log/syslog | sort -Mr" >> ~/.toprc In cazul in care orice intrare de inspectare pe care o creai produce o ieire cu caractere neimprimabile, acestea vor fi afiate fie in notaia ^C, fie in formatul hexazecimal , in funcie de valoarea lor. Acest lucru este valabil i pentru caracterele de tabulare, care vor fi afiate sub forma ,,^I". Daca dorii o reprezentare mai veridica, orice tabulaie incorporata trebuie dezvoltata. Exemplul urmator ia ceea ce ar fi putut fi o intrare ,,file", dar folosete in schimb o ,,pipe" pentru a extinde tabulatoarele incorporate. # urmatorul ar fi coninut ,,\t" ... # file ^I ^I /proc/%d/status # dar acest lucru ar elimina ,,\t" incorporat ... pipe ^I ^I cat /proc/%d/status | expand - Nota: Unele programe se pot baza pe SIGINT pentru a se incheia. Prin urmare, daca se stabilete o ,,pipe" precum cea de mai jos, trebuie sa se utilizeze Ctrl-C pentru a-o incheia pentru a se putea revizui rezultatele. Aceasta este singura ocazie in care un ,,^C" nu va incheia de asemenea i top. pipe ^I Trace ^I /usr/bin/strace -p %d 2>&1 In sfarit, in timp ce intrarile de tip ,,pipe" au fost discutate in termeni de conducte i comenzi, nimic nu va impiedica sa includei i scripturi shell. Poate chiar scripturi nou create, concepute special pentru comanda interactiva ,,Y". De exemplu, pe masura ce numarul de intrari Inspect crete in timp, randul ,,Opiuni:" va fi trunchiat atunci cand laimea ecranului este depaita. Acest lucru nu afecteaza funcionarea decat pentru a face unele selecii invizibile. Cu toate acestea, daca unele alegeri sunt pierdute din cauza trunchierii, dar dorii sa vedei mai multe opiuni, exista o soluie simpla sugerata mai jos. Pauza de inspectare la pid ... Utilizai: tastele sagei stanga/dreapta apoi ... Opiuni: help 1 2 3 4 5 6 7 8 9 10 11 ... Intrarile din fiierul de configurare al top vor avea un numar pentru elementul ,,.name", iar intrarea ,,help" va identifica un script shell pe care l-ai scris pentru a explica ce inseamna de fapt aceste selecii numerotate. In acest fel, pot fi facute vizibile mult mai multe alegeri. 6c. Fiier de configurare a SISTEMULUI Acest fiier de configurare reprezinta valorile implicite pentru utilizatorii care nu i-au salvat propriul fiier de configurare. Formatul oglindete exact fiierul de configurare personal i poate, de asemenea, sa includa intrari ,,de inspectare", aa cum s-a explicat mai sus. Crearea acestuia este un proces simplu. 1. Configurai top in mod corespunzator pentru instalarea dvs. i salvai acea configuraie cu comanda interactiva ,,W". 2. Adaugai i testai toate intrarile de ,,inspect-are" dorite. 3. Copiai acest fiier de configurare in directorul /etc/ ca ,,topdefaultrc". 6d. Fiier de restricii ale SISTEMULUI Prezena acestui fiier va influena ce versiune a ecranului de ajutor este afiata unui utilizator obinuit. Cel mai important, va limita ceea ce utilizatorii obinuii au voie sa faca atunci cand top este in funciune. Acetia nu vor putea emite urmatoarele comenzi: k Omorarea unei sarcini r Redefinirea valorii de curtoazie (nice) a unei sarcini d sau s Modificarea intervalului de intarziere/dormire Acest fiier de configurare nu este creat de top. Mai degraba, este creat manual i plasat in directorul /etc/ sub numele de ,,toprc". Acesta trebuie sa aiba exact doua linii, aa cum se arata in acest exemplu: s # linia 1: comutator de mod securizat 5.0 # linia 2: intervalul de intarziere in secunde 7. VARIABILE DE MEDIU Valoarea stabilita pentru urmatoarea variabila este neimportanta, doar prezena acesteia. LIBPROC_HIDE_KERNEL Acest lucru va impiedica afiarea oricaror fire de execuie ale nucleului i va exclude astfel de procese din numarul de sarcini/fire de execuie din Zona de Rezumat. 8. Exemplu de TRUCURI STUPIDE Multe dintre aceste trucuri funcioneaza cel mai bine atunci cand ii dai lui top) un impuls de planificare. Aa ca planuiete sa-l lansezi cu o valoare de curtoazie (nice) de ,,-10", presupunand ca ai autoritatea necesara. 7a. Magia nucleului Pentru aceste trucuri stupide, top are nevoie de modul ecran complet. o Interfaa cu utilizatorul, prin solicitari i ajutor, implica in mod intenionat ca intervalul de intarziere este limitat la zecimi de secunda. Cu toate acestea, suntei liber sa stabilii orice intarziere dorita. Daca dorii sa vedei Linux (nucleul) la cea mai buna planificare, incercai o intarziere de 0,09 secunde sau mai puin. Pentru acest experiment, sub x-windows deschidei un terminal <> i maximizai-l. Apoi facei urmatoarele: . stabilii o cretere a prioritaii i o mica intarziere prin: nice -n -10 top -d.09 . pastrai evidenierea coloanelor sortate Dezactivat pentru a minimiza lungimea caii . activai evidenierea randului invers pentru accentuare . incercai diferite coloane de sortare (TIME/MEM funcioneaza bine) i sortarea normala sau inversa pentru a aduce cele mai active procese la vedere Ceea ce vei vedea este un Linux foarte ocupat facand ceea ce a facut intotdeauna pentru dvs., dar nu a existat niciun program disponibil pentru a ilustra acest lucru. o Sub un xterm care folosete culori ,,alb-pe-negru", in ecranul de asociere a culorilor din top stabilii culoarea sarcinii la negru i asigurai-va ca evidenierea sarcinii este setata la aldin, nu invers. Apoi stabilii intervalul de intarziere la aproximativ 0,3 secunde. Dupa ce ai adus la vedere cele mai active procese, ceea ce vei vedea sunt imaginile fantomatice ale sarcinilor in curs de desfaurare. o tergei fiierul rc existent sau creai o legatura simbolica noua. Pornii aceasta noua versiune, apoi tastai ,,T" (o cheie secreta, a se vedea subiectul ,,4c. Comenzi in zona de sarcini, SORTARE") urmat de ,,W" i ,,q". In cele din urma, repornii programul cu -d0 (intarziere zero). Afiajul dvs. va fi reimprospatat cu o rata de trei ori mai mare decat cea din fostul top, un avantaj de viteza de 300%. Pe masura ce top urca pe scara TIMPULUI, fii cat de rabdator putei in timp ce speculai daca top va ajunge vreodata in top. 7b. Ferestre care apar Pentru aceste trucuri stupide, top are nevoie de un mod de afiare alternativ. o Cu 3 sau 4 afiari de sarcini vizibile, alegei orice alta fereastra decat ultima i dezactivai procesele inactive folosind comutatorul de comanda ,,i". In funcie de locul in care ai aplicat ,,i", uneori mai multe afiari de sarcini trec i uneori este ca un acordeon, deoarece top incearca din rasputeri sa aloce spaiu. o Configurai liniile de sumar ale fiecarei ferestre in mod diferit: una fara memorie (`m'); alta fara stari (`t'); poate una fara nimic, doar linia de mesaj. Apoi inei apasat ,,a" sau ,,w" i urmarii o variaie a ferestrelor care apar -- ferestrele saltaree. o Afiai toate cele 4 ferestre i pentru fiecare, la randul sau, stabilii procesele inactive la Dezactivate folosind comutatorul de comanda ,,i". Tocmai ai intrat in zona de ,,sarire extrema". 7c. Fereastra Pasarea Mare Acest truc stupid necesita, de asemenea, modul de afiare alternativ. o Afiai toate cele 4 ferestre i asigurai-va ca 1:Def este fereastra ,,actuala". Apoi, continuai sa cretei dimensiunea ferestrei cu comanda interactiva ,,n", pana cand toate celelalte afiari de sarcini sunt ,,impinse in afara cuibului". Cand toate au fost deplasate, comutai intre toate ferestrele vizibile/invizibile folosind comutatorul de comanda ,,_". Atunci gandii-va la asta: top inventeaza rezultate sau spune cu sinceritate adevarul impus? 7d. Vechiul comutator Acest truc stupid funcioneaza cel mai bine fara modul de afiare alternativa, deoarece justificarea este activa pentru fiecare fereastra. o Pornii top i facei ,,COMANDA" ultima coloana afiata (cea mai din dreapta). Daca este necesar, utilizai comanda de comutare ,,c" pentru a afia liniile de comanda i asigurai-va ca vizualizarea arborescenta este activa cu comanda de comutare ,,V". Apoi utilizai tastele sagei sus/jos pentru a poziiona afiarea astfel incat sa fie afiate nite linii de comanda trunchiate (,,+" in ultima poziie). Poate fi necesar sa redimensionai ,,xterm" pentru a produce trunchierea. In cele din urma, utilizai comanda de comutare ,,j" pentru a face coloana COMANDA justificata la dreapta. Acum folosii tasta sageata dreapta pentru a ajunge la coloana COMANDA. Continuand cu tasta sageata dreapta, urmarii cu atenie direcia de mers pentru liniile de comanda afiate. unele linii se deplaseaza spre stanga, in timp ce altele se deplaseaza spre dreapta in cele din urma, toate liniile se vor schimba i se vor muta la dreapta 9. ERORI Trimitei rapoartele de eroare la . 10. CONSULTAI I free(1), ps(1), uptime(1), atop(1), slabtop(1), vmstat(8), w(1) procps-ng 04.07.2024 TOP(1)