Mobile Architectures -- Duration: 1 day
----------------------------------------------
Synopsis
A one-day seminar comparing and contrasting the two leading mobile architectures of 2014: Android and iOS. The two systems, light years apart yet closer than one would expect, are shown side by side, focusing on aspects of system design, usability, power management, the runtime environment, and security. Presented by the people who wrote the definitive book on OS X/iOS internals - and will soon do the same for Android.
Target Audience
Developers of mobile applications, as well as technical leaders and IT officers
This course is NOT intended for user mode developers who wish to develop GUI applications or use the Android Java SDKs - but can be a great recommended followup for those who already do.
Prerequisites
None.
Objectives
- Gain familiarity with the system architecture of both Android and iOS
- Detail the similarities and differences between Android and iOS
- Gain insight as to the iOS and Android security landscape
Exercises
This is a seminar, so it does not include exercises. There are plenty of demonstrations, however
MODULES
1. |
Like father, like son |
|
2 hours |
|
How is a mobile operating system different than a deskop or server one? We discuss Android and iOS in relation to their "ancestors" - Linux and OS X, respectively. Drawing on detailed architectural diagrams, we see which features of the parent OSes made it to the mobile derivatives, and which didn't make the cut - and why.
- Android vs. Linux - Similarities and differences
- OS X vs. iOS - Similarities and differences
- ARM vs. x86
|
2. |
Sibling Rivalry |
|
4 hours |
|
How do iOS and Android differ from one another? In what ways are they similar? This module explores the approach both OSes use to deal with such aspects as:
- Application runtime: Dalvik vs. Objective-C
- Memory Management - OOM/LowMemoryKiller vs. Jetsam/Memorystatus
- Application deployment and packaging - APK vs. IPSW
- Programming APIs - Framework showdown
- Power Management - Wakelocks, assertions, sleep and hibernation
- Kernel features - Linux vs. XNU
|
3. |
Know Your Enemy |
|
2 hours |
|
Android and iOS take different views when it comes to system security. Android protects the user against malicious apps (or at least tries to), whereas iOS protects the user against... himself. In other words, in Android the App is untrusted, wherein iOS the user is. This module explores the security features of both OSes, detailing:
- Android's Dalvik security model
- the iOS "Jail" - Entitlements
- Code signing
- Rooting (Android) and Jailbreaking
- Kernel level enhancements - new in iOS 6 and Android 4.0+
|
|
------------------------------------------------
Completed in 0.01s