Linux kernel 5.0 เปิดตัวแล้ว

การเพิ่มจำนวนเวอร์ชันหลักเป็น 5 ไม่ได้หมายถึงการเปลี่ยนแปลงที่สำคัญหรือการแยกย่อยความเข้ากันได้ มันช่วยให้ Linus Torvalds ที่รักของเรารักษาความสงบของจิตใจได้ ด้านล่างนี้คือรายการการเปลี่ยนแปลงและนวัตกรรมบางอย่าง

แกนหลัก:

  • ตัวกำหนดเวลากระบวนการ CFS บนโปรเซสเซอร์แบบอสมมาตรเช่น ARM ทำงานแตกต่างออกไป โดยจะโหลดคอร์ที่ใช้พลังงานต่ำและประหยัดพลังงานก่อน
  • คุณสามารถรับการแจ้งเตือนเมื่อมีการเปิดไฟล์เพื่อดำเนินการผ่าน API การติดตามเหตุการณ์ไฟล์ fanotify
  • ตัวควบคุม cpuset ได้รับการรวมเข้าด้วยกัน ซึ่งสามารถใช้เพื่อจำกัดกลุ่มของกระบวนการตามการใช้ CPU และโหนด NUMA
  • รวมการรองรับอุปกรณ์ ARM ต่อไปนี้: Qualcomm QCS404, Allwinner T3, NXP/Freescale i.MX7ULP, NXP LS1028A, i.MX8, RDA Micro RDA8810PL, Rockchip Gru Scarlet, Allwinner Emlid Neutis N5 และอื่นๆ อีกมากมาย
  • การปรับปรุงระบบย่อย ARM: ฮอตปลั๊กหน่วยความจำ, การป้องกัน Meltdown และ Spectre, การกำหนดแอดเดรสหน่วยความจำ 52 บิต ฯลฯ
  • รองรับคำสั่ง WBNOINVD สำหรับ x86-64

ระบบย่อยหน่วยความจำ:

  • การทดแทนแท็กทดสอบโดยใช้หน่วยความจำต่ำพร้อมใช้งานสำหรับเครื่องมือ KASAN บนแพลตฟอร์ม ARM64
  • การกระจายตัวของหน่วยความจำลดลงอย่างมาก (มากถึง 90%) ส่งผลให้กลไก Transparent HugePage ทำงานได้ดีขึ้น
  • ประสิทธิภาพของ mremap(2) บนพื้นที่หน่วยความจำขนาดใหญ่เพิ่มขึ้นถึง 20 เท่า
  • ในกลไก KSM นั้น jhash2 จะถูกแทนที่ด้วย xxhash เนื่องจากความเร็วของ KSM บนระบบ 64 บิตเพิ่มขึ้น 5 เท่า
  • การปรับปรุง ZRam และ OOM

บล็อกอุปกรณ์และระบบไฟล์:

  • กลไก blk-mq พร้อมระบบคิวคำขอหลายระดับได้กลายเป็นกลไกหลักสำหรับอุปกรณ์บล็อก รหัสที่ไม่ใช่ mq ทั้งหมดถูกลบออกแล้ว
  • การปรับปรุงการรองรับ NVMe โดยเฉพาะในแง่ของการทำงานของอุปกรณ์ผ่านเครือข่าย
  • สำหรับ Btrfs จะมีการรองรับไฟล์สลับอย่างสมบูรณ์ รวมถึงการเปลี่ยน FSID โดยไม่ต้องเขียนข้อมูลเมตาใหม่
  • เพิ่มการเรียก ioctl ใน F2FS สำหรับการตรวจสอบ FS ที่เลื่อนออกไปผ่าน fsck
  • Integrated BinderFS - FS หลอกสำหรับการสื่อสารระหว่างกระบวนการ ช่วยให้คุณสามารถเรียกใช้ Android หลายอินสแตนซ์ในสภาพแวดล้อมเดียวกัน
  • การปรับปรุงหลายประการใน CIFS: แคช DFS, คุณลักษณะเพิ่มเติม, โปรโตคอล smb3.1.1
  • ZRam ทำงานได้ดียิ่งขึ้นกับอุปกรณ์สว็อปที่ไม่ได้ใช้ ซึ่งช่วยประหยัดหน่วยความจำ

