הגיליון פורסם אסטרינאס 0.18.0 — מערכת הפעלה וקרנל ניסיוניים שנכתבו ב-Rust ומטרתם תאימות עם Linux ABI. הפרויקט מוצב כניסיון ליצור אלטרנטיבה "ברמת ייצור" Linux עם דגש על בטיחות זיכרון, ביצועים והפעלה תקינה Linuxסביבת משתמש. קוד Asterinas פתוח ומתארח ב GitHub, הרישיון העיקרי של הפרויקט הוא MPL 2.0. גרסה Asterinas 0.18.0 שוחררה ב-4 ביוני 2026., וב-9 ביוני הוא הפנה את תשומת הלב לכך מפורוניקס.
המוקד העיקרי של הגרסה הוא הכנת Asterinas לשימוש כמערכת הפעלה אורחת עבור מערכות מבוססות מכונות וירטואליות. מכולות קאטה и מכולות סודיותכדי להשיג זאת, נוספו לליבה מנגנונים חסרים ברמה נמוכה: מרחבי שמות, cgroups, virtio-fs, virtio-rng, ו-vsock שעוצב מחדש לחילופי נתונים בין מערכות המארח והאורח.
רשימת השינויים העיקריים:
מתכוננים להשקה במכולות קאטה ובמכולות סודיות.
Asterinas 0.18 עושה צעד חשוב לקראת הפעלה כמערכת הפעלה אורחת בתוך מכונות וירטואליות מבודדות עם קונטיינרים. זה חשוב עבור תרחישים שבהם קונטיינרים פועלים לא ישירות על ליבת המארח, אלא בתוך מכונה וירטואלית נפרדת, כולל בסביבות מחשוב סודיות.תמיכה במרחבי שמות.
הליבה כוללת כעת מרחב שמות IPC ומרחב שמות cgroup, כמו גם nsfs עם ייצוג מרחב שמות דרך /proc/[pid]/ns. זה מקרב את Asterinas למודל בידוד התהליכים בו משתמש Linux-מכולות.תמיכה ראשונית עבור cgroups.
יושמו תת-בקר PID ותמיכה חלקית בתת-בקר CPU. באופן ספציפי, נוספו סטטיסטיקות cpu.stat וקבצי limit cpu.weight ו- cpu.max. זה עדיין לא יישום מלא של מנגנון cgroups כולו, אך הוא כבר מספק את הבסיס הדרוש לתרחישי קונטיינר.virtio-fs לשיתוף מערכת קבצים עם מארח.
נוספה תמיכה ב-virtio-fs, המאפשרת למערכת האורחת להשתמש במערכת הקבצים המסופקת על ידי המארח. עבור מכולות VM, זהו מנגנון העברת נתונים מרכזי ללא פתרונות מסורבלים.virtio-rng ו- /dev/hwrng.
נוסף virtio-rng עם ייצוא אנטרופיה חומרתית דרך /dev/hwrng. זה הכרחי להפעלה תקינה של פעולות קריפטוגרפיות ומחוללי מספרים אקראיים בתוך מערכת ההפעלה האורחת.גרב ממוחזרת.
vsock, מנגנון התקשורת בין המכונות הווירטואליות המארחות למכונות האורחות, נכתב מחדש לחלוטין. בהקשר של Kata Containers ו- Confidential Containers, זה חשוב עבור ערוצי בקרה, סוכנים ואינטראקציות שירות בין המכונה הווירטואלית לסביבת ההפעלה.הופיעה תמיכה בניפוי שגיאות ב-Ptrace ובמרחב המשתמש.
קריאת המערכת ptrace והפעולות הבסיסיות PTRACE_SETOPTIONS, PTRACE_SYSCALL, PTRACE_PEEK ו-PTRACE_POKE יושמו. זה מאפשר לך להפעיל כלי ניפוי שגיאות מוכרים כמו GDB ו-strace על Asterinas. תיעוד לשימוש מאומת ובדיקות CI נוסף עבור כלים אלה.דרייבר NVMe חדש.
מנהל התקן NVMe נוסף לשכבת הבלוקים. זה מרחיב את יכולות Asterinas לעבודה עם התקני אחסון מודרניים ומקרב את המערכת לשימוש מעשי על חומרת שרת אמיתית ווירטואלית כאחד.דרייבר EXT2 שנכתב מחדש לחלוטין.
מערכת הקבצים EXT2 יושמה מחדש. המפתחים מייחסים זאת למודרניזציה כוללת של מחסנית האחסון: תת-מערכת הקבצים אמורה להפוך אמינה יותר ומתאימה יותר להפעלת סביבות משתמש אמיתיות.שינויים ב-VFS ובמטמון העמוד.
ה-VFS עודכן עם מנגנון אימות מחדש של Dentry, יישום מטמון עמודים שעבר עיבוד מחדש, יישום pivot_root, תמיכה ב-O_TMPFILE עבור open/openat, ותיקון באג מטמון עמודים שעלול להוביל לדליפת זיכרון לא מאותחל במרחב המשתמש.סיומת procfs.
נוספו /proc/mounts, /proc/[pid]/auxv, /proc/[tid], ערכים נוספים ב-/proc/[pid]/maps ו-mountstats. זה משפר את התאימות עם Linux-יישומים וכלי אבחון המצפים למבנה /proc המוכר.שיפורי רשת.
בנוסף ל-vsock שנכתב מחדש, ישנה תמיכה ראשונית ב-IPv6, תיקונים למימוש UDP ובדיקת הרשאות בעת קשירה לפורטים בעלי זכויות: קשירה לפורטים כאלה נדחתה כעת ללא CAP_NET_BIND_SERVICE.מנגנון יכולות ומסגרת LSM ראשונית.
הגרסה כוללת הטמעה של יכולות, תמיכה בקבוצות גבולות של יכולות, תיקונים לקריאות מערכת הקשורות לאישורים ומסגרת LSM ראשונית. זהו חלק מהעבודה לקרב את מודל האבטחה של Asterinas ל... Linux.שיפורי PCI, TTY וקונסולה.
שיפור בזיהוי התקני PCI, תוספת תמיכה ב-PCI ECAM ב-x86, ויישום תמיכה במספר TTYs, קונסולת NS16550A UART, /dev/ttyS0, והפרמטר console=ttyS0. גם תמיכה במקלדת שופרה.הרחבת Asterinas NixOS.
Asterinas NixOS בודק כעת מעל 100 חבילות פופולריות, כולל Codex, QEMU ו-Firefox. תמיכה ב-ARCH_GET_GS ו-ARCH_SET_GS נוספה במיוחד עבור Firefox.ערכות בדיקה חדשות.
הפרויקט משולב Linux kselftest, xfstests, בדיקות סטנדרטיות של Go, Python ו-JDK, כמו גם בדיקות QEMU עבור יישומים וירטואליים. זה חשוב כסימן להתבגרות הפרויקט: Asterinas נבדקת יותר ויותר על מערכות בעולם האמיתי. Linux-מטען.שינויים ב-OSTD וב-OSDK.
ב-OSTD, crate log הוחלף בממשק API לרישום מותאם אישית, ממשק ה-DMA API עובד מחדש, נוספה מסגרת לפעולות העתקת זיכרון מסוג typed, ו-Pod עבר שיפוץ לשימוש ב-zerocopy. סביבת Docker על ARM/aarch64 נוספה לצורך פיתוח.עדכון תיעוד.
ספר Asterinas עודכן עם הנחיות קידוד, ניתוח תקינות עבור OSTD ותיעוד עבור Kata Containers ו- Confidential Containers. זה מדגיש את תרחיש הווירטואליזציה של המכולות כמוקד מרכזי של הפרויקט.
לא ניתן להתייחס לאסטרינאס 0.18 כתחליף Linux לשימוש יומיומי, אך הגרסה מקדמת משמעותית את הפרויקט לעבר תרחישים מעשיים של שרתים ומכולות. שלושה תחומים חשובים במיוחד: תאימות עם Linux-תוכניות, תמיכה במנגנוני בידוד ותפעול בסביבות מכולות מבוססות מכונות וירטואליות.
מקור: linux.org.ru
