ก่อนที่เราจะเขียน Android เราต้องรู้ถึงความเป็นมา ความหมายของ Android OS คืออะไร และสถาปัตยกรรมของ Android เสียก่อน เพื่อสร้างความเข้าใจก่อนการลงมือปฏิบัติจริง
สถาปัตยกรรมของ Android จะแบ่งออกเป็น 5 ส่วนดังนี้
1. Linux Kernel คือ ส่วนที่เป็นแกนหลักของแอนดรอยด์นั้น ซึ่งเป็นระบบปฏิบัติการที่ถูกสร้างขึ้นโดย Linus Torvalds ในปี ค.ศ. 1991 ในส่วนของ Linux Kernel จะทำหน้าที่เป็นตัวกลางระหว่างฮาร์ดแวร์กับซอฟต์แวร์ และทำหน้าที่บริหารจัดการทรัพยากรต่าง ๆ ของเครื่อง เช่น การจัดการหน่วยความจำ การจัดการโพรเซส
แม้ว่าผู้ใช้ และผู้พัฒนาแอนดรอยด์จะไม่เห็นว่ามีลีนุกซ์อยู่ในเครื่อง หรือไม่ได้เรียกไปยังลีนุกซ์โดยตรงนั่นเอง แต่เเนื่องจากโปรแกรม utility บางตัวที่ Android SDK เตรียมมาให้ จะติดต่อกับลินุกซ์ที่อยู่ในอุปกรณ์ จึงทำให้เราในฐานะผู้พัฒนาจึงต้องทราบเรื่องนี้
2. Library ทั้งหมดจะเขียนด้วยภาษา C หรือ C++ และถูกคอมไฟล์มาสำหรับฮาร์ดแวร์ของอุปกรณ์ในแค่ล่ะรุ่น
แบ่ง Library ที่น่าสนใจได้ดังนี้
- Surface Manager คือ การจัดการส่วนแสดงผล ที่มีความสามารถในการผสมกราฟฟิก ทั้ง 2 และ 3 มิติ เข้าด้วยกัน
- Media Libraries คือ ส่วนที่จัดเตรียมการให้บริการในการเล่นและบันทึกเสียง วิดีโอ และรูปภาพ
- SQLite คือ ฐานข้อมูลขนาดเล็กที่ใช้ในการจัดเก็บข้อมูลของแอพพลิเคชั่นไว้
- WebKit คือ ส่วนที่ใช้ในการแสดงเนื้อหาเว็บเพจ
3. Android Runtime เป็นส่วนที่ทำงานอยู่ใน Linux Kernel ซึ่งประกอบด้วย Core Library สำหรับจาวา และ Dalvik VM
4. Application Framework คือ ส่วนที่ใช้พัฒนาแอพพลิเคชั่น ซึ่งประกอบด้วยคอมโพเนนต์พื้นฐานต่าง ๆ ดังนี้
- Activity Manager คือ ตัวควบคุม Lifecycle ของแอพพลิเคชั่น
- Content Providers คือ ส่วนที่ทำให้แอพพลิเคชั่นสามารถแชร์ข้อมูลกันได้
- View System คือ ส่วนที่ใช้ในการสร้างส่วนติดต่อผู้ใช้
- Resource Manager คือ ตัวจัดการรีซอร์ส
- Notification Manager คือ ส่วนที่ทำให้แอพพลิเคชั่นสามารถแสดงข้อความแจ้งเตือนผู้ใช้ออกมาที่แถบสถานะได้
5. Applications คือ แอพพลิเคชั่นต่าง ๆ ทั้งที่ติดตั้งมากับเครื่องอยู่แล้ว รวมทั้งแอพพลิเคชั่นที่เราสร้างขึ้นเอง ซึ่งแอพพลิเคชั่นทั้งหมดในส่วนนี้จะถูกเขียนขึ้นด้วยภาษาาวา
เมื่อเรารู้พื้นฐานของ Android แล้ว ก็สามารถดูวิธีการติดตั้ง Android และวิธีการพัฒนา Androidกันได้เลย
สถาปัตยกรรมของระบบปฏิบัติการ Android
Moderator: mindphp, ผู้ดูแลกระดาน
- Ik Kat
- PHP Super Member
- โพสต์: 291
- ลงทะเบียนเมื่อ: 26/06/2017 2:32 pm
-
- Similar Topics
- ตอบกลับ
- แสดง
- โพสต์ล่าสุด
-
- 0 ตอบกลับ
- 2017 แสดง
-
โพสต์ล่าสุด โดย md040
12/11/2016 3:50 pm
-
-
โพสต์ใหม่ การเรียกใช้งาน Google Maps Android API อย่างง่ายบน Android Studio
โดย Four » 09/01/2018 2:47 pm » ใน Mobile Application Developing- Android, iOS - 0 ตอบกลับ
- 3444 แสดง
-
โพสต์ล่าสุด โดย Four
09/01/2018 2:47 pm
-
-
-
โพสต์ใหม่ [Review] การติดตั้ง Android Studio เพื่อพัฒนาโปรแกรมบน Android
โดย prakasit.bank » 04/06/2015 4:52 pm » ใน Mobile Application Developing- Android, iOS - 0 ตอบกลับ
- 3701 แสดง
-
โพสต์ล่าสุด โดย prakasit.bank
04/06/2015 4:52 pm
-
-
-
โพสต์ใหม่ ประวัติความเป็นมาของ Android ก่อนจะมาเป็น Android M
โดย prakasit.bank » 04/06/2015 10:51 am » ใน Mobile Application Developing- Android, iOS - 0 ตอบกลับ
- 2763 แสดง
-
โพสต์ล่าสุด โดย prakasit.bank
04/06/2015 10:51 am
-
-
- 0 ตอบกลับ
- 3056 แสดง
-
โพสต์ล่าสุด โดย aninthana
23/08/2019 5:49 pm
-
- 0 ตอบกลับ
- 5571 แสดง
-
โพสต์ล่าสุด โดย nuattawoot
06/06/2017 5:12 pm
-
-
โพสต์ใหม่ พื้นฐานการเขียน Android
โดย czxc » 31/08/2017 5:28 pm » ใน Mobile Programming - Android, iOS, Window Phone - 0 ตอบกลับ
- 3297 แสดง
-
โพสต์ล่าสุด โดย czxc
31/08/2017 5:28 pm
-
-
-
โพสต์ใหม่ Android Studio err.
โดย Barista Pat » 09/05/2018 5:47 pm » ใน Mobile Programming - Android, iOS, Window Phone - 1 ตอบกลับ
- 6553 แสดง
-
โพสต์ล่าสุด โดย AorKarn_sitikwan
26/05/2018 10:17 pm
-
ผู้ใช้งานขณะนี้
สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 63