תיאור תהליך האתחול של Windows XP

[ המאמר באדיבות דניאל פטרי - www.petri.co.il ]

תהליך האתחול כולל חמישה שלבים עיקריים שכל אחד מפורט להלן:

Pre-Boot

·P.O.S.T- Power On Self Test, תהליך שמבצע ה BIOS כדי לבדוק את חומרת לוח האם ולדווח על תקלות.

·הקצאת משאבים-BIOS מקצה משאבי חומרה לרכיבים.

·הפניה ל MBR- BIOS מפנה את הדיסק אל MBR משם תתחיל שרשרת האתחול.

Boot

·boot loader init - הקובץ ntldr מעביר את ה CPU ממצב של real mode למצב protected mode. בנוסף מטעין דרייברים שיאפשרו גישה למחיצות FAT/NTFS.

·בחירת מערכות ההפעלה - הקובץ boot.ini משמש כאן כדי להציג רשימת מערכות הפעלה שמהן ניתן לבחור, בנוסף בתוכו רשום המסלול למיקום של מערכת ההפעלה.

·זיהוי חומרה - הקובץ ntdetect.com מזהה את החומרה המותקנת ומדוח ל ntldr.

·בחירת פרופיל חומרה - הקובץ ntldr מציג תפריט של פרופילי חומרה במידה וקיימים ומאתחל לפרופיל ברירת המחדל במידה והמשתמש לא בחר מיוזמתו.

Kernel Load

·גרעין מערכת נטען - הקובץ ntoskrnl.exe נטען אך עדיין לא מאותחל, גם הקובץ hal.dll נטען. (זהו קובץ שמשמש כמעין פילטר בין החומרה ובין מע' ההפעלה)

·בחירת control set - ntldr בודק ב registry במפתח "select", מהו control set ברירת המחדל, שאליו הוא אמרו להתייחס וממנו לקבל את ההגדרות לאתחול.

·הטענת דרייברים - ntldr מטעין דרייברים בסיסיים שיאפשרו להתקנים שונים להתחיל לפעול.

·העברת שליטה לגרעין OS - ntldr מעביר את השליטה על האתחול לגרעין מערכת ההפעלה – ntoskrnl.exe.

Kernel init

·יצירת מפתח חומרה - בתהליך זה נוצר ב registry מפתח שמכיל את כל הגדרות החומרה שזוהתה ע"י ntdetect.com, המפתח נוצר ב HKLM\hardware

·נוצר Clone control set - Clone control set, הוא העתק של control setdefault. הוא נטען לזיכרון וממתין שם עד תום תהליך האתחול, אז ישמש לסימון אתחול תקין.

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

·הטענת ממשק משתמש - GUI נטען וממשיכים להיטען דרייברים שונים ברקע.

Logon

·נפתח מסך logon - קובץ winlogon.exe נטען ופותח את מסך ה logon של המשתמש.

·טעינת services - services נטענים.

·סיום אתחול - Clone control set מועתק ל last known good configuration, האתחול מסומן כתקין.