0% found this document useful (0 votes)
8 views34 pages

Lecture 01 - Introduction

Uploaded by

Awais Qamar
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)
8 views34 pages

Lecture 01 - Introduction

Uploaded by

Awais Qamar
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/ 34

Mobile Application Development for

SMEs

Dr. Hasan Ali Khattak


Spring 2022
Lecture01
about.me/hasanalikhattak
•Education and Experience
•BCS – University of Peshawar (DCS – class of 2007)
•MSIT – National University of Sciences and Technology (SEECS – class of 2009)
•MS – Polytechnic University of Torino (DAUIN – class of 2012)
•PhD – Polytechnic University of Bari (DEI – class of 2015)
•Post-Doc – Politecnico di Bari (UbiCare – Apulia 2011-2014)
•Assistant Professor – COMSATS Institute of Information Technology (2015 – 2020)
•Associate Professor – NUST SEECS (2020 – present )
•Research Interests
•Semantic Web of Things
•Future Internet Applications
•Cloud Computing and Edge Computing
•Linked Open Data
•Content Centric Networks
•Contact
•Course Site – https://hasan.khattak.info/
•Reach Me – [email protected]
•Publications – https://hasan.khattak.info/publications
When, Where and What
Monday and Wednesday - CR12
Goals
Mobile Operating Systems

• An Operating system is a system software that


• manages computer hardware
• manages applications and software
• Provides common services for programs
• A Mobile Operating System is for
• Mobile phones
• Tablets
• Smart watches
• And other mobile devices
• Laptops generally do not use mobile OS
Mobile Operating Systems (2)

• A mobile OS has two kinds of features


• Those of regular desktop OS
• Others useful for mobile or handheld use
• Smartphones generally contain two OS

• Main user-facing software platform


• Runs apps and interacts with user
• Low-level proprietary real-time operating system Figure. Most-used operating
• operates the radio and other hardware systems in each country or
dependency.
Blue - Windows
Green - Android
Mobile Operating Systems (3)
History of Mobile OS

• Pre-1993 - Mobile phones use embedded systems to


control operation.
• 1993 - Apple launches Newton OS running on their
Newton series of portable computers.
• 1994 - The first smartphone, the IBM Simon, has a
touchscreen, email, and PDA features.
• 1998 - Symbian Ltd. is formed as a joint venture by
Psion, Ericsson, Motorola, and Nokia.
• Used by several major mobile phone brands, but
especially Nokia.
History of Mobile OS (2)

• 2002 - BlackBerry releases its first


smartphone, running Java 2 Micro Edition
(J2ME).
• 2005 - Microsoft announces Windows
Mobile 5.0.
• 2007 - Apple's iPhone with iOS is
introduced as a "widescreen iPod,"
"mobile phone," and "Internet
communicator".
• 2008 - OHA releases Android (based on
Linux kernel) 1.0 with the HTC Dream as
the first Android phone.
History of Mobile OS (3)

• Open Handset Alliance


• Established on 5 November 2007, led by Google
• 34 members,[3] including mobile handset
makers, application developers, some mobile
carriers and chip makers.
• Android
• Flagship software of the alliance (first developed
by Google in 2007)
• Based on an open-source license
• OHA members are contractually forbidden from
producing devices that are based on competing
forks of Android.
Android

• Based on modified Linux kernel


• The base system is open-source
• Apps and drivers are increasingly becoming closed-source.
• When an application is not in use the system suspends its operation (for less battery
use)

• Applications ("apps") extend the functionality of devices (and must be 64-bit),


• written using the Android software development kit (SDK)
• SDK includes
• Debugger and software libraries
• handset emulator based on QEMU
Android software development

• Android apps can be written using Kotlin,


Java, and C++ languages
• All non-JVM languages, such as Go,
JavaScript, C, C++ or assembly, need the help
of JVM language code.
• Some programming languages and tools
allow cross-platform app support (i.e. for
both Android and iOS).
• Flutter
• React native
The Android Stack

• Hardware abstraction layer (HAL)


• bridges the gap between hardware and
software.
• Android application/framework
communicates with the underlying
hardware through Java APIs not by
system calls.
• But the Linux has the ability to handle
only systems calls from application.
• Thus we need a glue layer between the
android framework and linux system.
• HAL is a c/c++ layer which is a vendor
specific implementation.
The Android Stack (2)

• Android Runtime
• Application runtime environment used by
Android
• Previously Dalvik was used
• trace-based just-in-time (JIT) compilation
• optimizing execution by continually
profiling applications each time they run
• ART introduces the use of ahead-of-time (AOT)
compilation
• compiling entire applications into native
machine code upon their installation.
• brings faster execution of applications,
improved memory allocation and garbage
collection
EVALUATION
Ø Individual Seminar
Mandatory, dates will be defined (during the semester)
Ø Team Projects
Mandatory, submit the project when ready however before the last week
of semester

The Project will be divided in the following phases as follows:


Proposal – Due 3th Week: Outline a domain and problem supported by recent literature.
Literature – Due 6th Week: Related work comprising of not less than 15 recent papers from
top venues with high citations.
Proposed Solution – Due 8th Week: A complete proof of concept supported proposal with
complete architecture and component level design.
Validation – Due 10th Week: Results in case of Research work and discussion in case of Survey.
Conclusion – Due 12th Week: Conclusion and future work supported with discussion.

You might also like