Lustálkodók pusztítása szkripttel

Kezdőlap Fórumok Programozás Lustálkodók pusztítása szkripttel

9 bejegyzés megtekintése - 11-19 / 19
  • Szerző
    Bejegyzés
  • #2135627
    ELaci
    Felhasználó
      ds wrote:
      ha jól értem a problémát valami ilyesmi kellene neked:
      ps -U elaci -u elaci -o time | awk ‘BEGIN {a=0;FS=”:”} // {a+=$3+$2*60+$1*3600} END{print a} ‘
      ez ugyanazt az eredményt adja (nálam) mint a w (ott csak a startkde látszik (meg néhány bash) mivel annak van tty -je

      Sajnos így nem jó, mert a time nem a halmozott cpu terhelést mutatja.

      EL.

      #2135628
      ELaci
      Felhasználó
        ds wrote:
        ha jól értem a problémát valami ilyesmi kellene neked:
        ps -U elaci -u elaci -o time | awk ‘BEGIN {a=0;FS=”:”} // {a+=$3+$2*60+$1*3600} END{print a} ‘
        ez ugyanazt az eredményt adja (nálam) mint a w (ott csak a startkde látszik (meg néhány bash) mivel annak van tty -je

        Sajnos így nem jó, mert a time nem a halmozott cpu terhelést mutatja.

        EL.

        #2135629
        ELaci
        Felhasználó
          ELaci wrote:
          sany wrote:
          „az adott processz müködését és annak cpu terhelését a „

          Csak ötlet: top-les ;D

          „top”
          Gondoltam erre én is, az ötlet majdnem jó.
          Egyetlen probléma van vele: a pillanatnyi cpu terhelést írja ki százalékban. Ez egy folyamatosan futó processz esetén akár nulla is lehet a multitask terheléselosztás miatt, ami azt is jelentheti hogy a user lustálkodik adott pillanatban, pedig nem, csak nem jutott neki processzor idő.

          top-les: command not found 🙂

          EL

          Utólag olvasgatva a „man top” -ot, úgy tűnik hogy a „top” mégiscsak használható, mert elkerülte a figyelmemet a „TIME+” cimkével ellátott oszlop, ami valójában a „total cpu time” értékét mutatja abban az esetben, ha a „Cummulative mode: On”.
          Ez az „-S”  kapcsoló használat kicsit zavarosnak tűnik számomra, de lehet hogy jó lesz.

          man részlet:
          -S : Cumulative time mode toggle
          Starts top with the last remembered ’S’ state reversed.  When  ’Cumulative  mode’  is  On,  each  process  is listed with the cpu time that it and its dead children have used.  See the ’S’ interactive command for additional information  regarding this mode.

          TIME  —  CPU Time
          Total CPU time the task has used since it started.  When ’Cumulative mode’  is  On, each  process  is listed with the cpu time that it and its dead children has used.
          You toggle ’Cumulative mode’ with ’S’, which is a command-line option and an interactive command.  See the ’S’ interactive command for additional information regarding this mode.

          TIME+  —  CPU Time, hundredths
          The same as ’TIME’, but reflecting more granularity through hundredths of a second.

          EL

          #2135630
          ELaci
          Felhasználó
            ELaci wrote:
            sany wrote:
            „az adott processz müködését és annak cpu terhelését a „

            Csak ötlet: top-les ;D

            „top”
            Gondoltam erre én is, az ötlet majdnem jó.
            Egyetlen probléma van vele: a pillanatnyi cpu terhelést írja ki százalékban. Ez egy folyamatosan futó processz esetén akár nulla is lehet a multitask terheléselosztás miatt, ami azt is jelentheti hogy a user lustálkodik adott pillanatban, pedig nem, csak nem jutott neki processzor idő.

            top-les: command not found 🙂

            EL

            Utólag olvasgatva a „man top” -ot, úgy tűnik hogy a „top” mégiscsak használható, mert elkerülte a figyelmemet a „TIME+” cimkével ellátott oszlop, ami valójában a „total cpu time” értékét mutatja abban az esetben, ha a „Cummulative mode: On”.
            Ez az „-S”  kapcsoló használat kicsit zavarosnak tűnik számomra, de lehet hogy jó lesz.

            man részlet:
            -S : Cumulative time mode toggle
            Starts top with the last remembered ’S’ state reversed.  When  ’Cumulative  mode’  is  On,  each  process  is listed with the cpu time that it and its dead children have used.  See the ’S’ interactive command for additional information  regarding this mode.

            TIME  —  CPU Time
            Total CPU time the task has used since it started.  When ’Cumulative mode’  is  On, each  process  is listed with the cpu time that it and its dead children has used.
            You toggle ’Cumulative mode’ with ’S’, which is a command-line option and an interactive command.  See the ’S’ interactive command for additional information regarding this mode.

            TIME+  —  CPU Time, hundredths
            The same as ’TIME’, but reflecting more granularity through hundredths of a second.

            EL

            #2135631
            ds
            Felhasználó
              ELaci wrote:
              ds wrote:
              ha jól értem a problémát valami ilyesmi kellene neked:
              ps -U elaci -u elaci -o time | awk ‘BEGIN {a=0;FS=”:”} // {a+=$3+$2*60+$1*3600} END{print a} ‘
              ez ugyanazt az eredményt adja (nálam) mint a w (ott csak a startkde látszik (meg néhány bash) mivel annak van tty -je

              Sajnos így nem jó, mert a time nem a halmozott cpu terhelést mutatja.

              EL.

              nekem ezt mondja a ps man -ja
              cputime    TIME cumulative CPU time, „[dd-]hh:mm:ss” format. (alias time)

              #2135632
              ds
              Felhasználó
                ELaci wrote:
                ds wrote:
                ha jól értem a problémát valami ilyesmi kellene neked:
                ps -U elaci -u elaci -o time | awk ‘BEGIN {a=0;FS=”:”} // {a+=$3+$2*60+$1*3600} END{print a} ‘
                ez ugyanazt az eredményt adja (nálam) mint a w (ott csak a startkde látszik (meg néhány bash) mivel annak van tty -je

                Sajnos így nem jó, mert a time nem a halmozott cpu terhelést mutatja.

                EL.

                nekem ezt mondja a ps man -ja
                cputime    TIME cumulative CPU time, „[dd-]hh:mm:ss” format. (alias time)

                #2135633
                ELaci
                Felhasználó

                  nekem ezt mondja a ps man -ja
                  cputime    TIME cumulative CPU time, „[dd-]hh:mm:ss” format. (alias time)

                  Valóban, igazad van.
                  Annó rossz módszerrel tesztelhettem, mert én nem erre a következtetésre jutottam.
                  Majd át kell még fogalmaznom a scriptet, mert ez hpux-ban fog futni, ahol másképpen működnek a dolgok.

                  EL

                  #2135634
                  ELaci
                  Felhasználó

                    nekem ezt mondja a ps man -ja
                    cputime    TIME cumulative CPU time, „[dd-]hh:mm:ss” format. (alias time)

                    Valóban, igazad van.
                    Annó rossz módszerrel tesztelhettem, mert én nem erre a következtetésre jutottam.
                    Majd át kell még fogalmaznom a scriptet, mert ez hpux-ban fog futni, ahol másképpen működnek a dolgok.

                    EL

                    #1887215
                    csaba
                    Felhasználó

                      Szükségem volna egy olyan scriptre, ami azokat a felhasználókat taszigálja ki egy adatbázisból, akik lustálkodnak.
                      A lustálkodás azt jelenti hogy nem piszkálja a billentyüzetét, és a processzor terhelése sem növekszik, mondjuk 10 perc alatt, tehát nem futtat valamiféle hosszú lefutású feldolgozást.
                      Ez a script már gyakorlatilag működik, csak egyetlen probléma van vele:
                      A „ps” és a „w” ellentmond egymásnak:
                      Olyan processzek vannak jelen a „ps” -ben amik a „w” -ből hiányoznak. Ez számomra egy ellentmondás.
                      Talán az is elegendő lenne, ha ezt az ellentmondást megmagyarázná valaki.

                      EL

                    9 bejegyzés megtekintése - 11-19 / 19
                    • Be kell jelentkezni a hozzászóláshoz.