1 Mobile Operating Systems BY:- Aashish Uppal CSE-1/7 th Sem (63/01115007209)

Slides:



Advertisements
Similar presentations
Pengantar Teknologi Mobile 12
Advertisements

Mobil game : A mobile game is a video game played on a mobile phone, smartphone, PDA, handheld computer or portable media player Type of language writing.
Android architecture overview
Introduction to Android Mohammad A. Gowayyed CS334-Spring 2014.
Android Platform Overview (1)
Multimedia Network Communications Subject:T0934 / Multimedia Programming Foundation Session:13 Tahun:2009 Versi:1/0.
J2ME 25 July Overview  What is J2ME?  The CLDC and CDC configurations  MIDP and MIDlets  Development Tools  Demonstrations.
UNDERSTANDING JAVA APIS FOR MOBILE DEVICES v0.01.
Programming Handheld and Mobile devices 1 Programming of Handheld and Mobile Devices Lecture 10 Java for MIDs Rob Pooley
Mobile Mobile OS and Application Team: Kwok Tak Chi Law Tsz Hin So Ting Wai.
DEPARTMENT OF COMPUTER ENGINEERING
ANDROID OPERATING SYSTEM Guided By,Presented By, Ajay B.N Somashekar B.T Asst Professor MTech 2 nd Sem (CE)Dept of CS & E.
INTRODUCTION OS/2 was initially designed to extend the capabilities of DOS by IBM and Microsoft Corporations. To create a single industry-standard operating.
Chapter 13 Embedded Systems
Mobile Application Development
V0.01 © 2009 Research In Motion Limited Understanding Java APIs for Mobile Devices Trainer name Date.
@2011 Mihail L. Sichitiu1 Android Introduction Platform Overview.
Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department.
Mobile Operating Systems
01 Introduction to Java Technology. 2 Contents History of Java What is Java? Java Platforms Java Virtual Machine (JVM) Java Development Kit (JDK) Benefits.
Introduction to Android Platform Overview
Android Introduction Platform Overview.
Programming mobile devices Part II Programming Symbian devices with Symbian C++
Android Introduction Based on slides made by
@2011 Mihail L. Sichitiu1 Android Introduction Platform Overview.
Android Programming By Mohsen Biglari Android Programming, Part1: Introduction 1 Part1: Introduction By Mohsen Biglari.
Introduction to Embedded Software Development School of software Engineering Introduction to Windows CE.
Small Devices on DBGlobe System George Samaras Chara Skouteli.
Framework and application bytecode size CLDC MIDP kXML parser Utility classes Graphics Logic (MIDlet) Application Data (XML file)
ANDROID Presented By Mastan Vali.SK. © artesis 2008 | 2 1. Introduction 2. Platform 3. Software development 4. Advantages Main topics.
Computer Science Wi-Fi App using J2ME and MVC Architecture Advisor : Dr. Chung-E Wang Department of Computer Science Sacramento State University Date:
J2ME Presented by May Sayed & Menna Hawash. Outline Introduction “Java Technology” Introduction “What is J2ME?” J2ME Architecture J2ME Core Concepts 
Java 2 Micro Edition (J2ME) and the world of java
ANDROID 응용 프로그래밍 과정 – 목차 - 안드로이드란 - 안드로이드가 만들어지게 된배경 - 안드로이드의 철학 - 안드로이드 환경설정 ( SDK download, eclipse plug-in 설정, 간단한 프로그램 실행 ) - 안드로이드 동작원리 - 안드로이드 핵심.
1Basics of J2ME. 2 Objectives –Understand the different java API’s and how the mobile edition API’s fit in –Understand what a mobile configuration and.
Created By. Jainik B Patel Prashant A Goswami Gujarat Vidyapith Computer Department Ahmedabad.
Presentation 11: SOAP on small devices. Ingeniørhøjskolen i Århus Slide 2 af 10 Outline Which small devices? What are the limitations and what kind of.
System Programming Basics Cha#2 H.M.Bilal. Operating Systems An operating system is the software on a computer that manages the way different programs.
1 Android Workshop Platform Overview. 2 What is Android?  Android is a software stack for mobile devices that includes an operating system, middleware.
Analysis And Research Of System Security Based On.
Android operating system N. Sravani M. Tech(CSE) (09251D5804)
By : Abhishek Verma Main Topics : 1. Introduction 2. Platform 3. Software Development 4. Overall Evaluation.
By Adam Reimel. Outline Introduction Platform Architecture Future Conclusion.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Advance Computer Programming Market for Java ME The Java ME Platform – Java 2 Micro Edition (J2ME) combines a resource- constrained JVM and a set of Java.
Google. Android What is Android ? -Android is Linux Based OS -Designed for use on cell phones, e-readers, tablet PCs. -Android provides easy access to.
The Java Platform Micro Edition Java ME
The Basics of Android App Development Sankarshan Mridha Satadal Sengupta.
Introduction to Operating Systems Concepts
DISCOVERING COMPUTERS 2018 Digital Technology, Data, and Devices
Computer System Structures
Android Mobile Application Development
Visit for more Learning Resources
Architecture of Android
ANDROID AN OPEN HANDSET ALLIANCE PROJECT
MOBILE DEVICE OPERATING SYSTEM
Wireless Instant Messaging Using J2ME
Contents: Introduction Different Mobile Operating Systems
CMPE419 Mobile Application Development
Instructor: Zhe He Department of Computer Science
Chapter 3: Windows7 Part 1.
Symbian Operating System
Chapter 2: System Structures
Chapter 2: The Linux System Part 1
Application Development A Tutorial Driven Course
Android Introduction Platform Mihail L. Sichitiu.
Korea Software HRD Center
Outline Operating System Organization Operating System Examples
CMPE419 Mobile Application Development
Presentation transcript:

