מנהל אתחול

מנהל אתחול (Boot loader) היא תוכנה המופעלת כחלק מתהליך האתחול של מחשב וטוענת את מערכת ההפעלה. התוכנה שמורה במיקום מוגדר בזיכרון ההתקן והיא פשוטה וקטנה בהרבה ממערכת ההפעלה, ולכן ניתן לטעון אותה בקלות רבה יותר.

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

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

במחשבים אישיים רגילים תוכנת ה־BIOS, או ה־UEFI, הצרובה בלוח האם של המחשב היא מנהל האתחול הראשון. מנהל האתחול השני נקרא לפעולה בדרך־כלל על ידי מנהל האתחול הראשון, והוא אחראי לטעינת מערכת ההפעלה שנבחרה בהגדרות הרצויות, ומעביר אליה את השליטה על המשך תהליך האתחול, הכולל את טעינת ליבת מערכת ההפעלה, מנהלי ההתקנים, ממשק המשתמש ועוד.[1][2]

קיימים מנהלי אתחול המהווים חלק ממערכת הפעלה מסוימת ותומכים בהפעלתה בלבד כגון NTLDR, וכאלו התומכים בבחירת כמה מערכות הפעלה, כגון GRUB. למחשבי Mac של חברת Apple קיימת תוכנת עזר בשם Apple BootCamp, המאפשרת למנהל האתחול להפעיל את המחשב גם עם מערכת ההפעלה Microsoft Windows.

מנהל אתחול קיים בהתקנים אלקטרוניים דיגיטליים רבים נוספים, כגון טלפונים סלולריים, בצורה זו או אחרת. בטלפונים מבוססי אנדרואיד, למשל, קיים רכיב בשם Boot ROM המפעיל תוכנת מנהל אתחול הצרובה במחיצה בפני עצמה הקרויה Bootloader והיא מפעילה את מערכת ההפעלה, הצרובה במחיצה נוספת.[3][4][5]

אבטחהעריכה

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

בעבר אפשרויות האבטחה היו מצומצמות למדי וכללו שיטות שאינן מגנות במידה מספקת כנעילת הגדרות ה BIOS בעזרת סיסמה והגנה פיזית על מארז המחשב. כיום קיימות טכניקות מודרניות שונות לאבטחת תהליך האתחול הכוללות אבטחה של מנהל האתחול, כגון SecureBoot המהווה חלק מתקן UEFI, בשילוב הצפנה תוכנתית ופיזית של אמצעי האחסון בעזרת תקנים כ TPM ו־OPAL.[6]

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

התאוששות מכשלעריכה

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

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

שיטה המכונה A/B (Seamless) System Updates מאפשרת שדרוג מערכת הפעלה באמצעות הורדתה מהאינטרנט – FOTA תוך כדי שימוש במכשיר, במכשירים תומכים, ללא הפרעה למשתמש. באמצעות שכפול מחיצת מערכת ההפעלה ניתן לייצר עותק מעודכן מאחורי הקלעים, תוך כדי שימוש במכשיר. בעת האתחול מנהל האתחול מוודא אם העותק החדש תקין ומאתחל ממנו, אם אינו תקין תטען המערכת הוותיקה, ובכשל כולל יפנה למחיצת השחזור.[10][11][12]

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

מנהלי אתחולעריכה

בין מנהלי האתחול אפשר למצוא את:

  • BIOS – מנהל האתחול הבסיסי במחשבים אישיים.
  • EFI – תקן מודרני המחליף את BIOS.‏
  • NTLDR – מנהל האתחול ששימש את מערכות Microsoft Windows NT עד חלונות ויסטה.
  • BOOTMGR (Windows Boot Manager) - מנהל האתחול של מערכות Microsoft Windows מויסטה והלאה.
  • GRUB – מנהל אתחול המיועד בעיקר למערכות לינוקס.
  • Syslinux – מנהל אתחול חליפי לסביבת לינוקס.

ראו גםעריכה

קישורים חיצונייםעריכה

  מדיה וקבצים בנושא מנהל אתחול בוויקישיתוף

הערות שולייםעריכה

  1. ^ boot - Where is the bootloader stored - in ROM, RAM, or elsewhere?, Ask Ubuntu
  2. ^ linux - Why do we need a bootloader in an embedded device?, Stack Overflow
  3. ^ The Android Booting process | NXP Community, community.nxp.com
  4. ^ punyavashist, The Android Boot Process, Hacker Noon, ‏2017-11-25
  5. ^ Android Boot Process, GeeksforGeeks, ‏2018-08-14 (באנגלית)
  6. ^ נמצאו תקיפות יעילות בשלבים יסודיים יותר של המערכת ולמעשה עוקפות את אבטחת תהליך האתחול, כגון חולשות בארכיטקטורת המעבד כ־Meltdown ו־Spectre, או השתלת שבב זדוני בלוח האם על ידי גורמים סיניים. ראו How china used a tiny chip to infiltrate america's top Companies, bloomberg.com, 2018-10-04.
  7. ^ בדומה לפתיחת נעילת מכשיר סלולרי לרשת סלולר מסוימת.
  8. ^ Android Pay no longer works if you unlock your bootloader, and that's a good thing, Android Central, ‏2016-10-21 (באנגלית)
  9. ^ C. SCOTT BROWN, Huawei will no longer allow bootloader unlocking, androidauthority.com, ‏MAY 25, 2018
  10. ^ A/B (Seamless) System Updates, Android Open Source Project (באנגלית)
  11. ^ Implementing A/B Updates, Android Open Source Project (באנגלית)
  12. ^ How A/B Partitions and Seamless Updates Affect Custom Development on XDA, xda-developers, ‏2018-07-21 (באנגלית)
  ערך זה הוא קצרמר בנושא תוכנה. אתם מוזמנים לתרום לוויקיפדיה ולהרחיב אותו.