Youtube

Go to The Main Page Add Youtube to favorite!

IPhone OS 

iPhone OS

iPhone OS version 2.0 on an iPhone
Company / developer Apple Inc.
OS family Unix-like
Working state Current
Source model Closed source (with open source components)
Latest stable release 2.0 (5A347)[1]/ July 11, 2008 (2008-07-11); 15 days ago
Supported platforms ARMv6 (iPhone and iPod touch)
Kernel type Hybrid
Default user interface Cocoa Touch (Multi-touch, GUI)
License Proprietary EULA
Website iPhone Dev Center

iPhone OS is the operating system developed by Apple Inc. for the iPhone and iPod touch.[2][3] Like Mac OS X, from which it was derived, it uses the Darwin foundation.[4] iPhone OS has four abstraction layers: the Core OS layer, the Core Services layer, the Media layer, and the Cocoa Touch layer. The operating system takes less than half a gigabyte (GB) of the device's total memory storage.[5]

This operating system did not have an official name until the release of the first beta version of the iPhone SDK on March 6, 2008. Before then, Apple marketing literature simply stated that the "iPhone runs OS X", a reference to iPhone OS's parent, Mac OS X.[6]

Contents

Version history

The latest released version of iPhone OS is 2.0, released on July 11, 2008.[7]

iTunes is used to manage many of the functions of the iPhone and iPod touch, including updates to iPhone OS. Security patches, as well as new and improved features, are released in this fashion.[8] iTunes runs on modern versions of Mac OS X, Windows XP, and Windows Vista.[5]

User interface

The iPhone OS's user interface is based on the concept of direct manipulation, using multi-touch gestures. Interface control elements consist of sliders, switches, and buttons. The response to user input is supposed to be immediate to provide a fluid interface. Interaction with the OS includes gestures such as swiping, tapping, pinching, and reverse pinching. Additionally, using internal accelerometers, rotating the device on its y-axis alters the screen orientation in some applications.

A home screen with application icons, and a dock at the bottom of the screen, showing icons for the applications the user accesses the most, is presented when the device is turned on or whenever the home button is pressed. The screen has a status bar across the top to display data, such as time, battery level, and signal strength. The rest of the screen is devoted to the current application. There is no concept of starting or quitting applications, only opening an application from the home screen, and leaving the application to return to the home screen. It is possible to force an application to quit by holding down the home button, however. While some multitasking is permitted it is not obtrusive or obvious. Third party apps are quit when left, but notifications can be pushed from Apple's servers to the iPhone or iPod touch. Many of the included applications were designed to work together; allowing for the sharing or cross-propagation of data from one application to another (i.e. a phone number can be selected from an email and saved as a contact or dialed for a phone call.)

Application support

The central processing unit used in the iPhone and iPod touch is an ARM-based processor instead of the x86 (and previously PowerPC) processors used in Apple's Macintosh computers. Mac OS X applications cannot be copied to and run on an iPhone OS device. They need to be written and compiled specifically for the iPhone OS and the ARM architecture. However, the Safari web browser supports "web applications," as noted below. Authorized third-party native applications are available for devices with iPhone OS 2.0; see iPhone SDK below.

Included applications

In version 2.0, the iPhone home screen contains these default applications: SMS (Text messaging), Calendar, Photos, Camera, YouTube, Stocks, Maps (Google Maps), Weather, Clock, Calculator, Notes, Settings, iTunes (with access to the iTunes Wi-Fi Music Store) and App Store . Four other applications delineate the iPhone's main purposes: Phone, Mail, Safari, and iPod.[9]

Web applications

At the 2007 Apple Worldwide Developers Conference Apple announced that the iPhone and iPod touch will support third-party "applications" via the Safari web browser, referred to as web applications. The applications can be created using web technologies such as AJAX.[10] Many third party iPhone web applications are now available.[11]

Unsupported third party native applications

Currently, the iPhone and iPod touch cannot officially install full programs through anyone but Apple.[12] However, many third party native applications are now available,[13] despite this complete lack of support by Apple. Such native applications face the possibility of being broken by any iPhone OS update, though Apple has stated it will not design software updates specifically to break native applications (other than applications that perform SIM unlocking).[14] These are available through the installer application, which is installed on the iPhone after major methods of jailbreaking. Some well known members of the third party application community have switched over to the official SDKcitation needed.

iPhone SDK

