วิศวกร Google เผยสาเหตุของปัญหาที่แท้จริงใน "Wallpaper มรณะ 2020" อยู่ที่การคำนวณค่า Luminance ของระบบ ไม่ใช่ค่า Color Space แต่อย่างใด ซึ่งวอลเปเปอร์นี้ถูกสร้างขึ้นมาเป็นกับดักให้ทำลายระบบอย่างจงใจ !!!!
Google และ Samsung กำลังทดสอบการแก้ไขของวอลล์เปเปอร์เจ้าปัญหาที่แพร่ระบาดอย่างหนัก เมื่อต้นสัปดาห์ที่ผ่านมา โดยหากตั้งภาพดังกล่าวเป็นวอลล์เปเปอร์ จะทำให้ระบบทำงานล้มเหลว (Boot Loop) จนอาจถึงขั้น Factory Reset
ล่าสุดวิศวกรของ Google ได้โพสผ่านทาง Twitter ว่า ปัญหาพื้นฐานในข้อผิดพลาดของวอลเปเปอร์นั้นเกี่ยวข้องกับการคำนวณค่าความส่องสว่าง (Luminance) ใน ระบบ Android ไม่ใช่การแปลงพื้นที่สี (Color Space) ตามที่เราเคยคิด
"เราลงเอยด้วยการแก้ไขปัญหาต่าง ๆ (หลีกเลี่ยงการแปลงพื้นที่สี) แต่นี่เป็นเหตุผลที่แท้จริงที่เราพบในข้อผิดพลาดของระบบ"
รูปภาพถูกเข้ารหัสใน
"Google / Skia / E3CADAB7BD3DE5E3436874D2A9DEE126" Color Space
นั่นคือชื่อเต็มของการเข้ารหัสพื้นที่สี (Color Space) โดยที่ Skia เป็นชื่อของไลบรารีกราฟิก 2D ที่สร้างโดย Google
การแปลงพื้นที่สีไม่เกี่ยวข้อง ปัญหาที่แท้จริงคือวิธีคำนวณความสว่าง
ข้อผิดพลาดเกิดขึ้นเมื่อระบบคำนวณค่า "ความส่องสว่าง" ของแต่ละพิกเซล โดยใช้สูตรต่อไปนี้ :
Luminance = .2126f * r + .7152f * g + .0722f * b
โดยที่ "r", "g" และ "b "คือค่าสีแดงสีเขียวและสีน้ำเงินที่แสดงเป็นค่า 8 บิตจาก 0 ถึง 255 ...
ปัญหาของการคำนวณนี้คือมันจะปัดเศษค่าสุดท้ายเสมอ วอลล์เปเปอร์ "เจ้าปัญหา" มีค่า RGB ต่อไปนี้ :
255, 255, 243
ซึ่งเมื่อแทนค่าเข้ากับสมการข้างต้นผลลัพธ์ใน
Luminance = .2126 * 255 + .7152 * 255 + .0722 * 243 = 256
ค่านี้ทำให้ SystemUI และโดยทั่วไปทั้งระบบปฏิบัติการล้มเหลว เพราะมันเกินค่าสูงสุด มันเป็นข้อผิดพลาดที่เฉพาะเจาะจงอย่างไม่น่าเชื่อ เพราะมันมีข้อผิดพลาดในการปัดเศษและข้อผิดพลาดในการแปลงพื้นที่สี ทำให้เชื่อว่ามีผู้ที่ทราบและอาศัยช่องโหว่(Bugs) นี้ ของระบบ Android สร้างภาพดังกล่าวขึ้นมา
ข้อผิดพลาดนี้ไม่มีผลกับ Android 11 เนื่องจากพื้นที่สีของภาพ "Skia" ไม่ได้ถูกแปลงเป็น sRGB ตามค่าเริ่มต้น ดังนั้นข้อผิดพลาดในการปัดเศษและข้อผิดพลาดในการแปลงพื้นที่สีจึงไม่สามารถเกิดขึ้นได้ แต่อย่างไรก็ตาม Google ยังคงพยายามที่จะแก้ไขปัญหานี้ในระบบปฎิบัติการ Android เวอร์ชั่นที่ต่ำกว่า 11
Source : Twitter
Article By : โลกไอทีวันนี้
Comments
Post a Comment