0% found this document useful (0 votes)
31 views85 pages

OS - Module 5

A mobile operating system (OS) is specifically designed for mobile devices, featuring functionalities suitable for handheld use, with popular examples including Android, iOS, and Windows Mobile. The document outlines the history of mobile OS development, highlighting key milestones from the early 1990s to recent advancements, as well as the features and architecture of mobile operating systems. It also discusses the importance of protection mechanisms in operating systems to secure data and resources in multiuser environments.

Uploaded by

albinbaiju727
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views85 pages

OS - Module 5

A mobile operating system (OS) is specifically designed for mobile devices, featuring functionalities suitable for handheld use, with popular examples including Android, iOS, and Windows Mobile. The document outlines the history of mobile OS development, highlighting key milestones from the early 1990s to recent advancements, as well as the features and architecture of mobile operating systems. It also discusses the importance of protection mechanisms in operating systems to secure data and resources in multiuser environments.

Uploaded by

albinbaiju727
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 85

MOBILE OS

• A mobile operating system is an operating system built exclusively for a


mobile device, such as smartphone, tablets, smart watches etc.
• Mobile OS has the features of computer system with the features useful for
mobile or handheld use.
• Popular mobile OS are Android, iOS, BlackBerry OS and Windows mobile.
HISTORY OF MOBILE OS
Over the past decade, smartphones have taken the world by storm and recently
tablets have entered into arena as well.
Important milestones in the development and evolution of mobile OS are the
following….
* Pre-1993 Mobile phones of the period 1973-1993 were using embedded
systems to control operation.
* 1993-1999
In 1993, Apple launched Newton OS running on their Newton series of
portable computers. The first smartphone, the IBM Simon, introduced in
the year 1994, had a touchscreen, email, and PDA features.