ความปลอดภัยและการจำลองเสมือน:

  • เพิ่มฟังก์ชันแฮช Streebog (GOST 34.11-2012) พัฒนาโดย FSB ของสหพันธรัฐรัสเซีย
  • รองรับอัลกอริธึมการเข้ารหัส Adiantum ที่พัฒนาโดย Google สำหรับอุปกรณ์ที่ใช้พลังงานต่ำ
  • รวมอัลกอริทึม XChaCha12, XChaCha20 และ NHPoly1305
  • ขณะนี้การจัดการการโทร seccomp สามารถย้ายไปยังพื้นที่ผู้ใช้ได้แล้ว
  • สำหรับระบบเกสต์ KVM การสนับสนุนส่วนขยาย Intel Processor Trace ถูกนำมาใช้โดยประสิทธิภาพลดลงน้อยที่สุด
  • การปรับปรุงในระบบย่อย KVM/Hyper-V
  • ไดรเวอร์ virtio-gpu รองรับการจำลอง EDID สำหรับจอภาพเสมือนแล้ว
  • ไดรเวอร์ virtio_blk ดำเนินการยกเลิกการโทร
  • นำคุณลักษณะด้านความปลอดภัยไปใช้สำหรับหน่วยความจำ NV ตามข้อกำหนด Intel DSM 1.8

ไดรเวอร์อุปกรณ์:

  • การเปลี่ยนแปลง DRM API เพื่อรองรับการซิงค์แบบปรับได้อย่างสมบูรณ์ (ส่วนหนึ่งของมาตรฐาน DisplayPort) และอัตราการรีเฟรชแบบแปรผัน (ส่วนหนึ่งของมาตรฐาน HDMI)
  • มาตรฐานการบีบอัดสตรีมดิสเพลย์รวมอยู่ในการบีบอัดสตรีมวิดีโอแบบไม่สูญเสียที่ส่งไปยังหน้าจอความละเอียดสูง
  • ไดรเวอร์ AMDGPU รองรับ FreeSync 2 HDR และการรีเซ็ต GPU สำหรับ CI, VI, SOC15 แล้ว
  • ไดรเวอร์วิดีโอของ Intel รองรับชิป Amber Lake, รูปแบบ YCBCR 4:2:0 และ YCBCR 4:4:4
  • ไดรเวอร์ Nouveau ทำงานร่วมกับโหมดวิดีโอสำหรับการ์ดแสดงผลของตระกูล Turing TU104/TU106
  • ไดรเวอร์แบบรวมสำหรับหน้าจอสัมผัส Raspberry Pi, แผง CDTech, Banana Pi, DLC1010GIG ฯลฯ
  • ไดรเวอร์ HDA รองรับปุ่ม “แจ็ค”, ไฟ LED, อุปกรณ์ Tegra186 และ Tegra194
  • ระบบย่อยอินพุตได้เรียนรู้การทำงานด้วยการเลื่อนที่มีความแม่นยำสูงบนเมาส์ Microsoft และ Logitech บางรุ่น
  • มีการเปลี่ยนแปลงมากมายในไดรเวอร์สำหรับเว็บแคม, เครื่องรับสัญญาณทีวี, USB, IIO ฯลฯ

ระบบย่อยเครือข่าย:

  • สแต็ก UDP รองรับกลไกการคัดลอกเป็นศูนย์สำหรับการส่งข้อมูลผ่านซ็อกเก็ตโดยไม่มีการบัฟเฟอร์ระดับกลาง
  • มีการเพิ่มกลไกการรับถ่ายข้อมูลทั่วไปที่นั่นด้วย
  • ปรับปรุงประสิทธิภาพการค้นหาในนโยบาย xfrm เมื่อมีจำนวนมาก
  • เพิ่มความสามารถในการยกเลิกการโหลดช่องสัญญาณไปยังไดรเวอร์ VLAN แล้ว
  • การปรับปรุงหลายประการในการรองรับ Infiniband และเครือข่ายไร้สาย

ที่มา: linux.org.ru

เพิ่มความคิดเห็น