โครงสรา้ งของระบบปฏบิ ตั ิการ Android จดั ทาโดย นางสาวกนกวรรณ ไชยสุนทร ปวช.1/1 รหสั 001 แผนกคอมพิวเตอรธ์ ุรกิจ
ประวตั ิความเป็ นมาของระบบปฏบิ ตั ิการ Andriod เป็ นระบบปฏิบตั ิการท่ีมีพ้ นื ฐานอยบู่ นลินุกซ์ ถูกออกแบบมาสาหรบั อุปกรณท์ ี่ใชจ้ อสมั ผสั เช่นสมารท์ โฟนและแท็บเล็ตคอมพิวเตอร์ ถูกคิดคน้ และพฒั นาโดยบริษัท แอนดรอยด์ (Android, Inc.) ซ่ึงต่อมา กูเกิลไดท้ า การซ้ ือต่อบริษัทในปี พ.ศ. 2548 แอนดรอยดถ์ ูกเปิ ดตวั เมอ่ื ปี พ.ศ. 2550 พรอ้ มกบั การก่อต้งั โอเพนแฮนดเ์ ซตอลั ไลแอนซ์ ซึ่งเป็ นกลุ่มของ บริษัทผลิตฮารด์ แวร,์ ซอฟตแ์ วร์ และการสื่อสารคมนาคม ท่ีร่วมมอื กนั สรา้ งมาตรฐานเปิ ด สาหรบั อุปกรณพ์ กพา โดยสมารต์ โฟนที่ใช้ ระบบปฏิบตั ิการแอนดรอยดเ์ คร่ืองแรกของโลกคือ เอชทีซี ดรีม วาง จาหน่ายเมื่อปี พ.ศ. 2551
โครงสรา้ งของระบบปฏิบตั ิการ Android การทาความเขา้ ใจโครงสรา้ งของระบบปฏิบตั ิการแอนดรอยด์ ถือวา่ เป็ นสิ่งสาคญั เพราะถา้ นักพฒั นาโปรแกรม สามารถมองภาพโดยรวมของระบบไดท้ ้งั หมด จะให้ สามารถเขา้ ใจถึงกระบวนการทางานไดด้ ียงิ่ ข้ นึ และสามารถนาไปชว่ ยในการ ออกแบบโปรแกรมท่ีตอ้ งการพฒั นา เพือ่ ใหเ้ กิดประสิทธิภาพในการทางานจาก โครงสรา้ งของระบบปฏิบตั ิการแอนดรอยด์ จะสงั เกตไดว้ า่ มีการแบ่งออกมาเป็ น ส่วนๆ ที่มีความเก่ียวเน่ืองกนั โดยส่วนบนสุดจะเป็ นส่วนท่ีผูใ้ ชง้ านทาการติดต่อ โดยตรงซ่ึงก็คือส่วนของ (Applications) จากน้ันก็จะลาดบั ลงมาเป็ นองคป์ ระกอบ อ่ืนๆตามลาดบั และสุดทา้ ยจะเป็ นส่วนที่ติดตอ่ กบั อุปกรณโ์ ดยผ่านทาง Linux Kernel โครงสรา้ งของแอนดรอยด์ พอที่จะอธิบายเป็ นส่วนๆไดด้ งั น้ ี
1.Applications หรือสว่ นของโปรแกรมท่ีมมี ากบั ระบบปฏิบตั ิการ หรือเป็ น กลุม่ ของโปรแกรมที่ผใู้ ชง้ านไดท้ าการติดต้งั ไว้ โดยผใู้ ชง้ านสามารถเรียกใช้ โปรแกรมต่างๆไดโ้ ดยตรง ซึ่งการทางานของแต่ละโปรแกรมจะเป็ นไป ตามท่ีผพู้ ฒั นาโปรแกรมไดอ้ อกแบบและเขียนโคด้ โปรแกรมเอาไว้
2.Application Framework เป็ นส่วนที่มกี ารพฒั นาข้ ึนเพอ่ื ใหน้ ักพฒั นา สามารถพฒั นาโปรแกรมไดส้ ะดวก และมปี ระสิทธิภาพมากยง่ิ ข้ ึน โดย นักพฒั นาไมจ่ าเป็ นตอ้ งพฒั นาในสว่ นท่ีมคี วามยุง่ ยากมากๆ เพียงแค่ ทาการศึกษาถึงวธิ ีการเรียกใชง้ าน Application Framework ในส่วนที่ ตอ้ งการใชง้ าน แลว้ นามาใชง้ าน ซึ่งมีหลายกลุ่มดว้ ยกนั ตวั อยา่ งเช่น 2.1 Activities Manager เป็ นกลุม่ ของชุดคาสงั่ ท่ีจดั การเก่ียวกบั วงจร การทางานของหน้าต่างโปรแกรม(Activity) 2.2 Content Providers เป็ นกลุ่มของชุดคาสงั่ ท่ีใชใ้ นการเขา้ ถึงขอ้ มลู ของโปรแกรมอื่น และสามารถแบ่งปันขอ้ มลู ใหโ้ ปรแกรมอ่ืนเขา้ ถึงได้
2.3 View System เป็ นกลุ่มของชุดคาสงั่ ท่ีเก่ียวกบั การจดั การโครงสรา้ งของ หนา้ จอที่แสดงผลในส่วนท่ีติดตอ่ กบั ผูใ้ ชง้ าน (User Interface) 2.4 Telephony Manager เป็ นกลุ่มของชุดคาสงั่ ท่ีใชใ้ นการเขา้ ถึงขอ้ มลู ดา้ น โทรศพั ท์ เชน่ หมายเลขโทรศพั ท์ เป็ นตน้ 2.5 Resource Manager เป็ นกลุม่ ของชุดคาสงั่ ในการเขา้ ถึงขอ้ มลู ที่เป็ น ขอ้ ความ รูปภาพ 2.6 Location Manager เป็ นกลุ่มของชุดคาสงั่ ท่ีเก่ียวกบั ตาแหน่งทางภูมิศาสตร์ ท่ีระบบปฏิบตั ิการไดร้ บั ค่าจากอุปกรณ์ 2.7 Notification Manager เป็ นกลุม่ ของชุดคาสงั่ ที่จะถูกเรียกใชเ้ ม่ือโปรแกรม ตอ้ งการแสดงผลใหก้ บั ผูใ้ ชง้ าน ผ่านทางแถบสถานะ(Status Bar) ของหนา้ จอ
3.Libraries เป็ นสว่ นของชุดคาสงั่ ที่พฒั นาดว้ ย C/C++ โดยแบง่ ชุดคาสงั่ ออกเป็ นกลุม่ ตามวตั ถุประสงคข์ องการใชง้ าน เชน่ Surface Manage จดั การเกี่ยวกบั การแสดงผล, Media Framework จดั การเก่ียวกบั การการ แสดงภาพและเสียง, Open GL | ES และ SGL จดั การเกี่ยวกบั ภาพ 3มติ ิ และ 2มิติ, SQLlite จดั การเก่ียวกบั ระบบฐานขอ้ มลู เป็ นตน้
4.Android Runtime จะมี Darvik Virtual Machine ท่ีถูกออกแบบมา เพือ่ ให้ ทางานบนอุปกรณท์ ่ีมี หน่วยความจา(Memmory), หน่วยประมวลผลกลาง (CPU) และพลงั งาน(Battery)ท่ีจากดั ซึ่งการทางานของ Darvik Virtual Machine จะทาการแปลงไฟลท์ ่ีตอ้ งการทางาน ไปเป็ นไฟล์ .DEX ก่อนการ ทางาน เหตุผลก็เพ่อื ใหม้ ปี ระสิทธิภาพเพ่มิ ข้ ึนเมื่อใชง้ านกบั หน่วย ประมวลผลกลางที่มคี วามเร็วไมม่ าก ส่วนต่อมาคือ Core Libraries ที่เป็ น สว่ นรวบรวมคาสงั่ และชุดคาสงั่ สาคญั โดยถูกเขียนดว้ ยภาษาจาวา (Java Language)
5.Linux Kernel เป็ นสว่ นท่ีทาหนา้ ท่ีหวั ใจสาคญั ในจดั การกบั บริการหลกั ของระบบปฏิบตั ิการ เชน่ เรื่องหน่วยความจา พลงั งาน ติดต่อกบั อุปกรณ์ ต่างๆ ความปลอดภยั เครือข่าย โดยแอนดรอยดไ์ ดน้ าเอาสว่ นน้ ีมาจาก ระบบปฏิบตั ิการลินุกซ์ รุ่น 2.6 (Linux 26. Kernel) ซ่ึงไดม้ กี ารออกแบบ มาเป็ นอยา่ งดี
คุณสมบตั ิของระบบปฏิบตั ิการ Android 1. การเช่ือมต่อ เทคโนโลยกี ารเช่ือมต่อที่แอนดรอยดส์ นันสนุนประกอบ ดว้ ย GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, NFC และ WiMAX 2. Messaging สนับสนุน SMS, MMS, Threaded Text Messaging และ Cloud To Device Messaging Framework (C2DM) 3. การจดั เก็บขอ้ มลู แอนดรอยดม์ ี SQLite ซ่ึงเป็ นฐานขอ้ มลู เชิงสมั พนั ธ์ ขนาดเล็ก (lightweight) ท่ีมีประสิทธิภาพสงู สาหรบั ใชจ้ ดั เก็บขอ้ มลู
4.เวบ็ บราวเซอร์ แอนดรอยดต์ ิดต้งั มาพรอ้ มกบั โปรแกรมเวบ็ บราวเซอรท์ ี่ พฒั นาบนเอ็นจ้ นิ WebKit และใชจ้ าวาสคลิปตเ์ อ็นจ้ นิ V8 ของเวบ็ บราวเซอร์ Google Chrome 5. มเี ดีย (Media) สนับสนุนเสียง วดี ีโอ และรูปภาพในฟอรแ์ มตยอดนิยม ต่าง ๆ เชน่ MPEG4, H.264, MP3, AAC, AMR, JPG และ PNG 6. สตรีมมงิ (Streaming) สนับสนุน RTP/RTSP streaming และ HTML progressive download (แท็ก <video> ของ HTML5)
7. สนับสนุนจาวา การพฒั นาแอพพลิเคชนั่ บนแอนดรอยดจ์ ะใชภ้ าษา JAVA โดยโคด้ JAVA คอมไพลแ์ ลว้ จะไมไ่ ดร้ นั ใน Java Virtual Machine (JVM) เหมอื น JAVA Application ทวั่ ไป แต่จะรนั ใน Dalvik Virtual Machine ซ่ึงเป็ น VM ท่ีกูเกิลพฒั นาข้ ึนสาหรบั อุปกรณพ์ กพาโดยเฉพาะ 8. มลั ติทชั (Multi-touch) รองรบั การใชน้ ้ ิวมอื แตะหน้าจอเพ่อื สงั่ งานได้ มากกวา่ 1 จุดพรอ้ มกนั 9. มลั ติทาสกิง (Mulit-tasking) คือความสามารถในการรนั หลาย แอพพลิเคชนั่ พรอ้ มกนั 10. Tethering (หรือ Mobile Hotspot) คือความสามารถในการแชร์ อินเทอรเ์ น็ตผ่านมือถือหรืออุปกรณแ์ อนดรอยด์
11. สนับสนุนฮารด์ แวรเ์ สริมอื่น ๆ เช่น กลอ้ งถ่ายรูป, GPS, Accelerometer และเทอรโ์ มมเิ ตอร์ เป็ นตน้ 12. สนันสนุนหลายภาษา
ประเภทของระบบปฏบิ ตั ิการ Android เนื่องจากระบบปฏิบตั ิการ Android เป็ นซอฟแวรร์ ะบบเปิ ด จึงอนุญาตให้ นักพฒั นาหรือผทู้ ่ีสนใจสามารถดาวน์โหลด Source Code ได้ จงึ ทาให้ ผพู้ ฒั นาหลายๆฝ่ ายนา Source Code มาปรบั แต่งและพฒั นาสรา้ ง แอพพลิเคชนั่ บนระบบ Android ในฉบบั ของตนเองมากข้ ึนโดยสามารถแบง่ ระบบปฏิบตั ิการของ Android ออกเป็ น 3 กลุ่มประเภทใหญ่ๆ ดงั ต่อไปน้ ี
1.Android Opensource Project (AOSP) เป็ นระบบปฏิบตั ิการแรกท่ี Google เปิ ดใหส้ ามารถดาวน์โหลด Source Code ไปติดต้งั และใชง้ านใน อุปกรณต์ ่างๆไดโ้ ดยไมเ่ สียคา่ ใชจ้ า่ ย
2.Open Handset Mobile (OHM) เป็ นแอนดรอยดท์ ่ีไดร้ บั การพฒั นา ร่วมกบั Open Handset Alliances (OHA) ซ่ึงบริษัทเหล่าน้ ีจะพฒั นาระบบ Android ในแบบฉบบั ของตนเอง โดยมีรูปรา่ งหนา้ ตาการแสดงผลที่ แตกต่างกนั รวมไปถึงอาจจะมีเอกลกั ษณแ์ ละรปู แบบการใชง้ านเป็ นของแต่ ละบริษัท และโปรแกรมแอนดรอยดป์ ระเภทน้ ีก็จะไดร้ บั สิทธิบริการเสริม ต่างๆจาก Google ที่เรียกวา่ GMS (Google Mobile Service) ซึ่งเป็ น บริการเสริมท่ีทาให้ Android มีประสิทธิภาพมากข้ ึนนัน่ เอง
3.Cooking or Customize เป็ นระบบแอนดรอยดท์ ่ีนักพฒั นานาเอา Source Code จากแหล่งต่างๆมาปรบั แต่งใหอ้ ยใู่ นแบบฉบบั ของตนเอง ซึ่งการ พฒั นาตอ้ งปลดล็อคสิทธิในการใชง้ านอุปกรณ์ (Unlock) เสียกอ่ นจึงจะ สามารถติดต้งั ได้ ท้งั น้ ีระบบแอนดรอยดป์ ระเภทน้ ีถือเป็ นประเภทท่ีมี ความสามารถสงู สุด เนื่องจากไดร้ บั การปรบั แต่งขีดความาสามารถตา่ งๆ ใหม้ คี วามเขา้ กนั ไดก้ บั อุปกรณน์ ้ันๆ จากผใู้ ชง้ านจริง
แหล่งอา้ งอิง https://sites.google.com/site/pornthipya/pra-wati-khaw-m-pen-ma https://sites.google.com/a/thantong.ac.th/rabb-ptibati-kar- android/khorngsrang-khxng-android https://sites.google.com/site/librarians53gglass/home/khwam-hmay http://android-basicapp.blogspot.com/2012/12/blog-post.html
Search
Read the Text Version
- 1 - 18
Pages: