Eellink (või kuidas KDE käivitada 3 sekundiga)

Eellink on programm, mille utiliit on programmide kiirem avamine. Ehkki selgitus, kuidas see toimib, oleks väärt tervet artiklit, võime öelda umbkaudselt, et see ütleb binaarsele, kust otsida kõigepealt dünaamilisi teeke, mida see vajab laadimiseks.

Kujutame ette, et meil on kahendkood, mis sõltub QtCore'i teegist. Kui oleme selle eellingi käivitanud, otsib see kõigepealt prelinki tähistatud ruumis ja juhul, kui ta seda ei leia (värskendus näiteks näide) otsib ta seda traditsioonilisel viisil.

Eellink töötab mis tahes POSIX-iga ühilduvas süsteemis, näiteks GNU / linux või BSD.

Kuidas eellinki rakendada

Eellingiga süsteemi optimeerimine on üsna lihtne, saame kahendkoodi optimeerida, kasutades (juurena):

prelink binario

Kuid kogu süsteemi optimeerimiseks peame toimima:

prelink -amvR

Näete midagi sellist:

Eellink

Eellink

Siin on parameetrite tähenduse üksikasjalik selgitus:

  • a: võrdub - kõik, muudab selle rakendatavaks kogu süsteemile
  • m: samaväärne –konservimäluga, selle toimimise selgitus on keeruline, kuid säästab ruumi
  • v: samaväärne sõnaga –verbose, see võimaldab meil teada, millised on eelnevalt lingitud teegid
  • V: Samaväärne juhuslikkusega, suurendage turvalisust, muutes väärtuse juhuslikuks. Ma ei tea selle toimimise üksikasju
Terminal on Yakuake, juhul kui kedagi huvitab.

Binaarkaardi eellinkimise tühistamiseks (linkimise tühistamiseks)

prelink  -u

Kogu süsteem:

prelink -au

Paljud distributsioonid, näiteks Ubuntu, pakuvad cronit, mis eellingi installimisel lingib perioodiliselt kõik süsteemi kahendfailid
Eellink võib põhjustada probleeme mitmetes patenteeritud kahendfailides, mistõttu need jäetakse tavaliselt vaikimisi vahele. Igatahes veenduge, et teie fail /etc/prelink.conf sisaldab neid ridu:
# Skype -b / usr / lib32 / skype / skype -b / usr / lib / skype / skype # Flash Playeri pistikprogramm -b /usr/lib/mozilla/plugins/libflashplayer.so # NVIDIA -b / usr / lib / libGL .so * -b /usr/lib32/libGL.so* -b //usr/lib/libOpenCL.so* -b //usr/lib32/libOpenCL.so* -b / usr / lib32 / vdpau / -b / usr / lib / vdpau / -b /usr/lib/xorg/modules/drivers/nvidia_drv.so -b /usr/lib/xorg/modules/extensions/libglx.so* -b / usr / lib / libnvidia- * - b / usr / lib32 / libnvidia- * # Katalüsaator -b / usr / lib / libati * -b / usr / lib / fglrx * -b / usr / lib / libAMDXvBA * -b /usr/lib/libGL.so* - b / usr / lib / libfglrx * -b /usr/lib/xorg/modules/dri/fglrx_dri.so -b /usr/lib/xorg/modules/drivers/fglrx_drv.so -b / usr / lib / xorg / moodulid / extensions / fglrx / -b /usr/lib/xorg/modules/linux/libfglrxdrm.so -b /usr/lib/xorg/modules/extensions/libglx.so

KDE optimeerimine

Lubatud on võlg. Kui olete oma süsteemi juba eelnevalt linkinud, ei märganud KDE laadimisaegades ilmselt mingit erinevust. Seda seetõttu, et KDE toimib kõigi vajalike teekide laadimiseks utiliidina nimega kdeinit. Selle tööriista kasutamise vältimiseks tuleb KDE-le teada anda, et see on eelnevalt lingitud. Selleks peame (juurena) looma muutuja faili:

nano /etc/profile.d/kde-prelink.sh

Millesse kleepime järgmise rea

export KDE_IS_PRELINKED=1

Ja me anname talle õiged õigused (me ei taha, et mõni ulakas lisaks rm-rf /)

chmod 755 /etc/profile.d/kde-prelink.sh

Ja kui te mind ei usu, siis siin on video KDE minu süsteemi käivitamisest:

[spetsifikatsioonid] Süsteemi üksikasjad:
  • HDD 7200 p / min
  • Gentoo
  • XFS
  • Ksplash on keelatud (video musta ekraani põhjus
[/ spetsifikatsioonid]

Cron ja eellink

Kui kasutate sellist süsteemi nagu Archlinux, mille värskendused on väga sagedased, võib olla huvitav lisada cron, mis töötab iga päev eellinki.

Seega avame croni faili nanoga (juurena):

nano /etc/cron.daily/prelink

Ja kleepime järgmise:

#! / bin / bash
[[-x / usr / bin / eellink]] &&
/ usr / bin / prelink -amR &> / dev / null

Seejärel anname talle vastavad õigused (mainisin juba, et keegi ei taha, et keegi pahatahtlikku koodi lisaks):
chmod 755 /etc/cron.daily/prelink

Artikli lugemisel on hea harjumus uurida, mida stsenaarium täpselt teeb. Hea harjumus selle kirjutamisel on selgitada, milleks see on mõeldud. Siin jaotus

  1. Esimest rida kasutatakse süsteemile, mis on bashi skript, ja tõlgi asukohta.
  2. Teine paneb bashi käivitama alamkesta silumisrežiimis, ma ei tea, miks, kuid see on soovitatav, selle saab ilma riskita kõrvaldada. && tähendab, et kui käsk on lõpetatud, käivitage järgmine.
  3. Käivitage eellink mõnede juba selgitatud parameetritega, &> / dev / null suunab kõik väljundid / dev / null-i, see tähendab, et see loobub

Huvipakkuvad lingid