เพราะเหตุใด Android ถึงต้องมีแรมเยอะๆ ในขณะที่ iOS มีแค่ 1 GB ก็ยังเร็วปรู๊ดปร๊าด

เพราะเหตุใด Android ถึงต้องมีแรมเยอะๆ ในขณะที่ iOS มีแค่ 1 GB ก็ยังเร็วปรู๊ดปร๊าด

ปัจจุบันเรามักจะเห็นมือถือ แท็บเล็ต Android มาพร้อมกับแรมแทบจะไม่ต่ำกว่า 1 GB กันแล้ว โดยเฉพาะในรุ่นท็อปบางตัวก็จัดมาให้เลยถึง 3 GB แต่ในขณะที่ทางฝั่ง Apple นั้น เพิ่งจะมีอุปกรณ์ iOS รุ่นแรกที่มาพร้อมแรม 2 GB ก็คือ iPad Air 2 นอกนั้นยังคงใช้แรม 1 GB ที่ยังคงเดิมมาตั้งแต่ยุค iPhone 5 (เมื่อ 2 ปีก่อน) แต่ก็ยังทำงานได้อย่างรวดเร็ว เปิด ปิดแอพได้เร็วแทบไม่ต่างจากมือถือ Android ที่มีแรมเยอะกว่าเลย เผลอๆ ยังจะเร็วกว่าด้วยซ้ำไป ซึ่งสาเหตุที่ทำให้เป็นเช่นนั้น ก็มีคนเข้ามาอธิบายเอาไว้บนเว็บไซต์ Quora ที่เป็นเว็บไซต์เปิดให้คนเข้ามาตั้งคำถาม และมีคนมาตอบคำถามให้ครับ โดยสาเหตุหลักที่ทำให้มือถือ Android จำเป็นต้องมีแรมจำนวนมาก แต่ฝั่ง iOS กลับไม่จำเป็นก็คือตั้งแต่เรื่องสถาปัตยกรรมของภาษาที่ใช้เขียนแอพเลยทีเดียว

อันเนื่องมาจากตัวแอพ Android เลือกใช้งานภาษา Java ที่ในโครงสร้างของ Java เองจะมีกระบวนการ “garbage collection” หรือจะให้เข้าใจง่ายๆ ก็คือเป็นกระบวนการล้างหน่วยความจำ (แรม) หลังจากแอพใดแอพหนึ่งปิดตัวลง เพื่อคืนหน่วยความจำกลับมาให้ว่างพร้อมใช้งานอื่นๆ ต่อไป แล้วทีนี้กระบวนการดังกล่าวมันดันจำเป็นต้องใช้พื้นที่หน่วยความจำ (แรม) เพื่อทำงานเองอีก 4-8 เท่าของแรมที่แอพตัวเดิมใช้งานอยู่ สมมติว่าเราปิดแอพ Facebook ที่ใช้งานแรมอยู่ 50 MB ไป เจ้ากระบวนการ garbage collection นี้ก็จะต้องเรียกใช้งานแรม 200 – 400 MB เพื่อทำการล้างหน่วยความจำคืนกลับไปให้ระบบ ทำให้แรมเครื่องเหลือน้อยลงในระหว่างที่ทำความสะอาดแรม

ซึ่งถ้าแรมเครื่องมีน้อย เช่น 512 MB (หรือจะถือว่า 1 GB น้อยไปแล้วก็ว่าได้) ก็จะทำให้ปริมาณแรมทั้งระบบเหลือไม่ค่อยพอที่จะรันแอพใหม่ขึ้นมาตามที่เราสั่งงาน ส่งผลให้การทำงานของเครื่องโดยรวมทั้งหมดช้าลง การเปิดแอพก็ไม่เร็วปรู๊ดปร๊าดอย่างที่ควรจะเป็น ส่วนในมือถือที่มีแรมเยอะๆ เช่น 2 GB ขึ้นไปก็จะพบปัญหานี้น้อยลง เพราะมีแรมว่างเหลือเฟือในการเปิดให้ garbage collection ทำงาน และเปิดแอพใหม่ไปพร้อมๆ กันนั่นเอง แต่ฝั่ง iOS จะไม่มีกระบวนการล้างหน่วยความจำในลักษณะเดียวกับ Android จึงทำให้ดูเหมือนสามารถทำงานได้เร็วกว่า ทั้งที่มีแรมเพียง 1 GB เท่านั้น

ก็น่าจะไขข้อข้องใจกันไปได้ระดับหนึ่งล่ะนะครับ ว่าทำไมมือถือ Android ถึงต้องมีแรมเยอะๆ แต่ถ้าอยากรู้ข้อมูลทางเทคนิคเชิงลึก คงต้องลงไปศึกษาทำความเข้าใจถึงแก่นของภาษา Java ล่ะนะ (ตัวผมเองก็ลืมไปหมดแล้ว ฮาๆ)

