קישור מקדים (או כיצד לבצע אתחול KDE תוך 3 שניות)

קישור מקדים היא תוכנית שתועלתה היא לגרום לתוכניות להיפתח מהר יותר. למרות שההסבר כיצד הוא עושה הוא ראוי למאמר מלא, אנו יכולים לומר בצורה גסה שהוא אומר לבינארי היכן לחפש תחילה את הספריות הדינמיות שהוא צריך לטעון.

לפיכך, בואו נדמיין שיש לנו בינארי שתלוי בספריית QtCore, לאחר שביצענו עליו קישור מקדים, הוא יחפש תחילה במרחב שייקבע מראש, ובמידה והוא לא ימצא אותו (עדכון, למשל) הוא יחפש אותו בדרך המסורתית.

Prelink עובד על כל מערכת תואמת POSIX, כגון GNU / Linux או BSD.

כיצד ליישם prelink

אופטימיזציה של המערכת באמצעות קישור מקדים היא די פשוטה, אנו יכולים לבצע אופטימיזציה לבינארי באמצעות (כשורש):

prelink binario

אך כדי לייעל את כל המערכת עלינו לבצע:

prelink -amvR

תראה משהו כזה:

קישור מקדים

קישור מקדים

הנה הסבר מפורט על משמעות הפרמטרים:

  • a: שווה –כל, גורם לחלה על המערכת כולה
  • מ ': שווה ערך לזיכרון שמור, ההסבר כיצד הוא עובד מורכב, אך חוסך מקום
  • v: שווה ערך ל –verbose, זה מאפשר לנו לדעת מהן הספריות המקושרות מראש
  • ת: שווה ערך ל - אקראי, הגדל את הביטחון על ידי הפיכת ערך לאקראי. אינני יודע את פרטי פעולתו
הטרמינל הוא יאקואקי, למקרה שמישהו מעוניין בכך.

לבטל קישור מראש (לבטל קישור) בינארי

prelink  -u

כל המערכת:

prelink -au

הפצות רבות כמו אובונטו מציעות קרון המקשר מראש מדי פעם את כל קבצי הבינאריה של המערכת אם מותקן prelink
Prelink עלול לגרום לבעיות בכמה קבצים בינאריים קנייניים, ולכן בדרך כלל הם מדלגים כברירת מחדל. בכל מקרה, וודא שקובץ /etc/prelink.conf מכיל את השורות הבאות:
# Skype -b / usr / lib32 / skype / skype -b / usr / lib / skype / skype # פלאגין נגן פלאש -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- * # זרז -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 / modules / הרחבות / fglrx / -b /usr/lib/xorg/modules/linux/libfglrxdrm.so -b /usr/lib/xorg/modules/extensions/libglx.so

בצע אופטימיזציה של KDE

מה שמובטח זה חוב. אם כבר קישרת מראש את המערכת שלך כנראה שלא הבחנת בהבדל בזמני הטעינה של KDE. הסיבה לכך היא ש- KDE משמש כלי עזר בשם kdeinit לטעינת כל הספריות הדרושות. כדי להימנע משימוש בכלי זה עלינו ליידע את KDE שהוא מקושר מראש. לשם כך עלינו (כשורש) ליצור קובץ משתנה:

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

בה אנו מדביקים את השורה הבאה

export KDE_IS_PRELINKED=1

ואנחנו נותנים לו את ההרשאות הראויות (אנחנו לא רוצים להוסיף שום שובב rm-rf /)

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

ואם אתה לא מאמין לי, הנה סרטון של KDE המאתחל במערכת שלי:

