אל דאגה, לא הפכתי לקונספירטור. אני לא מדבר כאן על אילומינטי, אלא על משפחת מערכות ההפעלה מבוססות Unix.
אז מהי מערכת ההפעלה הנפוצה ביותר בעולם? התשובה האינסטינקטיבית של רובנו תהיה Windows. מי שקצת יותר מכיר, יגיד לינוקס, בגלל עולם השרתים ו-Android.
למעשה, לינוקס היא רק מערכת הפעלה אחת מתוך “משפחה” שלמה - משפחת UNIX. אז מהי משפחת יוניקס, ומי הם בניה?
חשוב, בתור התחלה, להבין שיש שלושה ענפים באילן היוחסים המשפחתי:
- Unix-based - מערכות שמבוססות ישירות על קוד יוניקס המקורי. מערכות מסחריות (כמו המערכת המקורית.) נמצאות בשימוש בעיקר בארגונים גדולים. דוגמאות: Solaris, AIX.
- Unix-like - מערכות דמויות יוניקס. מערכות אלו אינן מבוססות ישירות על יוניקס, אך מחקות את ההתנהגות שלה ותואמות לתקן POSIX (הסבר יבוא). דוגמאות: Linux, Redox.
- BSD - ראשי תיבות של Berkley Software Distrobutation. אוניברסיטת ברקלי קיבלה גישה לקוד המקור של יוניקס (המסחרי) ובנתה על בסיסו מערכת הפעלה משלה (כמו הפצת לינוקס). בהמשך, בשל בעיות משפטיות, אוניברסיטת ברקלי הסירה לחלוטין מהפרוייקט את כל החלקים הקניניים. למעשה, BSD ונגזרותיה היום הן מערכות Unix-like באופו מלא וההבדל הוא היסטורי בעיקרו. דוגמאות: FreeBSD, OpenBSD, ו… כמה מפתיע, גם מערכות ההפעלה של אפל (MacOS, iOS, וכו’).
אז איך הכל התחיל?
סביב שנות ה-70 פיתח קן תומפסון, מחברת מעבדות בל (AT&T) את מערכת ההפעלה יוניקס. בשל הגבלים עסקיים, לא יכלה החברה למכור את יוניקס וחילקה את קוד המקור לאוניברסיטאות, תחת תנאי רישיון. האוניברסיטאות פיתחו נגזרות שונות של הקוד, התפתחו גם מערכות “תואמות” כגון MINIX, שהרשימה את לינוס טורבאלדס עד כדי כך שהחליט לפתח מערכת דמויית יוניקס משלו, וקרא לה לינוקס, ומשם הכל היסטוריה.
עם התפתחות והתפצלות ענפי העץ, נוצר צורך בתקן אחיד - כזה שיאפשר לכתוב תוכנות שיתאימו לכל עולם היוניקס, וכך נולד תקן POSIX, שהעיקרון שעומד בבסיסו הוא “Write once, compile everywhere”. כלומר, כתוב את הקוד פעם אחת, והוא יהיה ניתן לקימפול (והרצה) על כל מערכת בעולם היוניקס.
חשוב לשים לב - העיקרון לא אומר שקובץ בינארי מקומפל יעבוד בכל יוניקס - מבני הקבצים הבינאריים שונים - אלא שניתן לקמפל מאותו קוד בינאריים עבור כל אחת מהמערכות. כמו כן, לפעמים כן נדרשים שינויים והתאמות, כמו במקרה של דסקטופ XFCE (שנכתב עבור לינוקס) בפוסט שלי עבור FreeBSD, אבל העיקרון ברור ומיושם בשטח.
ומדוע טענתי שזו המשפחה ששולטת בעולם?
בואו נסתכל:
בעולם ה-PC, אין ספק שאחוזי היוניקס זניחים. Windows דומיננטי ללא צל של ספק. אבל מנגד, מחשבי ה-Mac של אפל נותנים פייט רציני - כמו שאמרנו, MacOS מבוססת על BSD (למעשה, על Darwin, שמבוססת על BSD.)
בעולם המובייל, אנדרואיד היא הפצת לינוקס (אומנם ללא GNU), ו-iOS, בדומה לMacOS, מבוססת BSD. המצב גם זהה במערכות ההפעלה של גוגל ואפל לשעונים חכמים, Android Wear ו WatchOS.
בעולם השרתים, לינוקס דומיננטית. בפער עצום. אפילו מייקרוסופט עצמה פיתחה הפצת לינוקס לשרתים (Azure Linux).
בעולמות הראוטרים והIoT, מערכות BSD סופר פופולאריות.
אפילו חברת Huawei, ענקית הטק הסינית שנאלצה לפתח מערכת הפעלה משל עצמה בעקבות העיצומים האמריקאיים, פיתחה מערכת Unix-Like. מערכת HarmonyOS התבססה בתחילה על אנדרואיד, אך בגרסא 5 שלה היא כבר עצמאית לחלוטין - ותואמת Unix.
בקיצור, חוץ מאיזה חברה מוזרה ברדמונד שמתעקשת לפתח מערכת הפעלה עצמאית, כמעט כל החברות בעולם משתמשות ביוניקס…