Ebben a részben különféle módszereket mutatok be egyetlen cél elérése érdekében: ez pedig az energiatakarékosság Athlon-alapú rendszerünkön. Jelen pillanatban az én javaslatom az, hogy a "parancssoros hackelést" használjuk, mert a rendszermagfolt elavult és már nem fejlesztik tovább, az LVCool folt pedig csak egy lapkakészlet családot támogat. Az athcool program ígéretes, de én még nem teszteltem.
Ezen módszerek mindegyike beállítja a lapkakészlet északi hídjának "Lekapcsolódás engedélyezve STPGNT esetén" bitjét. Se többet se kevesebbet nem tesznek. Minden más feladatot a rendszermag ACPI alrendszere végez, mely elküldi az STPGNT szignált a processzornak, amikor acpi-c2 tétlen módba lép. (Egyedül az LVCool csinálja más módon...)
Ha jelenlegi rendszermagunk nem tartalmaz ACPI támogatást, engedélyezzük azt, és fordítsuk újra a rendszermagot. Az ACPI-beállításokat a
+ -> menüpontban találjuk. A következő beállításokat mindenképpen engedélyeznünk kell: , ésAz új 2.4.22 rendszermag esetében:
+ . Legalább a következő opciót engedélyeznünk kell: .Néhány lapkakészlet az STPGNT szolgáltatást is támogatja, ha HLT jelzést észlel. Ezek az alaplapok/lapkakészletek nem igénylik az ACPI engedélyezését! Jelenleg visszajelzésre várok arra vonatkozóan, mely lapkakészletek működnek/nem működnek ACPI nélkül. Talán tesztelhetnéd az alaplapot, majd elküldhetnéd nekem az eredményt.
A parancssoros hackelés használatához a rendszermagban engedélyezni kell az ACPI támogatást rendszerint, de egyes esetekben ez nem szükséges. Az energiatakarékos üzemmódot közvetlenül parancssorból, újraindítás nélkül ki- és bekapcsolhatjuk. Ezt a következő parancsokkal tehetjük meg:
bekapcsolás: setpci -v -H1 -s 0:0.0 52=$(printf %x $((0x$(setpci -H1 -s 0:0.0 52) | 0x80)))
kikapcsolás: setpci -v -H1 -s 0:0.0 52=$(printf %x $((0x$(setpci -H1 -s 0:0.0 52) & 0x7f)))
bekapcsolás:
setpci -v -H1 -s 0:0.0 92=$(printf %x $((0x$(setpci -H1 -s 0:0.0 92) | 0x80)))
setpci -v -H1 -s 0:0.0 95=$(printf %x $((0x$(setpci -H1 -s 0:0.0 95) | 0x02)))
kikapcsolás:
setpci -v -H1 -s 0:0.0 92=$(printf %x $((0x$(setpci -H1 -s 0:0.0 92) & 0x7f)))
setpci -v -H1 -s 0:0.0 95=$(printf %x $((0x$(setpci -H1 -s 0:0.0 95) & 0xfd)))
bekapcsolás:
setpci -v -H1 -s 0:0.0 D2=$(printf %x $((0x$(setpci -H1 -s 0:0.0 D2) | 0x80)))
setpci -v -H1 -s 0:0.0 D5=$(printf %x $((0x$(setpci -H1 -s 0:0.0 D5) | 0x02)))
kikapcsolás:
setpci -v -H1 -s 0:0.0 D2=$(printf %x $((0x$(setpci -H1 -s 0:0.0 D2) & 0x7f)))
setpci -v -H1 -s 0:0.0 D5=$(printf %x $((0x$(setpci -H1 -s 0:0.0 D5) & 0xfd)))
bekapcsolás: setpci -v -H1 -s 0:0.0 6B=$(printf %x $((0x$(setpci -H1 -s 0:0.0 6B) | 0x01)))
kikapcsolás: setpci -v -H1 -s 0:0.0 6B=$(printf %x $((0x$(setpci -H1 -s 0:0.0 6B) & 0xfe)))
bekapcsolás: setpci -v -H1 -s 0:0.0 6A=$(printf %x $((0x$(setpci -H1 -s 0:0.0 6A) | 0x0003)))
kikapcsolás: setpci -v -H1 -s 0:0.0 6A=$(printf %x $((0x$(setpci -H1 -s 0:0.0 6A) & 0xfffc)))
bekapcsolás:
setpci -v -H1 -s 0:0.0 E7=$(printf %x $((0x$(setpci -H1 -s 0:0.0 E7) | 0x06)))
setpci -v -H1 -s 0:0.0 6D=$(printf %x $((0x$(setpci -H1 -s 0:0.0 6D) | 0x80)))
kikapcsolás:
setpci -v -H1 -s 0:0.0 E4=$(printf %x $((0x$(setpci -H1 -s 0:0.0 E7) & 0xf9)))
bekapcsolás: setpci -v -H1 -s 0:0.0 6F=$(printf %x $((0x$(setpci -H1 -s 0:0.0 6F) | 0x10)))
kikapcsolás: setpci -v -H1 -s 0:0.0 6F=$(printf %x $((0x$(setpci -H1 -s 0:0.0 6F) & 0xef)))
bekapcsolás: setpci -v -s 0:0.0 0x62=$(printf %x $((0x$(setpci -H1 -s 0:0.0 62) | 0x06)))
kikapcsolás: setpci -v -s 0:0.0 0x62=$(printf %x $((0x$(setpci -H1 -s 0:0.0 62) & 0xf9)))
Az athcool egy aprócska program, mely ugyan azt a feladatot látja el, mint a fenti setpci parancsok. Ugyanazokat a lapkakészleteket támogatja, és felismeri, hogy milyen lapkészletünk van. Működésre bírja az energiatakarékos üzemmódot, a lapkakészletnek megfelelő beállításokkal.
A programról további információkat szerezhetünk (és le is tölthetjük) a honlapról.
Az újabb alaplapok némelyikéhez a gyártó olyan BIOS frissítést biztosít, mely beállítja az alaplap lapkakészletének megfelelő bitjét vagy bitjeit (esetleg lehetővé teszi a BIOS-setup-ban annak beállítását). Látogassuk meg alaplapunk gyártójának honlapját az ilyen BIOS frissítések beszerzéséhez.
A rendszermag-folt egy, a Newsnet-en talált másik folton alapul, mely Jan Niehusmann-tól származik. Módosítottam a foltot, hogy a KT266/266A lapkakészleteket is támogassa. Egyébként a saját foltom ugyanazt csinálja, mint a parancssoros hackelés, csak a rendszermagból. Ezért javaslom a hackelést parancssorból, hiszen azt nagyon egyszerű használni.
Ok... most nézzük lépésenként, hogyan használjuk a foltot:
Először le kell töltenünk a foltot:
2.4.21 rendszermag-folt (köszönet Thomas Reinhardt-nak, amiért átírta 2.4.21-re)
2.6.5 rendszermag-folt amely támogatja az összes VIA lapkakészletet a KT600-ig (köszönet érte Sebastian Droege-nek amiért átírta a 2.6.5 rendszermaghoz, továbbá egyéb lapkakészlet támogatást adott hozzá)
Jelentkezzünk be root felhasználóként
cd /usr/src
Rakjuk fel a foltot: cat $path-to-patch/amd_cool.diff | patch -p0 (Az új 2.6.5 folt esetében: lépjünk be a linux könyvtárba, majd patch -p1)
cd linux
Fordítsuk le az új rendszermagot
Indítsuk újra a számítógépet, majd a boot-prompthoz írjuk be a amd_disconnect=yes sort. Erre azért van szükség, mert az Athlon processzor ismert hibái több alaplap esetén problémákat okozhatnak. Így először kipróbáljuk a foltot, és ha működik, a amd_disconnect=yes sort beírhatjuk az /etc/lilo.conf fájlba.
Az LVCool a Windowsos VCool program Linuxos változata. Csak a KT133/133A és a KX133 lapkakészletet támogatja, de nem tudok ezzel kapcsolatban segítséget nyújtani. Letölthető innen. Ez a megoldás nem igényel ACPI támogatást.
Íme egy másik energiamegtakarító program, amely számos lapkakészletet támogat. Én nem teszteltem, de úgy hallottam működik. Ellenőrizd le... Ez is egy olyan program, amely képes használni az alaplapon lévő monitorozó lapkákat (úgy mint az lm-sensors csomag).
Ez egy olyan rendszermag modul, amely engedélyezi az energiamegtakarítást a 760MP többprocesszoros lapkakészleten. Megtalálod itt. Nem tudom milyen jól működik, de valaki küldött olyan levelet, miszerint működik. Azért ellenőrizd.
Előző | Tartalomjegyzék | Következő |
Bevezetés | Mi van még? |