เคอร์เนล Linux 7.5 เตรียมลบโค้ดที่ใช้ชุดคำสั่ง MMX ชุดสุดท้ายออกจากเคอร์เนล ปิดฉากเทคโนโลยีที่ Intel เปิดตัวกับซีพียู Pentium ตั้งแต่ปี 2540 หรือเกือบ 30 ปีก่อน โค้ดที่ถูกลบอยู่ในส่วนคำนวณ XOR ของซอฟต์แวร์ RAID การเปลี่ยนแปลงนี้ตัดโค้ดกว่า 800 บรรทัดเหลือเพียง 12 บรรทัด คาดว่า Linux 7.5 จะออกช่วงต้นปี 2570 คอมพิวเตอร์รุ่นปัจจุบันไม่ได้รับผลกระทบ
สารบัญ
⚡ สรุปข่าวใน 30 วินาที
- Linux 7.5 ลบโค้ด MMX ในส่วน XOR ของซอฟต์แวร์ RAID ซึ่งเป็นโค้ด MMX ชุดสุดท้ายในเคอร์เนล
- ตัดโค้ดกว่า 800 บรรทัด เหลือ 12 บรรทัด
- แพตช์กำลังทดสอบในสาขา MM ของ Andrew Morton คาดออกต้นปี 2570
- กระทบเฉพาะซีพียูเก่ามากที่ไม่มี SSE เช่น Pentium MMX, Pentium II และ AMD K6
- เส้นทาง SSE และ AVX สำหรับ RAID ยังอยู่ครบ
MMX คืออะไร ทำไมเคยสำคัญ
MMX เป็นชุดคำสั่งเสริมที่ Intel ใส่ในซีพียู Pentium ตั้งแต่มกราคม 2540 ช่วยให้ซีพียูประมวลผลข้อมูลหลายชุดพร้อมกันในคำสั่งเดียว เหมาะกับงานมัลติมีเดียอย่างการบีบอัดภาพและวิดีโอ การถอดรหัส JPEG และงานประมวลผลสัญญาณ ตอนเปิดตัว Intel ทำตลาดว่าเป็น MultiMedia eXtensions แม้ในเอกสารคดีความกับ AMD จะมีการระบุว่าย่อมาจาก Matrix Math Extensions
หลังจากนั้นไม่นาน AMD ออก 3DNow! และ Intel ออก SSE และ SSE2 ตามมา SSE2 ที่มากับ Pentium 4 รองรับการทำงานแบบเดียวกันด้วยขนาด 128 บิต MMX จึงค่อยๆ หมดบทบาท ซีพียูยุคหลังทุกตัวมีชุดคำสั่งที่เร็วกว่าให้ใช้อยู่แล้ว
| ชุดคำสั่ง | ผู้พัฒนา | ช่วงเวลา | สถานะในเคอร์เนล Linux |
|---|---|---|---|
| MMX | Intel | 2540 | ถูกลบชุดสุดท้ายใน 7.5 |
| 3DNow! | AMD | 2541 | เลิกใช้แล้ว |
| SSE / SSE2 | Intel | 2542–2543 | ยังใช้ |
| AVX | Intel | 2554 | ยังใช้ |

