in

เตือน พบบัคการตั้งค่าวันที่ใน iOS สามารถทำให้ iPhone, iPad ใช้งานไม่ได้

date-bug-ios

มีข่าวมาแจ้งเตือนและแจ้งให้ทราบสำหรับผู้ใช้งาน iPhone, iPad เรื่องก็คือมีผู้พบข้อผิดพลาด(bug) ใน iOS ซึ่งถ้าตั้งวันที่ของเครื่องไปยังวันที่ 1 January 1970 (1 มกราคม 2513) จากนั้นรีบูตเครื่องจะพบว่า “เครื่องค้างที่ Apple Logo และไม่สามารถบูตได้สำเร็จ” 

ห้ามนำไปทดลองเองที่บ้านเด็ดขาดเพราะหากเกิดปัญหาขึ้นจะต้องส่งเข้า AASP เพื่อแก้ไขปัญหา.

ที่มาของปัญหา

ข้อผิดพลาดนี้เกี่ยวกับอะไรกับสิ่งที่เรียกว่า Unix Time ซึ่งเป็นการตั้งค่าเพื่อนับเวลาในระบบคอมพิวเตอร์ หากเวลาถูกตั้งค่าไปวันที่ 1 January (มกราคม) 1970 (2513) จะทำให้ค่าของ Unix Time นั้นถูกตั้งค่าให้เป็น 0 โดย Unix Time จะเกี่ยวข้องกับการไปคำนวนเรื่องเวลา เมื่อ Unix Time = 0 แล้วนำ 0 ไปหาร(ตามสูตรสักอย่างใน iOS) พบว่ามันหาค่าไม่ได้ จึงส่งผลให้ระบบบูตไม่สำเร็จ (อ้างอิง)

วิธีที่ทำให้เครื่อง iPhone, iPad เกิดปัญหา

  1. ไปที่ Settings
  2. แล้วต่อที่ General -> Date and Time
  3. ปิด ‘Set Automatically’
  4. เปลี่ยนวันที่เป็น 1st Jan 1970 หรือ 1 มกราคม 2513
  5. ปิดแล้วเปิดเครื่องใหม่
  6. ผลที่ได้คือ ติดหน้า Apple logo แล้วจะบูตเข้าระบบไม่ได้

รุ่นที่ได้รับผมกระทบ

iPhone, iPad ที่ใช้ CPU สถาปัติยกรรม 64-bit (Apple A7 ชิป) ขึ้นไปจะได้รับผลกระทบนี้ ไม่ว่าจะ iOS อะไร เท่าที่มีทดสอบทั้ง iOS 8 – 9.x ก็ได้รับผลกระทบ

  • iPhone 5s และใหม่กว่า
  • iPad Air และใหม่กว่า
  • iPad mini 2 และใหม่กว่า

บางคนทดสอบกับ iPhone 5s ติดตั้ง iOS 8.x (โดยที่ระบบนั้นใน Settings แจ้งเตือนให้อัปเดตเป็น iOS 9.2.1 แต่เขายังไม่ได้อัปเดต) จากนั้นตั้งค่าวันที่ไปยังจุดที่มีปัญหา เขาทำการรีบูตแล้วพบว่ายังใช้งานได้  ซึ่งส่วนนี้คิดว่าระบบ iOS ได้จดจำวันที่(อาจจะจากวันที่ดาวน์โหลดไฟล์อัปเดตเสร็จและยังจำค่าเดิมอยู่) ดังนั้นจึงไม่ได้รับผลกระทบของบัคนี้

การแก้ไขปัญหาเบื้องต้น

ถอดแบตเตอรีออกเพื่อทำการรีเซต PRAM(Parameter Random Access Memory) และ SMC (System Management Controller) ซึ่งงานนี้ไม่ง่ายนักหากไม่มีเครื่องมือและความชำนาญในการแกะเครื่อง ซึ่งไม่แนะนำสำหรับคนทั่วไป

ถอดแบตเตอรีออกเพื่อตัดไปออกจากระบบและปล่อยให้ไฟในระบบหมดจริงๆ จากนั้นระบบจะรีเซตค่าใหม่ซึ่งอาจจะช่วยได้

หรือหากเครื่องยังมมีประกันก็ติดต่อที่ Apple หรือ AASP

ข้อผิดพลาดนี้เป็นข้อผิดพลาดในระบบซอฟต์แวร์และได้มีผู้แจ้งไปยัง Apple ให้รับทราบแล้ว คาดว่าทาง Apple จะแก้ปัญหามาพร้อมระบบ iOS ตัวใหม่ในอนาคต ฉะนั้นก็อย่าไปซนแกล้งเพื่อนๆ นะครับ ไม่งั้นมีผิดใจกันแน่นอน

ขอบคุณที่มา Redditlfcameron7, Wiki, Youtube และ Liam Hanmore

ความคิดเห็น - Like เพจ iPhoneMod.net

เขียนโดย Attapon Thaphaengphan

ศิษย์เก่าวิศวกรรมคอมพิวเตอร์ ม. ขอนแก่น ผู้ก่อตั้ง iPhoneMod.net ตั้งแต่ปี 2009
อดีต Dell Technical Support รู้จัก ​Apple เพราะ Macbook Pro และใช้ iPhone ตั้งแต่รุ่น 3G จนถึงปัจจุบัน

2 Comments

  1. ลองทำแล้วครับ ดับจริงๆ

    และวิธีแก้คือ ต้องแกะเครือง จากนั้น ถอดแบตเตอร์รี่ออก รอสักพัก
    ประกอบสายแบตเตอร์รีคืน และเปิดเครื่อง เครื่องจะทำงานเป็นปกติ และอย่าลืมเปลียนวันที่เป็น auto ก่อนปิดเครืองนะครับ

    • ตามนั้นครับ ขอบคุณสำหรับข้อมูลครับผม