Miten Linuxissa saisi sen ohjelman mitä käyttäjä käpistelee, automaattisesti korkeammalle prioriteetille kuin muut.
Vähentäisi tahmaamista ja parantaisi käyttökokemusta.
päällimmäinen ohjelma korkeammalla prioriteettilla
13
94
Vastaukset
- Anonyymi
Eiköhän tuo ole automaattista toimintaa? Skeduleri tekee päätöksen, mikä ohjelma menee ajoon, ja jos sen msg que:ssa on eventtejä, se menee ylöspäin listalla. Näin ollen kun alat kirjoittamaan esim. päätteeseen tekstiä, tämän prosessi aktivoituu ja päätyy nukutetuksi vain jos jokin tärkeämpi aktiviteetti menee edelle?
Käyttäjä voi toki vinkata kernelille priorisoinnista ja käynnistää ohjelman nice-komennon läpi 'nice -n 20 ohjelma'. Jos prosessi on jo käynnissä, saman ajaa renice.
Ja toiseen suuntaan: joko nice:lla, tai jos ohjelma rohmuaa cpu-resurssia, voi asentaa cpu-limit ohjelman rajoittamaan prosessorin käyttöä. Tämä toimii niin, että asetetaan esim. 75% tavoitearvo prosessin ajossa olo ajalle ja jos tästä mennään yli, ajoaikaa ei tipu! Mikään täydellinen tämä rajoitus ei ole. - Anonyymi
Sen tiedän että se ei ole automaattista eikä komentorivin käyttäminen kyllä ole automaattista.
Harmi koska kun taustalla on jotain raskasta, käyttäminen alkaa tahmata. - Anonyymi
Oletusprioriteetti on 0. 'man nice' ja saat tietää lisää. Yleisesti ottaen tuo skeduleri käyttää ajoon tulevan prosessin valintaan jotain algoritmia ja yhtenä valintaperusteena on tuo prioriteettiarvo eli niceness-arvo. Muita perusteita on ainakin prosessin saamat erinäiset signaalit/eventit: Jos jonossa on prosessoitavaa odottamassa, miksikäs prosessia ei suoritettaisi? Helppoja tapauksia ovat prosessit, jotka odottavat jotakin tapahtuvaksi, kuten näppäinpainallusta, koska niitä ei tarvitse skeduloida ennen tuota eventtiä juuri ollenkaan. Hiiren klikkaus aiheuttaa siis prosessin skeduloinnin jossakin vaiheessa. Riippuu mitä muuta on ajossa, kuinka pian.
Kuitenkin 'top' komennolla näet mitä prosesseja on ajossa, siitä on graafisiakin versioita olemassa. Itse asiassa sillä pääsee muuttamaan prioriteetti eli niceness arvojakin 'r' komennolla(renice).
Sitten voit rajoittaa yksittäisiä prosesseja: 'cpulimit -e firefox -l 50' asettaa 50% rajan firefoxille, raja ei ole tiukka, koska riippuu muista asetuksista, koska se mm. tulee tarkistetuksi.
Hidastelu voi johtua monesta asiasta, mm. ohjelma voi lukea levyltä kirjastoja pitkään, mikä aiheuttaa tahmaamista. Kannattaa tutustua ehä cgroups:iinkin jos haluaa säätää oletusarvoja? Pitäisin tätä kuitenkin kärpäsen ampumisena tykillä..
Tuolla on selkeää esitystä asiasta:
https://developer.ibm.com/technologies/linux/tutorials/l-lpic1-103-6/- Anonyymi
On se vaikea tuo tuommoinen linnux.
- Anonyymi
Anonyymi kirjoitti:
On se vaikea tuo tuommoinen linnux.
Vaihda johonkin yleisempään distroon kuin linnux.
- Anonyymi
Anonyymi kirjoitti:
On se vaikea tuo tuommoinen linnux.
Vaihda johonkin yleisempään distroon kuin linnux.
- Anonyymi
Anonyymi kirjoitti:
Vaihda johonkin yleisempään distroon kuin linnux.
"Jokin meni pieleen kokeile kohta uudelleen" :
ja sitten niitä tulikin jo kaksi. - Anonyymi
Anonyymi kirjoitti:
Vaihda johonkin yleisempään distroon kuin linnux.
No, winkkarissa et pääse säätämään tätä yhtään sen enempää - enkä kyllä osaakaan, kun winkkari on winkkari.
- Anonyymi
Anonyymi kirjoitti:
No, winkkarissa et pääse säätämään tätä yhtään sen enempää - enkä kyllä osaakaan, kun winkkari on winkkari.
Osaamattomuutesi tiedetään.
- Anonyymi
Anonyymi kirjoitti:
Osaamattomuutesi tiedetään.
Windows tyrkyttää niitä omia kehoitelmiään vaikka pakolla jos vapaaehtoisuus ei tehoa.
- Anonyymi
Kyllä tuo on ihan perinteistä Linuxia mutta miten tuon saisi toimimaan automaattisesti?
Enkä kysynyt kokonaissuorituskyvystä vaan vain ja ainoastaan miten saa vai saako ollenkaan sitä toiminnaallisuutta että käyttäjän juuri kyseisellä hetkellä käyttämän ohjelman prioriteetti nousisi.
Linkin jutussa ei ole mitään kyseisestä asiasta. - Anonyymi
Anonyymi kirjoitti:
Kyllä tuo on ihan perinteistä Linuxia mutta miten tuon saisi toimimaan automaattisesti?
Enkä kysynyt kokonaissuorituskyvystä vaan vain ja ainoastaan miten saa vai saako ollenkaan sitä toiminnaallisuutta että käyttäjän juuri kyseisellä hetkellä käyttämän ohjelman prioriteetti nousisi.
Linkin jutussa ei ole mitään kyseisestä asiasta.Jos tarkoitat että sinulla on avattuna useita ohjelmia, niin vain aktiivinen on käytössä ja hallittavissa.
Jos taas tarkoitat että useammassa ohjelmassa on samanaikaisesti jatkuva prosessi käynnissä, prioriteettia ei käsittääkseni voi määrittää, ellet rakenna siihen omaa ohjelmaa, eli kaikki hidastuvat, jos potku nöyrtyy.
- Anonyymi
Alla oleva linkki voisi auttaa asiassa:
https://askubuntu.com/questions/245428/how-to-know-the-pid-of-active-window
Tuolla on ohjeet, kuinka saada aktiiviseen ikkunaan liitetyn prosessin id, jonka voi sitten syöttää renice-ohjelmalle. Vanha pid-talteen ja vanha niceness-arvo, jotta seuraavalla kierroksella voi ne palauttaa, mikäli prosessi on vaihtunut? Skriptissä sitten vain looppi, jolla muuttaa asetuksia esim. 1-2 sekunnin välein?
Ketjusta on poistettu 2 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
En löydä sinua
En löydä sinua täältä, etkä sinä varmaankaan minua. Ennen kirjoitin selkeillä tunnisteilla, nyt jätän ne pois. Varmaan k222441- 622374
Eelin, 20, itsemurhakirje - Suomalaisen terveydenhuollon virhe maksoi nuoren elämän
Yksikin mielenterveysongelmien takia menetetty nuori on liikaa. Masennusta sairastava Eeli Syrjälä, 20, ehti asua ensi1062270- 321537
Hajoaako persut kuten 2017?
https://www.is.fi/politiikka/art-2000011217813.html Tämä on totisinta totta. Persut on murroksessa. Osa jättää puolueen2381532- 321510
Kamala uutinen: Henkilö kuoli Tokmannin pihaan Kankaanpäässä- Jäi trukin alle
IL 9.5.2025 Ihminen kuoli Kankaanpään Tokmannin edustalla perjantaina aamupäivästä. Poliisin mukaan henkilö oli jäänyt371422- 281220
Ne oli ne hymyt
Mitä vaihdettiin. Siksi mulla on taas niin järjetön ikävä. Jos haluat musta eroon päästä niin älä huomioi mua. Muuten kä201176- 951171