1




                            รายงาน
                     เรื่อง Google Android




                             เสนอ
...
2



                                            คํานํา

        ในปจจุบันระบบปฏิบัติการไมไดมีจํากัดเพียงแคเครื่องคอมพ...
3



                                    สารบัญ
                                             หนา

Google Android
คํานํา  ...
4



รูจักกับ Android




        Android คือแพลตฟอรมใหมสําหรับโทรศัพทมือถือและอุปกรณพกพา ซึ่งประกอบดวย
ระบบปฏิบัติก...
5




                      รูปแสดงโทรศัพทมือถือ HTC Hero ที่ใช Android

         จุดเดนของ Android นั้นอยูที่การออกแบ...
6



ลักษณะพิเศษของ Android
1. Open
Android SDK เปดโอกาสใหนักพัฒนาสามารถเขาถึง Core Function ในการใชงานโทรศัพทได
อย...
7



คุณสมบัตทั่วไปของ Android
          ิ
ประเภท : Free and open source software
แพลตฟอรมที่สนับสนุน :
- ARM (Advanced R...
8



สถาปตยกรรมของ Android
จากรูป Android จะประกอบดวย องคประกอบหลักอยู 5 สวน ดังนี้




                             ...
9



2. เฟรมเวิรค (Application Framework)




      นักพัฒนาสามารถพัฒนาโปรแกรมบน Android โดยใชภาษา Java ผานทาง API
(App...
10



        - Media Library โดย Android สรับสนุนการใชงานไฟลฟอรแมตตางๆ เชน MPEG4,
H.264, MP3, AAC, AMR, JPG และ JPG
...
11



จัดการ Memory, ระบบการจัดการ process , ระบบเนตเวิรค (network stack) อยางมี
ประสิทธิภาพ ใน Linux Kernel ที่ใชใน An...
12




สําหรับ Linux Kernel ที่ใชเปนชนิด Monolithic Kernel




          Monolithic Kernel เปนสถาปตยกรรมที่ระบบปฏิบัติ...
13




                             Android เวอรชั่นตางๆ




                 On 30 April 2009, the official 1.5 (Cupcak...
14



                      history, contacts, and the web from the home screen.
                     Updated Technology ...
15



เอกสารอางอิง

ยินดีตอนรับสู ThaiAndroidClub.com
http://www.thaiandroidclub.com/

Thailand Android Community : สัง...
Upcoming SlideShare
Loading in...5
×

รายงาน Google Android - Know2pro.com

3,523

Published on

รายงาน Google Android
เน้นโครงสร้า้งและสถาปัตยกรรมภายใน
- Know2pro.com

1 Comment
1 Like
Statistics
Notes
No Downloads
Views
Total Views
3,523
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
159
Comments
1
Likes
1
Embeds 0
No embeds

No notes for slide

รายงาน Google Android - Know2pro.com

  1. 1. 1 รายงาน เรื่อง Google Android เสนอ อาจารย ธนิต เกตุแกว จัดทําโดย นาย ปยะณัฐ แยบคาย รหัส 50523206013-5 นาย ศุภรักษ สมศรี รหัส 50523206025-9 วศ.บ.คพ. 3 รายงานนี้เปนสวนหนึ่งของรายวิชา Operation System (04-720-302) คณะวิชา วิศวกรรมศาสตร สาขาวิชา วิศวกรรมคอมพิวเตอร มหาวิทยาลัยเทคโนโลยีราชมงคลลานนา เขตพื้นที่ภาคพายัพ เชียงใหม ประจําภาคเรียนที่ 2 ปการศึกษา 2552
  2. 2. 2 คํานํา ในปจจุบันระบบปฏิบัติการไมไดมีจํากัดเพียงแคเครื่องคอมพิวเตอรเทานั้น แตยังรวมไปถึง อุปกรณในหลายๆประเภทเชน โทรศัพทมือถือ ซึ่งกําลังไดรับความนิยมเพิ่มมากขึ้น โดยใน โทรศัพทมือถือไดมีการพัฒนาความสามารถใหมๆเขาไปอยางมากมาย เชน กลองดิจิตอล ระบบ Touchscreen นั่นเปนเหตุผลวาทําไม จึงไดมีการสรางระบบปฎิบัติการขึ้น นั่นก็เพราะเมื่อมี อุปกรณและความสามารถที่เพิ่มมากขึ้น ก็จําเปนตองมีระบบเขามาบริหารจัดการเพื่อเพื่อ ประสิทธิภาพในการใชงาน อยางไรก็ตาม ระบบปฎิบัติการในโทรศัพทไดมีการพัฒนาขึ้นมาจากหลายๆบริษัท เชน Symbian ,Windows Phone แตที่กําลังไดรับความสนใจมากคือ Google Android เพราะเปน OpenSource ที่แจกจายได สามารถนําไปพัฒนาแกไขได บริษัทชั้นนําตางๆก็ไดเริ่มผลิตและ จําหนายโทรศัพท Android กันมาบางแลว นั่นก็เพราะไมตองเสียคาลิขสิทธิ์และยังสามารถนํามา พัฒนาใหอยูในรูปแบบที่ตองการไดดวย ดังนั้น การศึกษาระบบ Android นั้นจึงเปนสิ่งสําคัญ เพื่อใหทราบถึงขอมูลตางๆที่เปน ประโยชน ทั้งการนําไปพัฒนาหรือเพื่อรับทราบขาวสารใหทันตอเทคโนโลยีที่จะเกิดขึ้นตอไปใน อนาคต ผูจัดทํา นาย ปยะณัฐ แยบคาย นาย ศุภรักษ สมศรี
  3. 3. 3 สารบัญ หนา Google Android คํานํา 1 สารบัญ 2 รูจักกับ Android 4 ลักษณะพิเศษของ Android 6 คุณสมบัติทั่วไปของ Android 7 สถาปตยกรรมบน Android 8 - Application 8 - Application Framework 9 - Libraries 9 - Android Runtime 10 - Linux Kernel 10 Android เวอรชั่นตางๆ 13 เอกสารอางอิง 15
  4. 4. 4 รูจักกับ Android Android คือแพลตฟอรมใหมสําหรับโทรศัพทมือถือและอุปกรณพกพา ซึ่งประกอบดวย ระบบปฏิบัติการ ไลบรารี เฟรมเวิรค และซอฟตแวรอื่นๆ ที่จําเปนในการพัฒนา มันเทียบเทากับ Windows Mobile, Palm OS, Symbian, OpenMoko และ Maemo ของโนเกีย โดยจับตลาดมือ ถือรุนใหมๆ ความสามารถสูงๆ (ซึ่งเกิดจากการกระตุนตลาดของ iPhone) ถึงจะเปนแพลตฟอรม ใหม แต Android ก็ใชองคประกอบที่เปนโอเพนซอรสหลายอยาง เชน Linux Kernel, SSL, OpenGL, FreeType, SQLite, WebKit และเขียนไลบรารี+เฟรมเวิรคของตัวเองเพิ่มเติม ซึ่ง ทั้งหมดจะเปนโอเพนซอรส (ใช Apache License) Google Android พัฒนาโดยบริษัทกูเกิล และ Open Handset Alliance ทางกูเกิลไดเปดใหนักพัฒนาสมามารถแกใขโคตตางๆ ดวยภาษาจาวา และควบคุมอุปกรณผานทางชุด Java libraries ที่กูเกิลพัฒนาขึ้น แอนดรอยดไดเปนที่รูจักตอ สาธารณชนเมื่อวันที่ 5 พฤศจิกายน พ.ศ. 2550 โดยทางกูเกิลไดประกาศกอตั้ง Open Handset Alliance กลุมบริษัทฮารดแวร, ซอฟตแวร และการสื่อสาร 48 แหง ที่รวมมือกันเพื่อพัฒนา มาตราฐานเปด สําหรับอุปกรณมือถือ ลิขสิทธิ์ของโคดแอนดรอยดนี้จะใชในลักษณะของซอฟตแวร เสรี
  5. 5. 5 รูปแสดงโทรศัพทมือถือ HTC Hero ที่ใช Android จุดเดนของ Android นั้นอยูที่การออกแบบระบบปฏิบัติการมาใหมีความสามารถได ใกลเคียงกับคอมพิวเตอรพกพาขนาดยอมที่ทํางานไดบนโทรศัพทมือถือ โดยยังคงเรื่องความ คลองตัวในการใชงานที่คอนขางมาก นอกจากนี้ Google Android นั้นเปนแบบระบบเปด คือ เปด โอกาสใหบริษัทและนักพัฒนาสามารถมีสวนรวมในการสรางระบบปฏิบัติการได ดวย และยังไม จํากัดการใชงานเฉพาะบนโทรศัพทมือถือจากคายใดคายหนึ่ง นั่นทําใหเราจะไดเห็น Androidจาก ผูผลิตโทรศัพทมือถือเกือบทุกราย ตางจาก Apple iPhone หรือ BlackBerry ที่ใชระบบปด ทําใหมี โทรศัพทมือถือออกมาจากคายใดคายหนึ่งเพียงคายเดียว รูปแสดง Android Emulator ในหนา home screen. ซึ่งอยูในชุด SDK
  6. 6. 6 ลักษณะพิเศษของ Android 1. Open Android SDK เปดโอกาสใหนักพัฒนาสามารถเขาถึง Core Function ในการใชงานโทรศัพทได อยางเต็มรูปแบบเชน การโทรออก, สง SMS, หรือใชงานกลอง Android นั้น Run บน Virtual Machine ที่มีชื่อวา Dalvik สวน runtime จริง ๆ ก็คือ Linux Kernel ที่สําคัญ Android เปน Open Source ซึ่งอาจจะทําใหเกิดความเปลี่ยนแปลงใน Technology ของโทรศัพทมือถือขึ้นได 2. All applications are created equal จากเหตุผลขางตนทําให Core Application ของโทรศัพท หรือพวก 3rd Party App จะสามารถใช งานไดไมตางกัน เนื่องจาก SDK ที่ 'Open' ใหเขียนโปรแกรมเรียกการทํางาน Core Function ได ในมุมมอง User ก็จะได ผลประโยชนมากขึ้น ยกตัวอยางเชน User สามารถใช 3rd Party Application ในการ call แต Application นั้นมี Interface สวยงาม สามารถเลือก wallpaper ได ตามใจชอบได ซึ่งตางจาก Core Application ที่อาจจะซ้ําซากจําเจ นาเบื่อ เปนตน 3. Breaking down application boundaries Android ไดทลายกําแพงในการพัฒนา Software ซึ่งกอใหเกิดนวัตกรรมใหม ๆ ในการพัฒนา Software เชน Developer สามารถเขียน Program ดึงรายชื่อ Contract ใน Web, MSN มารวม กับใน Contract List ของโทรศัพทได หรือจะใชโทรศัพทในการดูตําแหนงที่เพื่อน ๆ อยูได 4. Fast & easy application development Android ไดเตรียม lib & tool ในการพัฒนา Application ไวอยางมากมายยกตัวอยางเชน การ Connect กับอีกเครื่องนึงแบบ peer-to-peer ซึ่งสิ่งตาง ๆ เหลานี้ทําใหการพัฒนา Application บน Android สามารถทําไดงายและรวดเร็ว
  7. 7. 7 คุณสมบัตทั่วไปของ Android ิ ประเภท : Free and open source software แพลตฟอรมที่สนับสนุน : - ARM (Advanced RISC Machine) เปน หนวยประมวลผล 32 bit แบบ RISC ถูกนําไปใชบน อุปกรณพกพาเชน โทรศัพทมือถือ PDA SmartPhone ผลิตโดย ARM Limited - MIPS (Microprocessor without Interlocked Pipeline Stages) เปน หนวยประมวลผล 32 bit แบบ RISC ผลิตโดย MIPS Computer Systems (ปจจุบันคือ MIPS Technologies) - Power Architecture เปน หนวยประมวลผล 32 bit แบบ RISC ผลิตรวมโดย IBM, Freescale, AMCC, Tundra และ P.A. Semi ซึ่งเปนผูผลิต PowerPC - x86 เปน หนวยประมวลผล 32 bit แบบ CISC เปนสถาปตยกรรมที่ไดรับความนิยมมากที่สุดใน ตลาดคอมพิวเตอรเดสกท็อป,โนตบุคและเซิรฟเวอรขนาดเล็ก ซึ่งก็คือ CPU จาก Intel, AMD, VIA และอื่นๆ เว็บบราวเซอร :ใช WebKit application framework. ซึ่งเปน OpenSource การแสดงผล : ใชงานระบบ VGA, 2D graphics library สวน 3D graphic Library ใช OpenGL ES 1.0 การจัดเก็บขอมูล : SQLite สําหรับเก็บขอมูล การสนับสนุน Java : Software จะเขียนดวยภาษา Java และถูกคอมไพลดวย Dalvik virtual machine ระบบ Media : รองรับไฟล เพลง, วิดิโอ, หรือ ภาพนิ่ง เชน H.263, H.264 (ใน 3GP หรือ MP4 container), MPEG-4 SP, AMR, AMR-WB (ใน 3GP container), AAC, HE-AAC (ใน MP4 หรือ 3GP container), MP3, MIDI, OGG Vorbis, WAV, JPEG, PNG, GIF, BMP การเชื่อมตอ : รองรับระบบ GSM/EDGE, CDMA, EV-DO, UMTS, Bluetooth, และ Wi-Fi. ขอความ : รองรับ SMS และ MMS และระบบอื่นๆที่เกี่ยวของกับการสงขอความ Hardware อื่นๆที่สนับสนุน : กลองวิดีโอ,กลองภาพนิ่ง, Touchscreens,GPS, accelerometers,magnetometers,accelerated 2D bitblits (with hardware orientation,scaling,pixel format conversion) และ accelerated 3D graphics. คุณสมบัติอื่นๆ : มีระบบ Device Emulator สําหรับนักพัฒนา ,Plugin สําหรับ Elipse IDE
  8. 8. 8 สถาปตยกรรมของ Android จากรูป Android จะประกอบดวย องคประกอบหลักอยู 5 สวน ดังนี้ รูปแสดงสถาปตยกรรม Android 1. ซอฟแวรทั่วไป (Applications) อุปกรณพกพาที่ติดตั้ง Android จะมาพรอมโปรแกรมหลักที่ไวใชงานทั่วไป เชน โปรแกรม รับสงอีเมล, SMS, ปฏิทิน, แผนที,่ Browser (ใช WebKit เปน Engine) เครื่องมือจัดการสมุด โทรศัพท และโปรแกรมหลักอื่นๆ
  9. 9. 9 2. เฟรมเวิรค (Application Framework) นักพัฒนาสามารถพัฒนาโปรแกรมบน Android โดยใชภาษา Java ผานทาง API (Application Programming Interface) โดยสามารถเขาถึงระบบและขอมูลตางๆ ที่อยูบน Android ดังนี้ - Views ประกอบดวย UI ชนิดตางๆ ที่ใชในการพัฒนาโปรแกรม เชน lists, grids, text boxes, buttons รวมไปถึง Event และเว็บบราวเซอร - Content Provider โปรแกรมที่พฒนาบน Android จะสามารถสงขอมูลถึงกันผานทาง ั Content Provider เชน เราสามารถพัฒนาโปรแกรมเพื่อไปดึงขอมูลรายชื่อที่อยูใน Contacts ได - Resource Manager เปนตัวจัดการเรื่องรูปภาพ, Localized strings และขอมูลอื่นๆ ที่ นอกเหนือจาก Code ของโปรแกรม - Activity Manager นักพัฒนาสามารถสราง Custom Alert และสงไปแสดงผลที่ Status Bar โดยผาน Activity Manager ทั้งหมดนั้นทําใหนักพัฒนาโปรแกรมมีสิทธิอยางเต็มที่ในการเขาถึง Application Framework และทําใหสามารถใชประโยชนจากการประมวลผลและความสามารถอื่นๆ เพื่อสราง Android Application ที่มีความหลากหลายมากขึ้นได 3. ชุดพัฒนา (Libraries) Android Libraries ประกอบดวยชุดพัฒนาของ C/C++ อื่นๆ ที่สามารถใชงานผานทาง API ของเฟรมเวิรคที่ Android ไดจัดไวให (API เปนภาษา Java) - System C Library ไลบรารีมาตรฐานของ C (C system library) ปรับปรุงพิเศษสําหรับ อุปกรณที่รันบน Linux
  10. 10. 10 - Media Library โดย Android สรับสนุนการใชงานไฟลฟอรแมตตางๆ เชน MPEG4, H.264, MP3, AAC, AMR, JPG และ JPG - Surface Manager เปนตัวจัดการระบบแสดงผล และควบคุมบนจอภาพ Libraries อื่นๆ เชน 3D Acceleration Library ที่ใชในการควบคุมอุปกรณที่มี Accelerometer เปนตน 4. รันไทม (Android Runtime) ถึงแมวาโปรแกรมบน Android จะพัฒนาโดยใชภาษา Java แต Google กลับไมเลือกที่ใช Java Virtual Machine ของ Sun Microsystem ในการรันโปรแกรม แตกลับพัฒนา Dalvik Virtual Machine ที่ มีพื้นฐานจาก Apache Harmony ขึ้นมาใชเอง โดย Google อางวา Dalvik ไดรับการปรับปรุงในเรื่อง Memory เพื่อใหเหมาะกับการใชงานบนโทรศัพทมือถือ และอนุญาติให VM หลายๆ ตัวรันพรอม กันไดเพื่อใหโปรแกรมทํางานไดอยางมีประสิทธิภาพดียิ่งขึ้น โปรแกรมที่ถูกพัฒนา เมื่อ Compile เปนไบโคด (.class) แลว จําเปนตองผานการแปลงให เปนไฟล (.dex) ดวยตัวแปลง "dx" เพื่อให สามารถรันบน Dalvik Virtual Machie ได 5. ลินุกสเคอรแนล (Linux Kernel) Android พัฒนาบน Linux Kernel 2.6 ซึ่งเปนสวนที่สําคัญของระบบ Android และเปน แกนหลักของการทํางานทั้งหมด โดยภายในเคอรเนล จะประกอบไปดวยโมดูล (Module) ตางๆ และบางครั้งเราอาจจะเรียกโมดูลเหลานี้วา ไดรเวอร (Driver) ซึ่งมีหนาที่เปนตัวกลางในการ ติดตอกันระหวางแอพพลิเคชันหรือ ระบบปฏิบัติการกับอุปกรณฮารดแวรทั้งหมด ทั้งภายในและ นอก อีกทั้งยังจัดการ ประสานงานกับระบบตางๆ เชนระบบความปลอดภัย (Security), ระบบการ
  11. 11. 11 จัดการ Memory, ระบบการจัดการ process , ระบบเนตเวิรค (network stack) อยางมี ประสิทธิภาพ ใน Linux Kernel ที่ใชใน Android จะประกอบไปดวย - Display Driver - Camera Driver - Flash Memory Driver - Binder (IPC) Driver - Keypad Driver - WiFi Driver - Audio Driver - Power management จะสังเกตไดวาภายใน Kernel นั้นจะมี Driver ที่ใชในการควบคุมการทํางานของอุปกรณตางๆ โดย ที่สามารถทํางานไดกับอุปกรณหลายรุน หลายผูผลิต
  12. 12. 12 สําหรับ Linux Kernel ที่ใชเปนชนิด Monolithic Kernel Monolithic Kernel เปนสถาปตยกรรมที่ระบบปฏิบัติการจะทํางานภายใน Kernel Space (พื้นที่สงวนที่ใชรันคําสั่งของ Kernel มีไวเพื่อให Kernel สามารถทํางานไดอยางตอเนื่อง) และ ทํางานบน Supervisor mode Monolithic Kernel แตกตางจากสถาปตยกรรมอื่นๆ คือ Monolithic Kernel จะกําหนด Virtual Interface ระดับสูงซึ่งสูงกวาอุปกรณคอมพิวเตอรกับ system calls (โปรแกรมยอยทํา หนาที่ในการติดตอระหวางระบบปฏิบัติการกับการโปรแกรมของผูใชหรือกระบวนการที่เกิดขึ้น) เพื่อใหใช Service ทั้งหมดของระบบปฏิบัติการ เชน Process Management(ระบบจัดการโพ รเซส), Concurrency(ประมวลผลหลายๆงานไปไดพรอมกัน), Memory Management(ระบบ จัดการหนวยความจํา) ดวยตัวเองและหนึ่งหรือหลายๆ ก็คือ Module สถาปตยกรรม Monolithic Kernel ถูกใชใน Linux, Unix(BSD,Solaris,Slaxware), DOS,Windows 9x-ME, MacOS 8.6
  13. 13. 13 Android เวอรชั่นตางๆ On 30 April 2009, the official 1.5 (Cupcake) update for Android was released. There are several new features and UI updates included in the 1.5 update:  Ability to record and watch videos with the camcorder mode  Uploading videos to YouTube and pictures to Picasa 1.5 (Cupcake) directly from the phone  A new soft keyboard with an "Autocomplete" feature  Ability to automatically connect to a Bluetooth headset within a certain distance  New widgets and folders that can populate the desktop  Animations between screens  Expanded ability of Copy and paste to include web pages On 15 September 2009, the 1.6 (Donut) SDK was released. Included in the update are:  An improved Android Market experience.  An integrated camera, camcorder, and gallery interface. 1.6 (Doughnut)  Gallery now enables users to select multiple photos for deletion.  Updated Voice Search, with faster response and deeper integration with native applications, including the ability to dial contacts.  Updated search experience to allow searching bookmarks,
  14. 14. 14 history, contacts, and the web from the home screen.  Updated Technology support for CDMA/EVDO, 802.1x VPN, Gestures, and a Text-to-speech engine  Speed improvements for searching, the camera On 26 October 2009 the 2.0 (Eclair) SDK was released. Among the changes are:  Optimized hardware speed  "Car Home" app  Support for more screen sizes and resolutions  Revamped UI  New browser UI 2.0 (Eclair)  New contact lists  Better white/black ratio for backgrounds  Improved Google Maps 3.1.2  Microsoft Exchange support  Built in flash support for Camera  Digital Zoom  Improved virtual keyboard  Bluetooth 2.1
  15. 15. 15 เอกสารอางอิง ยินดีตอนรับสู ThaiAndroidClub.com http://www.thaiandroidclub.com/ Thailand Android Community : สังคมชาว Android http://www.siamandroid.com/forum/ DroidSans :: Thailand Android Developer Community http://www.droidsans.com/ รูจักกับ Google Android http://www.siamandroid.com/forum/index.php?topic=19.0 Android (operating system) http://en.wikipedia.org/wiki/Android_%28operating_system%29 รูจักกับ Android http://siamdepot.com/index.php?option=com_content&view=article&id=22:what-is- android&catid=10:android-toturial&Itemid=90

×