Linus Torvalds ได้ประกาศเปิดตัว Linux 7.2 อย่างเป็นทางการผ่าน Linux Kernel Mailing List (LKML) ก่อนหน้านี้เมื่อประมาณสองเดือนที่ผ่านมา Linux 7.1 ได้เปิดตัวพร้อมกับการปรับปรุงระบบไฟล์ NTFS อีกครั้ง รวมถึงการเพิ่มประสิทธิภาพด้านความปลอดภัยหลายรายการ การเขียนโค้ดส่วนแกนหลักของตัวจับเวลาแบบความละเอียดสูง (high-resolution timer) ใหม่เพื่อให้ทำงานได้มีประสิทธิภาพมากขึ้น และการเปลี่ยนแปลงอื่น ๆ อีกมากมาย นอกจากนี้ยังยกเลิกการรองรับสถาปัตยกรรมย่อยรุ่นเก่าอย่าง 486 เช่น M486, M486SX และ ELAN
แต่ขณะนี้ Linux 7.2 ได้เปิดตัวอย่างเป็นทางการแล้ว เราจึงมาดูการเปลี่ยนแปลงที่น่าสนใจในเวอร์ชันนี้กัน
การเปลี่ยนแปลงที่น่าสนใจใน Linux 7.2
- การจัดตารางงานที่คำนึงถึงแคช (Cache-aware task scheduling) เพื่อเพิ่มประสิทธิภาพและลด Cache Misses – Linux 7.2 เพิ่มระบบ Load Balancing สำหรับงานที่คำนึงถึงแคช โดยมีเป้าหมายให้ Task ที่ใช้ข้อมูลร่วมกัน เช่น Thread จาก Process เดียวกัน ทำงานอยู่ภายในขอบเขตของ Last Level Cache เดียวกัน การปรับปรุง Locality ของแคชช่วยลดการเคลื่อนย้ายข้อมูลระหว่างแคช (Cache Bouncing) และ Cache Misses ส่งผลให้การเข้าถึงข้อมูลมีประสิทธิภาพมากขึ้น อ่านรายละเอียดเพิ่มเติมได้จาก บทความของ LWN
- Fair(er) GPU Scheduler – ตัวจัดตารางคิวงาน GPU ที่เป็นธรรมมากขึ้น – Process ที่ใช้ทรัพยากรของการ์ดกราฟิกจะส่ง Job เพื่อให้ GPU ประมวลผล และ GPU Scheduler จะเป็นผู้ตัดสินใจว่า Job ใดจะทำงานเป็นลำดับถัดไป ที่ผ่านมาอัลกอริทึมดังกล่าวใช้หลัก “First In, First Out” (FIFO) เป็นหลัก ส่วน GPU Scheduler แบบใหม่ที่เรียกว่า “Fair(er)” ได้รับแรงบันดาลใจจาก Linux CFS Task Scheduler รุ่นดั้งเดิม และช่วยเพิ่มความเป็นธรรม รวมถึงปรับปรุงการจัดตารางงานของ Client แบบ Interactive เมื่อทำงานพร้อมกับโหลด GPU ที่หนัก สามารถดูรายละเอียดเพิ่มเติมได้จาก บล็อกโพสต์บน Igalia
- USB4STREAM สำหรับการสตรีมข้อมูลผ่าน USB4 – Linux 7.2 เพิ่มการรองรับการสตรีมข้อมูลโดยตรงผ่านสาย ด้วยการส่ง Raw Packet จาก Host เครื่องหนึ่งไปยังอีกเครื่องผ่านสาย USB4/Thunderbolt โดยไดรเวอร์จะแสดงอุปกรณ์เป็น /dev/tbstreamX ที่ปลายทั้งสองด้านของการเชื่อมต่อ ทำให้สามารถใช้ช้การดำเนินการอ่านและเขียนไฟล์ทั่วไป เช่น read และ write ได้ ฟีเจอร์นี้มีประโยชน์ในกรณีที่ไม่สามารถใช้เครื่องมือเครือข่ายได้ หรือสำหรับแอปพลิเคชันเดิมอย่าง dd และ cat ที่ไม่รองรับ Socket
- Swap Table Phase IV – Linux 7.2 ยังมาพร้อมการปรับปรุง Swap Table อีกครั้ง โดย Phase IV เป็นการปรับปรุงระบบ Swap Table ที่รวมการจัดสรรและการเรียกเก็บบัญชีการใช้งาน Swap ของ Anonymous Memory และ shmem ในรูปแบบ Folio เข้าไว้ด้วยกัน พร้อมปรับปรุงการซิงโครไนซ์และรวมการจัดการ Metadata ให้เป็นระบบเดียวกัน นอกจากนี้ยังยกเลิกการใช้ Static Array และ Map ซึ่งช่วยเพิ่มประสิทธิภาพ และทำให้ Overhead ของ Static Metadata ลดลงจนเกือบเป็นศูนย์ ตัวอย่างเช่น การ Mount อุปกรณ์ Swap ขนาด 1TB สามารถประหยัดหน่วยความจำได้ประมาณ 512MB สามารถอ่านรายละเอียดเพิ่มเติมได้จาก LWN
นอกจากนี้ สามารถดูรายละเอียดการเปลี่ยนแปลงของสถาปัตยกรรม Arm, RISC-V และ MIPS ทั้งหมดได้จาก Linux 7.2 changelog ซึ่งจัดทำขึ้นจากข้อความของ Commit ต่าง ๆ ได้ด้วยคำสั่ง: git log v7.1..v7.2 --stat หรืออีกทางเลือกหนึ่งบนเว็บไซต์ Kernelnewbies มีรายการสรุปการเปลี่ยนแปลง (Changelog) ที่ละเอียดกว่ารวมอยู่ด้วย
แปลจากบทความ : Linux 7.2 release – Main changes, Arm, RISC_V, amd MIPS architecture

บรรณาธิการข่าวและบทความภาษาไทย CNX Software ได้มีความสนใจในด้านเทคโนโลยี โดยเฉพาะ Smart Home และ IoT