1 Mobile Operating Systems BY:- Aashish Uppal CSE-1/7 th Sem (63/ )

2 Outline Introduction Mobile Operating System Structure Mobile Operating System Platforms Java ME Platform Symbian OS Windows Mobile OS iPhone OS Google Android Platform

3 OS Features Features Multitasking Scheduling Memory Allocation File System Interface I/O Interface Protection and Security Multimedia features

4 Mobile Requirements ● Limited resources CPU: 220 –370 MHz (ARM 9/ARM 11), MB Ram ● No hard disc Therefore no virtual (= “unlimited”) memory ● Power management Battery life, data safety in case of power loss is an issue ● Compact Not much room for UI and the application itself Reuse of common components important ● Reliability Phone functionality always highest priority “Always on”.

5 Introduction Design and capabilities of a Mobile OS (Operating System) is very different than a general purpose OS running on desktop machines: mobile devices have constraints and restrictions on their physical characteristic such as screen size, memory, processing power and etc. Scarce availability of battery power Limited amount of computing and communication capabilities

6 Introduction (Cont.) Thus, they need different types of operating systems depending on the capabilities they support. e.g. a PDA OS is different from a Smartphone OS. Operating System is a piece of software responsible for management of operations, control, coordinate the use of the hardware among the various application programs, and sharing the resources of a device.

7 Operating System Structure A mobile OS is a software platform on top of which other programs called application programs, can run on mobile devices such as PDA, cellular phones, smartphone and etc. Low-Level Hardware, Manufacturer Device Drivers Device Operating System Base, Kernel OS Libraries Applications

8 Mobile Operating System Platforms There are many mobile operating systems. The followings demonstrate the most important ones: Java ME Platform Symbian OS Linux OS Windows Mobile OS iPhone OS Google Android Platform

9 Java ME Platform J2ME platform is a set of technologies, specifications and libraries developed for small devices like mobile phones, pagers, and personal organizers. Java ME was designed by Sun Microsystems. It is licensed under GNU General Public License

10 Java ME Architecture Java ME platforms are composed of the following elements: Device/ Hardware Native Operating System Configuration Profile Optional Packages Vendor specific classes - OEM Application

11 Java ME Main Components Configuration: it defines a minimum platform including the java language, virtual machine features and minimum class libraries for a grouping of devices. E.g. CLDC Profile: it supports higher-level services common to a more specific class of devices. A profile builds on a configuration but adds more specific APIs to make a complete environment for building applications. E.g. MIDP

12 Java ME Optional Package: it provides specialized service or functionality that may not be associated with a specific configuration or profile. The following table lists some of the available packages: PackagesDescription JSR 75 - PIMPDA Package JSR 82 - BTAPIJava APIs for Bluetooth JSR WMAWireless Messaging API JSR 172J2ME Web Service JSR 179Location API for J2ME

13 Java ME Platforms It includes two kinds of platforms: High-end platform for high-end consumer devices. E.g. TV set-top boxes, Internet TVs, auto-mobile navigation systems Low-end platform for low-end consumer devices. E.g. cell phones, and pagers

14 Java ME Platforms (Cont.) The following figures demonstrate the elements of these two types of platforms: KVM CLDC MIDP JVM Foundation Profile Personal Profile Fig.1- Low-end consumer device platform architecture Fig.2- High-end consumer device platform architecture CDC

15 Java ME CLDC We focus on “Low-end” consumer devices: CLDC configuration address the following areas: Java language and virtual machine features Core Java libraries CLDC Specific Libraries (Input/output & Networking) Security: CLDC addresses the following topics to security At the low-level the virtual machine security is achieved by requiring downloaded Java classes to pass a class file verification step. Classes in protected system packages cannot be overridden by applications.