Palm Pilot 1000 personal digital assistant was introduced with the Palm OS
mobile operating system in the year 1996.
In 1998, Symbian Ltd. has developed Symbian OS. Symbian was used by
many major mobile phone brands, and above all by Nokia.
* 2000:- Symbian became the first modern mobile OS on a smartphone with
the launch of the Ericsson r380 in the year 2000.
*Kyocera 6035 introduced in the year 2001, became the first smartphone with
palm OS.
*Microsoft's first windows CE (pocket pc) smartphones were introduced in the
year 2002, in the same year, blackberry released its first smartphone.
*In the year 2003, Motorola introduced the first Linux based cell phone
*Motorola a760 based on the Linux Monta vista distribution. in 2005,
*Nokia introduced Maemo OS on the first internet tablet n770 in the year
2007.
*in the year 2008, oha released android (based on Linux kernel) 1.0 with the
HTC dream (T-Mobile g1) as the first android phone.
*In the year 2009, the palm introduced webOS with the palm pre. in the same
year, samsung announced the bada OS with the introduction of the Samsung
$85
2010S
*In November 2010, Windows Phone OS phones were led but
*were not compatible with the prior Windows Mobile OS In July 2011.
*In July 2012. Mozilla announced that the project formerly named Boot
*In September 2013, Apple released iOS 7. In October 2013, the Canonical announced Ubuntu Touch (later
discontinued). The OS was built on the Android Linux kernel, using Android drivers and services.
*In February 2014, Microsoft released Windows Phone 8.1. In September 204, Apple released iOS 8 and
BlackBerry released BlackBerry 10.3 with integration with the Amazon Appstore. *In November 2014, Google
released Android 5.0 "Lollipop".
*In February 2015, Google released Android 5.1 "Lollipop". In September 2015, Apple released iOS 9 and Google
released Android 6.0 Marshmallow". In October 2015, future updates would focus on security and privacy
enhancements only. In November 2015. Microsoft released Windows 10 Mobile. In February 2016, Microsoft
released Windows 10 Mobile Anniversary Update. In June 2016. Apple announced iOS 10In May 2017, Samsung
announced Tizen 41 v Tizen Developer Conference 2017. In August 2017, Google veld Android 8.0 Oreo".
*In August 2017, BlackBerry and the Android-based BlackBerry Secure which focus on security September 2017.
Apple introduced the iPhone 8, iPhone X, and 11. In October 2017, Microsoft announced that developed Windows
10 Mobile will be on maintenance mode only, thus the won't be any new feature would introduce to Windows 10
Mobile
*In February 2018, Samsung released Samsung Experience 95 based on Android "Oreo 8.0 globally to Samsung
Galaxy S8 and S8 .*In June 2019 Apple announced iOS 13.
Popular Mobile Operating Systems
• Android
Android is a Linux-based operating system designed primarily for touchscreen mobile
devices such as smartphones and tablet computers, developed by Google in conjunction
with the Open Handset Alliance.
Android has a large community of developers writing applications ("apps") that extend
the functionality of devices.
The first Android-powered phone was sold in October 2008 and by the end of 2010
Android had become the world's leading smartphone platform. Android has been the
best-selling OS worldwide on smartphones since 2011 and on tablets since 2013. As of
May 2017, it has over two billion monthly active users, the largest installed base of any
operating system.
• Ios
OS (formerly iPhone OS) is a mobile operating system created and developed
by Apple Inc. exclusively for its hardware. It is the operating system that
presently powers many of the company's mobile devices, including the iPhone,
iPad, and iPod Touch.
It is the second most popular mobile operating system globally after Android.
Major versions of iOS are released annually. The current version, iOS 12 was
released on September 17, 2018. On all recent iOS devices, iOS regularly
checks on the availability of an update, and if one is available, prompt the user
to permit its automatic installation.
• Windows
Microsoft launched the Windows Phone operating system as Windows Mobile
in 2003.
Windows Phone replaced Windows Mobile in 2010. Windows Phone offers
users features and applications that are similar to the desktop- computer
version of Windows.
On January 18, 2019, Microsoft announced that support for Windows 10
Mobile would end on December 10, 2019, with no further security updates
released after then, and that Windows 10 Mobile users should migrate to iOS
or Android phones.07:19 PM
• BlackBerry
BlackBerry's OS is comparable to iOS because both systems are closed-
source. This means that users can only use this mobile operating system on
devices that have the corresponding brand name.
When comparing BlackBerry to other mobile devices, it remains solid in
connectivity and user-friendliness BlackBerry users do experience shorter
battery life, however.
In addition, camera on BlackBerry devices are a lower quality than other
devices. BlackBerry appeals more to corporate users than personal users.
• Symbian
The Symbian platform was developed by Nokia for some models of
smartphones.
The operating system was discontinued in 2012, although a slimmed-down
version for basic phones was still developed until July 2014.
Features of
Mobile Operating Systems
A Mobile OS controls everything from handling the
input to the overall functioning of a device.
Common Components found in a mobile:
• A Battery

• Keypad (can be also touchscreen)

• Services to make calls

• SIM tray

• IMEI number

Apart from these, there are features for roaming, WAP, GPRS, Apps like clock, calendar, etc…, and GPS.
Services and Capabilities that a good
Mobile OS should have

>>
Power Management

• Limited battery power should be used by the OS.

• Helps in lowering heat dissipation.


Battery Management

• OS should collect data about the state of the batteries in the device.

• It usually notifies/warns the users when the devices go to low charge.


Thermal Management

• Heat dissipation is the issue faced in most devices.

• OS should be capable of reducing power consumption.


Memory Management

• OS should consume less memory.

• It should free the memory of unused objects to optimize the memory for other apps.
Reduced Boot-up time

• The OS should boot in less amount of time as it consumes only less memory space.

• The microkernel structure and by deferring the initialization of device drivers, they
achieve this short span of time.
CPU

• Mobile devices also have CPU just like the PCs, but with low battery consumption
environment.
Memory

• Memory is an essential part of a mobile device.

