[ของใหม่ Android 7.0] Seamless Updates อัพเดตระบบทันที ไม่ต้องรอรีบูตนาน

by mk
23 August 2016 - 01:53

Android 7.0 Nougat มีฟีเจอร์ใหม่ในระดับของระบบปฏิบัติการหลายอย่าง ที่เคยเขียนถึงไปแล้วมี Verified Boot ตรวจสอบความปลอดภัยตอนบูตเครื่อง, โหมดประหยัดพลังงาน Doze ที่ปรับปรุงจากเดิม ส่วนฟีเจอร์คราวนี้คือ Seamless Update การอัพเดตระบบแบบใหม่ที่รีบูตแล้วใช้งานได้ทันที

ของเดิมเวลาที่ Android อัพเดตตัวเอง กระบวนการที่เกิดขึ้นคือดาวน์โหลดไฟล์อิมเมจอันใหม่มาเก็บไว้ จากนั้นรีบูตเครื่องเข้าโหมด recovery เพื่อเขียนอิมเมจทับระบบปฏิบัติการเดิม (ที่เราเรียกกันว่า flash) เมื่อเสร็จแล้ว เครื่องจะรีบูตอีกครั้งเข้าระบบปฏิบัติการตัวใหม่ และปรับแต่ง (optimize) แอพให้ทำงานเข้ากับตำแหน่งไฟล์ของระบบปฏิบัติการใหม่ ทั้งหมดต้องใช้เวลานานพอสมควร ทั้งตอนเขียนอิมเมจทับและตอนรอ optimize

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

กระบวนการอัพเดตแบบใหม่เรียกว่า Seamless Update สิ่งที่เกิดขึ้นเบื้องหลังคือ Android จะดาวน์โหลดอิมเมจใหม่มาเก็บไว้ เมื่อดาวน์โหลดเสร็จแล้วจะแตกไฟล์อิมเมจเพื่อเขียนระบบปฏิบัติการเวอร์ชันใหม่ลงใน "พาร์ทิชันใหม่" (เท่ากับว่าเรามีพาร์ทิชันของระบบ 2 อัน) เมื่อการเขียนไฟล์เสร็จแล้ว ระบบจะแจ้งเตือนให้ผู้ใช้รีบูตเครื่อง

เมื่อผู้ใช้สั่งรีบูตเครื่อง ตัวบูตระบบจะสลับพาร์ทิชันให้เราอัตโนมัติ ระบบปฏิบัติการในพาร์ทิชันใหม่จะถูกบูตขึ้นมาแทน โดยที่ผู้ใช้ไม่ต้องรออะไรเลย เพราะกระบวนการอัพเดตทำงานอยู่เบื้องหลังจนเสร็จแล้วระหว่างการใช้งานปกติก่อนรีบูต (พาร์ทิชันเก่าจะถูกนำไปใช้ในการอัพเดตครั้งต่อไป เวียนกันไปเรื่อยๆ)

ข้อดีอีกอย่างของ Seamless Update นอกจากเรื่องความเร็วคือป้องกันปัญหาอัพเดตไม่ผ่านกลางทาง แล้วพาร์ทิชันระบบเสีย บูตเครื่องไม่ได้ (brick) เพราะถ้าพาร์ทิชันใหม่มีปัญหา เราก็ยังสามารถสลับไปพาร์ทิชันเก่าแทนได้ ส่วนข้อเสียที่สำคัญคงเป็นเปลืองพื้นที่เก็บข้อมูล เพราะมีพาร์ทิชันระบบซ้ำกันสองอัน ซึ่งกูเกิลพยายามแก้ปัญหาโดยใช้ระบบไฟล์ SquashFS ที่บีบอัดขนาดไฟล์ลงได้บ้าง

ฟีเจอร์นี้ไม่ใช่ของใหม่ เพราะกูเกิลนำมาใช้กับ Chrome OS นานแล้ว (แถม Android 7.0 ก็นำโค้ดส่วนนี้จาก Chrome OS มาใช้ด้วย) อย่างไรก็ตาม Android 7.0 ไม่บังคับให้ผู้ผลิตฮาร์ดแวร์ต้องใช้ Seamless Update และกูเกิลก็เคยบอกเองว่า Nexus รุ่นในปัจจุบันจะไม่ได้ฟีเจอร์นี้ เพราะต้องแก้ไขพาร์ทิชันในเครื่อง ดังนั้นมือถือรุ่นแรกๆ ที่จะได้ Seamless Update คงเป็นมือถือ Nexus รุ่นใหม่นั่นเอง (ส่วน LG V20 ยังไม่แน่ชัดว่าได้ด้วยหรือไม่)

ที่มา - Android Central, Ars Technica

Blognone Jobs Premium