16 Java ME CLDC (Cont.) The entire CLDC implementation (static size of the K virtual machine + class libraries) should fit in less than 128 kilobytes. It guarantee portability and interoperability of profile- level code between the various kinds of mobile (CLDC) devices

17 Symbian OS Symbian OS is 32 bit. It is a multitasking operating system and very less dependence on peripherals. Kernel runs in the privileged mode and exports its service to user applications via user libraries.

18 Symbian OS Structure User libraries include networking, communication, I/O interfaces and etc. Access to these services and resources is coordinated through a client-server framework. Clients use the service APIs exposed by the server to communicate with the server. The client-server communication is conducted by the kernel.

19 Symbian OS Structure (Cont.) The following demonstrates the Symbian OS architecture [5] : Hardware Symbian OS Base- Kernel Symbian OS Libraries Servers Application Engines KVM

20 Symbian OS Features Real-time: it has a real-time, multithreaded kernel. Data Caging : it allows applications to have their own private data partition. This feature allows for applications to guarantee a secure data store. It can be used for e-commerce applications, location aware applications and etc. Multimedia: it supports audio, video recording, playback and streaming, and Image conversion.

21 Symbian OS Features (Cont.) Platform Security : Symbian provides a security mechanism against malware. It allows sensitive operations can be accessed by applications which have been certified by a signing authority. In addition, it supports full encryption and certificate management, secure protocols ( HTTPS, TLS and SSL) and WIM framework.

22 Symbian OS Features (Cont.) Internationalization support: it supports Unicode standard. Fully object-oriented and component- based Optimized memory management Client- server architecture [6] : described in previous slides, it provides simple and high-efficient inter- process communication. This feature also eases porting of code written for other platforms to Symbian OS.

23 Symbian OS Features (Cont.) A Hardware Abstraction Layer (HAL): This layer provides a consistent interface to hardware and supports device-independency Kernel offers hard real-time guarantees to kernel and user mode threads.

24 Windows Mobile OS Windows Mobile is a compact operating system designed for mobile devices and based on Microsoft Win32. It is run on Pocket PCs, Smartphones and Portable media centers. It provides ultimate interoperability. Users with various requirements are able to manipulate their data.

25 Google Android Platform It is a platform and an operating system for mobile devices based on the Linux operating system. It allows developers design applications in a java- like language using Google-developed java libraries. It supports a wide variety of connectivity such as GSM, WiFi, 3G, …

26 Google Android Platform Android architecture:

27 Google Android Platform As demonstrated in the previous slide, the Android platform contains the following layers: Linux Kernel: Android relies on Linux for core system services such as security, memory management, process management and etc. Android [7] Runtime: it provides a set of core libraries which supports most of the functionality in the core libraries of Java. The Android Virtual Machine known as Dalvik VM relies on the linux kernel for some underlying functionality such as threading,…

28 Google Android Platform Libraries: Android includes a set of C/C++ libraries. These libraries are exposed to developers through the Android application framework. They include media libraries, system C libraries, surface manager, 3D libraries, SQLite and etc. For more details, please visit the following link: Application Framework: it provides an access layer to the framework APIs used by the core applications. It allows components to be used by the developers.

29 iPhone OS iPhone OS is an operating system run on iPhone and iPod. It is based on Mach Kernel. The Mac OS X kernel includes the following component: Mach Kernel BSD I/O component File Systems Networking components

30 iPhone OS The following is Mac OS X Architecture : Kernel Environment Core Services Application Services QuickTime ClassicCarbonCocoaJDKBSD

31 iPhone OS Mac OS X has a preemptive multitasking environment. Preempting is the act of taking the control of operating system from one task and giving it to another task. It supports real-time behavior. In Mac OS X, each application has access to its own 4 GB address space.

32 iPhone OS Not any application can directly modify the memory of the kernel. It has a strong mechanism for memory protection. For more details about kernel architecture, please visit the following link: Mac OS X Kernel Architecure OverviewMac OS X Kernel Architecure Overview,

33 References [1] Mobile Operating Systems, el1&path=dsonline/topics/os&file=MobileOS.xml&xsl=article.xsl&##archives el1&path=dsonline/topics/os&file=MobileOS.xml&xsl=article.xsl&##archives [2] Symbian OS, //wiki.forum.nokia.com/index.php/Symbian_OS&h=260&w=467&sz=10&hl=en&start=45&sig2=Hx5G5bWIQo_Hc3_kni4lgw&u m=1&tbnid=PeArbbX9LhuMaM:&tbnh=71&tbnw=128&ei=ZStJSIKCNaLGgwKe09nXAw&prev=/images%3Fq%3Dmobile%2Boper ating%2Bsystem%2Bstructure%26start%3D36%26ndsp%3D18%26um%3D1%26hl%3Den%26sa%3DN [3] Symbian OS, [4] Mobile Phones, the Embeded Linux Challenge, [5] iPhone SDK,

34