ที่มา: PhoneArena

10 Comments

  1.   Nov 26 - 11:45 ตอบกลับ

    Objective-C พัฒนา เป็น swift แล้วมันจะเขียนได้ง่ายกว่า Java และ มีประสิทธิภาพกว่า Objective-C ที่แต่เดิมดีกว่า java อยู่แล้ว คิดดูสิ โหววววว !!!

    Guest
  2.   Nov 25 - 12:27 ตอบกลับ

    ใช้หน่วยประมวลผล iphone แต่ใส่ android เข้าไปลองดูสิ ผมว่าน่าจะเร็วเท่ากัน

    Guest
    •   Mar 29 - 11:13 ตอบกลับ

      ปยอ อืดตายห่า

      Guest
    •   Nov 7 - 09:45 ตอบกลับ

      คงหมายถึงเอา cpu ของ แอนดรอยด์ไปใช้งานกับ ios ต่างหากครับ ระบบประมวลผลจะทำงานเท่ากัน แต่หากเอา cpu ของ ios ไปใส่ให้ระบบแอนดรอยด์ นั่นคือ เจ้งครับ + อืดสุดๆ

      Neung Waiyawat
    •   Nov 7 - 09:49 ตอบกลับ

      แอปเปิ้ลเค้าบอกมาว่า ระบบทั้งหมด ไม่ว่าจะเป็นความต้องการอื่นๆ หรือ ทั้งhardware และ software ทั้งหมด ทำงานร่วมกันอย่างมีประสิทธิภาพ แต่ แอนดรอยด์นั้น แตกต่างโดยสิ้นเชิง ยกตัวอย่างในแอนดรอยด์ หากเรายังถือรุ่น 4.4.2 อยู่แอฟบางตัว รองรับเฉพาะรุ่น 5.0.0 หรือต่ำกว่า 4.4.2 เป็น 4.1.2 หรือ 3.2.1 ระบบการทำงานหรือ เรียกง่ายๆว่าเราไป download ไม่ได้แล้ว หรือถ้าลงได้ แอฟที่ลงคงไม่ตอบสนองบ่อยมาก(คิดว่าคนที่เป็นสาวกแอนดรอยด์คงเจอกันบ่อย)

      Neung Waiyawat
  3.   Nov 19 - 21:38 ตอบกลับ

    ทำให้ซอฟแวร์เหมือนนกันไม่ได้ครับ ถ้ามีฮารดแวร์แค่ไม่กี่รุ่นแบบไอโฟนก็คงทำได้อยู่ แต่เพราะฮาร์ดแวร์ของแอนดรอยมีหลากหลายเป็น100แบรนด์ เป็น1000รุ่น การที่จะให้ซอฟแวร์รันได้หมดโดยทำให้ไหลลื่นแบบไอโฟนคงเป็นไปไม่ได้ ลำพังแค่ให้รันบนเครื่องสเป็กจีนแดงแรม128เมค ยันสเป็กเทพแรม3กิ๊ก ยังมีความแตกต่างกันอีกหลายๆอย่าง จึงจำเป็นต้องใช้Java ผมว่าให้ใช้ได้ทุกเครื่องก็เก่งแล้ว  ในปัจจุบันคุณลองเอามือถือสเป็คเทพของแอนดรอยมาใช้กับไอโฟน ผมว่ามันก็ลื่นเท่ากัน (จากติ่งแอนดรอย)

    Guest
  4.   Nov 17 - 19:26 ตอบกลับ

    เป็นเรื่องของลิขสิทธิ์ กฎหมายห้ามลอกเลียนแบบกัน ถึงได้มีการฟ้องร้องกันบ่อยไงครับ 

    Guest
  5.   Nov 17 - 17:56 ตอบกลับ

    M8 สิ

    Guest
  6.   Nov 17 - 14:40 ตอบกลับ

    Objective-C VS JAVA ลอง search ดูคับ

    Guest
  7.   Nov 17 - 13:57 ตอบกลับ

    ก็แค่ทำให้เหมือนจะได้ลื่นไหล แล้วทำไมไม่ทำ

    Guest

แสดงความคิดเห็น

*ข้อความหรือข้อความที่แสดงในโฟส เกิดจากการตั้งกระทู้และถูกส่งขึ้นในระบบโดยอัตโนมัติจากสมาชิก ซึ่งทีมงานไม่ได้มีส่วนหรือพิสูจน์ข้อเท็จจริงใดๆ หากพบเห็นข้อความ หรือรูปภาพในกระทู้ที่ไม่เหมาะสม กรุณาแจ้งทีมงานเพื่อดำเนินการต่อไป..