איך אני בונה מערכת הפעלה?והאם זה צורך ידע בשפת…

עמוד

ברוכים הבאים לאתר תחרויות קודגורו! פורומים ראשי איך אני בונה מערכת הפעלה?והאם זה צורך ידע בשפת…

מוצגות 6 תגובות – 1 עד 6 (מתוך 6 סה״כ)
  • מאת
    תגובות
  • #77525
    NeoC
    משתתף

    איך אני בונה מערכת הפעלה? והאם זה צורך ידע בשפת אסמבלרדלפיפסקל(וכו´)? יש לי ידע בשפת C האם זה יעזור לי מאוד?

    תודה.

    #79733
    NeoC
    משתתף

    כותרת: האם צריך לעבוד בסביבת DOS כדי לעשות את זה או…
    האם צריך לעבוד בסביבת DOS כדי לעשות את זה או שצריך דרך קומפיילר(מהדר)?

    #79734
    Yoni
    משתתף

    כותרת: אם אתה רציני…
    זה תלוי אם אתה רוצה לבנות מערכת הפעלה אמיתית שאנשים ישתמשו בה למטרות אמיתיות או אם אתה רוצה לעשות את זה כדי לדעת איך.

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

    תוכל להוריד את קוד המקור של Linux מ-kernel.org (אבל לא תבין אותו בקלות רבה, בלי קשר לאם אתה יודע C טוב או לא – קשה מאוד להכנס למקור של פרוייקט מוכן, במיוחד בגודל הזה, ולהבין אותו בקלות).

    אם אתה רוצה לעשות את זה כדי לדעת איך (ניסוי הרבה יותר כיף לדעתי, ובטוח מצריך פחות זמן):
    כדאי לך לנסות לבנות רק "Loader" של מערכת הפעלה. כלומר, תוכנית שכתובה ב-Boot Sector של הכונן.
    רצוי מאד להשיג מחשב ישן עם כונן דיסקטים, ולכתוב את התוכנית ל-Boot Sector של דיסקט שממנו תבצע Boot במחשב הישן, כדי שתוכל לעשות נסיונות בקלות ובלי להפעיל מחדש כל פעם את המחשב עליו אתה עובד (כותב את הקוד).
    אתה תצטרך ללמוד על Loader-ים כאלה, איך הם עובדים, איך כותבים כאלה, וכו´.

    #79736
    YAXoft
    משתתף

    כותרת: אז ככה
    קודם כל, כדי לבנות מערכת הפעלה אתה לא יכול להשתמש במערכת הפעלה קיימות, ולכן גם לא בשפות תכנות של מערכות הפעלה קיימות.
    כלומר, שפת התכנות שאיננה מבוססת מערכת הפעלה היא… איך לא "אסמבלי".
    בנוסף, כדי שמערכת תהיה מערכת הפעלה, היא צריכה להפעיל את המחשב. לכן היא צריכה להיכתב לMBR (Master Boot Record). זה הבסיס (מאוד בסיס), וצריך לדעת הרבה מאוד כדי להתחיל.

    נ.ב. זה אחלה דרך לתרגל אסמבלי…

    #79757
    חסוי
    משתתף

    כותרת: ככה
    אם אתה רוצה לבנותת מערכת הפעלה אז תעשה 1 לחשוב 2 לחשוב ו3…
    לחשוב

    #79882

    כותרת: למה אי אפשר בC?
    אמנם צריך לכתוב לMBR, אבל המערכת הפעלה יכולה להיות בC… לינוקס כתוב בC לרוב (ווינדוז בטח גם.) אני חושב שגם התוכנות שלינוקס שמה בMBR כתובים בC, אבל ממילא תוכל להשתמש בכאלה קיימות. (קרי: אלה של לינוקס.)

    לגבי איך בונים מערכת הפעלה בפועל – אני לא יודע.

מוצגות 6 תגובות – 1 עד 6 (מתוך 6 סה״כ)
  • יש להתחבר למערכת על מנת להגיב.