folyamatmenedzsment

Dolgozz a rendszergazda

Bár az irányítást a rendszer erőforrásait, beleértve a folyamatok, a feladata a helyi rendszergazda, de az átlagos felhasználó nem árt tudni róla valamit, különösen mivel ez vonatkozik az optimális teljesítményét saját folyamatokat.

Beszélgetünk egy kicsit elméleti szinten körülbelül a rendszer teljesítményét, de nem foglalkozik a optimalizálása berendezések és más fejlett eljárásokat. Ehelyett meg fogja vizsgálni a sürgető problémáinak egy normál felhasználó, és az intézkedések, amelyeket a felhasználók is igénybe vehet, hogy biztosítsa az optimális rendelkezésre álló erőforrások felhasználását. Mint megtudjuk a következő szakaszban, tükröznie kell, mielőtt cselekszik.

4.2 ábra. Nem lehetett gyorsabban menni?

folyamatmenedzsment

Mennyi időt vesz igénybe?

Bash egy beépített időben parancsot. ami azt mutatja, hogy mennyi idő kell ahhoz, hogy egy parancs végrehajtása. Úgy számolja az időt a nagy pontosság és használható minden csapat. A következő példában, ez kb tizenöt percig, hogy ez a könyv:

GNU time parancs az / usr / bin (ellentétben a verzió ágyazott shell) több információt, amely lehet formázni különböző módokon. Ez is mutatja az állapotát a parancs befejeződik, és a teljes eltelt időt. Ugyanezt a parancsot, mint az előbb ismertetett független idő. Ez adja meg a következő kimenetet:

A teljes körű tájékoztatást, utalja vissza az info-oldalakat.

végrehajtás

A felhasználók számára a hatékonyság azt jelenti, gyors parancsok végrehajtása. Rendszergazda, másrészt, ez azt jelenti, sokkal inkább: Administrator optimalizálja a teljesítményt az egész rendszer, beleértve a felhasználókat, az összes programot és démonokat. A rendszer teljesítménye függhet ezer apró dolog, hogy nem veszi figyelembe az időt parancsot:

  • programot parancsokat hajtunk végre rosszul megírt vagy megfelelően használja számítógéppel generált képek
  • hozzáférést biztosítanak a lemezekhez, vezérlők, kijelzők, és az összes többi típusú interfészek
  • elérhetőség távoli rendszerek (hálózati teljesítmény)
  • a felhasználók száma a rendszerben, a több egyidejű felhasználók valóban.
  • napszak
  • .

Röviden, a terhelés attól függ, mi a normális a rendszer. Az én régi P133 tűzfalat, SSH szerver, fájlszerver, útválasztási szolgáltatás, a Sendmail szerver, proxy szerver, és néhány egyéb szolgáltatások, nem panaszkodnak a hét csatlakoztatott felhasználók számára; a terhelés még mindig 0 vagy a normál tartományon belül. Néhány (többprocesszoros) rendszerek láttam meglehetősen elégedettek terheléssel 67. Csak egyetlen módja annak, hogy megtudja, mi a normális terhelés -, hogy ellenőrizze rendszeresen. Ha ez nem történik meg, akkor csak fel tudja mérni a terhelést a válaszidő a parancssor rendszer, ami egy nagyon durva mérési mivel ez a sebesség függ a több száz más okból.

Tehetek semmit, mint egy felhasználó?

Nagy környezetben lelassul. Ha több környezeti változók (ahelyett, hogy shell változók), a hosszú keresési út, amely nem optimális (a hibákat a PATH környezeti változó beállítások), és sok lehetőség van, amelyek általában a „röptében”, a rendszer több időre van szüksége, hogy keresni és olvasási adatokat.

Az X ablakkezelő és asztali környezetek valóban „eszik” processzor. Valójában meg kell fizetnie egy fantasztikus asztalon, akkor is, ha lehet letölteni ingyen, hiszen a legtöbb asztali vannak ellátva kiegészítéseket a végtelenségig. A szerénység erény lenne, ha nem vesz egy új számítógépet minden évben.

Prioritás vagy munka fontosságát határozza meg a számát szép. Program számos szép barátságos a többi programot, a többi felhasználó és a rendszer; azaz A program - nem fontos. Nice-alacsony szám, annál fontosabb feladat, amely több erőforrást igényel, nem megosztva.

Javítása a feladat, ami növeli a szép számmal csak hasznos folyamatokat használ sok CPU időt (fordítóprogramok, matematikai alkalmazások, stb.) Folyamatokat, amelyek folyamatosan fordul az input / output magasabb a prioritása (kisebb szép számmal), például a billentyűzet mindig a legnagyobb prioritású a rendszerben.

Meghatározó program prioritásai segítségével szép parancsot.

Az interaktív programok.
Egy rossz ötlet, hogy végezzen szép vagy renice képest az interaktív programot, vagy a feladat fut az előtérben.

CPU

