หลังจากสองเดือนของการพัฒนา Linus Torvalds เปิดตัว ไม่กี่วันที่ผ่านมาการเปิดตัวของเป็นลินุกซ์เคอร์เนลเวอร์ชัน 5.17 ใหม่
ท่ามกลางการเปลี่ยนแปลงที่โดดเด่นที่สุด เน้นระบบการจัดการประสิทธิภาพใหม่สำหรับ โปรเซสเซอร์ AMD รองรับโปรแกรม BPF แล็ปท็อปที่คอมไพล์แล้ว การเปลี่ยนจากตัวสร้างตัวเลขสุ่มหลอกไปเป็นอัลกอริธึม BLAKE2s แบ็กเอนด์ fscache ใหม่ เพื่อแคชระบบไฟล์เครือข่าย เหนือสิ่งอื่นใด
เวอร์ชันใหม่ได้รับการแก้ไข 14203 จากนักพัฒนาในปี 1995 ขนาดของแพตช์คือ 37 MB (การเปลี่ยนแปลงที่ได้รับผลกระทบ 11366 ไฟล์, เพิ่มโค้ด 506043 บรรทัด, 250954 บรรทัดถูกลบ)
ความแปลกใหม่หลักของเคอร์เนล Linux 5.17
ในเวอร์ชันใหม่นี้ ความเป็นไปได้ของการแมปซ้อนของ ID ผู้ใช้ของระบบไฟล์ที่เมานต์ถูกนำไปใช้ซึ่งใช้ในการแมปไฟล์ของผู้ใช้บางรายในพาร์ติชันภายนอกที่เมาท์กับผู้ใช้รายอื่นบนระบบปัจจุบัน คุณลักษณะที่เพิ่มเข้ามานี้ทำให้คุณสามารถใช้การแมปแบบเรียกซ้ำบนระบบไฟล์ที่มีการใช้การแมปแล้ว
ระบบย่อย fscache ถูกเขียนใหม่ทั้งหมด. การดำเนินการใหม่ โดดเด่นด้วยการลดความซับซ้อนของรหัส และการแทนที่การเขียนโปรแกรมที่ซับซ้อนและการดำเนินการติดตามสถานะอ็อบเจ็กต์ด้วยกลไกที่ง่ายกว่า รองรับ fscache ใหม่ในระบบไฟล์ CIFS
Btrfs ได้รับการปรับให้เหมาะสมสำหรับการลงทะเบียนและการดำเนินการ fsync สำหรับไดเร็กทอรีขนาดใหญ่ ดำเนินการโดยการคัดลอกเฉพาะคีย์ดัชนีและลดจำนวนเมตาดาต้าที่บันทึกไว้ รวมถึงการจัดทำดัชนีและการค้นหาโดยรองรับขนาดบันทึกพื้นที่ว่าง ซึ่ง ลดเวลาแฝงและค้นหาเวลาประมาณ 30%ซึ่งอนุญาตให้การดำเนินการจัดเรียงข้อมูลถูกขัดจังหวะ
Ext4 ถูกย้ายไปยังการเมานต์ใหม่ API ซึ่งแยกขั้นตอนของการแยกวิเคราะห์ตัวเลือกการเมานต์และการกำหนดค่า superblock รวมถึงการสนับสนุนสำหรับตัวเลือกการเมานต์ lazytime และ nolazytime ถูกลบออกซึ่งถูกเพิ่มเป็นการเปลี่ยนแปลงชั่วคราวเพื่อลดความยุ่งยากในการเปลี่ยนจาก util-linux เป็นการใช้แฟล็ก MS_LAZYTIME และ เพิ่มการรองรับการตั้งค่าและการอ่านแท็กใน FS (ioctl FS_IOC_GETFSLABEL และ FS_IOC_SETFSLABEL)
ตัวควบคุม เพิ่ม amd-pstate เพื่อให้การควบคุมความถี่แบบไดนามิก เพื่อประสิทธิภาพสูงสุด ไดรเวอร์รองรับซีพียู AMD และ APU ใหม่ รวมถึงชิปรุ่น Zen 2 และ Zen 3 บางรุ่น และได้รับการพัฒนาร่วมกับ Valve เพื่อปรับปรุงประสิทธิภาพการจัดการพลังงาน สำหรับการสลับความถี่แบบปรับได้นั้น จะใช้กลไก CPPC (Collaborative Processor Performance Control) ซึ่งช่วยให้คุณสามารถเปลี่ยนตัวบ่งชี้ได้แม่นยำยิ่งขึ้น (ไม่จำกัดเพียงสามระดับประสิทธิภาพ) และตอบสนองต่อการเปลี่ยนแปลงในสถานะได้รวดเร็วกว่าสถานะ P ที่ใช้ ACPI ก่อนหน้านี้ ไดรเวอร์ (ความถี่ซีพียู).
ในทางกลับกันก็เน้นว่า มีการเสนอการใช้งานที่ปรับปรุงแล้ว จากเครื่องกำเนิดเลขสุ่มเทียม รพ. ซึ่งรับผิดชอบการทำงานของอุปกรณ์ /dev/random และ /dev/urandom ซึ่งโดดเด่นสำหรับการเปลี่ยนไปใช้ฟังก์ชันแฮช BLAKE2s แทน SHA1 สำหรับการดำเนินการผสมเอนโทรปี การเปลี่ยนแปลงนี้ทำให้สามารถเพิ่มความปลอดภัยให้กับตัวสร้างตัวเลขสุ่มหลอกโดยการกำจัดอัลกอริธึม SHA1 ที่ยุ่งยากและลบการเขียนทับเวกเตอร์การเริ่มต้น RNG เนื่องจากอัลกอริธึม BLAKE2 ล้ำหน้ากว่า SHA1 ในแง่ของประสิทธิภาพ การใช้งานก็ส่งผลดีต่อประสิทธิภาพเช่นกัน
เพิ่มแล้ว การป้องกันช่องโหว่ของโปรเซสเซอร์ที่เกิดจากการดำเนินการเก็งกำไร ของคำสั่งหลังการดำเนินการกระโดดไปข้างหน้าโดยไม่มีเงื่อนไข ปัญหาเกิดขึ้นจากการประมวลผลคำสั่งเสียก่อนทันทีหลังจากคำสั่งกระโดดในหน่วยความจำ (SLS, การเก็งกำไรแบบเส้นตรง) การเปิดใช้งานการรักษาความปลอดภัยจำเป็นต้องมีการสร้างด้วย GCC เวอร์ชัน 12 ซึ่งอยู่ในระหว่างการทดสอบ
ระบบย่อย DRM (ผู้จัดการการแสดงผลโดยตรง) และไดรเวอร์ i915 ได้เพิ่มการรองรับหน้าจอเพื่อแสดงข้อมูลที่ละเอียดอ่อน ตัวอย่างเช่น แล็ปท็อปบางรุ่นมีหน้าจอที่มีโหมด Confidential View ในตัว ทำให้มองจากภายนอกได้ยาก การเปลี่ยนแปลงที่เพิ่มเข้ามาทำให้คุณสามารถเสียบไดรเวอร์เฉพาะสำหรับหน้าจอดังกล่าว และควบคุมโหมดการท่องเว็บแบบส่วนตัวโดยการตั้งค่าคุณสมบัติในไดรเวอร์ KMS ปกติ
ตัวควบคุม amdgpu รองรับเทคโนโลยีการดีบัก STB (Smart Trace Buffer) สำหรับ AMD GPU ทั้งหมดที่รองรับ STB อำนวยความสะดวกในการวิเคราะห์ความล้มเหลวและระบุสาเหตุของปัญหาโดยจัดเก็บข้อมูลบัฟเฟอร์พิเศษเกี่ยวกับฟังก์ชันที่ดำเนินการก่อนเกิดความล้มเหลวครั้งล่าสุด
การเปลี่ยนแปลงอื่น ๆ ที่โดดเด่น:
- ไดรเวอร์ i915 เพิ่มการรองรับชิป Intel Raptor Lake S และเปิดใช้งานการรองรับกราฟิก Intel Alder Lake P เป็นค่าเริ่มต้น
- ไดรเวอร์ fbcon/fbdev ส่งคืนการรองรับการเลื่อนแบบเร่งด้วยฮาร์ดแวร์ในคอนโซล
- การรวมการเปลี่ยนแปลงอย่างต่อเนื่องเพื่อรองรับชิป Apple M1
- ใช้ความสามารถในการใช้ไดรเวอร์ simpledrm กับระบบที่มีชิป Apple M1 เพื่อสร้างเอาต์พุตผ่านเฟรมบัฟเฟอร์ที่เฟิร์มแวร์ให้มา
- ตัวจัดการ bpf_loop() ในระบบย่อย eBPF ซึ่งให้ทางเลือกอื่นในการจัดระเบียบลูปในโปรแกรม eBPF ให้ผู้ตรวจสอบยืนยันได้เร็วและง่ายขึ้น
ถ้าคุณเป็น สนใจที่จะทราบข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้คุณสามารถตรวจสอบรายละเอียด ในลิงค์ต่อไปนี้.