• Usually mobile OS and applications run in the RAM of a device.

• Users can also add flash memory for storing other data like audio, video etc…
Synchronization facility

• Most of the devices come with a synchronization facility to sync data with the PC.

Apart from all these, there are options for GPS location, Multimedia, QWERTY keyboard
and Accessing the internet.
Architecture of Mobile Operating
System
Introduction

– Mobile OS design has experienced a three phase evolution : from the PC based
OS to an embedded OS to the current smartphone –oriented OS in the past
decade . Throughout the process , mobile OS Architecture has gone fro complex
to simple to something in b/w.
Advancement in OS
1st evolution
11%

2nd evolution
25%

3rd evolution
64%

1st evolution 2nd evolution 3rd evolution

This shows the increase in the features of the mobile operating system in the
time evolution of 2 decades.
Architecture of Mobile OS
in the past

– The End users & the mobile device application is connected


serially to the internet without any intermediate connections in
between .

user application internet


Now in the present

– Here comes the vast usage of cloud computing


– Gets in connection with the cloud server.
– Access from the service providers
– The application developers
– Various end users who are using the same cloud network
Comparison between the past model
& the current model

Past model New model


– Secure connection
– Less secure connection
– Comes in interaction with the
– Direct access from the internet
cloud server.
– No excess work load
– Multi tasking
– Less network traffic possibilities
– Network traffic possibility is high
– Less expensive
– Expensive
Trends To Look For In Operating
Systems In Years To Come

– OS With Developed Ecosystem


– Augmented Reality
– Ideal Platform For App Developers
– Connecting World With Apps
– Performance
– Security
Introduction to Android
operating system
Subtitle
Introduction to Android

▪ Android is a mobile operating system that is based on a modified version of Linux.


▪ It was originally developed by a startup of the same name, Android, Inc. In 2005, as
part of its strategy to enter the mobile space, Google purchased Android and took
over its development work
▪ Google wanted Android to be open and free; hence, most of the Android code was
released under the open source Apache License, which means that anyone who wants
to use Android can do so by downloading the full Android source code.
▪ The main advantage of adopting Android is that it offers a unified approach to
application development.
▪ Developers need only develop for Android, and their applications should be able to
run on numerous different devices, as long as the devices are powered using Android.
Android Versions
•Gingerbread
•Ice cream
sandwich
•Jelly bean
•Kitkat
•Lollipop
•Marshmallow
•Nougat
•Oreo
•Pie
•Android 10
Features of Android
▪ 1. Storage — Uses SQLite, a lightweight relational database, for data storage.
▪ 2. Connectivity — Supports GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth
(includes A2DP and AVRCP), Wi-Fi, LTE, and WiMAX.
▪ 3. Messaging — Supports both SMS and MMS.
▪ 4. Web browser — Based on the open source WebKit, together with Chrome’s V8
JavaScript engine
▪ 5. Media support — Includes support for the following media: H.263, H.264 (in 3GP or
MP4 container), MPEG-4 SP, AMR, AMR-WB (in 3GP container), AAC, HE-AAC (in MP4 or
3GP container), MP3, MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF, and BMP.
▪ 6. Hardware support — Accelerometer Sensor, Camera, Digital Compass,
Proximity Sensor, and GPS
▪ 7. Multi-touch — Supports multi-touch screens
▪ 8. Multi-tasking — Supports multi-tasking applications
▪ 9. Flash support — Android 2.3 supports Flash 10.1.
▪ 10. Tethering — Supports sharing of Internet connections as a wired/wireless
hotspot
▪ 11.Auto correction
▪ 12.Screen capture
▪ 13.TV recording
▪ 14.Multiple language support
▪ 15.Java support
Android
Architecture
The software stack is split into 5 layers:

The application layer