โค้ดอะไรถูกลบ
โค้ดที่ถูกลบคือการคำนวณ XOR แบบใช้ MMX บนสถาปัตยกรรม x86 ซึ่งเคอร์เนลใช้คำนวณพาริตีของซอฟต์แวร์ RAID เช่น RAID 5 นักพัฒนาระบุว่านี่คือการเพิ่มประสิทธิภาพเฉพาะ MMX ชุดเดียวที่ยังเหลืออยู่ในเคอร์เนล ก่อนหน้านี้ในปี 2564 โค้ด MMX สำหรับ memcpy() และ copy_page() ถูกลบไปแล้ว ส่วนโค้ดเข้ารหัสและ CRC ก็ไม่มีโค้ดเฉพาะ MMX แล้ว
การลบครั้งนี้เป็นผลต่อเนื่องจากงานจัดระเบียบไลบรารี XOR ของ RAID ที่ Christoph Hellwig นำทำ โดยย้ายโค้ดมารวมไว้ที่เดียวใน lib/raid/ ระหว่างการรีวิวในเดือนกุมภาพันธ์ 2569 Eric Biggers เสนอให้ลบโค้ดที่ล้าสมัย รวมถึงเวอร์ชัน MMX บน x86 แยกเป็นชุดแพตช์ต่างหาก
ตัวเลขที่น่าสนใจ: การเปลี่ยนแปลงนี้ลบโค้ดกว่า 800 บรรทัด แล้วใช้โค้ดใหม่เพียง 12 บรรทัดแทน เคอร์เนลจึงดูแลง่ายขึ้นโดยไม่เสียความสามารถบนเครื่องรุ่นใหม่
ใครได้รับผลกระทบ
ผลกระทบมีแค่ซีพียู x86 รุ่นเก่ามากที่ไม่มี SSE เช่น Intel Pentium MMX, Pentium II และ AMD K6 ถ้าเครื่องเหล่านี้ใช้ซอฟต์แวร์ RAID ก็ยังทำงานได้ แต่จะใช้โค้ดภาษา C แบบทั่วไปที่ช้ากว่าแทน ซึ่งในความเป็นจริงแทบไม่มีใครใช้เคอร์เนลรุ่นใหม่บนเครื่องช่วงปี 2540 แล้ว
คอมพิวเตอร์ เซิร์ฟเวอร์ และ NAS ทุกรุ่นในปัจจุบันไม่ได้รับผลกระทบ เพราะใช้เส้นทาง SSE และ AVX ที่เร็วกว่าอยู่แล้ว และโค้ดส่วนนี้ยังอยู่ครบ
Linux 7.5 จะออกเมื่อไร
แพตช์นี้กำลังทดสอบอยู่ในสาขา MM ของ Andrew Morton ซึ่งเป็นที่พักโค้ดก่อนเข้าเคอร์เนลหลัก คาดว่าจะรวมเข้า Linux 7.5 ที่มีกำหนดออกช่วงต้นปี 2570 แต่เนื่องจากยังไม่ได้รวมเข้าสายหลัก รายละเอียดและเวลาอาจเปลี่ยนได้
การทยอยลบโค้ดสำหรับฮาร์ดแวร์เก่าเป็นเรื่องปกติของ Linux เพราะทุกบรรทัดที่เหลือต้องมีคนดูแลและทดสอบ การตัดของที่ไม่มีใครใช้จึงช่วยให้นักพัฒนามีเวลาไปทำงานที่กระทบผู้ใช้จริงมากกว่า
- ม.ค. 2540 Intel เปิดตัว MMX กับ Pentium
- 2543 SSE2 มากับ Pentium 4 แทนที่งานของ MMX
- 2564 Linux ลบโค้ด MMX ของ memcpy() และ copy_page()
- ก.พ. 2569 มีข้อเสนอให้ลบโค้ด XOR แบบ MMX
- พ.ย. 2569 แพตช์ทดสอบในสาขา MM
- ต้นปี 2570 คาดว่า Linux 7.5 ออก
คำถามที่พบบ่อยเกี่ยวกับ Linux 7.5 ลบ MMX
MMX คืออะไร
ชุดคำสั่งเสริมของ Intel ที่เปิดตัวกับ Pentium ปี 2540 ช่วยประมวลผลงานมัลติมีเดีย
Linux 7.5 ลบโค้ดอะไร
ลบการคำนวณ XOR แบบ MMX ที่ใช้ในซอฟต์แวร์ RAID ซึ่งเป็นโค้ด MMX ชุดสุดท้ายในเคอร์เนล
คอมพิวเตอร์ของเราได้รับผลกระทบไหม
ไม่ได้รับผลกระทบ เครื่องรุ่นปัจจุบันใช้ SSE และ AVX ซึ่งยังอยู่ครบ
เครื่อง Pentium รุ่นเก่ายังใช้ Linux 7.5 ได้ไหม
ยังใช้ซอฟต์แวร์ RAID ได้ แต่จะใช้โค้ดแบบทั่วไปที่ช้ากว่า
Linux 7.5 ออกเมื่อไร
คาดว่าช่วงต้นปี 2570 แต่แพตช์ยังไม่ได้รวมเข้าสายหลัก


ความคิดเห็น 0
ยังไม่มีความคิดเห็นเป็นคนแรกที่แสดงความคิดเห็นในบทความนี้