SerenityOS – מערכת ההפעלה הבאה – שלא תהיה

לפני 4 שנים מישהו בשם אנדראס קלינג התחיל לבנות מערכת הפעלה חדשה. יש סיפור מאחורי זה, אבל לא הכי מעניין אותי. מה כן מעניין – יש מערכת הפעלה חופשית שלמה חדשה, שגדלה בימינו אלו. זאת SerenityOS.

מה שמעניין פה, זה שבנו ממשק דמוי Windows 98, 2000 על בסיס קרנל פוסיקס (כמעט) תקני – אבל הכל עם twist מודרני. למשל, כל ה־man pages כתובים ב־markdown. כל קבצי ה־sys של המערכת (כן גם שם יש sysfs) מחזירים json. מה שיותר מעניין אותי – זה שחלק גדול מהמערכת מפותח לייב- זה אומר, אנשים מצלמים את עצמם מקודדים ומוסיפים פיצ’רים או מתקנים באגים (בעיקר אנדראס עושה את זה, אבל גם לינוקס וגם פיליפ יש להם ערוצים).

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

  • ליבה חדשה, שנכתבה מאפס. לא עוד מעא מערכת הפעלה שהיא מחזור של כלי GNU מעל לינוקס, עם ממשק משתמש חדש.
  • הקוד כולו כתוב ב־C++‎ מודרני. כמה מודרני? C++17 וכמה נגיעות של 20. בגדול – משתמשים ב־toolchain שמשמתש ב־gcc הכי חדש. חלק ממערכת הבנייה של מערכת הפעלה עושה bootstrap ל־cross compiler.
  • המערכת בגדול, לא משתמשת בשום ספרייה חיצונית – 0 הכל home baked. אין 3rd parties והכל ב־mono repo.
  • מימוש מחדש של libc (מצחיק, ממומש בחלקו ב־C++‎).
  • הקרנל תומך במערכת אינטל 32ביט וגם 64, כולל תמיכה ב־SMP. התחילו לעבוד על תמיכה ב־ARM64 (כן, רספברי פאי!)
  • מימוש מודרני ל־stl – וממש מורחב. ה־core libraries כוללים תמיכה ב־json או דברים בסיסיים בימינו כמו קידוד base64. כן, וגם.. גם sockets ו־https. (זה כולל מימוש של TLS, לא כל ה־ciphers, אבל – תמיד אפשר לעשות pr ולממש את זה).
  • ספריות הפיתוח זמינות גם ללינוקס, בעזרת רכיב שנקרא lagom.
  • מסוף ומעטפת לא רעים (המעטפת גם מתקמפלת ללינוקס).
  • שרת גרפי בסיסי – תומך בקומפזיציה, אבל ללא האצת חומרה עוד. הוא מרגיש מאוד איטי…
  • toolkit שממומש ב־C++‎ שמאוד מזכיר את Qt. אבל ללא MOC (בנוי מעל AK ולא STL… אז בעצם לא שונה בהרבה מ־Qt).
  • מערכת מולטימדיה שכוללת תמיכה ב־flac, mp3 וגם התחלה של VP9 (חדש מהחודש האחרון!).
  • תוכנה למציאת זליגת זכרון דמויית valgrind.
  • תוכנת ציור שיכולה להתחרות ב־Paint.NET… ומתחילה לאט לאט להוסיף יכולות שיש ל־Photosop/Krita/GIMP.
  • סביבת פיתוח… עורך טקסט… עורך markdown
  • משחקים מקוריים (סוליטייר וכאלו… לא משהו משוגע)
  • מערכת ports ממש חזקה.
  • ובטח עוד….
  • (וגם דפדפן ומנוע JavaScript שכתובים מאפס… אליהם ארחיב בקרוב).

הינה סקירה של מערכת ההפעלה: https://www.youtube.com/watch?v=_QAsHkEKvN0

למה הסיומת של הכותרת הזאת? כי כל המערכת הפעלה עובדת בעיקר ב־ qemu. חסר לה מלא דרייברים… והיא מפותחת בשביל הכיף וקיימת עבור מפתחים בלבד ולא משתמשים – נכון לכרגע. למרות ההתקדמות המדהימה של המיזם הזה, אני לא חושב שהיא תעבוד על מחשב נורמאלי בזמן הקרוב. אני ארחיב על זה גם בפוסט עתידי.

Share Button

One thought on “SerenityOS – מערכת ההפעלה הבאה – שלא תהיה”

להגיב על ברוך לבטל

האימייל לא יוצג באתר. שדות החובה מסומנים *