Android Overview

Total Page:16

File Type:pdf, Size:1020Kb

Android Overview Android Overview Feng Qin [email protected] CSE Dept., The Ohio State University Outline • What is Android? • Why Android? • Android Architecture • Android v.s. Linux What is Android? • A open-source and comprehensive platform for mobile devices – Linux-based OS – Dalvik VM (Java programming) – Application Framework • Developed by Open Handset Alliance led by Google Why Android? • Extremely popular – Best-selling smartphone platform worldwide in Q4 2010 – Over 300 million Android devices in use by Feb. 2012 – Over 850,000 Android devices activated every day • Open source – Based on Linux kernel – We can study the code Android Versions • Google purchased Android Inc. in 2005 • Android 1.5 Cupcake • Android 1.6 Donut • Android 2.0, 2.1 Éclair • Android 2.2 Froyo • Android 2.3.x Gingerbread • Android 3.x.x Honeycomb • Android 4.0.x Ice Cream Sandwich Group Discussion • Why do we need different Operating Systems for mobile devices? – Differences between mobile devices such as smartphones and non-mobile devices such as desktop/servers • 5-6 students form a group Android System Architecture Target Hardware Architecture • Linux supports many different architectures – Initially created in 1991 as by Linus Torvalds – Next slide shows the history • Android trims down the supported architectures to x86 and ARM. UNIX Family Why ARM Architecture? • ARM: Advanced RISC Machine, developed by ARM Holdings. • ARM is a RISC instruction set architecture – Much simpler for execution than CISC ISA. – Focused on low power design, perfectly fit for mobile devices – Licensed to many companies, e.g., Apple, Nvidia, and TI. More on ARM • Provide the following RISC features: – Load/Store architecture – No support for misaligned memory accesses (mostly) – Uniform 16 x 32-bit register files – Fixed instruction width of 32 bits – Mostly single clock-cycle execution • Low power consumption – E.g., ARM7100 consumes 72mW when operating at 14MIPS, 33 mW in idle mode, 33 uW during standby – Atom (x86) operates at ~1W Kernel Modification • Removed Support: – Most architectures except for ARM and x86 – …. • New enhancement: – Alarm driver – Ashmem – Binder driver – Power management – Low memory killer – Drivers for mobile device-specific components Bionic C Library • GNU C library is designed for good performance, instead of constrained memory • Bionic libc: a simple implementation based on BSD standard C library. – BSD license (allow proprietary use), isolating Android apps from GPL (kernel license) – Small size and good speed for CPUs with relatively low clock frequencies More on Bionic C Library • Provide lightweight wrappers around kernel facilities – Syscall stubs – Simple pthread implementation bundled in: highly optimized for common operations – Not provide read/write memory barriers – No support on C++ exceptions – Some Android-specific features … Dalvik Virtual Machine • Java-compatible: – Developers write programs in Java and compile to Java class files – dx translates Java bytecode into dex file that can run in Dalvik VM • Dalvik VM optimized for mobile devices with limited resources – E.g., shared constant pools with 32-bit indices Group Discussion • What are Security and Privacy issues in mobile devices? • How do we handle them? Memory Management • ION Memory Allocator (for Android 4.0.x) – Consolidated previous versions of memory managements for different Android devices, e.g., “PMEM” for Qualcomm MSM devices, “NVMAP” for NVIDIA Tegra devices • Low Memory Killer – Kill processes when system is under memory pressure Group Discussion • Policies for Low Memory Killer – Which apps to kill first? – Why? Storage and File System • New storage media – NAND: low cost, high density, and offers fast writes and slow reads – NOR: low density, offers slow writes and fast reads • Traditional filesystems do not work well with new storage media – NAND requires block erasure – A limited number of erase-write cycles • YAFFS (Yet Another Flash File System) – JFFS mainly for NOR-based storage Group Discussion • Different storage systems: – Disk – Flash – DRAM – … • When do use these storage systems? • What are trade-offs among them? Android Power Management • On top of the standard Linux Power management • Apps or services request CPU using “wakelocks” through Android app framework and native Linux libraries – CPU should not consume power if no apps or services require power Tentative Class Schedule (System Part) • April 5 (today), Android Overview • April 10, Dalvik VM and TaintDroid • April 12, Memory Management • April 17, Storage and File System • April 19, Power Management • April 23, Attend Dr. Ricardo Bianchini’s talk (3:30-4:30pm, DL 480) • April 24, No class References [1] http://en.wikipedia.org/wiki/Android_(operating_system) [2] A Survey on Android vs. Linux, Frank Maker and Yu-Hsuan Chan, http://handycodeworks.com/wp- content/uploads/2011/02/linux_versus_android.pdf [3] http://lwn.net/Articles/480055/ [4] http://www.netmite.com/android/mydroid/1.5/bionic/libc/docs/OVERVIEW.TXT [5] http://processors.wiki.ti.com/index.php/Android_Devkit_Power_Management_Porting_Guide.
Recommended publications
  • BION System for Distributed Neural
    Medical Engineering & Physics 23 (2001) 9–18 www.elsevier.com/locate/medengphy BION system for distributed neural prosthetic interfaces Gerald E. Loeb *, Raymond A. Peck, William H. Moore, Kevin Hood A.E. Mann Institute for Biomedical Engineering, University of Southern California, 1042 West 36th Place, Room B-12, Los Angeles, CA 90089-1112, USA Received 5 October 2000; received in revised form 18 January 2001; accepted 26 January 2001 Abstract We have developed the first in a planned series of neural prosthetic interfaces that allow multichannel systems to be assembled from single-channel micromodules called BIONs (BIOnic Neurons). Multiple BION implants can be injected directly into the sites requiring stimulating or sensing channels, where they receive power and digital commands by inductive coupling to an externally generated radio-frequency magnetic field. This article describes some of the novel technology required to achieve the required microminiaturization, hermeticity, power efficiency and clinical performance. The BION1 implants are now being used to electrically exercise paralyzed and weak muscles to prevent or reverse disuse atrophy. This modular, wireless approach to interfacing with the peripheral nervous system should facilitate the development of progressively more complex systems required to address a growing range of clinical applications, leading ultimately to synthesizing complete voluntary functions such as reach and grasp. 2001 IPEM. Published by Elsevier Science Ltd. All rights reserved. Keywords: Implant; Stimulator; Muscle; Neural prosthesis; Telemetry 1. Rationale and objectives 3. applying the currently available BIONs in therapeutic electrical stimulation (TES) to prevent secondary The functional reanimation of paralyzed limbs has complications related to disuse atrophy, which long been a goal of neural prosthetics research, but the appears to offer immediately feasible and commer- scientific, technical and clinical problems are formidable cially viable opportunities [2].
    [Show full text]
  • Android (Operating System) 1 Android (Operating System)
    Android (operating system) 1 Android (operating system) Android Home screen displayed by Samsung Nexus S with Google running Android 2.3 "Gingerbread" Company / developer Google Inc., Open Handset Alliance [1] Programmed in C (core), C++ (some third-party libraries), Java (UI) Working state Current [2] Source model Free and open source software (3.0 is currently in closed development) Initial release 21 October 2008 Latest stable release Tablets: [3] 3.0.1 (Honeycomb) Phones: [3] 2.3.3 (Gingerbread) / 24 February 2011 [4] Supported platforms ARM, MIPS, Power, x86 Kernel type Monolithic, modified Linux kernel Default user interface Graphical [5] License Apache 2.0, Linux kernel patches are under GPL v2 Official website [www.android.com www.android.com] Android is a software stack for mobile devices that includes an operating system, middleware and key applications.[6] [7] Google Inc. purchased the initial developer of the software, Android Inc., in 2005.[8] Android's mobile operating system is based on a modified version of the Linux kernel. Google and other members of the Open Handset Alliance collaborated on Android's development and release.[9] [10] The Android Open Source Project (AOSP) is tasked with the maintenance and further development of Android.[11] The Android operating system is the world's best-selling Smartphone platform.[12] [13] Android has a large community of developers writing applications ("apps") that extend the functionality of the devices. There are currently over 150,000 apps available for Android.[14] [15] Android Market is the online app store run by Google, though apps can also be downloaded from third-party sites.
    [Show full text]
  • Poly Trio Solution Safety and Regulatory Notice 5.9.1 AA
    OFFER OF SOURCE FOR OPEN SOURCE SOFTWARE October 2019 | 3725-24510-010A Poly Trio Solution with UC Software 5.9.1AA You may have a Poly Voice product with Unified Communications (UC) Software from Poly that contains software from the open source community that must be licensed under the specific license terms applicable to the software. For at least three years from the date of distribution of the applicable product or software, Poly will give to anyone who contacts us using the contact information provided below, for a charge of no more than our cost of physically distributing, one of the following items: (a) a copy of the complete corresponding machine-readable source code for programs listed in this document, or (b) a copy of the corresponding machine-readable source code for the libraries listed in this document, as well as the executable object code of the Poly work with which that library links. The software included or distributed for Poly Voice products with UC Software, including any software that may be downloaded electronically via the Internet or otherwise (the “Software”) is licensed, not sold. Open Source Software Poly Voice products with UC Software use several open source software packages. The packages containing the source code and the licenses for all of the open-source software are available upon request by contacting [email protected]. License Information The following table contains license information for the open source software packages used in Poly Voice products with UC Software 5.9.1AA. The source code and the licenses for all the open source software are available upon request.
    [Show full text]
  • BE PARANOID OR NOT to BE ? Alizée PENEL
    BE PARANOID OR NOT TO BE ? Alizée PENEL Linux and Android System Developer Dev Team Member Agenda 01 02 03 Internet Network Security Permission in socket in Aspects Marshmallow Android OS INTERNET PERMISSION IN MARSHMALLOW INTERNET PERMISSION DECLARATION AndroidManifest.xml https://github.com/vx/connectbot from VX Solutions INTERNET PERMISSION DEFINITION frameworks/base/core/AndroidManifest.xml MARSHMALLOW PERMISSIONS Permission are automatically granted at install time - UI shows permissions details - UI from Google Play, not from the system Dangerous permissions are granted at runtime INTERNET PERMISSION INTERNALS On device : /system/etc/permissions/platform.xml system/core/include/private/android_filesystem_config.h root@genymotion:/ cat /data/system/packages.list MAPPING GID PROCESS That’s all ? Anything is checked at the runtime ? NETWORK SOCKETS IN ANDROID OS THE BASICS JAVA.NET.SOCKET CLASS Any application can directly instantiate this class Even the framework uses it Packed in Android Java core library : core-libart.jar Source file : libcore/luni/src/main/java/net/Socket.java ANY PERMISSION CHECKED !? SOCKET SYSCALL IN BIONIC bionic/libc/bionic/socket.cpp Same type of declaration for connect and accept syscalls NetdClientDispath, C structure of 4 function pointers on 3 syscalls ( __socket, __connect, __accept4) & 1 function (fallBackNetIdForResolv) WHAT HAPPENING IN BIONIC ? As soon as bionic is loaded, the function __libc_preinit() is called by the dynamic linker In __libc_preinit(), call to netdClientInit() function The libnetd_client.so
    [Show full text]
  • We Shape Future Mobility 1
    We shape future mobility 1. 2. 3. 4. 5. 6. 1 Content The mobility of the future 4 MAHLE on site 6 MAHLE’s product portfolio 8 System-wide expertise 10 1. E-mobility Electrifying diversity 12 The tension’s rising 15 Product highlights: All charged up 17 Durable and versatile 18 Tiny but mighty—actuators in cars 20 chargeBIG—MAHLE’s solution for intelligent charging infrastructure 21 2. Thermal management Ideal temperature 22 Product highlights: Temperature regulation from MAHLE 25 3. Filtration A breath of fresh air 28 Filters to stop the spread 31 OzonePRO 31 4. Conventional drives E-fuel ready 32 Product highlights: Lightweight and versatile 35 On track for a sustainable future 36 Layer-by-layer 3D construction 37 5. Hydrogen and fuel cell technologies One element, many possibilities 38 Endurance testing 41 The peripherals are key 42 6. Urban mobility How smart is that? 44 All in the frame 46 Fully connected 47 MAHLE solutions for bikes with electric drives 48 Conspicuously inconspicuous 50 Scooters and commercial vehicles 51 R&D experts—MAHLE Powertrain 52 MAHLE Motorsports 54 Zero-carbon road map 56 Sustainability at MAHLE 58 MAHLE is a leading international development partner and supplier to the automotive industry. The technology group is now broadly positioned in the areas of powertrain technology and thermal man- agement with a clear focus on future topics relating to mobility. As part of its dual strategy, MAHLE is working both on the intelligent combustion engine for the use of hydrogen and other nonfossil fuels and on technologies that will help the fuel cell and e-mobility achieve broad acceptance in the markets.
    [Show full text]
  • Nacldroid: Native Code Isolation for Android Applications
    NaClDroid: Native Code Isolation for Android Applications Elias Athanasopoulos1, Vasileios P. Kemerlis2, Georgios Portokalidis3, and Angelos D. Keromytis4 1 Vrije Universiteit Amsterdam, The Netherlands [email protected] 2 Brown University, Providence, RI, USA [email protected] 3 Stevens Institute of Technology, Hoboken, NJ, USA [email protected] 4 Columbia University, New York, NY, USA [email protected] Abstract. Android apps frequently incorporate third-party libraries that contain native code; this not only facilitates rapid application develop- ment and distribution, but also provides new ways to generate revenue. As a matter of fact, one in two apps in Google Play are linked with a library providing ad network services. However, linking applications with third-party code can have severe security implications: malicious libraries written in native code can exfiltrate sensitive information from a running app, or completely modify the execution runtime, since all native code is mapped inside the same address space with the execution environment, namely the Dalvik/ART VM. We propose NaClDroid, a framework that addresses these problems, while still allowing apps to include third-party code. NaClDroid prevents malicious native-code libraries from hijacking Android applications using Software Fault Isolation. More specifically, we place all native code in a Native Client sandbox that prevents uncon- strained reads, or writes, inside the process address space. NaClDroid has little overhead; for native code running inside the NaCl sandbox the slowdown is less than 10% on average. Keywords: SFI, NaCl, Android 1 Introduction Android is undoubtedly the most rapidly growing platform for mobile devices, with estimates predicting one billion Android-based smartphones shipping in 2017 [12].
    [Show full text]
  • Bionic Auto Parts
    November/December 2010 Member Profi le Bionic Auto Parts Bionic aftermarket parts and have good trading partners thru Auto Parts our PRP network. is a fam- John Catalano Jr., Soon to be Vice President of ily owned ATRI , explained that by being an ATRI member it has business enabled them to meet so many people, make so many that has more connections and has kept them updated and in- been op- formed as to the ongoing issues that our industry faces erated and located in Chicago for 33 years. They spe- on a daily basis. John Catalano Sr. is a past President of cializes in late model vehicles that are 2003 or newer ATRI and continues to sit on the ATRI board today. Bi- in a facility that is located on 15 acres. One of their onic Auto Parts hosted the 2007 Convention & Trade other specialties is offering extended warranties, and Show. having a friendly dedicated staff to making our cus- John Catalano Jr, said they would like to fi nd a way tomers happy. By being an IL Green Car, Gold Seal to buy cars without going to the auctions because of member they can boast that they provide a large in- ventory of good clean parts, fast service, a full line of Bionic continued on page 17 What’s Inside... President’s Perspective . 4 Waste Oil as a Source of Heat . 13 Executive’s Viewpoint . 6 ATRI Member Benifi ts/Application . 15/16 ATRI Holiday Party . 8 Cracking The Leadership Code in the Recycling Update on Illinois Mercury Switch Industry: What Type Of Leader Are You? .
    [Show full text]
  • XM:MI-10-Pro-5G-Phone Datasheet
    XM:MI-10-Pro-5G-Phone Datasheet Get a Quote Overview Related Similar 5G Phones Product Code SIM Battery Chipset Support 5G Bands Size Samsung Galaxy Dual Snapdragon S20 Ultra SM- 5000mAh 5G TDD Sub6: N41(2500)/N78(3500)/N79(4500) 6.9 inches SIM 865+ G9880 Samsung Galaxy Dual Snapdragon Note20 Ultra SM- 4500mAh 5G TDD Sub6: N41(2500)/N78(3500)/N79(4500) 6.9 inches SIM 865+ N9860 Samsung Galaxy Z Dual Snapdragon 3300mAh 5G TDD Sub6: N41(2500)/ N78(3500)/N79(4500) 6.7 inches Flip SM-F7070 SIM 865+ HUAWEI P40 5G Dual 3800mAh Kirin 990 5G NR: n1/n3/n41(2515M-2690MHz)/n77/n78/n79 6.1 inches Phone SIM HUAWEI Mate 40 Dual 4200 5G NR: n1/n3/n28 (TX: 703 MHz-733 MHz, RX: 758 MHz-788 MHz) Kirin 9000E 6.5 inches 5G Phone SIM mAh /n38/n40/n41/n77/n78/n79/n80/n84 iPhone 12 / iPhone Dual 2815 5G A14 Bionic chip 6.1 inches 12 Pro SIM mAh NR: n1/n2/n3/n5/n7/n8/n12/n20/n25/n28/n38/n40/n41/n66/n77/n78/n79 Dual 3687 5G NR: iPhone 12 Pro Max A14 Bionic chip 6.7 inches SIM mAh n1/n2/n3/n5/n7/n8/n12/n20/n25/n28/n38/n40/n41/n66/n77/n78/n79 Xiaomi Mi 10 5G Dual Snapdragon 6.67 4780mAh 5G NR: n1/n3/n41/n78/n79 Phone SIM 865 inches Dual 4500 Snapdragon 6.67 Xiaomi Mi 10 Ultra 5G NR: n1/n3/n41/n78/n79 SIM mAh 865 (7 nm+) inches OPPO Reno4 5G Dual Snapdragon 4020mAh 5G NR: n1/n3/n41/n77/n78/n79 6.4 inches Phone SIM 765G OPPO Find X2 5G Dual Snapdragon 4200mAh 5G NR: n1/n41/n78/n79 6.7 inches Phone SIM 865 Learn More: 5G Devices Related Similar 5G Phones Part Number Features Support 5G Bands Huawei P40 5G Phone Android 10.
    [Show full text]
  • Introduction to Android
    Android Basics Xin Yang 2016-05-06 1 Outline of Lectures • Lecture 1 (45mins) – Android Basics – Programming environment – Components of an Android app – Activity, lifecycle, intent – Android anatomy • Lecture 2 (45mins) – Intro to Android Programming – Camera – 2D graphics drawing • Lecture 3 (45mins) – Advanced Topics in Android Programming – Interacting with native code via JNI – Using opencv library in and Android project – Intro to Qualcomm SDK • Lecture 4 (45mins) – Intro to Google APIs – Sensors – Animations – GPS – Google Maps – Etc. 2 Application Example: PhotoTag 3 Outline - Lecture 1 • Android Programming Basics – Walk through app development process via an example – Activity, lifecycle and intent • Android Anatomy – Five layers of Android: application, application framework, native libraries, Android runtime and Linux kernel 4 5 Development Environment • Android Studio: IDE based on IntelliJ IDEA • Android SDK Tools includes: – SDK Manager • separates the SDK tools, platforms, and other components into packages for easy access and management • Android SDK Manager for downloading platforms, Google APIs, etc., – AVD(Android Virtual Devices) Manager • provides a graphical user interface in which you can create and manage AVDs, which are required by the Android Emulator. – Emulator – Dalvik Debug Monitor Server • A version of the Android platform to compile your app • A version of the Android system image to run your app in the emulator – Supports processor architectures, e.g. ARM EABI, Intel X86 or MIPS 6 Creating a New Project
    [Show full text]
  • Global Tech Biweekly Vol.34 Nov 11, 2020 China
    Wednesday AMTD Global Tech Biweekly vol.34 11 Nov 2020 China smartphone shipment – ahead of a new upgrade cycle Figure 1: China smartphone shipment and YoY growth 160 Units (mn) Non-5G 5G YoY % of total (RHS) 10% 140 0% 120 -10% 100 13.0 80 49.5 -20% 60 44.1 -30% 40 14.1 -40% 20 0 -50% 1Q17 2Q17 3Q17 4Q17 1Q18 2Q18 3Q18 4Q18 1Q19 2Q19 3Q19 4Q19 1Q20 2Q20 3Q20 Source: CAICT, AMTD Research AMTD views: According to the monthly data of CAICT, we estimated that about 72.5mn units of smartphone were shipped in mainland China in 3Q this year, down 28.4% YoY/30.3% QoQ. After a brief rebound in 2Q, the overall smartphone market returned to a downturn again. The weak shipment was mainly due to: 1) the launch of new iPhone 12, the first 5G handset of Apple, postponed to 4Q; 2) Huawei’s shipment decline caused by the new U.S. ban 915 on its supply chain; in our view. As a few of hot models will be launched in 4Q, including new iPhone 12, Huawei’s Mate 40, and OPPO’s new flagship equipped with the new hybrid optical zoom, we believe the weakness was short-lived and the shipment could recover in 4Q. On the 5G side, the total shipment in mainland China was 44.1mn units in 3Q, down 11.0% QoQ, but the 5G penetration had increased to 60.7% in 3Q from 47.6% last quarter, indicating that 5G has begun to dominate the smartphone market in China.
    [Show full text]
  • A Microarchitectural Study on Apple's A11 Bionic Processor
    A Microarchitectural Study on Apple’s A11 Bionic Processor Debrath Banerjee Department of Computer Science Arkansas State University Jonesboro,AR,USA debrath.banerjee@smail. astate.edu Abstract—Over the 10 years of evolution in iPhone ARM Cortex A9 CPU with ARM’s advanced SIMD extension generations, world has experienced a revolutionary advancement called NEON and a dual core Power VR SGX543MP2 GPU. in iPhone processor which was first brought into palm through According to Apple , the A5 was clocked at 1GHz on the iPad2 iPhone first generation embedded with APL0098 processor. After while it could dynamically adjust its frequency to save its a rapid progression in microarchitecture , currently iPhone battery life.A5 processor came up with two different variants of market is dominated by Apple's new A11(SoC) Bionic processor 45nm and 32nm ,where 32nm was said to provide 12% better chipped with iPhone 8 and iPhone X which is based on ARM battery life. big.LITLE architecture. Apple’s new A11 is based of two performance cores to handle heavy duty multithreaded The high performance variant of Apple A5X was introduced workloads and four efficiency cores to cover more mundane tasks when Apple launched third generation iPad. This SoC had a when the requirements arises in order to preserve power quadcore graphics unit instead of the previous dual core as well consumption. A11 sports a new heavy duty performance as quad core channel memory controller that provided a controller which allows the chip to use these six cores at same memory bandwidth of 12.8GB/sec which was about three times time which is a great departure from A10 processor.
    [Show full text]
  • Wearable Technology
    Dec 2014 (Volume 1 Issue 7) JETIR (ISSN-2349-5162) Wearable Technology Madhvi Bhatnagar1,Apparant Aggarwal2,Amrita singh3,Nandini Kaushal4, Reshma Suman5 Students, Computer science and engineering Dronacharya College of Engineering ,New Delhi, India. Abstract-Wearable technology, wearable devices, tech togs, or fashion electronics are attires and accessories integrating computer and highly developed electronic technologies. The blueprints frequently integrate realistic purposes and facets, but may also have a solely serious or artistic plan Wearable technology is connected to both the field of omnipresent computing and the history and growth of wearable computers. With omnipresent computing, wearable technology reveal the foresight of interweaving technology into the day by day life, of making technology persistent and communication friction less. In this research paper our main emphasis will be on wearable technology called Google glass. We will discuss its features & working. We will further discuss about its applications & alternatives to google glass. I. INTRODUCTION Google glass is a technology which is developed by Google X. It is a types of wearable technology which run on android operating system. Google made it available for glass explorer in april15,2013 for a specific period for $1,500 whereas it became accessible for public on May 15, 2014. Glass imparts information in a Smartphone-like, hands-free set-up. Wearers of Glass interact with the Internet via natural language voice instructions. Google proposed four frame choices. The Google Glass sample bear a resemblance to customary eyeglasses with the lens substitute by ahead-up display. The invention began testing in April 2012. Sergey Brin wore a trial product of the Glass ,Foundation Fighting Blindness event in San Francisco.
    [Show full text]