An operating system is a computer program that manages hardware components of a computer and serves application software. Just as computers have evolved; the operating systems have also evolved greatly. Computer operating system is grouped into the following categories:
- Graphical User Interface which contains icons and graphics and allow users to interact with using mouse or keyboard. They include System7x, Windows 7, Windows 98, Windows CE, Windows Vista, and Windows XP.
- Command prompt operating system which allow users to interact with the system by use of commands. They include Linux and Unix.
The invention of mobile phones, specifically smartphones which have come with much functionality such as internet access, web browsing software, and multimedia support, has made many companies including Apple, Google, Research in Motion, and Nokia develop operating systems for mobile phones. The operating systems that have been developed by the vendors include iPhone, Android, etc. The operating systems allow installation of much application software such as the phonebook application, games, short messaging services applications, and browsers in smart phones. They also allow developers to develop their own applications and install them in the operating systems.
Many of the vendors try as much as possible to include features in their operating systems that would satisfy the needs of their customers. They include portability, security and privacy, accessibility, usability, and flexibility. They use this as a competition strategy.
This document discusses Apple’s iPhone operating system outlining its strengths, weaknesses, challenges faced during its implementation, and how it can help businesses operate efficiently.
iPhone, currently known as iOS, is an operating system for mobile phones developed and sold by Apple Inc. It was initially developed for iPhones and iPod Touch but nowadays operates on all Apple devices including iPad and Apple TV. iPhone operating system consists of different layers of software that allow developers to develop different types of applications. It is entirely developed using Objective-C language and communicates to hardware through application programming interface (Techotopia, 2011). Any of its layers can be invoked by applications. The four layers of the operating system include Cocoa Touch, Media Services, Core Services, and Core OS (Techotopia, 2011). They are embedded in the hardware they are installed. The figure below illustrates the four layers of iPhone operating system.
The top layer, Cocoa Touch, is mostly used by mobile application developers. It is developed in objective-C and uses Mac OS application programming interface. The layer operates many frameworks such as UIKit, Map kit, Push notification service, Message UI, Address book, and Game kit (Techotopia, 2011). Developers frequently use the UIKit framework when developing applications. The framework allows developers create user interfaces, manage application lifecycle, handle events, add functionalities such as dialogue boxes, handle data, and allow the applications to interact with hardware components such as cameras, sensors, and battery.
The Mapkit framework allows development of applications that assist users get maps of places. Such applications direct users to places they wish to go to. The push notification framework allows development of applications that notify users on events that have occurred. Such notifications show up in form of pop-up windows with functionalities or buttons that allow users to access the information. Such notifications are accompanied by either sound or vibration alerts. The notifications can be from news agencies informing users of breaking news, or an email notification informing users of an incoming email message.
The message UI enables development of applications that allow users to send and receive messages using their devices. Developers can create template messages that allow users to edit and use. The Address Book UI framework allows development of application that enable users create, display, and edit contact information such as phone numbers and email addresses. The Game kit framework allows development of game applications.
The Media Services Layer allows development of applications that enable users interact with video, audio, graphics, and animation functionalities. With these functionalities, users can draw two dimensional objects, download and read portable document file from their iPhone devices. The Core Services Layer enables applications to access phonebooks. It consists of core data frame work which enables developers develop applications with minimum lines of codes, the core foundation framework which allow developers to manipulate data types such as string, integer, float, and characters, and the SQLite library which allow developers to create small database management systems. This enables users to store, retrieve, and manipulate data using their iPhone devices (Techotopia, 2011).
The Core OS, which is the bottom layer, allows interfacing of external hardware devices with the internal layers of the operating system. It also helps in memory management, network connection, and file system handling.