Android and iOS

This is an overview of the mobile operating systems Android and iOS. Both are based on UNIX or UNIX-like operating systems using a graphical user interface allowing smartphones and tablets to be easily manipulated through touch and gestures.


Both the Mac OS X and iOS evolved from an earlier Apple operating system, Darwin, based on BSD UNIX. iOS is a proprietary mobile operating system owned by Apple and it is only allowed to be installed in Apple equipment. The current version -- iOS 7 -- uses approximately 770 megabytes of the device's storage. A general description of iOS is found here.

There are four abstraction layers in iOS:

  1. the Core OS layer: contains the low-level features that most other technologies are built upon,
  2. the Core Services layer: contains the fundamental system services that all applications use,
  3. the Media layer: contains the graphics, audio, and video technologies geared toward creating the "best" multimedia experience available on a mobile device, and
  4. the Cocoa Touch layer: contains the key frameworks for building iOS applications. This layer defines the basic application infrastructure and support for key technologies such as multitasking, touch-based input, push notifications, and many high-level system services.

iOS is used on the iPad, iPhone, iPod Touch, iPod Nano, and Apple TV. There is an on going trend to merge iOS with Mac OS X. In the Apple store over a million Apps are available for the iPhone, and over five hundred thousand Apps are optimized for the iPad.

iOS in Windows 7: Apple does not provide a set of tools to develop Apps for iOS in Windows. The purpose of what follows is for you to have a simulated iOS device in your PC with Windows 7 for learning purposes, only. You need to install an IDE from Apple: Xcode. The recent 4.2 version of Xcode requires OS X Lion. How to install OS X Lion and Xcode 4.2 can be seen at this blog posting.

  1. The first step is to install an OS X virtual machine like we saw in the Hypervisor class. But you will need to virtualize OS X Lion 10.7.
  2. Then you need to open an Apple developer account for free.
  3. Next download Xcode. You will be asked for your developer Apple username and password created in the prior step.
  4. Open the Applications folder from Finder. Double-click on the Install Xcode icon to finish installing it.
  5. Use the iPhone/iPad simulator available in Xcode.


Android is based on Linux and is an open source mobile operating system developed by the Open Handset Alliance led by Google. Google had acquired the original Android.Inc and help form the Alliance of hardwade, software and telecommunication organizations to enter the mobile ecosystem. Google releases the Android code as open-source, under the Apache License.

How is Android organized?

See this page, the above image source, for details.

Android is used in a variety of smartphones, book readers, laptops, tablets and TV boxes (e.g. Google TV) built by different manufacturers, such as Samsung, Motorola, HTC, LG,ACER, ASUS, Sony Ericsson, among others. There are over a million Apps in the Google Play, with different quality levels as shown in this article. Amazon Appstore for Android has about two hundred thousand Apps to be used in their version of Android and other smartphones and tablets.

Android in Windows 7: Since Android is open source we can install it without restrictions in Windows 7 in a VM in the free VBOX, as you saw in the hypervisor class for other operating systems.

You can follow the procedure described in this site and also watch a video on how to do it. We will see Android running in class inside VBOX. Again this is only for learning purposes because there is no VBOX full support for Android, but rather just for Linux.


A. If you install Android in VBOX and want to access the network you will need to set the DNS server for it to work. See Optional steps in the first article that tell you to do the following:

  1. Press ALT+F1 to open terminal
  2. Type - dhcpcd
  3. setprop net.dns1 xx.xx.xx.xx (where xx.xx.xx.xx is your DNS server)
  4. Done - Press ALT+F7 to exit

B. To avoid that your mouse gets captured and not released by Android, in the VBOX machine settings, Select System, Extended Features, and de-select Enable absolute pointing device.

This page is maintained by Al Bento who can be reached at This page was updated on April 14, 2014. Although we will attempt to keep this information accurate, we can not guarantee the accuracy of the information provided.