Unit 4 Os
Unit 4 Os
Unit 4 Os
Handheld system:
Operating systems for Handheld systems:
An operating system is a program whose job is to manage a computer’s hardware.
Its other use is that it also provides a basis for application programs and acts as an
intermediary between the computer user and the computer hardware. An amazing
feature of operating systems is how they vary in accomplishing these tasks.
Operating systems for mobile computers provide us with an environment in which
we can easily interface with the computer so that we can execute the programs.
Thus, some of the operating systems are made to be convenient, others to be well-
organized, and the rest to be some combination of the two.
Handheld Operating System:
Handheld operating systems are available in all handheld devices like Smartphones
and tablets. It is sometimes also known as a Personal Digital Assistant. The popular
handheld device in today’s world is Android and iOS. These operating systems
need a high-processing processor and are also embedded with various types of
sensors.
Some points related to Handheld operating systems are as follows:
Since the development of handheld computers in the 1990s, the demand for
software to operate and run on these devices has increased.
Three major competitors have emerged in the handheld PC world with three
different operating systems for these handheld PCs.
Out of the three companies, the first was the Palm Corporation with their PalmOS.
Microsoft also released what was originally called Windows CE. Microsoft’s
recently released operating system for the handheld PC comes under the name of
Pocket PC.
More recently, some companies producing handheld PCs have also started offering
a handheld version of the Linux operating system on their machines.
Features of Handheld Operating System:
Its work is to provide real-time operations.
There is direct usage of interrupts.
Input/Output device flexibility.
Configurability.
Types of Handheld Operating Systems:
Types of Handheld Operating Systems are as follows:
Palm OS
Symbian OS
Linux OS
Windows
Android
Palm OS:
Since the Palm Pilot was introduced in 1996, the Palm OS platform has provided
various mobile devices with essential business tools, as well as the capability that
they can access the internet via a wireless connection.
These devices have mainly concentrated on providing basic personal-information-
management applications. The latest Palm products have progressed a lot, packing
in more storage, wireless internet, etc.
Symbian OS:
It has been the most widely-used smartphone operating system because of its ARM
architecture before it was discontinued in 2014. It was developed by Symbian Ltd.
This operating system consists of two subsystems where the first one is the
microkernel-based operating system which has its associated libraries and the
second one is the interface of the operating system with which a user can interact.
Since this operating system consumes very less power, it was developed for
smartphones and handheld devices.
It has good connectivity as well as stability.
It can run applications that are written in Python, Ruby, .NET, etc.
Linux OS:
Linux OS is an open-source operating system project which is a cross-platform
system that was developed based on UNIX.
It was developed by Linus Torvalds. It is a system software that basically allows
the apps and users to perform some tasks on the PC.
Linux is free and can be easily downloaded from the internet and it is considered
that it has the best community support.
Linux is portable which means it can be installed on different types of devices like
mobile, computers, and tablets.
It is a multi-user operating system.
Linux interpreter program which is called BASH is used to execute commands.
It provides user security using authentication features.
Windows OS:
Windows is an operating system developed by Microsoft. Its interface which is
called Graphical User Interface eliminates the need to memorize commands for the
command line by using a mouse to navigate through menus, dialog boxes, and
buttons.
It is named Windows because its programs are displayed in the form of a square. It
has been designed for both a beginner as well professional.
It comes preloaded with many tools which help the users to complete all types of
tasks on their computer, mobiles, etc.
It has a large user base so there is a much larger selection of available software
programs.
One great feature of Windows is that it is backward compatible which means that
its old programs can run on newer versions as well.
Android OS:
It is a Google Linux-based operating system that is mainly designed for
touchscreen devices such as phones, tablets, etc.
There are three architectures which are ARM, Intel, and MIPS which are used by
the hardware for supporting Android. These lets users manipulate the devices
intuitively, with movements of our fingers that mirror some common motions such
as swiping, tapping, etc.
Android operating system can be used by anyone because it is an open-source
operating system and it is also free.
It offers 2D and 3D graphics, GSM connectivity, etc.
There is a huge list of applications for users since Play Store offers over one
million apps.
Professionals who want to develop applications for the Android OS can download
the Android Development Kit. By downloading it they can easily develop apps for
android.
Advantages of Handheld Operating System:
Some advantages of a Handheld Operating System are as follows:
Less Cost.
Less weight and size.
Less heat generation.
More reliability.
Disadvantages of Handheld Operating System:
Some disadvantages of Handheld Operating Systems are as follows:
Less Speed.
Small Size.
Input / Output System (memory issue or less memory is available).
How Handheld operating systems are different from Desktop operating systems?
Since the handheld operating systems are mainly designed to run on machines that
have lower speed resources as well as less memory, they were designed in a way
that they use less memory and require fewer resources.
They are also designed to work with different types of hardware as compared to
standard desktop operating systems.
It happens because the power requirements for standard CPUs far exceed the
power of handheld devices.
Handheld devices aren’t able to dissipate large amounts of heat generated by
CPUs. To deal with such kind of problem, big companies like Intel and Motorola
have designed smaller CPUs with lower power requirements and also lower heat
generation. Many handheld devices fully depend on flash memory cards for their
internal memory because large hard drives do not fit into handheld devices.
Technology overview:
Overview
Operating Systems that have low speed processors, less memory requirements and
are ideal to be used in mobile devices and personal digital assistants (PDAs) are
called Handheld operating systems. Such systems need fewer resources. These
systems are also intended to work with different types of hardware. They are also
known as Mobile operating systems.
Handheld devices are generally small in size that perfectly fits in the palm. These
devices can be carried easily in pocket. These systems use Bluetooth, e-mail, Wi-
Fi, GPS mobile navigation, video camera, music player, web browsing, and other
wireless technologies. The most basic handheld devices are designed for personal
information management (PIM) applications, allowing users to keep calendars,
task lists and addresses handy.
Handheld devices liberate a large amount of heat generated by CPU. To deal with
this, companies are designing smaller CPU with lower power requirements and
lower heat generation. Many handheld devices use flash memory cards for their
internal memory as large hard drives could not fit into handheld devices. There are
three different connectivity options for handheld systems: first, synchronizing with
a desktop or portable computer, second, connecting to a local area network (LAN),
and third, connecting directly to the Internet.
Learn more about types of operating system here.
Types of Handheld System
The handheld system comes under a variety of sizes and shapes for different kinds
of use. Handheld devices are generally categorized in two ways
Appearance/form factor
There are two divisions in physical appearance of handheld devices: tablet and
clamshell designs. Tablets are small and have integral keyboards. Clamshell
devices are miniature versions of keyboards and screens. Other form factors
include different input mechanisms, handwriting recognition, processors, memory,
wireless connectivity, wireless connectivity, battery types, displays, and cameras.
Operating system and functionality
Handheld operating system performs operations similar to that of the OSs of large
desktops and their portable counterparts. The two most widely used OSs for
handheld systems are Microsoft’s Windows Mobile suite and Palm OS.
What is Android?
Android is an open source and Linux-based Operating System for mobile devices
such as smartphones and tablet computers. Android was developed by the Open
Handset Alliance, led by Google, and other companies.
The first beta version of the Android Software Development Kit (SDK) was
released by Google in 2007 where as the first commercial version, Android 1.0,
was released in September 2008.
On June 27, 2012, at the Google I/O conference, Google announced the next
Android version, 4.1 Jelly Bean. Jelly Bean is an incremental update, with the
primary aim of improving the user interface, both in terms of functionality and
performance.
The source code for Android is available under free and open source software
licenses.
Google publishes most of the code under the Apache License version 2.0 and the
rest, Linux kernel changes, under the GNU General Public License version 2.
Why Android ?
Features of Android
Android is a powerful operating system competing with Apple 4GS and supports
great features. Few of them are listed below −
Beautiful UI
1
Android OS basic screen provides a beautiful and intuitive user interface.
Connectivity
2 GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, NFC and
WiMAX.
Storage
3
SQLite, a lightweight relational database, is used for data storage purposes.
Media support
4 H.263, H.264, MPEG-4 SP, AMR, AMR-WB, AAC, HE-AAC, AAC 5.1, MP3,
MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF, and BMP.
Messaging
5
SMS and MMS
Web browser
6 Based on the open-source WebKit layout engine, coupled with Chrome's V8
JavaScript engine supporting HTML5 and CSS3.
Multi-touch
7 Android has native support for multi-touch which was initially made available in
handsets such as the HTC Hero.
Multi-tasking
8 User can jump from one task to another and same time various application can
run simultaneously.
Resizable widgets
9 Widgets are resizable, so users can expand them to show more content or shrink
them to save space.
Multi-Language
10
Supports single direction and bi-directional text.
GCM
Google Cloud Messaging (GCM) is a service that lets developers send short
11
message data to their users on Android devices, without needing a proprietary
sync solution.
Wi-Fi Direct
12 A technology that lets apps discover and pair directly, over a high-bandwidth
peer-to-peer connection.
Android Beam
13 A popular NFC-based technology that lets users instantly share, just by touching
two NFC-enabled phones together.
Android Applications
Android applications are usually developed in the Java language using the Android
Software Development Kit.
Once developed, Android applications can be packaged easily and sold out either
through a store such as Google Play, SlideME, Opera Mobile
Store, Mobango, F-droid and the Amazon Appstore.
Android powers hundreds of millions of mobile devices in more than 190 countries
around the world. It's the largest installed base of any mobile platform and growing
fast. Every day more than 1 million new Android devices are activated worldwide.
This tutorial has been written with an aim to teach you how to develop and
package Android application. We will start from environment setup for Android
application programming and then drill down to look into various aspects of
Android applications.
There are many android applications in the market. The top categories are −
History of Android
The code names of android ranges from A to N currently, such as Aestro, Blender,
Cupcake, Donut, Eclair, Froyo, Gingerbread, Honeycomb, Ice Cream Sandwitch,
Jelly Bean, KitKat, Lollipop and Marshmallow. Let's understand the android
history in a sequence.
What is API level?
API Level is an integer value that uniquely identifies the framework API revision
offered by a version of the Android platform.
API
Platform Version VERSION_CODE
Level
Android 6.0 23 MARSHMALLOW
Android 5.1 22 LOLLIPOP_MR1
KitKat for
Android 4.4W 20 KITKAT_WATCH
Wearables Only
Android 2.3.4
10 GINGERBREAD_MR1
Android 2.3.3
Android 2.3.2
Android 2.3.1 9 GINGERBREAD
Android 2.3
Android 2.2.x 8 FROYO
Linux kernel
At the bottom of the layers is Linux - Linux 3.6 with approximately 115 patches.
This provides a level of abstraction between the device hardware and it contains all
the essential hardware drivers like camera, keypad, display etc. Also, the kernel
handles all the things that Linux is really good at such as networking and a vast
array of device drivers, which take the pain out of interfacing to peripheral
hardware.
Libraries
Android Libraries
This category encompasses those Java-based libraries that are specific to Android
development. Examples of libraries in this category include the application
framework libraries in addition to those that facilitate user interface building,
graphics drawing and database access. A summary of some key core Android
libraries available to the Android developer is as follows −
Android Runtime
This is the third section of the architecture and available on the second layer from
the bottom. This section provides a key component called Dalvik Virtual
Machine which is a kind of Java Virtual Machine specially designed and
optimized for Android.
The Dalvik VM makes use of Linux core features like memory management and
multi-threading, which is intrinsic in the Java language. The Dalvik VM enables
every Android application to run in its own process, with its own instance of the
Dalvik virtual machine.
The Android runtime also provides a set of core libraries which enable Android
application developers to write Android applications using standard Java
programming language.
Application Framework
Applications
You will find all the Android application at the top layer. You will write your
application to be installed on this layer only. Examples of such applications are
Contacts Books, Browser, Games etc.