27-01-2015, 15:33
|
|
מנהל פורום מערכות הפעלה - הרובע המייקרוסופטי.
|
|
חבר מתאריך: 07.10.04
הודעות: 13,777
|
|
שימי:
מטרת ה bootloader היא הפעלת מערכת ההפעלה, מעולם לא אמרתי שהקרנל הוא חלק ממנו אבל כן רשום לו איפה הקרנל של מערכת ההפעלה (או דרך להגיע אליו - תלוי במערכת ההפעלה, לינק http://wiki.osdev.org/Bootloader) - בשום מקום אין לך זיהוי של רכיבי חומרה (הציטוט שהבאתי לעיל), אפילו לא בקטע הקוד שהדבקת.
לינוקס היא מערכת נפלאה שמסוגלת לגרום לחזירים לעופף ואפשר לדחוס אותה לגודל של 1MB ולצרוב אותה על צ'יפים פיציים ומייתרת בכך את הצורך במערכת הפעלה מלאה - דבר מעולה בשביל מכשירים יעודיים(ועושה דברים מסוימים בצורה שהייתי מקווה שחלונות הייתה מבצעת, לדוגמה ) - אבל בהחלט לא הנושא הנידון כאן.
אני לא מדבר על קרנל ודרייברים בגלל שהם לא חלק מהBootloader - אתה בעצמך אמרת את זה, אז איך אתה אומר שהוא הוא זה שמזהה חומרה בסיסית? ולמה שהוא יזהה חומרה שאינה כוננים מקומיים/חיבורי רשת אם בכלל? ואיך? (אין לו דרייברים, הוא לא קשור לקרנל שכן ניגש לחומרה חיצונית), מעולם לא אמרתי שהוא לא עושה כלום - הוא ניגש למקום מסויים שבו יש לך את מערכת ההפעלה ומפעיל אותו, יש לו יכולות נוספות מעבר לזה - אבל הוא לא מזהה חומרה.
נשמע הגיוני - ציטטתי כתבה שראיתי ואחרי מה שאמרת בהחלט נשמע נכון שהם רצים ברקע ומספקים שירותים למעבד. מעולם לא טענת שuefi/bios הוא שלב של bootloader ובכול מקרה לשמוע אותך מתייחס אליו ככזה טיפה צורם לי כי... לפי הגדרה זה לא זה אפילו אם הפעולות "דומות" (והן לא)
דיסקליימר: אני מכיר BIOS-MBR וכן GRUB (הראשון), לא התעסקתי עם UEFI-GPT ולא עם BCE אז ייתכן שאני טועה פה, אבל מעצם העובדה שאפילו אם היום תחבר כונן חדש שמותקנת עליו מערכת הפעלה לא תראה אותו כאופציה בGRUB אלא אם תתחבר לקונסול שלו ותבצע חיפוש/קינפוג או שתשנה את הקובץ config בעצמך (כנ"ל אם תוריד כונן הוא לא ייעלם מהרשימה) אני בספק אם הGRUB יידע להתגבר על שינויי חומרה (פירוק RAID, העתקת תוכן כונן אחד לחדש וכו'), אולי ההצבעה היא לא ע"י לאיזה חיבור SATA חיברת ובאיזה PARTITION מערכת ההפעלה - אבל GPT די מסגיר את העובדה שלכול partition יש GUID משלו... תשנה partition/כונן - תשנה את הGUID ואז הוא ילך לאיבוד עד הprobe הבא שתיזום בgrub.
BIOS (ואני מניח UEFI) לא מחפש מחיצות, זה לא מעניין אותו, הוא מחפש חומרה - דיסקים, זיכרון, כרטיס מסך, כרטיס רשת. הלינקים לא מעידים שהוא עושה probe בעצמו, בהחלט ייתכן שהוא משתמש בINT של המעבד (שלפי מה שאמרת - הUEFI/BIOS מספקים) כדי לגשת לחומרה ולבצע פעולות אלו.
קוראים לו plug&pray, אתה מחבר חומרה, היא שולחת int כשהיא מחוברת והוא מפעיל פונקציה של מערכת ההפעלה שמחפשת driver מתאים בהתאם למידע שנשלח, זה לא זיהוי חומרה אלא זיהוי דרייבר, וזה לא initiated ממערכת ההפעלה אלא מהחומרה המצורפת, וזה לא כחלק מהפעלת המחשב מחדש (שזה מה שמדברים עליו) אלא בזמן שהמחשב פועל לאחר שמערכת ההפעלה עלתה בין טווח של 2 שניות ועד 2 עשורים ושוב - עדיין לא קשור לנושא הנידון.
ai22:
BIOS היה קוד סגור, של IBM שהונדס לאחור, זה אני יודע.
מה הקשר ל bootloader אני עדיין לא מבין - אשמח להרחבה.
ה efi היה פנימי עוד בשנות ה-90 והוא הופץ החוצה (אם אני לא טועה, וכנראה שכן) כי אינטל לא הצליחו לעשות אותו מספיק widespread.
bootrom קשור לiphone - פחות למחשב אישי והוא מקביל ל bios יותר מאשר לbootloader שההגדרה שלו מאוד ברורה, אבל עלייה של מכשירים ניידים שונה מעלייה של מחשבים אישיים מהסיבה הפשוטה שיש לך פחות שליטה על החומרה הפנימית של המכשיר (בינתיים).
הקריאה של פורמט raw וזיהוי של מערכת הקבצים (אם לזה התכוונת) היא יכולת של ה bootloader - היא לא קשורה לזיהוי חומרה אלא לזיהוי פורמט.
תודה על השיתוף מאינטל, תמיד כיף לי לשמוע מה היה פעם (באמת!), למיטב ידיעתי למרות שהפנטיום היה 32 ביט - היה צריך להעביר אותו לעבוד ב mode של 32 ביט (ממש התחיל לעבוד ב-8, ביצע את השינויים שצריך כדי לעבוד ב-16 ואז את השינויים שצריך כדי לעבוד ב-32), תודה על הפירוט לגבי האיטניום.
_____________________________________
|