Whatsup - לינוקס, תוכנה חופשית וקוד פתוח בעברית

מילון מונחים/מושגים - X.org, Wayland, Mir וחברים

אמיר אלדור - 07/07/2013 - 23:13
נושא ההודעה: X.org, Wayland, Mir וחברים
אני קצת ממשיך את השאלה של "מה זה Xorg" בפוסט הזה: http://whatsup.co.il/index.php?name=PNphpBB2&file=viewtopic&t=51162

ממה שאני מנסה להבין, ה־Display server נותן API לתוכנות לצייר גרפיקה על המסך? ואז אני יכול לתכנת תוכנה שמשתמשת למשל בכל מיני פונקציות של X כדי לצייר ציורים קטנים ויפים?

ואז בא GTK וחבריו, שנותנים API משלהם שהוא עצמו קורא לפונקציות של X בלינוקס או למה-שזה-לא-יהיה בחלונות כדי לצייר כפתורים יפים. תוכנות בנויות על GTK או Qt או לא משנה, במקום לצייר ישירות ל־X וכך מפשטות בהרבה כל מיני תהליכים.

השאלות שצצות לי:
פתאום באים Wayland או Mir, אז צריך לכתוב אימפלנמטציה חדשה של GTK שתשתמש בפונקציות שבאות עם ה־Display server האלה?

כל Display server צריך לדעת לדבר עם כרטיסי הגרפיקה ומכאן שצריך מודולים/דרייברים מיצרני כרטיסי הגרפיקה למינהם? דרייבר ל־X, ל־Wayland, וכו'?
elcuco - 07/07/2013 - 23:32
נושא ההודעה:
הבנת הכל כן. בגדול אתה צודק.
אמיר אלדור - 07/07/2013 - 23:48
נושא ההודעה:
אוקיי תודה.
May the Gzoo be with you.
Anonymous - 07/07/2013 - 23:50
נושא ההודעה:
תעשה טובה, תערוך את ההודעה שלך ותשנה את המילה 'אימפלנמטציה' ל'יישום'. זה קצת לא נוח לעין...

GTK+ (כנראה שגם Qt) עושה קצת מעבר ליישום של API נוח על X. הם מביאים למשתמש (המתכנת) API ליצירת ממשק גרפי שעוּבד למספר מערכות (שרתי תצוגה): Xorg, win32, quartz, wayland ו־brodway.

כלומר, המתכנת כותב קוד אחד, שיכול לעבור הידור ולרוץ על מערכת שמשתמשת ב־Xorg כמנהל התצוגה, על מערכת Windows וכן הלאה.
אם תכתוב ישירות ל־X, המערכת שלך לא תעבוד על Windows או על מחשבים של אפל, ומחר כל מערכות הלינוקס יעברו ל־Wayland והיישום שלך כבר לא יהיה שמיש,
Anonymous - 08/07/2013 - 06:18
נושא ההודעה:
'יישום'? לא 'מימוש'?
Anonymous - 08/07/2013 - 11:16
נושא ההודעה:
יישום. מימוש אפשרי, אבל בהחלט פחות נכון.
Anonymous - 08/07/2013 - 11:47
נושא ההודעה:
ווילנד פועל בדרך שונה מהותית מ-X (לפחות מהדרך הקאלסית). X מחצין פקודות רינדור שהלקוח יכול לקרוא להן דרך סוקט, למעט במקרה של "direct rendering", הלקוח אינו צריך ואינו מקבל גישה ל"ציור" שהוא מייצר.
בווילנד השרת מחצין ללקוח באפרים המייצגים מקטעי תצוגה שלמים (בהתאמה לחלון או חלק של חלון, מן הסתם) והלקוח מבצע את הציור עליהם באמצעות ספריות רינדור (שלרובן יש כבר גישה מובנית מספריות UI כמו QT או GTK).

מכאן שישנן יכולות של X שאינן אפשריות בווילנד (בעיקר כל מה שקשור עם רינדור מרחוק), יש לומר למען ההגינות שהשימוש ברובן לא נפוץ על שולחן העבודה ועוד פחות מזה במכשירים ניידים.
Anonymous - 08/07/2013 - 15:10
נושא ההודעה:
ל־X יש שם קוד. לווילנד יש שם כמעט סתמי למדי (סתם שם של עיירה. במקום הגיבור הנורדי, עם הקשר האפשרי לסימפסונים). למיר יש שם נהדר, שמראה עד כמה היא חלק מאובונטו ויוניטי.
כל הזמנים הם GMT + 2 שעות