In todays world of computerization, you must have heard a lot about programming. Programming refers to a process which carries out a set of instructions to do a particular task. Presently, programming is extended beyond computers to various application systems, one such application system is Communication Devices, which covers telephone exchanges like PBX (Private Branch eXchange), ISDN (Integrated Services Digital Network), Networking Devices like switches, router and terminal devices like ISDN phone, modems, mobile phones, and so on. Programming these devices is quite challenging in their own way as they involve challenging requirements like real time processing, multi-device handling, enormous features, friendly GUI, and so on. We in this unit have chosen smartphone – a mobile phone variant as an example to describe the programming aspects associated with its functioning.
In this unit, we will discuss as to what a Smartphone is and also its features that has made it so popular. We will also discuss about the Smartphone operating systems. You will find the necessity for an operating system in Smartphones and the characteristics that these operating systems support. You can easily relate many of the concepts to the mobile phone that you or your acquaintances might be using.
Mobile phone usage has increased manifold over the past decade. ,A mobile phone (also called as cellular phone, cell phone or hand phone) is an electronic device which facilitates two-way telecommunications over a cellular network of base stations, or cell sites. A general classification of mobile phones based on features are: One is Feature phones, or low end phones, which offer basic services like making and receiving calls, radio (FM) services, and sending or receiving Short Message Services (SMS). The other is Smart phones, which offer more advanced technology, like connection to the World Wide Web (www), sending Multimedia Message Services (MMS), accessing Bluetooth and infrared applications, playing audio and video files, providing GPS functions etc,. Bluetooth is a wireless technology used to exchange data by connecting devices within short distance. Infrared is a wireless technology used to exchange data by connecting two electronic devices.
A Smartphone is a remarkable invention; it is a mobile phone with more offerings that fits in your pocket and lets you communicate from anywhere in the world. The primary difference between mobile phones and Smartphones is that the Smartphones have complete operating software, which provides a standardized interface and platform for application developers.
Smartphones are like laptops or miniature computers, and can perform a variety of functions. As the Smartphones have operating software and a standard interface, the users have the ability to add applications and upgrade features and services on their mobile phones.
Let us see how Smartphones evolved. Today, with technological advancement, the Personal Computer (PC) is a part of everyday life as a productivity, entertainment, and communication device. Like laptops the Personal Digital Assistant (PDA) were introduced as mobile computing devices with less memory capacity. These PDAs, also known as handheld computers or palmtops, are electronic organizer or planner that can easily share any information with the computer. It is basically a high end organizer phone.
The concept of Smartphone is obtained from the PDAs and mobile phones. Initially, PDAs were developed to access Internet while mobile phones were meant to receive calls, send messages, etc, Then the Smartphone was invented which had the ability to fit more functionality into a smaller device. Smartphones are a combination of the functionalities of mobile phone as well as the features of PDA.
Like most inventions, Smartphones are built on a chain of prior technological advancements of semiconductor miniaturization, battery technology, display devices, touch panels, and the invention of telephone and wireless technology. We will be touching upon the features of Smartphone in detail in the subsequent sections.
Self Assessment Questions
A mobile phone is an electronic device which facilitates two-way telecommunications over a _____________ of base stations, or cell sites.
Smartphones offer basic services like making and receiving calls. (True/False)?
PDA stands for __________________.
Smartphone is a combination of both mobile phone and handheld computer, into a single device. Smartphone is a single device which allows users to store information (for example, e-mail) and install programs, along with the use as a mobile phone. We can say that a Smartphone is a mobile phone with some PDA functions integrated into the device or vice versa.
The features offered by the Smartphones are the most important factor that has made it so prominent in the present day. Let us now discuss these features:
Software: Smartphones are operated with the help of software to manage basic functions like address book, messaging, and searching stored data. The software in a Smartphone has advanced features that allow you to create and edit MS Office documents and download applications. Most of the Smartphones support full featured e-mail capabilities with the functionality of a complete Personal Organizer with book or binder, containing a calendar, address book, scheduler, and other such functions.
Operating system: Smartphones comes with an operating system that supports various applications. It also helps to maintain the software and hardware used in these phones. The Symbian, Windows mobile, and Android are some examples of the operating systems used in Smartphones.
Managing calls: The user can manage multiple calls (conference calls) and concurrent calls on the Smartphone with the help of User Interface (UI). Apart from changing the ring tones based on callers or groups, the cell phone allows you to record the calls in digital format and save them to your computer.
Access to internet: With the introduction of Wi-Fi (Wireless Fidelity), Smartphone facilitates its users to access Internet at higher speed using the 3G technology (It is a third generation wireless technology that facilitates advanced multimedia access, global roaming, and high speed communication). Thereby the device helps you to browse your favourite websites, send and receive emails, and download games faster as you would do it on your desktop computers. It also facilitates users to automatically reformat the HTML (Hyper Text Markup Language) pages for display on small screen. HTML is a markup language that is used to structure text, graphics, and sounds in a web page by the use of various tags.
The device can also access Web2.0 content. Web 2.0 is related to web applications that provide interoperability, information sharing, and user friendly design
Advance GPS features: The GPS (Global Positioning System) feature present in the Smartphone helps users to get driving directions, point of interest in the locality, or search businesses by using the gadget. The Smartphone users can obtain current location by connecting to portable GPS receiver or integrating a GPS receiver to the device.
QWERTY keyboard: With a Smartphone, you can get a keyboard like the one that you use with your computer. You can use a physical keyboard to type on or a touch screen like an iPhone which is operated by software. An iPhone is a smartphone (product of Apple) which provides all the features of a smartphone such as, internet access, touch controls, and so on.
Multimedia features: Smartphones are also featured with built-in digital camera and a sound recorder. Apart from taking still pictures, you can also record video clips. These features allow you to share the Multi Media Messages (MMS) with other Smartphones via email, Bluetooth or infrared with or without the help of additional software.
Touch Screen: A Typical PDA has a touch screen, which is an electronic visual display or input device for entering data. These days most of the Smartphones have this feature allowing the user to easily select various features of the phone. The best place where you can experience the usage of the touch screen is in the ATMs (Automated Teller Machine), as most of the ATMs have a touch screen. ATM is a telecommunication device that provides financial assistance to the clients of a financial institution. ATM is also known as a Cashpoint..
An automated teller machine (ATM), also known as automatic banking machine (ABM), Cash Machine, or Cashpoint, is a computerised telecommunications device that provides the clients of a financial institution with access to financial transactions in a public space without the need for a cashier, human clerk or bank teller.
Wireless Connectivity: Many Smartphones come with Wireless Wide-Area Networks. Latest Smartphones have Bluetooth wireless connectivity. It can be used to connect keyboards, headsets, GPS and many other accessories. Superior PDAs have Wi-Fi or WLAN (Wireless Local-Area Networks) connectivity, which can be used to connect to Wi-Fi hotspots or wireless networks.
Messages: The Smartphone offers facility to send and receive not only text messages but also multi media messages. It facilitates to send and receive messages through e-mails. It even provides access to the web based messaging services such as, Yahoo messenger.
Resolution and screen size: The Smartphone offers a high resolution screen and a big screen size that helps you to carry out different functions easily. Some Smartphones provide touch screen facility for better view and easy functioning of the device.
Memory: This is an important feature as it is very essential to support various features such as operating system or screen resolution. As a user, memory means the flash memory storage chip where you can store all files and applications. The RAM (Random Access Memory) is the physical location in the chip where the operating system and other applications run. The RAM size for a Smartphone can be in the order of 10MB to 20MB. Besides the Ram, users can add flash memory for storing their data like contact details, songs, video recording etc. Flash Memory in a Smartphone is either inbuilt or can be installed as an add-on. The memory size of the Smartphone depends upon the manufacturer. For example, Apple iPhone 3GS Smartphone has a flash memory of 16GB that can be extendable up to 32GB.
Synchronization facility: An important function of Smartphones is, synchronizing data with a computer. Most of the Smartphones come with the facility to synchronize to a PC. This feature allows maintaining the latest contact information stored on software like Microsoft Outlook.
Thus, we can say that in contrast to the regular cell phone, a Smartphone offers advanced features as it combines the features of a cell phone and a PDA.
Self Assessment Questions:
A Smartphone is a combination of both ___________ and handheld computers into a single device.
GPS stands for _____________.
An important function of Smartphone is _______________ data with a PC.
Examine few Smartphones and analyze the various features it provides.
Mobile/Smartphone Operating System
As you know that operating system is one of the important features of a mobile/Smartphone, let us now illustrate this feature..
In general an Operating System(OS) refers to a program that helps to run various other programs on a computer. It also manages the software and hardware of the system.
The most important software in any Smartphone is its operating system. It is also referred as mobile platform.
Need for mobile operating system
The mobile operating system powers mobile devices like mobile phones, Smartphones, PDAs, and Tablet PCs (a wireless PC equipped with a touch screen and a digital pen). It manages the mobile device hardware, memory, and software resources. It controls the functioning, and the capabilities of a mobile device. The feature set, security, reliability, and the ease of use are not the only criteria that make a mobile platform good or bad, but also the flexibility of the mobile platform to integrate with diverse set of devices and software systems.
A mobile operating system controls everything from handling the input obtained from touch screen, keyboard, or some external device to controlling the memory and the overall functioning of the device. It also manages the communication and the interplay between the mobile device and other compatible hardware such as, computers, televisions, or printers.
Operating system manages and controls all the features and functionalities of the mobile device. Therefore, a Smartphone is a combination of the hardware and the operating system, which determines what capabilities it can or cannot support.
As the operating system manages the hardware and software resources of Smartphones, it is responsible for determining the functions and features available on the device. Smartphone is a combination of mobile technology that is the mobile phone and PDA, which are based on the computer applications
All Smartphones are embedded with an operating system which enables the operation of software applications. In addition to the principle features like phone calls and messaging, you can send e-mails, manage your personal and office documents, and visit websites for searching information, play online games, and read news. It also allows sharing and downloading of documents and applications.
If a Smartphone is to allow multiple applications to run simultaneously, it must have an operating system that facilitates the sharing of processing and memory resources among multiple applications. Additionally, the operating system must allow users to switch between the active applications.
Characteristics of a smartphone operating system
Even though the functionality of an operating system used in computers and Smartphones are same, certain characteristics of a Smartphone operating system are different from the ones used in computers. The characteristics that a Smartphone operating system should comprise are as follows:
Resource-limited hardware: Smartphones should be able to support various applications. It should also provide facility to access Internet. But to meet these requirements, Smartphones have limited memory and processing power when compared to the desktop PCs and Laptops. Thus, the operating system must be careful in using hardware resources especially memory. It should not only utilize less memory but also consist of architecture that provides support for applications to limit their use of memory. It should also have the capability to handle low-memory situations gracefully.
Robustness: A user expects a mobile operating system to be robust. This means it should be strong and unlikely to fail or crash. The device must not only be designed to avoid crash, but must also provide support functions and policies. These support functions and policies allow the device to handle application errors and out-of-memory situations, without hampering the functionalities of the Smartphone.
User interface for limited user hardware: The operating system should implement a user interface environment that is efficient and intuitive to use, despite the smaller screen and limited user input capabilities of the Smartphone. Furthermore, the screen sizes and input capabilities vary between different models of Smartphones, so the User Interface architecture should be flexible, such that it can be customized for the various user interface objects.
Library support: Smartphone operating systems should contain middleware libraries and frameworks with APIs that implement and abstract the functionality of the features of the Smartphone. The purpose is to provide functional consistency and to ease the software development. Middleware library and framework is a software layer that acts as a mediatory between the application and the system’s operating system. The middleware framework consists of a set of components that connects the application with the underlying OS. Examples of Smartphone middleware include libraries and frameworks for email, SMS, MMS, Bluetooth, cryptography, multimedia, User Interface features, and GSM or GPRS, which provide more support for Smartphone features.
Popular mobile operating systems
Some of the popular mobile operating systems are:
BlackBerry Operating System
Garnet Operating System
Symbian: Symbian operating system is the most popular operating system used in most Smartphones and mobile phones today. The heritage of Symbian OS begins with some of the first handheld devices. This operating system began its existence in 1988 as SIBO (an acronym for ’16-bit organizer’). SIBO ran on computers developed by Psion Computers, which developed operating system to run on small footprint devices. It was designed with specific criteria that can be characterized by event-driven communications, using client-server relationships and stack-based configurations.
Client-server describes the relation between two computer programs. The client program sends a service request to the server program. The server program fulfils the request.
The Symbian operating system is developed using C++ programming language.
The Symbian operating system is a mobile operating system that was specially built to run on a Smartphone platform. It fits in the memory of a mobile phone because of its compatibility. It is considered as a full fledged operating system.
Symbian operating system supports multitasking and multithreading. Many processes can run concurrently, they can communicate with each other and utilize multiple threads that run internal to each process. It facilitates good support for graphics and data management. This operating system has a file system that is compatible with Microsoft Windows operating system. It even supports other file system implementations through a plug-in interface. It uses TCP/IP networking as well as several other communication interfaces, such as serial, infrared and Bluetooth. For example, Nokia’s bestseller Smartphone 6600 was developed using the Symbian operating system.
Android: Android is an operating system for mobile devices that is developed by Google. .Android operating systems are based on the Linux kernel and the GNU software. Android has a large community of developers writing applications that has helped to extend the functionality of the devices. The developers write managed code in Java, controlling the device via Google-developed Java libraries.
The Android operating systems offer a virtual machine that is optimized for the mobile devices. It provides a structured data storage by the use of SQLite. It facilitates with technologies such as, Bluetooth, 3G and WiFi that are hardware dependent. It enables reuse and replacements of components through an application framework. For example Sony Ericsson XPERIA X10 is developed using Android operating system.
A virtual machine can be referred to an environment or a program that does not physically exists but is created inside another environment.
BlackBerry operating system: The BlackBerry operating system is an e-mail based operating system introduced in a Smartphone device developed by the Canadian company, Research In Motion (RIM). It includes typical Smartphone applications like address book, calendar, to-do lists, and telephone capabilities. It supports push e-mail, mobile telephone, text messaging, Internet faxing, Web browsing and other wireless information services. It offers a multitasking environment which helps to perform more than one task at the same time. The system navigation is primarily accomplished by a scroll ball, or “trackball” in the middle of the device. It even offers support for WAP (Wireless Application Protocol) and Java Mobile Information Device Profile (MIDP). WAP helps to access mobile web from a Smartphone or a mobile phone. Java MIDP offers stipulation for employing Java on Smartphones.
Windows Mobile: Windows Mobile is an operating system used in various mobile phones and Smartphones. It encompasses the entire software stack from the kernel to the application interface. This operating system is compatible with the Microsoft Office suite of programs.
The current version is called “Windows Mobile 6.5”. It is based on the Windows CE 5.2 kernel. Additionally, third-party software development is available for Windows Mobile, and the software can be purchased via the Windows Marketplace for Mobile.
Originally appearing as the Pocket PC 2000 operating system, most Windows Mobile devices come with a stylus pen, which is used to enter commands by tapping it on the screen.
Windows CE is a modular operating system that serves as the foundation for several classes of devices. Windows Mobile is best described as a subset of platforms based on a Windows CE. Currently, Pocket PC (now called Windows Mobile Classic), Smartphone (Windows Mobile Standard), and PocketPC Phone Edition (Windows Mobile Professional) are the three main platforms under the Windows Mobile umbrella.
Windows Mobile is a Microsoft-defined custom platform for general use in Smartphones and PDAs. It consists of a Microsoft-defined set of minimum profiles (Professional Edition, Premium Edition) of software and hardware that is supported. It provides feature rich OS and interface for cellular phone handsets. It offers productivity features to business users, such as email, as well as multimedia capabilities for consumers.
Java enabled: Smartphones with Java based OS are also available. SavaJe is one such O.S. which is java based. It includes everything from the kernel to the user interface framework and application suite.
SavaJe’s complete suite of applications for advanced mobile phones spans the entire spectrum of handset functionality, including:
A phone application, for voice calls management.
A universal messaging application with a simple and intuitive user interface for MMS, SMS, and e-mail messages.
A universal browser for transparent access to WAP (Wireless Application Protocol) , HTML and XHTML (eXtensible Hyper Text Markup Language) sites. XHTML is a markup language that is similar to HTML, used in the creation of webpages and is a combination of HTML and XML.
A multimedia application for still and video capture and playback, including camera control and multiple media players.
A Personal Information Management (PIM) application for contacts, calendar, tasks, notes and alarms management and synchronization to a local PC or over-the-air.
Garnet Operating System: This was formerly known as Palm OS. This operating system combines a Linux-based foundation with applications written for the old Palm OS. The Palm OS was mainly used in PDAs, though the Treo line of Smartphones used it as well. The Garnet Operating System is also referred as Palm OS5. It is a specialized operating system for powering portable hand-held devices, Smartphones, and PDAs from ACCESS Systems, who developed software products and platforms for web browsing, mobile phones, wireless handhelds, and other networked devices.
The Garnet Operating System has a built-in PACE (Palm Application Compatibility Environment). Garnet Operating System is capable of supporting wireless communication technologies such as Bluetooth, and Infrared. In addition to this functionality, it also offers standard support for a variety of screen resolutions.
Linux: Linux is unique among the other operating systems. This is because its development is driven by a community of developers rather than by a single company such as Symbian operating system in Nokia phones and blackberry OS in blackberry phones. According to ARCchart, the Linux operating system supports more processors than other operating system, though the most popular phone models still use the Symbian operating system.
However, Linux is an organic OS, where in, the developers constantly change and update it even at the kernel level platforms. Six telecommunication companies are responding to this by forming the LiMo foundation, an organization that is attempting to create a standardized Linux platform.
Smartphones based on the open source Linux operating system have emerged in the market. There are many advantages to using an open-source operating system like Linux. No cost and the opportunity to tap into the Linux open source community are appealing. This has made Linux grow, not only for the server and PC market space, but also in the embedded device area including handheld computers. For example, Motorola that is a notable supporter of Linux has released the A760 Smartphone based on this operating system.
Linux may become the preferred operating system in full featured mobile terminals as well as a variety of embedded systems. Linux-powered Smartphone will hold an important position in the near future.
Advantages and disadvantages of smartphones
The usage of Smartphones is on the rise. The reason behind this widespread usage is because Smartphones provide enhanced features to users. Let us look at some of the advantages that Smartphones have:
We can download applications or important data ‘on-the-go’.
It is easier for us to carry a Smartphone when compared to a laptop or a PDA.
We can incorporate different functionalities into a small device.
3G Internet allows us to browse the Internet at speeds faster than our internet connection at home.
But Smartphones do have the following disadvantages when compared to Feature phones:
Smartphones are generally high-priced because they support multiple features.
To use all the wireless tools provided within the Smartphone, we would require an expensive wireless data plan.
Self Assessment Questions
_____________ operating system began its existence in 1988 as SIBO.
Palm OS operating system combines a __________foundation with applications written for the old Palm OS.
Windows Mobile OS is based on windows _____________.
Android is an operating system for mobile devices that was developed by ____________.
Windows Mobile operating system was developed by __________.
The SavaJe OS is a __________ based system that includes everything from the kernel to the user interface framework and application suite.
Garnet OS was formerly known as Palm OS.(True/False)?
Check out few mobile phones in your contacts and find out which operating system is used and write down a comparison of the features offered.
In this unit we started with underlying the concept of Smartphones. We learnt that a Smartphone refers to a handheld device that offers the functionality of a mobile phone as well as the PDAs. We also came to know about the various features provided by Smartphones such as, operating system, software, access to internet, QWERTY keyboard, advanced GPS features, touch screen, memory, and so on.
Then we discussed about the mobile or Smartphone operating system in detail. Here, we discussed the necessity for a mobile operating system. Furthermore, we even discussed the characteristics of a Smartphone operating system such as, robustness; resource limited hardware, user interface for limited user hardware, and library support.
Later we also discussed about the various operating system support by these Smartphones or mobile phone. This includes operating systems such as Symbian, Android, Blackberry OS, Windows Mobile, Garnet OS, Java, and Linux.
Let us have an overview of the important terms mentioned in the unit:
Bluetooth: An open wireless technology standard for exchanging data over short distances using short length radio waves from fixed and mobile devices
Kernel: Is the central component of most computer operating systems, it is a bridge between applications and the actual data processing
Middleware: Software that mediates between the application program and a network.
Multitasking: It refers to the ability of the operating system to quickly switch between tasks, giving the appearance of simultaneous execution of tasks
Multithreading: It widens the idea of multitasking into applications, so that specific operations within a single application can be subdivided into individual threads.
SavaJe OS: A Java OS for advanced mobile phones. Developers can create better user interface using this OS.
Thread: it is a light weight process. It is a single flow of with a process.
QWERTY: It is the most used modern-day keyboard layout on English-language computer and typewriter keyboards. It takes its name from the first six characters
Wi-fi: Networks build used for wireless network.
What is a Mobile Operating System?
Name the types of mobile operating systems available in the market.
List down various features of a Smartphone.
What is a Symbian Operating System?
Explain briefly the advantages and disadvantages of Smartphones
Self Assessment Questions
Personal Digital Assistant
Global Positioning System
CE 5.2 kernel
Refer section 1.4 The Mobile/Smartphone Operating System that describes mobile platform.
Refer sub-section 1.4.3 Popular mobile operating systems, which tells the various platforms used to develop a Smartphone.
Refer section 1.3 Smartphone Features that describes the QWERTY keyboard and touch screen and other features.
Nokia’s bestseller Smartphone 6600 was developed using this operating system. Refer sub-section 1.4.3 Popular mobile operating systems for details.
Refer section 1.5 which lists various advantages and disadvantages of Smartphones.
References and Suggested Readings
Jochen Schiller (2009), Mobile Communications (Second Edition).