The application framework
The libraries and runtime
The Hardware Application layer (HAL)
The kernel
Linux Kernel
Linux Kernel
This layer is core of android architecture. It
provides service like:
power management,
memory management,
security,
networking and core OS infrastructure.
Linux kernel provides a level of
abstraction b/w the device hardware and
the upper layers of the Android software
stack.
It helps in software or hardware binding
for better communication
Hardware
Application Layer
(HAL)
HAL
HAL provides an abstraction layer b/w the
underlying physical device hardware and the
reminder of software stack.
HAL defines a standard interface for hardware
vendors to implement functionality without
affecting or modifying the hinger level system.
Android Runtime
Android Runtime
It is one of the most important part of
android. It contains components like core
libraries & Android Runtime(ART).
It was specifically for android to meet the
needs of running in an embedded
environment where you have limited battery,
limited memory, limited CPU.
Android Runtime(ART)
This portion contains one of the most important components
Dalvik VM(DVM).
Specially optimized and made for android.
It enables every android app to run its own process which
helps us to run many applications at same time. Converts -
.java .Dex format.
ART uses a process referred to as Ahead-of-Time(AOT)
compilation to translate the bytecode sown to native
instructions. This format is know as Executable & Linkable
Format(ELF).
Major Features ART:
Ahead-of-Time
Optimized garbage collection
Better Debugging support
Detailed diagnostic exceptions
Crash reporting

CORE LIBRARIES
Java programming language contains all the collection
classes, utilities, IO.
Android Libraries available to the dev :

android.app
android.content
android.database
android.graphics
android.hardware
android.opengl
android.os
android.media
android.net
android.print
android.provider
android.text
android.util
android.view
android.widget
android.webkit
• NATIVE C/C++ LIBRARIES

• JAVA API FRAME WORK

• SYSTEM APPS
NATIVE C/C++ LIBRARIES

• “Native Library” generally means a non-Java library that’s


used by the system (so C/C++, etc).

• These libraries are used to fulfil a wide and Diverse Range of


functions including 2D and 3D graphics drawing , secure
socket layer communication, Audio and Video playback and an
implementation of Standard C system Library (libc).

• These Libraries can be accessed using Android Native


Development Kit
JAVA API FRAMEWORK

• The Java Application program interface (API) framework is a set


of services That collectively form the environment in which
Android applications run and are managed.

• It acts as a bridge between Different software and devices


SYSTEM APPS

• System apps are pre-installed apps in the system

• Android comes with a set of core apps For email,sms messaging ,contacts etc.

• The system apps Function both as a app for users and to provide key Capabilities that
developers can access from their own app
Protection in Operating System
Protection is especially important in a multiuser environment when multiple users
use computer resources such as CPU, memory, etc. It is the operating system's
responsibility to offer a mechanism that protects each process from other processes.
In a multiuser environment, all assets that require protection are classified as
objects, and those that wish to access these objects are referred to as subjects. The
operating system grants different 'access rights' to different subjects.
Need of Protection in Operating System
Various needs of protection in the operating system are as follows:
1.There may be security risks like unauthorized reading, writing,
modification, or preventing the system from working effectively for
authorized users.
2.It helps to ensure data security, process security, and program security
against unauthorized user access or program access.
3.It is important to ensure no access rights' breaches, no viruses, no
unauthorized access to the existing data.
4.Its purpose is to ensure that only the systems' policies access programs,
resources, and data.
Goals of Protection in Operating System
Various goals of protection in the operating system are as follows:
1.The policies define how processes access the computer system's resources,
such as the CPU, memory, software, and even the operating system. It is the
responsibility of both the operating system designer and the app
programmer. Although, these policies are modified at any time.
2.Protection is a technique for protecting data and processes from harmful or
intentional infiltration. It contains protection policies either established by
itself, set by management or imposed individually by programmers to
ensure that their programs are protected to the greatest extent possible.
3.It also provides a multiprogramming OS with the security that its users
expect when sharing common space such as files or directories.
Role of Protection in Operating System

• Its main role is to provide a mechanism for implementing policies that


