Linux 6.7 כבר שוחרר ואלה החדשות שלו

Tux, הקמע של ליבת לינוקס

ליבת לינוקס היא עמוד השדרה של מערכות ההפעלה לינוקס (OS), והיא הממשק הבסיסי בין החומרה של המחשב לתהליכים שלו.

לאחרונה לינוס טורבלדס חשף את שחרור גרסת הליבה החדשה של לינוקס 6.7, המוצג לאחר חודשיים של פיתוח ובין השינויים הבולטים ביותר הוא שילוב מערכת הקבצים Bcachefs, הפסקת התמיכה בארכיטקטורת Itanium, היכולת של Nouveau לעבוד עם קושחת GSP-R, תמיכה בהצפנת TLS ב- NVMe-TCP, היכולת להשתמש בחריגים ב-BPF, בין היתר.

הגרסה החדשה של ליבת לינוקס 6.7 הוא מורכב מ-15291 תיקונים וכ-45% מכל השינויים שהוצגו קשורים למנהלי התקנים, 14% מהשינויים קשורים לעדכון קוד ספציפי לארכיטקטורות חומרה, 13% קשורים לערימת הרשת, 5% קשורים למערכות קבצים ו-3% קשורים תת-מערכות ליבה פנימיות.

גודל התיקון הוא 72 MB (השינויים השפיעו על 13.467 קבצים, נוספו 906.147 שורות קוד ו-341.048 שורות הוסרו).

החידושים העיקריים של גרסת הלינוקס 6.7

אינטגרציה של מערכת הקבצים של Bcachefs

Linux 6.7 מאמצת את קוד מערכת הקבצים Bcachefs, המנסה להשיג את הביצועים, האמינות והסקלביליות של XFS, בשילוב עם אלמנטים של הפונקציונליות המתקדמת שנמצאת ב-Btrfs ו-ZFS.

Bcachefs תומך בתכונות כגון הכללת ריבוי מכשירים על מחיצה אחת, עיצובים של כוננים מרובי-שכבות (השכבה התחתונה עם נתונים בשימוש תדיר המבוסס על כונני SSD מהירים והשכבה העליונה עם נתונים מכוננים קשיחים פחות בשימוש), שכפול (RAID 1/10), שמירה במטמון, דחיסת נתונים שקופה (מצבי LZ4, gzip ו-ZSTD), חתכי מצבים, אימות תקינות באמצעות סכומי בדיקה, יכולת לאחסן קודי תיקון שגיאות של Reed-Solomon (RAID 5/6), אחסון מידע בצורה מוצפנת (משתמשים ב-ChaCha20 ו-Poly1305) . מבחינת ביצועים, Bcachefs מקדימה את Btrfs ומערכות קבצים אחרות מבוסס על מנגנון העתק-על-כתיבה ומדגים מהירות פעולה קרובה ל-Ext4 ו-XFS.

שיפורים ב-Btrfs

על לינוקס 6.7 מצב מכסה מפושט יושם עבור Btrfs מה שמאפשר ביצועים טובים יותר על ידי מעקב אחר הרחבות רק במחיצת המשנה שבה הם נוצרו, אשר מפשט מאוד חישובים ומשפר ביצועים, אבל זה לא מאפשר שיתוף הרחבות בין מחיצות משנה מרובות. בנוסף, נוסף ל-Btrfs מבנה חדש של עץ פסים, המתאים למיפוי הרחבה לוגי במצבים בהם המיפוי הפיזי אינו תואם בין המכשירים. המרקם משמש כיום ביישומי RAID0 ו-RAID1 עבור התקני בלוק אזורי.

הפסקת התמיכה בארכיטקטורת Itanium (ia64)

ה תמיכה בארכיטקטורת ia64 המשמשת במעבדי Intel Itanium, מה זההושענו לחלוטין בשנת 2021. אינטל הציגה מעבדי Itanium בשנת 2001, אך ארכיטקטורת ia64 לא הצליחה להתחרות ב-AMD64, בעיקר בשל הביצועים הגבוהים יותר של AMD64 והמעבר החלק יותר ממעבדי 86-bit x32.  לינוס טורוואלדס הביע את נכונותו להחזיר תמיכה ia64 לקרנל, אבל כןרק אם יש מתחזק שיכול להפגין איכות גבוהה של תמיכה עבור פלטפורמה זו מחוץ לגרעין הראשי למשך שנה לפחות.