On October 17, 2007, in an open letter posted to Apple's "Hot News" weblog, Steve Jobs announced that a software development kit (SDK) would be made available to third-party developers in February 2008.[15] The SDK was released on March 6th, 2008, and allows developers to make applications for the iPhone and iPod touch, as well as test them in an "iPhone simulator". However, loading an application onto the devices is only possible after paying a iPhone Developer Program fee.

Developers are free to set any price for their applications to be distributed through the App Store, of which they will receive a 70% share. Developers can also opt to release the application for free and will not pay any costs to release or distribute the application except for the membership fee.[16]

SDK history

The iPhone SDK was officially announced on March 6, 2008, at an Apple Town Hall meeting.[17] The first Beta release of the SDK, with iPhone OS version 1.2b1 (build 5A147p), was made available immediately, while the launch of the App Store required a firmware update which was released on July 11, 2008. This update is free for iPhone users; however, there is a charge for iPod touch owners.[18]

On March 27, 2008, Apple released the Beta 2 release of the SDK, build 9A2151 with iPhone OS version 2.0b2 (build 5A225c),[19] which added Interface Builder, an application for building graphical user interfaces for iPhone applications.[20]

On April 8, 2008, Apple released the Beta 3 update to the SDK, build 9M2158a with iPhone OS version 2.0b3 (build 5A240d).[21]

On April 23, 2008, Apple released the Beta 4 update to the SDK, build 9M2165 with iPhone OS version 2.0b4 (build 5A258f). This version of the SDK supports OpenGL 3D graphics, primarily used to make games,[22] and indications that some applications will be allowed to run in the background (as the iPod, Phone, and Mail applications do), something that Apple had previously stated was not possible.

On May 6, 2008, Apple released the Beta 5 update to the SDK, build 9M2173a with iPhone OS version 2.0b5 (build 5A274d).[23]

On May 29, 2008, Apple released the Beta 6 update to the SDK, build 9M2192 with iPhone OS version 2.0b6 (build 5A292g). The code in this update gave hints about updates to Apple's .Mac[24] service and also gave a first reference to the upcoming version of Mac OS X, version 10.6 Snow Leopard.[25]

On June 9, 2008, Apple released the Beta 7 update to the SDK, build 9M2199 with iPhone OS version 2.0b7 (build 5A331), which unlocked Apple's .Mac replacement, MobileMe. This release was for WWDC, Apple's developer's conference, which is noted as part of the name of the iPhone OS beta download.

On June 26, 2008, Apple released the Beta 8 update to the SDK, build 9M2199a with iPhone OS version 2.0b8 (build 5A345).[26]

SDK contents

As the iPhone is based on a variant of the same XNU kernel that is found in Mac OS X, the tool chain used for developing on the iPhone is also based on Xcode.[4]

The SDK is broken down into the following sets:[27]

Along with the Xcode toolchain, the SDK contains an iPhone emulator called Aspen. Aspen Simulator was renamed to iPhone Simulator with the Beta 2 release of the SDK.

The SDK requires an Intel Mac running Mac OS X Leopard. Other operating systems and versions are not supported.

Licensing

The SDK itself is a free download, but in order to release software, one must enroll in the iPhone Developer Program, a step requiring payment and Apple's approval. Signed keys are given to upload the application to Apple's App Store. Applications can be distributed in three ways: through the App Store, through enterprise deployment to a company's employees only, and on an "Ad-hoc" basis to up to 100 iPhones.

This distribution model for iPhone software appears to make it impossible to release software based upon code licensed with GPLv3. Any code that modifies code licensed under GPLv3 must also be licensed as GPLv3. Also, a developer is not able to distribute an application licensed under the GPLv3 without also distributing the signing keys (which Apple owns) to allow upload of modified versions of that software to be run.[28]

Java

Apple has not announced any plans to enable Java to run on the iPhone. Sun Microsystems announced plans to release a Java Virtual Machine (JVM) for iPhone OS, based on the Java Platform, Micro Edition version of Java. This would enable Java applications to run on iPhone and iPod touch.[29] If successful, Sun plans to release the software some time after June 2008.

Soon after the announcement, developers familiar with the SDK's terms of agreement believed that by not allowing 3rd-party applications to run in the background (answer a phone call and still run the application, for example),[30] allowing an application to download code from another source, or allowing an application to interact with a 3rd-party application (Safari with JVM, for example), it could hinder development of the JVM without Apple's cooperation.[31]