define the use of resources in a computer system. Some rules are set
during the system's design, while others are defined by system
administrators to secure their files and programs.
• Every program has distinct policies for using resources, and these
policies may change over time. Therefore, system security is not the
responsibility of the system's designer, and the programmer must also
design the protection technique to protect their system against
infiltration.
Domain of Protection
• The protection policies limit the access of each process with respect to their
resource handling. A process is bound to use only those resources which it
requires to complete its task, in the time limit that it requires and also the
mode in which it is required. That is the protected domain of a process.
• A computer system has processes and objects, which are treated as abstract
data types, and these objects have operations specific to them. A domain
element is described as <object, {set of operations on object}>.
• Each domain consists of a set of objects and the operations that can be
performed on them. A domain can consist of either only a process or a
procedure or a user. Then, if a domain corresponds to a procedure, then
changing domain would mean changing procedure ID. Objects may share a
common operation or two. Then the domains overlap.
Domain Structure
•A protection domain specifies the resources that a process may access.
•Each domain defines a set of objects and the types of operations that may be invoked on
each object.
•An access right is the ability to execute an operation on an object.
•A domain is defined as a set of < object, { access right set } > pairs, as shown below. Note
that some domains may be disjoint while others overlap.
Association between process and
domain :
Processes switch from one domain to other when they have the access
right to do so. It can be of two types as follows.
1.Fixed or static –
In fixed association, all the access rights can be given to the processes
at the very beginning but that give rise to a lot of access rights for
domain switching. So, a way of changing the contents of the domain
are found dynamically.

2.Changing or dynamic –
In dynamic association where a process can switch dynamically,
creating a new domain in the process, if need be.
Security Measures :
• Security measures at different levels are taken against malpractices, such as no person
should be allowed on the premises or allowed access to the systems.
• The network that is used for the transfer of files must be secure at all times. No alien
software must be able to extract information from the network while the transfer. This is
known as Network Sniffing, and it can be prevented by introducing encrypted channels of
data transfer. Also, the OS must be able to resist against forceful or even accidental
violations.
• The best ways of authentication are using a username password combination, using
fingerprint, eye retina scan or even user cards to access the system.
• Passwords are a good method to authenticate, but it is also one of the most common as well
as vulnerable methods. To crack passwords is not too hard. While there are weak passwords,
but even hard passwords can be cracked by either sniffing around or giving access to
multiple users or even network sniffing as mentioned above.
MAJOR SECURITY THREATS
MAJOR SECURITY THREATS

• A system is said to be secure if its resources are used and accessed as


intended under all circumstances.
• Program threats
• System & network threats
PROGRAM THREATS

• If a user program made these process do malicious tasks, then it is known as


program threats.
• Malware
• Code injection
• Viruses & worms
MALWARE

• Malware is malicious software that enables the attacker to have full or limited
control over the target system. Malware can damage, modify, and/or steal
information from the system. There are various types of malware such
as viruses, Trojans, worms, rootkits, spyware, and ransomware.
TROJAN HORSE

• A Trojan Horse (Trojan) is a type of malware that disguises itself as


legitimate code or software. Once inside the network, attackers are able to
carry out any action that a legitimate user could perform, such as exporting
files, modifying data, deleting files or otherwise altering the contents of the
device. Trojans may be packaged in downloads for games, tools, apps or even
software patches. Many Trojan attacks also leverage social
engineering tactics, as well as spoofing and phishing, to prompt the desired
action in the user.
SPYWARE

• Spyware is a type of malicious software -- or malware -- that is installed on a


computing device without the end user's knowledge. It invades the device,
steals sensitive information and internet usage data, and relays it to
advertisers, data firms or external users.
RANSOMEWARE

• Ransomware is a type of malware that prevents or limits users from accessing


their system, either by locking the system's screen or by locking the users'
files until a ransom is paid. More modern ransomware families, collectively
categorized as crypto-ransomware, encrypt certain file types on infected
systems and force users to pay the ransom through certain online payment
methods to get a decryption key.
TRAPDOOR & LOGIC BOMB

