Lai īss stāsts būtu īss, pirms dažām dienām viens no kodola izstrādātājiem augšupielādēja plāksteri (200 koda rindiņas), kas ļāva ievērojami uzlabot (gandrīz 10 reizes) sistēmas veiktspēju, it īpaši, ja tiek veikts daudzuzdevumu veikšana smaga uzdevuma izpildes laikā (piemēram, kodola kompilēšana). Linuss apsveica šo izstrādātāju par lielo ieguldījumu. Tomēr Red Hat izstrādātājs, Lenārs Poetterings nepiekrita šo uzlabojumu īstenot tieši no kodola; viņam labāk bija veikt izmaiņas lietotāja telpā (~ / .bashrc). Linuss sadusmojās un ņirgājās par šo izstrādātāju, sakot, ka rezultāti runā paši par sevi. Lenārs tā vietā, lai atbildētu skarbiem vārdiem, apsēdās un izdomāja alternatīva (kurai nav nepieciešams ielāpīt kodolu) un kas aizņem tikai 4 rindas. Galu galā viņi aizklapē Linusu ... |
Piezīme: šai metodei nepieciešams atbalsts uzdevumu grupām Linux kodolā (cgroups), tas ir, tikai tie lietotāji, kuru kodols ir lielāks par 2.6.36, varētu to pielietot.
Kā pielīmēt plāksteri Fedora
1. - Rediģējiet failu ~ / .bashrc.
gedit ~ / .bashrc
2. - Faila beigās ielīmējiet šādu kodu:
ja ["$ PS1"]; pēc tam
mkdir -m 0700 / sys / fs / cgroup / cpu / user / $$
echo $$> / sys / fs / cgroup / cpu / user / $$ / uzdevumi
fi
3. - Palaidiet šādas komandas:
mount -t cgroup cgroup / sys / fs / cgroup / cpu -o cpu
mkdir -m 0777 / sys / fs / cgroup / cpu / lietotājs
Kā lietot plāksteri Ubuntu
Ubuntu lietas ir nedaudz sarežģītākas ...
1. - Rediģējiet failu rc.local ar šo komandu:
sudo gedit /etc/rc.local
un ielīmējiet pirms vietas, kur teikts "exit 0", šādi:
mkdir -p / dev / cgroup / cpu
mount -t cgroup cgroup / dev / cgroup / cpu -o cpu
mkdir -m 0777 / dev / cgroup / cpu / lietotājs
echo "/ usr / local / sbin / cgroup_clean"> / dev / cgroup / cpu / release_agent
2. - Saglabājiet failu un piešķiriet tam izpildes atļaujas:
sudo chmod + x /etc/rc.local
3. - Rediģējiet failu ~ / .bashrc:
gedit ~ / .bashrc
4. - Faila beigās ielīmējiet šādu kodu:
ja ["$ PS1"];
tad mkdir -m 0700 / dev / cgroup / cpu / user / $$
echo $$> / dev / cgroup / cpu / user / $$ / tasks
echo "1"> / dev / cgroup / cpu / user / $$ / notice_on_release
fi
5. - Mainīt failu cgroup_clean:
sudo gedit / usr / local / sbin / cgroup_clean
6. - Faila beigās ielīmējiet šādu kodu:
# / Bin! / Sh
ja ["$ *"! = "/ lietotājs"]; pēc tam
rmdir / dev / cgroup / cpu / $ *
fi
7. - Saglabājiet failu un piešķiriet tam izpildes atļaujas:
sudo chmod + x / usr / local / sbin / cgroup_clean
8. - Pārstartējiet sistēmu.
Piezīme: ja redzat mapi / dev / cgroup /, jūs pamanīsit ievērojamu uzlabojumu daudzuzdevumu pārvaldībā.
Es atradu Arch norādījumus, tie ir šeit: http://pastebin.com/raw.php?i=sHRYRuAN
No savas puses es uzliku plāksteri, daudzus uzlabojumus es vispār nepamanu, bet, ja, ritinot tīmekļa lapas, pamanāt lielas izmaiņas, tās pirmo reizi ir patiešām plūstošas !!! =)
Lieliski! Liels paldies par dalīšanos!
Vai es jums teicu, ka mēs meklējam cilvēkus, kuri izmanto Arch, lai izveidotu emuārus? Ja jūs interesē, rakstiet mums izmantosim linux@gmail.com
Liels apskāviens! Pāvils.
Paldies par ielūgumu, tad turpināsim pa pastu pēc tam 😉
Nejauši Archlinux nebūs instrukciju, vai ne? 🙂
Es tos neatradu. Bet kaut kas man saka, ka tas ir vairāk līdzīgs Fedora. No otras puses, jāpatur prātā, ka, tā kā visi montē Arch, kā viņi vēlas, varbūt tas ietekmē procedūru, kas jāievēro ...
Šeit es uzzināju, kā tos pielietot Archlinux, tas ir diezgan līdzīgs fedorai: http://pastebin.com/raw.php?i=sHRYRuAN
bash: / dev / cgroup / cpu / user / $ / uzdevumi: Fails vai direktorijs nepastāv
Es sekoju šiem norādījumiem, un tas man vienmēr saka šo kļūdu, atverot terminālu AMD64 x, ja tam ir kaut kas jādara
Es to jau atradu, lūdzu pablo to izlabot http://www.webupd8.org/2010/11/alternative-to-200-lines-kernel-patch.html
Ko darīt Ubuntu vietā, nevis to, ko jūs ievietojat, ir:
sudo gedit / usr / local / sbin / cgroup_clean
un ielieciet šo:
# / Bin! / Sh
ja ["$ *"! = "/ lietotājs"]; pēc tam
rmdir / dev / cgroup / cpu / $ *
fi
Gatavs! Labots! Paldies!
Tā ir patiesība! Paldies, ka atgādinājāt!
Es tikko pievienoju šo precizējumu ieraksta sākumā.
Apskāviens! Pāvils.
Konkrēti, kādas priekšrocības es gūšu kā lietotājs un kādi veiktspējas uzlabojumi būs redzami manā sistēmā.
Viss iet daudz ātrāk. Tomēr atšķirības patiešām tiek "redzētas", kad veicat smagu uzdevumu un vēlaties vienlaikus veikt citus uzdevumus. Piemēram, jūs instalējat vairākas programmas vai kompilējat kodolu vai rediģējat smagu video un tajā pašā laikā vēlaties sērfot internetā vai skatīties filmu utt.
Informējiet mani, ja uzzināt, kā ieviest ielāpa Arch. Es mēģinātu palaist to, kas darbojas Fedora.
Apskāviens! Pāvils.
Es domāju, ka tas ir atkarīgs no datora izmantošanas. Ja jūs tik tikko izmantojat internetu un kādu vieglu teksta redaktoru ... jūs "nejutīsit" atšķirību. No otras puses, ja jūs esat līdzīgs man un veicat smagus uzdevumus (piemēram, video konvertēšanu, kodola sastādīšanu utt.), Pārlūkojot internetu vai skatoties filmas, varat pateikt atšķirību.
Pēc visām darbībām, atverot termināli, es vienmēr saņemu sekojošo:
mkdir: Nevar izveidot direktoriju "/ dev / cgroup / cpu / user / 1844": fails vai direktorijs nepastāv
bash: / dev / cgroup / cpu / user / 1844 / uzdevumi: Fails vai direktorijs nepastāv
bash: / dev / cgroup / cpu / user / 1844 / notice_on_release: Fails vai direktorijs neeksistē
domingopv @ pc1: ~ $
Viss darbojas labi pat terminālī, vai jūs kaut ko izdarījāt nepareizi?
Mmmm ... Es tiešām nezinu, kas tas var būt. Tomēr man rodas iespaids, ka ļoti iespējams, ka dažus no soļiem jūs neesat veicis labi, it īpaši sākot no 5. Mēģiniet tos atkārtot vai pārliecināties, ka jums ir taisnība. Tas ir viss, ko es šobrīd varu iedomāties.
Liels apskāviens! Pāvils.
Pārinstalējiet maverick un pārinstalējiet plāksteri, un tagad es saņemu sekojošo.
mkdir: Nevar izveidot direktoriju "/ dev / cgroup / cpu / user / 1678": fails vai direktorijs nepastāv
bash: / dev / cgroup / cpu / user / 1678 / uzdevumi: Fails vai direktorijs nepastāv
bash: / dev / cgroup / cpu / user / 1678 / notice_on_release: Fails vai direktorijs neeksistē
domingopv @ pc1: ~ $
Uyy .. Es tiešām nezinu, kas tas var būt. Tas man darbojās perfekti.
Kaut kas man saka, ka grupas tīrīšana nedarbojas labi. Tāpēc es uzstāju, lai jūs redzētu, sākot ar 5. darbību.
Priekā! Pāvils.
Mana māte, iespaidīga, es varu redzēt 1080p flash video uz pasīvā nvidia 8400, es domāju, slikti slikti, PILNĪGI, cpu viss darbojas, brīnišķīgs uffff, kas uzlabo, tas ir daudz labāk, man ir Ubuntu 10.04 😀, ka labi, video man ir labi hahaha 😀
Kāds rc.local? Ir vairāki, kas tas ir? Sveicieni.
Es tikko uzrakstīju komandas, kas uzskaitītas 4. punktā. Jums tas nav jākopē failā, bet jāizpilda šīs komandas.
Priekā! Pāvils.
Tas ir slikti izskaidrots.
Kas jums jādara, ir rediģēt failu rc.local ar:
sudo gedit /etc/rc.local
Jums ir jāielīmē iekšā (pirms izejas 0):
mkdir -p / dev / cgroup / cpu
mount -t cgroup cgroup / dev / cgroup / cpu -o cpu
mkdir -m 0777 / dev / cgroup / cpu / lietotājs
echo "/ usr / local / sbin / cgroup_clean"> / dev / cgroup / cpu / release_agent
Tā ir problēma. Šie soļi ir slikti izskaidroti.
Tev ir taisnība! Tajā skaidri teikts: "rediģēt vietējo failu rc.local". Pietrūka, lai pievienotu komandu rīkoties šādi (par ko daži, iespējams, nezina). Es to pievienoju tieši tagad.
Paldies par paziņojumu! Priekā! Pāvils.
Kāda būtu procedūra PCLinuxOs?
Patiesībā es nezinu ...
Ja to uzzināt, neaizmirstiet kopīgot datus ar pārējiem!
Liels paldies!
Priekā! Pāvils.
Man šķiet, vai arī jūs neesat ievietojis nekādu atsauci no vietas, kur to ieguvāt? Vai jūs varētu man pateikt avotu?
Gracias
Nav viena avota. Es meklēju, kā to izdarīt no dažādiem avotiem un no savas personīgās pieredzes. Kopumā es jums varu pateikt, ka avoti ir miljoniem emuāru, kas reproducēja šīs ziņas. Meklējiet "patch 200 linux kernel lines" un redzēsiet par ko es runāju. Es precīzi neatceros, bet Ubuntu daļa, iespējams, ir iegūta no WebUpd8; ne jau Fedorai.
Esmu nesen lietojis 64 bitu Ubuntu lietotāju un, redzot šo padomu, sāku izmeklēt, un pašreizējais kodols, kas man ir, ir 2.6.32-27, saskaņā ar ziņu, šo plāksteri var pielietot tikai kodoliem, kas ir lielāks vai vienāds ar 2.6.36. Mans jautājums ir, vai šīs izmaiņas darbojas tikai 32 bitu distros vai manā pašreizējā izlaidumā kodolu var atjaunināt līdz 2.6.36?
Paldies par visu informāciju tīmeklī, lielisku materiālu.
Šīs izmaiņas darbojas gan 32, gan 64 bitu versijās.
Priekā! Pāvils.
uz jautājumu, un tas neapjuktu ar vēlāku atjauninājumu?
Ja tas nenotiktu labi, kas būtu sliktākais, kas varētu notikt?
(Jūs redzat, ka tad, vienkārši pārejot no Ubuntu 10.04 uz 10.10, viss avarē)
Pirmais, kas jāprecizē (lai izvairītos no metodes bezatbildīgas izmantošanas), ir tas, ka tas prasa atbalstu uzdevumu grupām Linux kodolā (cgroups), tas ir, tikai lietotāji, kuru kodols ir lielāks par 2.6.36, varēja izmantot šo metodi uzlabojumu.