References

  1. ^ AppleInsider (July 10, 2008). "Apple's iPhone software v2.0 available early for brave users". AppleInsider. Retrieved on 2008-07-11.
  2. ^ Apple Inc. (March 6, 2008). "Apple Announces iPhone 2.0 Software Beta". Apple.com. Apple Inc.. Retrieved on 2008-03-07.
  3. ^ Apple Developer Connection (February 29, 2008). "iPhone Human Interface Guidelines: Introduction". Apple.com. Apple Inc.. Retrieved on 2008-03-07.
  4. ^ a b Gary, Benson (2008-03-07). "iPhone SDK - Overview (the SDK, not the Event)". Retrieved on 2008-03-10.
  5. ^ a b Haslam, Karen (January 12, 2007). "Macworld Expo: Optimised OS X sits on 'versatile' flash". Macworld. Retrieved on 2007-10-15.
  6. ^ iPhone - Features - OS X - Apple Inc.
  7. ^ "Apple Introduces the New iPhone 3G". Apple Inc. (2008-06-09). “iPhone 2.0 software will be available on July 11 as a free software update via iTunes® 7.7 or later for all iPhone customers”
  8. ^ Kharif, Olga. Coming Soon: iPhone Software Updates, BusinessWeek, (2007-07-10). Retrieved on 2007-07-24.
  9. ^ Apple Inc. (2008-07-10). "iPhone Applications". Retrieved on 2008-07-11.
  10. ^ Ziegler, Chris. Apple announces third-party software details for iPhone, Engadget, (2007-06-11). Retrieved on 2007-06-20.
  11. ^ Web Apps - Apple Inc.
  12. ^ Baig, Edward C. Apple's iPhone isn't perfect, but it's worthy of the hype, USA Today, (2007-06-26). Retrieved on 2007-06-28.
  13. ^ Healey, Jon (2007-08-06). "Hacking the iPhone", Los Angeles Times. Retrieved on 2007-08-06. 
  14. ^ Apple's Joswiak: We Don't Hate iPhone Coders
  15. ^ Jobs, Steve (2007-10-17). "Third Party Applications on the iPhone". Apple Inc..
  16. ^ "Introducing the iPhone Developer Program". Apple Inc..
  17. ^ Live from Apple's iPhone SDK press conference - Engadget 2008-03-06.
  18. ^ Apple previews iPhone firmware 2.0, additional SDK notes - MacRumors 2008-06-09.
  19. ^ Dan, Moren (2008-03-27). "iPhone SDK: now with 100% more Interface Builder". Macworld. Retrieved on 2008-03-27.
  20. ^ "Interface Builder". Apple Inc.. Retrieved on 2008-03-27.
  21. ^ Apple Seeds New iPhone OS 2.0 Beta (5A240d), SDK Update (Beta 3) - MacRumors 2008-04-08.
  22. ^ iPhone SDK Beta 4 Now Available, Comes with OpenGL ES 3D Graphics Support - Gizmodo.
  23. ^ iPhone SDK Beta 5 Now Up: Bug Fixes, Updated OS Support - Gizmodo.
  24. ^ MacRumors - Apple's .Mac Service to be Renamed, Revamped? - MacRumors 2008-05-30.
  25. ^ Mac OS 10.6 reference in iPhone SDK beta 6 - MacRumors 2008-05-29.
  26. ^ Apple Inc. (June 26, 2008). "iPhone SDK beta release 8 - Download Notes". Apple.com. Apple Inc.. Retrieved on 2008-06-27.
  27. ^ Arnold, Kim (2008-03-06). "Apple Releases iPhone SDK, Demos Spore, Instant Messaging". MacRumors.com. Retrieved on 2008-03-10.
  28. ^ Willis, Nathan (2008-04-15). "The iPhone SDK and free software: not a match". Linux.com. Retrieved on 2008-06-05.
  29. ^ Krill, Paul (2008-03-08). "Sun: We'll put Java on the iPhone". Infoworld. Retrieved on 2008-03-08.
  30. ^ Krazit, Tom (2008-03-07). "The iPhone SDK: The day after". CNet. Retrieved on 2008-03-29.
  31. ^ Krill, Paul (2008-03-14). "Sun's plan for Java on iPhone could hit roadblock". The Industry Standard. Retrieved on 2008-03-29.

External links

Could not update stat
UP