• Trap Doors can provide access to a system for unauthorized


procedures. Logic Bombs execute malicious code at certain time. Total
Security is difficult.
• A logic bomb is a set of instructions in a program carrying a malicious
payload that can attack an operating system, program, or network. It only
goes off after certain conditions are met. A simple example of these
conditions is a specific date or time
CODE INJECTION

• Code injection is the malicious injection or introduction of code into an


application. The code introduced or injected is capable of compromising
database integrity and/or compromising privacy properties, security and even
data correctness. It can also steal data and/or bypass access and
authentication control. Code injection attacks can plague applications that
depend on user input for execution.
VIRUSES & WORMS

• Worms are similar to a virus but it does not modify the program. It replicates
itself more and more to cause slow down the computer system. Worms can be
controlled by remote. The main objective of worms is to eat the system
resources.
• A virus is a malicious executable code attached to another executable file that
can be harmless or can modify or delete data. When the computer program
runs attached with a virus it performs some action such as deleting a file from
the computer system. Viruses can’t be controlled by remote.
USER
AUTHENTICATION &
AUTHORIZATION
AUTHORIZATION &
AUTHENTICATION
• Identifying users and actions they are allowed to perform is
vital to maintaining a secure computing system.
• Access to a system and its resources are protected by both
authentication and authorization

20XX Pitch deck title 2


AUTHORIZATION

Authorization is a process by which a server determines if the


client has permission to use a resource or access a file.
Authorization is usually coupled with authentication so that
the server has some concept of who the client is that is
requesting access.

20XX Pitch deck title 3


AUTHENTICATION

The process or action of verifying the identity of a user or


process.
The system determines whether you are what you say you
are using your credentials. Authentication is usually done by
factors of authentication.

20XX Pitch deck title 4


SINGLE FACTOR
AUTHENTICATION
• Simplest authentication method
• Uses only one credential (eg., password)

20XX Pitch deck title 5


TWO - FACTOR
AUTHENTICATION
• Uses two forms of authentication to access resources and
data
• Is more secure than single factor authentication
• Not only requires username and password but also and
additional authentication form

20XX Pitch deck title 6


MULTI FACTOR
AUTHENTICATION
• Most advanced method of authentication
• Uses two or more levels of security from independent
categories

20XX Pitch deck title 7


PASSWORDS

20XX Pitch deck title 8


PASSWORDS
• Widely used authentication method
• User provides name/login id and password
• System compares password with that saved for specified login

20XX Pitch deck title 9


PASSWORD
VULNERABILITIES
 Password guessing against single user
 Illegally transferred from an authorized user to an
unauthorized user
 Using brute force algorithms to try out all possible
combinations of valid password characters
 Dictionary attacks
 Shoulder surfing
 Passwords can be lost or forgotten

20XX Pitch deck title 10


ONE-TIME PASSWORDS
• A password which is valid for only one login session
• Ensures that the otp requires access to something a person
has ( such as specific cell phone)
• They are not vulnerable to replay attacks
• Uses strong hashing algorithms so that attackers are unable
to decrypt the otp’s
• OTPs are valid only for a short perios of time

20XX Pitch deck title 11


BIOMETRICS

 Biometrics identifiers are the distinctive, measurable


characteristics used to label and describe individuals
 Categorized as physiological and behavioral
characteristics.
 Physiological characteristics are related to shape of the
body (e.g., fingerprint, retina, face, DNA)
 Behavioral characteristics includes typing rhythm, posture
and voice
 They are unique to individuals, so more reliable

20XX Pitch deck title 12


SUMMARY

At Contoso, we believe in giving 110%. By using our next-


generation data architecture, we help organizations virtually
manage agile workflows. We thrive because of our market
knowledge and great team behind our product. As our CEO
says, "Efficiencies will come from proactively transforming
how we do business."

20XX Pitch deck title 13

You might also like