iOS is the operating system that runs on iPad, iPhone and iPod touch devices. The operating system manages the device hardware and provides the technologies required to implement native apps.
iOS Technology
•
iOS is the operating system that runs on iPad, iPhone and iPod touch devices.
The operating system manages the device hardware and provides the technologies required
to implement native apps.
•
The iOS Software Development Kit (SDK) contains the tools and interfaces needed
to develop, install, run, and test native apps that appear on an iOS device's
Home screen.
•
Fig. 7.7.1 shows iOS architecture.
• The iOS Architecture is layered. At
the highest level, iOS acts as an intermediary between the underlying hardware
and the apps you create.
• Apps do not talk to the underlying
hardware directly. Instead, they communicate with the hardware through a set of
well-defined system interfaces. These interfaces make it easy to write apps
that work consistently on devices having different hardware capabilities.
• The Cocoa Touch layer contains key frameworks
for building iOS apps. These frameworks define the appearance of your app. They
also provide the basic app infrastructure and support for key technologies such
as multitasking, touch-based input, push notifications and many high-level
system services.
• High-Level features of Cocoa touch
layers are AirDrop, Multitasking, Auto Layout, Storyboards and Local
Notifications And Apple Push Notification Service.
•
Cocoa touch layer contains following frameworks for iPhone app development:
a.
UIKit framework
b.
Map kit framework
c.
Push notification service.
d. Message UI framework noise
e. Address book UI framework
f. Game kit framework
g.
iAd framework
h.
Event kit UI framework
i.
Accounts framework
j. Twitter framework
•
The Media layer contains the graphics, audio and video technologies you use to
implement multimedia experiences in your apps. The technologies in this layer
make it easy for you to build apps that look and sound great.
• The role of the Media layer is to
provide iOS with audio, video, animation and graphics capabilities.
• As with the other layers comprising
the iOS stack, the media layer comprises a number of frameworks which may be
utilized when developing iPhone apps.
•
The technologies in this layer make it easy for sound great.
a.
Graphics technologies
b.
Audio technologies
c.
Video technologies
d.
AirPlay.
• Media layer contains following
frameworks:
1. Core video framework:
This framework provides buffering support for the AMI Ista Core media
framework. Whilst this may be utilized by application developers it is
typically not necessary to use this framework.
2. Core text framework:
The iOS core text framework is a C-based API designed to ease the handling of
advanced text layout and font rendering requirements.
3.
Image I/O framework:
The Image I/O framework, the purpose of which is to facilitate the importing
and exporting of image data and image metadata, was introduced in iOS 4. The
framework supports a wide range of image formats including PNG, JPEG, TIFF and
GIF.
4.
Assets library framework:
The assets library provides a mechanism for locating and retrieving video
and photo files located on the iPhone device. In addition to accessing existing
images and videos, this framework also allows Simon new photos and videos to be
saved to the standard device photo album.
5. Core graphics framework:
The iOS core graphics framework provides a lightweight two dimensional
rendering engine. Features of this framework include PDF document creation and
presentation, vector based drawing, transparent layers, path based drawing,
anti-aliased rendering, color manipulation and management, image rendering and
gradients.
6. Core image framework:
A new framework introduced with iOS 5 providing a set of video and image filtering
and manipulation capabilities for application developers.
7. Quartz core framework:
The purpose of the Quartz Core framework is to provide animation capabilities
on the iPhone. It provides the foundation for the majority of the visual
effects and animation used by the UIKit framework and provides an Objective-C
based programming interface for creation of specialized animation within iPhone
apps.
8. OpenGL ES framework:
For many years the industry standard for high performance 2D and 3D graphics drawing
has been OpenGL. OpenGL for Embedded
Systems (ES) is a lightweight version of the full OpenGL specification
designed specifically for smaller devices such as the iPhone.
9. GLKit framework: The GLKit framework is an
Objective-C based API designed to ease the task of creating OpenGL ES based
applications.
10. NewsstandKit framework:
The Newsstand application is a new feature of iOS 5 and is intended as a
central location for users to gain access to newspapers and magazines. The
NewsstandKit framework allows for the development of applications that utilize
this new service.
11. iOS audio support: iOS is capable of supporting audio in AAC, Apple orolove Lossless (ALAC), A-law, IMA/ADPCM, Linear PCM, u-law, DVI/Intel IMA ADPCM, Microsoft GSM 6.10 and AES3-2003 formats through the support provided by the following frameworks.
12. AV foundation framework:
An Objective-C based framework designed to allow the playback, recording and
management of audio content.
• The Core Services layer contains
fundamental system services for apps.
• Key among these services are the core
foundation and foundation frameworks, which define the basic types that all
apps use.
• This layer also contains individual
technologies to support features such as location, iCloud, social media and
networking.
Features:
1.
Peer-to-Peer services
2. iCloud storage
3.
Automatic reference counting
4.
Block objects
5.
Grand
central dispatch
6.
In-App
purchase
7.
SQLite
8. XML support
9.
File-sharing support, data protection.
It
consists of the following frameworks:
•Address book framework:
This provides programmatic access to the iPhone Address Book contact database
allowing applications to retrieve and modify contact entries.
•
CFNetwork framework: The CFNetwork framework provides a C-based interface to the
TCP/IP networking protocol stack and low level access to BSD sockets. This
enables application code to be written that works with HTTP, FTP and domain
name servers and to establish secure and encrypted connections using Secure
Sockets Layer (SSL) or Transport Layer Security (TLS).
•
Core Data Framework: This framework is provided to ease the
creation of data modeling and storage in Model-View-Controller (MVC) based
applications. Use of the Core Data framework significantly reduces the amount
of code that needs to be written to perform common tasks when working with
structured data within an application.
• Core
foundation framework: The core foundation framework is a C-based Framework
which provides basic functionality such as data types, string manipulation, raw
block data management, URL manipulation, threads and run loops, date and times,
basic XML manipulation and port and socket anro communication.
•
The core media framework is the lower level foundation upon which the AV foundation layer is built.
• Core
telephony framework: The iOS core telephony framework is provided to allow
applications to interrogate the device for information about the current cell
phone service provider and to receive notification of telephony related events.
•
EventKit framework: An API designed to provide applications with access to
the calendar and alarms on the device.
• Most applications will use iCloud
document storage to share documents from a user's iCloud account. This is the feature
that users think of when they think of iCloud storage. A user cares about
whether documents are shared across devices and can see and manage those
documents from a given device.
• Data protection allows applications
that work with sensitive user data to take advantage of the built-in encryption
available on some devices.
• When your application designates a
specific file as protected, the system stores that file on-disk in an encrypted
format. While the device is locked, the contents of the file are inaccessible
to both your application and to any potential intruders.
• However, when the device is unlocked
by the user, a decryption key is created to allow your application to access
the file.
• The Core OS layer contains the low-level features that most
other technologies are built upon.
•
Even if you do not use these technologies directly in your apps, they are most
likely being used by other frameworks.
•
And in situations where you need to explicitly deal with security or communicating
with an external hardware accessory, you do so using the frameworks in
this layer.
•
This layer provides a variety of services including low level networking,
access to external accessories and the usual fundamental operating system services
such as memory management, file system handling and threads.
• The Core OS layer occupies the bottom
position of the iOS stack and, as such, sits directly on top of the device
hardware.
• The layer provides a variety of
services including low level networking, access to external accessories and the
usual fundamental operating system services such as memory management, file
system handling and threads.
•
Accelerate framework: Introduced in iOS 4.0, the Accelerate framework contains.
interfaces for performing DSP, linear algebra and image-processing
calculations. The advantage of using this framework over writing your own
versions of these interfaces is that they are optimized for all of the hardware
configurations present • in iOS, based devices. Therefore, you can write your
code once and be assured that it runs efficiently on all devices.
•
External accessory framework: It provides the ability to interrogate and communicate with external accessories connected physically to the iPhone via
the 30-pin dock connector or wirelessly via Bluetooth.
•
Security framework: The iOS Security framework provides all the security interfaces you would expect to find on a device that can connect to external
networks including certificates, public and private keys, trust policies, key
chains, encryption, digests and Hash-based Message Authentication Code (HMAC).
•
The core bluetooth framework allows developers to interact specifically with 80
Bluetooth Low-Energy ("LE") accessories. The Objective-C interfaces
of this framework allow you to scan for LE accessories, connect and
disconnect to ones you find, read and write attributes within a service,
register for service and attribute change notifications and much more.
•
System: The system level encompasses the kernel environment, drivers and low
level UNIX interfaces of the operating system. The kernel itself is based on
Mach and is responsible for every aspect of the operating system.
• It manages the virtual memory system,
threads, file system, network and interprocess communication. The drivers at
this layer also provide the interface between the available hardware and system
frameworks.
• For security purposes, access to the
kernel and drivers is restricted to a limited set of system frameworks and
applications.
•
iOS provides a set of interfaces for accessing many low-level features of the
operating system. Your application accesses these features through the
LibSystem library.
University
Question
Introduction to Operating Systems: Unit V: Virtual Machines and Mobile OS : Tag: : Virtual Machines and Mobile OS - Introduction to Operating Systems - iOS Technology
Introduction to Operating Systems
CS3451 4th Semester CSE Dept | 2021 Regulation | 4th Semester CSE Dept 2021 Regulation