The iPhone architecture is shown in the figure.
Cocoa Touch Layer
- It is a top layer of the iPhone OS stack and it contains the frameworks that are most commonly used by iPhone application developers.
- Moreover, Cocoa Touch is primarily written in Objective-C, and it is based on the standard Mac OS X Cocoa API.
- Also, Some of the main features and technologies of Cocoa Touch are:
- App Extension
- Document Picker
- UIKit Dynamics
- Auto Layout
- UI State Preservation, etc.
- Moreover, Cocoa Touch provides the key frameworks for developing applications on devices running iOS. Some of these key frameworks are:
- Foundation Kit Framework
- UIKit Framework (based on Application Kit)
- GameKit Framework
- iAd Framework
- MapKit Framework
- Address Book UI Framework
- Twitter Framework, etc.
- It is the second layer from the top of the stack. It provides the iPhone OS with audio, video, animation and graphics capabilities.
- As with the other layers of the iPhone OS stack, the Media layer comprises a number of frameworks that can be utilized when developing iPhone apps.
- Also, The media layer comprises of following frameworks:
- Core Graphics Framework
- Quartz Core Framework
- OpenGL ES framework
- AV Foundation framework
- Core Audio Frameworks
- Media Player framework
Core Services Layer
- It is the third layer from the top of the stack.
- Moreover, The iPhone Core Services layer provides much of the foundation on which the above layers are built.
- Also, The core services layer comprises of following frameworks:
- Address Book framework
- Core Data Framework
- Core Foundation Framework
- Foundation Framework
- Core Location Framework
- Store Kit Framework
Core OS Layer
- The Core OS Layer is the bottom layer of the iPhone OS stack and sits directly on top of the device hardware.
- Also, 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.
- Moreover, The core OS layer comprises of following frameworks:
- CFNetwork framework
- External Accessory framework
- Security Framework
- Hardware devices managed by iPhone OS and provide the technologies needed for implementing native applications on the phone.
- Moreover, The OS ships with several system applications such as Mail, Safari, and Phone that provide standard services to the user.