A Linux rendszerek számos program ugyanakkor szükség van egy CPU erőforrás (ok), akkor is, ha az egyetlen felhasználó a rendszerben. Minden program célja, hogy munkát kell egy bizonyos mennyiségű CPU. Vannak esetek, amikor a processzor ciklus nem elég, mert túl elfoglalt. Az üzemidő parancs rendkívül pontatlan (csak akkor jelenik meg átlagokat, akkor tudnia kell, hogy ez a normális), de korántsem haszontalan. Van néhány lépés, amit megtehetsz, ha úgy gondolja, a CPU az oka a rendszer lefagy:

  • Végezzen nehéz programok, amikor a terhelés alacsony. Ezt meg lehet tenni a rendszerben az éjszaka folyamán. Lásd a következő fejezetet. Körülbelül tervezés.
  • Hogy a rendszer nem csinál felesleges munka: megáll démonok és programokat, hogy ne használja, használja keresse helyett egy nehéz találni.
  • Do több munkahely, alacsonyabb prioritású.

Ha ezek egyike sem megoldás nem egy opció az adott helyzetben, akkor frissíteni a processzort. UNIX gép a munkát a rendszergazda.

memória erőforrások

Amikor az aktuális futó folyamatokat várnak több memóriát igényel, mint fizikailag elérhető a rendszer, a Linux nem összeomlás; indul lapozás vagy csere, ami azt jelenti, hogy az eljárás a memória lemezre vagy swap terület, mozgó tartalmát a fizikai memória (részben a futó programok vagy a teljes programok esetében csere) a lemezre, ezáltal lehetővé téve a fizikai memória kezelésére több folyamatokat. Ez eléggé lelassítja a rendszert, mert a lemez hozzáférés sokkal lassabb, mint a hozzáférés a memóriába. top parancs használható megjelenítéséhez mennyi memóriát és a felfüggesztés használnak. Rendszereknél, amelyek a glibc, és ajánlatot memusage memusagestat parancsokat, hogy szemléltesse a memóriahasználat.

Ha úgy találja, hogy használ sok memóriát és swap hely, akkor próbálja meg:

  • Abbahagynia felülírhatja szép azok a programok, kezelhető egy nagy darab memória.
  • Több memóriát (és egyes esetekben a lapozóterületet) rendszer.
  • Beállítása a rendszer teljesítménye, amely túlmutat a jelen dokumentum. Cm. Listájára függelék, „Hol a következő?” Mert felül.

Resources I / O (input / output)

Bár az input-output kényszerek egyik fő oka a stressz rendszergazdák, Linux-rendszer meglehetősen gyenge közművek mérésére I / O teljesítményt. Eszközök ps. vmstat és a felső adni néhány ötlet, hogy hány programok várják input-output; netstat megjeleníti hálózati interfész statisztikát, de a valóságban nincs normális eszközök mérési I / O válasz, ha a rendszer elindul, és a iostat parancs rövid áttekintést ad az általános I / O használatra. Vannak különböző alkalmazások megjelenítésére grafikus teljesítmény a következő parancsok érthető formában.

Minden eszköz rendelkezik saját problémáit, de a kapacitás a hálózati csatolók és disk átmenő két fő szűk a input-output teljesítmény.

Hálózati I / O problémák:

Az átvitt adatok mennyiségét a hálózaton keresztül nagyobb hálózati kapacitás, ami lassú végrehajtása minden hálózathoz kapcsolódó feladat minden felhasználó számára. Ezt meg lehet oldani megtisztítása a hálózat (amely főként letiltani protokollokat és szolgáltatásokat, akkor nem kell), vagy átconfigurálásával hálózat (pl használatát alhálózatok helyett csomópontokat kapcsolók, korszerűsítése interfészek és berendezések).

  • Hálózati integritás problémák:

Amikor adatátvitel helyesen. A megoldás az ilyen problémák csak akkor hajtható végre, hogy izoláljuk a hibás elemet, és helyette.

Lemez I / O problémák:

  • Eljárás egyes átviteli sebessége túl alacsony:

olvasási és írási sebessége egy adott folyamat nem elegendő.

  • aggregált átviteli sebesség túl alacsony:

A maximális teljes sávszélességet, hogy a rendszer képes biztosítani az összes futó programot, nem elegendő.

Ahhoz, hogy érzékeli ezt a fajta problémát nehezebb, és rendszerint további hardver osztani adatfolyamok több buszok, vezérlők és lemezek, ha a probléma okát - az túlterhelt berendezés. Az egyik megoldás, amely optimalizált a RAID-tömb az input-output műveleteket. Így lehetősége van arra, hogy maradjon ugyanazzal a berendezéssel. Frissítése előtt sávszélesség buszok, vezérlők és a lemezek vannak más lehetőségek akkor mindig megpróbál.

Ha a túlterhelés nem az oka, talán a hardver fokozatosan romlik, vagy nem megfelelően csatlakozik a rendszerhez. Ellenőrizze kapcsolatok, csatlakozók és dugók kezdeni.

felhasználók