[מפרטים] פרטי המערכת:

  • HDD ב 7200 סל"ד
  • ג'נטו
  • XFS
  • Ksplash מושבת (סיבה למסך שחור של וידאו
[/ מפרט]

קרון ופרלינק

אם אתה משתמש במערכת כמו Archlinux, שבה העדכונים הם תכופים מאוד, זה יכול להיות מעניין להוסיף cron שמריץ prelink מדי יום.

לפיכך, אנו פותחים את קובץ ה- cron עם nano (כשורש):

nano /etc/cron.daily/prelink

ואנחנו מדביקים את הדברים הבאים:

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

ואז אנו נותנים לו את ההרשאות המתאימות (כבר הזכרתי שאף אחד לא רוצה שמישהו יוסיף קוד זדוני):
chmod 755 /etc/cron.daily/prelink

הרגל טוב כשקוראים מאמר הוא לחקור מה בדיוק התסריט עושה. הרגל טוב כשכותבים זה להסביר למה הוא מיועד. הנה ההתמוטטות

  1. השורה הראשונה היא לספר למערכת מה זה סקריפט bash ומיקום המתורגמן.
  2. השני גורם לבאש לבצע subshell במצב ניפוי באגים, אני לא יודע למה, אבל מומלץ, אפשר לבטל אותו ללא סיכון. פירוש ה- && שכאשר הפקודה מסתיימת, הפעל את הדברים הבאים.
  3. בצע prelink עם כמה פרמטרים שכבר הוסברו, &> / dev / null מפנה כל פלט ל- / dev / null, כלומר, הוא זורק אותה

קישורים מעניינים


27 תגובות, השאר את שלך

השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.

  1.   איוון בארה דיג'ו

    עם ה"שביתה "שהענקת ל- [ENTER], הגמדים שהמחשב נבהל והחלו לעבוד במהירות כפולה מבעבר, אתה אומר השתמש ב- PRELINK, אבל המערכת שלך מבוססת על אימה ... חחח!

    ברכות ופוסט מצוין

    תודה על השיתוף.

    1.    מטייל דיג'ו

      אממ, עם הרעש שהוא משמיע לא אתפלא אם היה מכרה במחשב ה- XD שלי.

    2.    מטלטל דיג'ו

      אפית הבדיחה, נכון שהוא היה להוט להיכנס, היי.

  2.   שוסי דיג'ו

    ברצוני להעיר שלפני זמן מה שוויתי במבחן זה, ויכולתי לראות שההבדלים כמעט אפסיים (השתמשו בבדיקות שלדעתי והטביעו את חתיכות Firefox ו- nautilus).
    אם יש מעוניינים אפרסם את הקובץ (לא פרסמתי אותו בזמנו לעצלות).

    1.    מטייל דיג'ו

      אום, לא כל הקבצים יכולים לראות שיפור, אבל לכל הפחות, המערכת נוטה לאתחל מהר יותר.

  3.   יְוֹם דיג'ו

    הייתה תקופה בה השתמשתי ב- e4rat וזה שיפר את האתחול לכמה שניות, כי זה HDD זה מתחיל מהר מדי ממה שאני רואה, נכון לעכשיו יש לי SSD קטן עם kaos וב- xfs וכשראיתי את ההפעלה הזמן לא האמנתי.
    http://i.imgur.com/ds6WqIT.png

    1.    Joao דיג'ו

      אני דורש להכיר את נושא שולחן העבודה שבו אתה משתמש ואת סט הסמלים (באווירה טובה)

      1.    מטייל דיג'ו

        אשבע שהנושא הוא הליום.

      2.    יְוֹם דיג'ו

        נושא הפלזמה והסמלים נקראים דינמו והחלון הדק הבא.
        http://sta.sh/02ful04ags1
        http://hombremaledicto.deviantart.com/art/Dynamo-Plasma-beta-473014317
        http://kde-look.org/content/show.php?content=164722

        מצטער למחבר השיר לסיבוב 🙂

    2.    ג'וז-רוד דיג'ו

      איך קוראים לאותו משגר אפליקציות? 🙂

      1.    מטייל דיג'ו

        אני חושב שזה אחד שנקרא משגר qml פשוט.

      2.    יְוֹם דיג'ו

        כפי שאומר המטייל, זה ה- QML

      3.    ג'וז-רוד דיג'ו

        גרסיאס 😉

  4.   אליוטיים 3000 דיג'ו

    טיפ טוב מאוד, אם כי KDE מחולל פלאים על Arch ו- Slackware (ניסיתי אותם והם באמת מרהיבים).

  5.   Azureus דיג'ו

    תודה רבה מאוד. בדקתי את זה על הקשת שלי, עשיתי קישור מקדים כללי ואני חייב לומר שהשיפור הוא די טוב ואני מרגיש מאוד בנוח hehe

  6.   ianpocks דיג'ו

    אני לא יודע אם זו אני ... אבל אני לא שם לב להבדל ועם ניתוח מערכת המערכת זה לוקח יותר זמן להתחיל ...

    1.    מטייל דיג'ו

      ובכן, חייבת להיות בעיה כלשהי במערכת ההפעלה שלך, אתה יודע, prelink -au והכל נפתר.

  7.   בלה דיג'ו

    עד כמה שידוע לי (מנסיוני), לפחות בג'נטו אתה לא צריך ליצור קובץ חדש כדי להעביר את הערך של המשתנה KDE_IS_PRELINKED. פשוט בטל את ההערה על השורה KDE_IS_PRELINKED = 1 ב /etc/env.d/43kdepaths (אני לא בטוח אם זה הנתיב המדויק, מכיוון שאין לי את המכונה שלי כרגע).

    בכל פעם ש- KDE מורכב לחלוטין, עליכם לבדוק את הקובץ הזה, מכיוון שחלק מהחבילות שהוא מתקין יחליף את הקובץ שציינתי.

    1.    מטייל דיג'ו

      וזה כנראה בהפצות רבות. אבל כשעשיתי את זה כמו שעשיתי את זה אני מבטיח שהתצורה הזו לא תשתנה.

  8.   סטטיק דיג'ו

    פוסט מצוין, מזל טוב

    אני מציע לך ליצור הדרכה להתקנת ג'נטו

    1.    מטייל דיג'ו

      אני אשמור את זה. תודה

  9.   כריסטיאנהד דיג'ו

    שירות טוב מאוד, למרות שהוא לא משרת אותי, כי יש לי: מגעיל ל- KDE

  10.   חאווייר דיג'ו

    האם הדולפין יאיץ? זה תמיד נראה איטי להתחיל

    1.    מטייל דיג'ו

      זה צריך, אני לא יודע, אני תמיד משתמש בו כברירת מחדל. אני משתמש ב- gentoo, portage, אם הוא מזהה כי מותקן prelink, הוא קושר אוטומטית את הקבצים הבינאריים, ולכן, אין מושג.

  11.   פפו דיג'ו

    מעניין, תודה!

    PD- Library = ספרייה, לא ספרייה 😉
    ובכן, לשולחן העבודה קוראים Plasma Desktop, ולא KDE. אוקי, אני מפסיק את xD

    1.    מטייל דיג'ו

      בז'רגון המחשב זהו כישלון מקובל, הרי השפות הן פרגמטיות, במיוחד בתרגומים.
      https://es.wikipedia.org/wiki/Librería_(desambiguación)

  12.   dtulf דיג'ו

    טוֹב. עמדתי לבדוק את זה ב- ArchLinux KDE (בסיס, לא ה- DE השלם) וזה נותן לי "שגיאת שמירה '/etc/cron.daily/ שגיאת שמירה' /etc/cron.daily/prelink ': קובץ או ספריית קישור מקדים לא קיים ': הקובץ או הספריה אינם קיימים ». אין לי "cron" מותקן ובוויקי [1] הם מדברים על cronie, fcron ושאר גרסאות. מה עלי להתקין או לעשות כדי להשלים את ההדרכה?

    [1] https://wiki.archlinux.org/index.php/cron#Installation