הגירה רציפה של שינויים מסניף Rust-for-Linux

הגרסה החדשה עוברת לשימוש בגרסת Rust 1.73 ומציעה סט ווים לעבודה עם תורי עבודה.

שיפורים ביישום תורי FIFO 

בגרסה החדשה הזו של לינוקס 6.7 ה יישום מנגנון FIFO קל משקל חיבורים בודדים שדורשים ספינלוק רק ליציאה מהתור בהקשר תהליכי ומוותרים עליו לתוספות אטומיות לתור בכל הקשר. בנוסף, נוסף מאגר עגול של objpool עם יישום ניתן להרחבה של תור בעל ביצועים גבוהים להקצאה והחזרת אובייקטים.

תמיכה בהצפנת TLS עבור NVMe-TCP

על לינוקס 6.7 מנהל ההתקן של NVMe-TCP (מה שמאפשר לך לגשת לכונני NVMe דרך הרשת), נוספה תמיכה בהצפנת ערוץ העברת הנתונים באמצעות TLS (באמצעות KTLS ותהליך רקע) ב-tlshd userspace למשא ומתן על חיבור.

ביצועי מתזמן חבילות משופרים

ביצועי מתזמן חבילות fq ממוטבים, מה שאפשר להגדיל את הביצועים ב-5% בעומסים כבדים במבחן tcp_rr (TCP Request/Response) וב-13% עם זרימה בלתי מוגבלת של מנות UDP.

אימוץ אפשרות אימות TCP

נוספה תמיכה לערימת ה-TCP עבור תוסף TCP-AO המאפשר בדיקת כותרות TCP באמצעות קודי MAC, שימוש באלגוריתמים מודרניים יותר של HMAC-SHA1 ו-CMAC-AES-128 במקום אפשרות ה-TCP-MD5 הזמינה בעבר המבוססת על אלגוריתם MD5 מדור קודם. .

של שינויים אחרים הבולטים:

  • הגדרות חדשות נוספו «cpuset.cpus.exclusive" ו-"cpuset.cpus.exclusive. יָעִיל» ל-cpuset עבור כריכה בלעדית למעבד.
  • תת-המערכת BPF מיישמת תמיכה בחריגים, המעובדים כיציאת חירום מתוכנית BPF עם יכולת לפרוס בבטחה מחסנית מסגרות. בנוסף, תוכניות BPF מאפשרות שימוש במצביעי kptr בקשר עם ה-CPU.
  • עבור ארכיטקטורות ARM32 ו-S390x, נוספה תמיכה בערכה הנוכחית (cpuv4) של הוראות BPF.
  • עבור ארכיטקטורת RISC-V, ניתן להשתמש במצב בדיקת Shadow-Call Stack הזמין ב-Clang 17, שנועד להגן מפני החלפת כתובת ההחזרה של פונקציה במקרה של הצפת מאגר על הערימה.
  • מצב סריקת דפי זיכרון אינטליגנטי חדש נוסף למנגנון מיזוג דפי זיכרון זהים (
  • AppArmor הוסיפה את היכולת לשלוט בגישה למנגנון io_uring וליצור מרחבי שמות משתמשים, מה שמאפשר לך לאפשר באופן סלקטיבי גישה ליכולות אלו רק לתהליכים מסוימים.
  • הוסף VM Certification API כדי לאמת את תקינות תהליך ההפעלה של VM.
  • מערכות LoongArch תומכות בווירטואליזציה באמצעות היפרוויזר KVM.
  • נוספה תמיכה ראשונית עבור קושחת GSP-RM למודול ליבת נובו, המשמש ב-NVIDIA RTX 20+ GPU להעברת פעולות אתחול ובקרה מה-GPU לצד של מיקרו-בקר GSP

סוף סוף אם אתה מעוניין לדעת יותר על זה, אתה יכול לבדוק את הפרטים בקישור הבא.