โฮมเพจ » ทำอย่างไร » Android ใช้ Linux แต่นั่นหมายความว่าอย่างไร

    Android ใช้ Linux แต่นั่นหมายความว่าอย่างไร

    Android อาจใช้ Linux แต่ไม่ได้ขึ้นอยู่กับระบบ Linux ที่คุณใช้บนพีซีของคุณ คุณไม่สามารถเรียกใช้แอพ Android บนการแจกแจง Linux ทั่วไปและคุณไม่สามารถเรียกใช้โปรแกรม Linux ที่คุณคุ้นเคยบน Android.

    Linux เป็นส่วนประกอบหลักของ Android แต่ Google ไม่ได้เพิ่มซอฟต์แวร์และไลบรารีทั่วไปทั้งหมดที่คุณพบในการแจกจ่าย Linux เช่น Ubuntu สิ่งนี้ทำให้เกิดความแตกต่าง.

    “ Linux” กับเคอร์เนล Linux

    ความแตกต่างใหญ่ที่นี่มาลงกับสิ่งที่เราหมายถึงโดย Linux ผู้คนใช้คำว่า“ Linux” เพื่อหมายถึงสิ่งต่าง ๆ มากมาย พื้นฐานที่สุดแล้ว Linux หมายถึงเคอร์เนล Linux เคอร์เนลเป็นส่วนสำคัญของระบบปฏิบัติการใด ๆ.

    นอกจากนี้เรายังอ้างถึงลีนุกซ์ลีนุกซ์เป็นเพียง“ ลีนุกซ์” อย่างไรก็ตาม, ลีนุกซ์ลีนุกซ์ไม่ได้เป็นเพียงเคอร์เนล. มีซอฟต์แวร์อีกหลายชิ้นเช่นโปรแกรมอรรถประโยชน์ของเชลล์ GNU, เซิร์ฟเวอร์กราฟิก Xorg, เดสก์ท็อป GNOME, เว็บเบราว์เซอร์ Firefox และอื่น ๆ นั่นเป็นเหตุผลที่บางคนคิดว่าควรใช้คำว่า GNU / Linux สำหรับ "การแจกแจง Linux" เช่น Ubuntu, Mint, Debian, Fedora, Arch, openSUSE และอื่น ๆ.

    Android ใช้เคอร์เนล Linux ภายใต้ประทุน เนื่องจาก Linux เป็นโอเพ่นซอร์สผู้พัฒนา Android ของ Google สามารถปรับเปลี่ยนเคอร์เนล Linux ให้เหมาะกับความต้องการได้ Linux ให้ผู้พัฒนา Android สร้างเคอร์เนลระบบปฏิบัติการที่สร้างไว้ล่วงหน้าและบำรุงรักษาแล้วให้เริ่มต้นด้วยดังนั้นพวกเขาจึงไม่ต้องเขียนเคอร์เนลของตัวเอง นี่คือวิธีที่อุปกรณ์ต่าง ๆ ถูกสร้างขึ้น - ตัวอย่างเช่น PlayStation 4 ใช้เคอร์เนล FreeBSD แบบโอเพนซอร์สในขณะที่ Xbox One ใช้เคอร์เนล Windows NT ที่พบใน Windows รุ่นที่ทันสมัย.

    คุณจะเห็นเวอร์ชันเคอร์เนล Linux ทำงานบนอุปกรณ์ของคุณภายใต้ About phone หรือ About tablet ในการตั้งค่าของ Android.

    ความแตกต่าง

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

    เมื่อคุณบู๊ตอุปกรณ์ Android เคอร์เนล Linux จะโหลดเหมือนกับการกระจาย Linux อย่างไรก็ตามซอฟต์แวร์อื่น ๆ ส่วนใหญ่แตกต่างกัน Android ไม่รวมไลบรารี GNU C (glibc) ที่ใช้กับการแจกแจงแบบมาตรฐานของ Linux และไม่รวมไลบรารี GNU ทั้งหมดที่คุณพบในการแจกแจง Linux ทั่วไป นอกจากนี้ยังไม่รวมเซิร์ฟเวอร์ X เช่น Xorg ดังนั้นคุณจึงไม่สามารถเรียกใช้แอปพลิเคชัน Linux แบบกราฟิกได้.

    แทนที่จะใช้แอพพลิเคชั่น Linux ทั่วไป Android ใช้เครื่องเสมือน Dalvik เพื่อรันแอพพลิเคชั่นที่เขียนด้วย Java แอปพลิเคชันเหล่านี้มีการกำหนดเป้าหมายที่อุปกรณ์ Android และแอปพลิเคชันการเขียนโปรแกรมอินเทอร์เฟซ (API) Android ให้มากกว่าการกำหนดเป้าหมายที่ Linux โดยทั่วไป.

    ทำไมคุณไม่สามารถเรียกใช้ซอฟต์แวร์ Linux บนเดสก์ท็อปได้

    เนื่องจาก Android ไม่ได้รวมเซิร์ฟเวอร์ X กราฟิกหรือไลบรารี GNU มาตรฐานทั้งหมดคุณจึงไม่สามารถเรียกใช้แอปพลิเคชัน Linux บน Android ได้ คุณต้องเรียกใช้แอปพลิเคชันที่เขียนขึ้นเป็นพิเศษสำหรับ Android.

    Android มีเชลล์เหมือนที่คุณจะพบบน Linux ไม่มีวิธีการเข้าถึงนอกกรอบ แต่คุณสามารถติดตั้งแอพเช่น Android Terminal Emulator เพื่อเข้าถึงสภาพแวดล้อมเทอร์มินัลนี้.

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

    ทำไมคุณไม่สามารถเรียกใช้ซอฟต์แวร์ Android บน Desktop Linux

    Linux ไม่ได้รวมเครื่องเสมือน Dalvik ดังนั้นจึงไม่สามารถเรียกใช้แอพ Android ได้ เครื่องเสมือน Dalvik และซอฟต์แวร์อื่น ๆ ของ Android ไม่สามารถนำไปวางบนเครื่องเดสก์ท็อปลีนุกซ์ได้ - คุณต้องทำงานมากขึ้นเพื่อให้แอพ Android ส่งออกไปยังหน้าต่างบนเดสก์ท็อปมาตรฐานผ่าน Xorg ในทางทฤษฎีด้วยการทำงานที่เพียงพอนักพัฒนาสามารถทำให้ Dalvik ทำงานบนเดสก์ท็อป Linux เพื่อให้ผู้ใช้เดสก์ท็อปลีนุกซ์สามารถเรียกใช้แอพ Android บนเดสก์ท็อปได้ ผลิตภัณฑ์ Ubuntu for Android ที่ไม่เคลื่อนไหวในตอนนี้พยายามทำสิ่งนี้รวมเข้ากับ Ubuntu และ Android บนโทรศัพท์และอนุญาตให้แอป Android เหล่านั้นทำงานบนเดสก์ท็อปของ Ubuntu.

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


    Google Chrome OS นั้นใช้ Linux เช่นกัน เช่นเดียวกับ Android Chrome OS ไม่ได้จัดทำระบบหน้าต่างมาตรฐาน X ดังนั้นแอปพลิเคชัน Linux มาตรฐานจึงไม่สามารถทำงานบน Chrome OS ได้ ซึ่งแตกต่างจาก Android, Chrome OS อยู่ใกล้กับลีนุกซ์รุ่นมาตรฐานบนเดสก์ท็อปดังนั้นคุณสามารถใช้โหมดนักพัฒนาซอฟต์แวร์เพื่อติดตั้งซอฟต์แวร์เดสก์ท็อป Linux ที่หายไป.

    เครดิตรูปภาพ: ranti บน Flickr กายวิภาคศาสตร์และสรีรวิทยาของ Android