A felhasználók lehet osztani több osztályra, attól függően, hogy a hozzáállás, hogy a források felhasználását:

  • Azon felhasználók, akik futtatni számos kisebb munka: te, az elején Linux felhasználó, például.
  • Azon felhasználók, akik futni viszonylag kevés, de nagyobb munkák: dolgozó felhasználók modellezés, számítások, emulátorok és egyéb programok enni egy csomó memóriát, és általában ezek az emberek kíséretében nagy mennyiségű adat fájlokat.
  • Azon felhasználók, akik futni néhány munkahely, de használata sok CPU időt (a fejlesztők és hasonlók).

Láthatjuk, hogy a rendszer követelményeinek különböznek minden osztálya számára, és nehéz kielégíteni mindenkinek. Ha dolgozik egy többfelhasználós rendszerben, hasznos (és szórakoztató), hogy megtanulják a szokások más felhasználók a rendszer, annak érdekében, hogy a lehető legtöbbet hozza ki belőle, hogy végre a konkrét feladatokat.

grafikai eszközök

A grafikus környezet áll rendelkezésre egy csomó ellenőrző eszközöket. Alul van a Gnome System Monitor képernyő elfog, amely képes megjeleníteni, és keressen információt a folyamatok és monitor rendszer erőforrásait:

4.3 ábra. Gnome System Monitor

folyamatmenedzsment

Van még néhány hasznos ikonokat, amit telepíteni a tálcán, mint monitorok lemez, a memória és a terhelést. Xload - egy másik kis X alkalmazás monitoring rendszer terhelését. Döntsd el magad a saját preferenciái.

Megszakítaná a folyamatok

Mint egy privilegizált felhasználó, akkor csak befolyásolja a saját folyamatait. Azt már láttuk, hogyan lehet megjeleníteni folyamatok és kiszűrni kapcsolódó folyamatok egy adott felhasználó, hanem tudni, hogy mit lehet korlátozásokat is előfordulhat. Amikor azt látja, hogy az egyik folyamat fogyaszt túl sok erőforrást, két dolgot tehetünk:

  • Így a folyamat kevesebb erőforrás megszakítása nélkül is;
  • Megáll a folyamat egyáltalán.

Ha szeretné, hogy a folyamat folytatódik, de azt is szeretnék, hogy egy esélyt, hogy más folyamatok a rendszer, akkor felülírja a szép folyamatát. Együtt a használata parancsok szép vagy Renice. tetejére egy egyszerű módot detektáló eljárás (ok), a zavaró, és csökkenti a prioritást.

Ismerje meg a folyamatot az oszlopban „NI”, ő valószínűleg negatív prioritás. Dial r és adja meg a folyamat azonosítóját, és amelyre szeretné felülírni száma szép. Ezután írja szép érték, mint a „20”. Ez azt jelenti, hogy ezentúl ez a folyamat eltarthat legfeljebb 1/5 CPU ciklusokat.

Példák folyamatok megtartani kívánt üzemképes - ez emulátorok, a virtuális gépek, fordítóprogramok, stb

Ha azt szeretnénk, hogy állítsa le a folyamatot, mert lefagy, vagy vissza fog vonulni teljesen a működési állapotát az input-output, a fájl létrehozása vagy használata más rendszer erőforrásait használja a kill. Ha van lehetősége, próbálja befejezni a folyamatot „csendes” küldött neki egy SIGTERM jelet. Ez annak a jele, hogy hagyja abba minden olyan tevékenységet, eljárásoknak megfelelően a programban leírt kód:

A fenti példában, használati Joe abbahagyta a Mozilla böngésző, mert megfagy.

Néhány a folyamatok, hogy megszabaduljon egy kicsit nehezebb. Ha van ideje, akkor küldje el a SIGINT jel megszakítani ezeket. Ha ez a trükk nem működik, használja a legerősebb jelet SIGKILL. Az alábbi példában a Joe megáll Mozilla, ami végül letette:

Ilyen esetekben érdemes ellenőrizni, hogy a folyamat megszakad, a grep szűrőt újra a PID. Ha csak vissza a grep folyamatot. biztos lehet benne, hogy képes volt megállítani a folyamatot.

Az eljárások közül, azok, amelyek nehezen felfüggeszteni a shell. És ez jó, ha lehetne könnyen megszakad, akkor elveszti a bőrt minden alkalommal, amikor véletlenül belépő Ctrl-C a parancssorban, mint ez ugyanaz, mint küld egy SIGINT.

UNIX nélkül szállítószalagok szinte elképzelhetetlen.
Vertikális (|) karaktert a kimenete egy parancs bemenetét egy másik magyarázata a következő fejezetben, 5. fejezet, „input-output átirányítás.”

Egy grafikus környezet, xkill program nagyon könnyen használható. Csak írja be a nevét a parancsot, majd nyomja le az Enter billentyűt, és válassza ki az ablakot a kívánt alkalmazást, hogy hagyja abba. Ez igen veszélyes, mert a program küld egy SIGKILL alapértelmezésben, ezért azt csak ha egy alkalmazás lefagyott.

Kapcsolódó cikkek