Domo Arigato Mr Androidato—An Introduction to the New Google Mobile Linux Framework, Android
The Open Handset Alliance (OHA) is an industry trade group comprising more than 30 technology and mobile companies. The focus of the OHA is to accelerate innovation in the mobile application and hardware space and to provide consumers with a more comprehensive and inexpensive mobile device experience. Android is a new, mobile application development framework developed by Google for the OHA that represents part of a greater promise from OHA members to make the open platform an industry success.
In addition to announcing its intent to bid on the C Block of the 700MHz wireless spectrum recently, Google continues to lead the charge to ensure that the FCC mandates the spectrum be open for all mobile devices and all operating systems. These two points are partly why the Android announcement is so important. Imagine using your phone as you do now, but with the option to modify it like you do your desktop computer. With Android, you will be able to tweak a subset of software on your phone to your liking—more so than merely changing the background, selecting a ring tone or downloading carrier-sanctioned software. If this idea becomes a reality, it might herald the beginning of a new era of personal computing and possibly even foster the creation of a new generation of small mobile phone companies and software vendors. Without waxing too philosophically on the benefits of an open spectrum, open devices, open software and open access, let's get to the meat of the problem, or shall we say, the logic of the Android.
The key features of the Android Software Development Kit (SDK) include an application framework, a memory-optimized runtime environment named Dalvik (so called because of one of the main engineer's affinity for the Icelandic town), an integrated browser based on WebKit, a custom 2-D graphics library, a 3-D graphics library based on OpenGL ES 1.0, structured data storage through SQLite, support for a variety of media formats (MPEG-4, H.264, MP3, AAC, AMR, JPG, PNG and GIF), and hardware-dependent support for a multitude of components (GSM, Bluetooth, EDGE, 3G, Wi-Fi, camera, GPS, compass and accelerometer). All of this functionality is accessible through the Eclipse IDE or on its own through the user's own Java environment. The platform also includes an emulator, debugging utilities, memory and performance profiling tools, and the source code for a set of example programs.

Figure 1. Browsing the Linux Journal Web site using the WebKit-based browser on the Android emulator. This particular screenshot highlights the built-in zoom feature that enables you to see a full-size view of a Web site.

Figure 2. Using the built-in Maps feature to find my hometown in Ohio. The maps feature works similarly to the one found on the Internet—first providing a world view, then allowing you to pick a particular region and keep zooming until you reach the magnification limit or are satisfied with what you see.
The Android framework consists of four layers, as shown in Figure 3. At the top of the stack is the aptly named Applications layer, so called because it is where finished applications are assembled and situated in the framework. The second is the Application Framework layer, where the building blocks of each application are created using the underlying system libraries and associated application code. Next comes the Library and Runtime layer where core system libraries, Google Java libraries and the Dalvik virtual machine reside. The fourth and final layer is the Kernel layer, where Linux (version 2.6.x) communicates with the underlying hardware.
Table 1. How the Android Framework Compares to Existing Mobile Frameworks
| Android | Motodev | Maemo | OpenMoko | Qtopia | |
|---|---|---|---|---|---|
| License(s) | Apache2 (mirrored GPLv2.0/LGPL components) | GPLv2.0 (kernel)/proprietary | Many free and open-source licenses | GPLv2.0/LGPLv2.1 | GPLv2.0 (Community Edition) |
| Company | OHA/Google | Motorola | Nokia | FIC/OE | Trolltech |
| SDK (price) | Eclipse plugin or standalone (free) | Eclipse plugin (Community Edition, free) | VistaMax or Laika (some parts require a device) | OpenEmbedded (free) | Qt Tools (Community Edition, free) |
| Sign-up Required | No | Yes | Depends (OS requires valid device ID) | No | Yes (Community Edition, free) |
| Primary UI | Java | Qt | GTK+ | GTK+ | Qt |
| Primary Application Language(s) | Java (underlying libraries C/C++) | Java ME/C++ | Languages with GTK+ bindings | Languages with GTK+ bindings | Languages with Qt bindings |
| Preferred Simulator | Android emulator | MotoDev emulator/Java ME emulator | QEMU | QEMU (and others) | Greenphone emulator (QEMU) |
| Primary Devices | Unknown (probably OHA devices) | Most Motorola mobile devices | Nokia N Series (and others) | Neo1973 | Neo1973 (Greenphone discontinued) |
| Licensing | Free (some services cost extra) | Free (some services cost extra) | Free (device required for some OS bits) | Free | Free (noncommercial only) |
Today’s modular x86 servers are compute-centric, designed as a least common denominator to support a wide range of IT workloads. Those generic, virtualized IT workloads have much different resource optimization requirements than hyperscale and cloud applications. They have resulted in a “one size fits all” enterprise IT architecture that is not optimized for a specific set of IT workloads, and especially not emerging hyperscale workloads, such as web applications, big data, and object storage. In this report, you will learn how shifting the focus from traditional compute-centric IT architectures to an innovative disaggregated fabric-based architecture can optimize and scale your data center.
Sponsored by AMD
Built-in forensics, incident response, and security with Red Hat Enterprise Linux 6
Every security policy provides guidance and requirements for ensuring adequate protection of information and data, as well as high-level technical and administrative security requirements for a system in a given environment. Traditionally, providing security for a system focuses on the confidentiality of the information on it. However, protecting the data integrity and system and data availability is just as important. For example, when processing United States intelligence information, there are three attributes that require protection: confidentiality, integrity, and availability.
Learn more about catching the bad guy in this free white paper.
Sponsored by DLT Solutions
| Making Linux and Android Get Along (It's Not as Hard as It Sounds) | May 16, 2013 |
| Drupal Is a Framework: Why Everyone Needs to Understand This | May 15, 2013 |
| Home, My Backup Data Center | May 13, 2013 |
| Non-Linux FOSS: Seashore | May 10, 2013 |
| Trying to Tame the Tablet | May 08, 2013 |
| Dart: a New Web Programming Experience | May 07, 2013 |
- New Products
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- Drupal Is a Framework: Why Everyone Needs to Understand This
- A Topic for Discussion - Open Source Feature-Richness?
- Home, My Backup Data Center
- RSS Feeds
- Trying to Tame the Tablet
- New Products
- What's the tweeting protocol?
- Dart: a New Web Programming Experience
Enter to Win an Adafruit Prototyping Pi Plate Kit for Raspberry Pi

It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Prototyping Pi Plate Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- Next winner announced on 5-21-13!
Free Webinar: Linux Backup and Recovery
Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.
In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.





16 min ago
2 hours 48 min ago
7 hours 27 min ago
9 hours 50 min ago
1 day 2 hours ago
1 day 5 hours ago
1 day 6 hours ago
1 day 7 hours ago
1 day 7 hours ago
1 day 12 hours ago