Jump to content

iOS

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 15.235.153.104 (talk) at 21:17, 7 May 2008 (SDK history). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

iPhone OS
File:Iphone front.png
iPhone OS 1.1.4 on an iPhone
DeveloperApple Inc.
OS familyUnix
Working stateCurrent
Source modelClosed source (with open source components)
Latest release1.1.4 / February 26 2008
Latest preview18.3 beta[1] (December 16, 2024; 3 days ago (2024-12-16)) [±]
PlatformsARM (iPhone and iPod touch)
Kernel typeHybrid
Default
user interface
Cocoa Touch (Multi-touch, GUI)
LicenseProprietary EULA
Official websiteiPhone Dev Center

iPhone OS is the operating system developed by Apple Inc. for the iPhone and iPod touch.[2][3] It is derived from Mac OS X, and is based on the same Mach kernel and Darwin core as Mac OS X.[4] iPhone OS has three abstraction layers: a Core Services layer, a Media layer, and a Cocoa Touch layer. The operating system takes less than half a gigabyte (GB) of the devices' total memory storage.[5]

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

Version history

The latest released version of iPhone OS is 1.1.4. Version 2 Beta was released to a limited group of developers in March, and is slated to be made public in June of 2008.

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.[7] iTunes runs on modern versions of Mac OS X, Windows XP, and Windows Vista.[5]

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.

Included applications

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

In version 1.1.4, the iPod touch home screen applications include: Music, Videos, Photos, iTunes, Safari, YouTube, Mail, Maps, and Widgets.[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 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 from 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 3rd party app community have switched over to the official SDK.

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 in March, 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 US$99 Apple Developer Connection membership 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 beyond for the US$99 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 was made available immediately, while the launch of applications will require waiting until a firmware update in June, 2008. This update will be free for iPhone users, however, there will be a charge for iPod touch owners. On March 27 2008, Apple released the Beta 2 release of the SDK,[18] which added Interface Builder, an application for building graphical user interfaces for iPhone applications.[19]

On April 8 2008, Apple released the Beta 3 update to the SDK.[20]

On April 23 2008, Apple released the Beta 4 update to the SDK. This version of the SDK supports OpenGL 3D graphics, primarily used to make games[21], 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.[22]

SDK contents

As the iPhone is based on a variant of the same Mach 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:[23]

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 works on both Intel and PowerPC Macs running Mac OS X Leopard. However only Intel Macs are officially supported by Apple as of the current release (beta 4).

Licensing

Since the Beta release, criticism has been raised regarding the SDK licensing model. The licensing conditions appear to make it impossible to release open-source software, especially with viral licenses like GPLv3. The conditions imposed by Apple are a form of Tivoization: The SDK itself is a free download, but in order to release software, one must enroll in the iPhone Developer Program -- a step requiring Apple's approval.[24]

Other incompatibilities include:

  • Distribution of iPhone applications require code signing, which is only available through the iTunes App Store and requires approval from Apple.
  • Downloading the SDK requires signing a non-disclosure agreement.

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.[25] 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 believe that by not allowing 3rd-party applications to run in the background (answer a phone call and still run the application, for example),[26] 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.[27]

References

  1. ^ Clover, Juli (December 16, 2024). "Apple Releases First Betas of iOS 18.3 and iPadOS 18.3". MacRumors. Retrieved December 18, 2024.
  2. ^ Apple Inc. (March 6, 2008). "Apple Announces iPhone 2.0 Software Beta". Apple.com. Apple Inc. Retrieved 2008-03-07. {{cite web}}: Check date values in: |date= (help)
  3. ^ Apple Developer Connection (February 29, 2008). "iPhone Human Interface Guidelines: Introduction". Apple.com. Apple Inc. Retrieved 2008-03-07. {{cite web}}: Check date values in: |date= (help)
  4. ^ a b Gary, Benson (2008-03-07). "iPhone SDK - Overview (the SDK, not the Event)". Retrieved 2008-03-10.
  5. ^ a b Haslam, Karen (January 12, 2007). "Macworld Expo: Optimised OS X sits on 'versatile' flash". Macworld. Retrieved 2007-10-15. {{cite web}}: Check date values in: |date= (help); Italic or bold markup not allowed in: |publisher= (help)
  6. ^ iPhone - Features - OS X - Apple Inc.
  7. ^ Kharif, Olga. Coming Soon: iPhone Software Updates, BusinessWeek, (2007-07-10)Template:Accessdate
  8. ^ Apple Inc. (2007-07-11). "iPhone Applications". Retrieved 2007-11-04.
  9. ^ iPod touch - FeaturesTemplate:Accessdate
  10. ^ Ziegler, Chris. Apple announces third-party software details for iPhone, Engadget, (2007-06-11)Template:Accessdate
  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)Template:Accessdate
  13. ^ Healey, Jon (2007-08-06). "Hacking the iPhone". Los Angeles Times. Retrieved 2007-08-06. {{cite news}}: Italic or bold markup not allowed in: |publisher= (help)
  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
  18. ^ Dan, Moren (2008-03-27). "iPhone SDK: now with 100% more Interface Builder". Macworld. Retrieved 2008-03-27. {{cite web}}: Italic or bold markup not allowed in: |publisher= (help)
  19. ^ "Interface Builder". Apple Inc. Retrieved 2008-03-27.
  20. ^ Apple Seeds New iPhone OS 2.0 Beta (5A240d), SDK Update (Beta 3)
  21. ^ iPhone SDK Beta 4 Now Available, Comes with OpenGL ES 3D Graphics Support
  22. ^ iPhone SDK Beta 5 Now Up: Bug Fixes, Updated OS Support
  23. ^ Arnold, Kim (2008-03-06). "Apple Releases iPhone SDK, Demos Spore, Instant Messaging". MacRumors.com. Retrieved 2008-03-10.
  24. ^ Willis, Nathan (2008-04-15). "The iPhone SDK and free software: not a match". Linux.com. Retrieved 2008-04-19.
  25. ^ Krill, Paul (2008-03-08). "Sun: We'll put Java on the iPhone". Infoworld. Retrieved 2008-03-08. {{cite web}}: Italic or bold markup not allowed in: |publisher= (help)
  26. ^ Krazit, Tom (2008-03-07). "The iPhone SDK: The day after". CNet. Retrieved 2008-03-29.
  27. ^ Krill, Paul (2008-03-14). "Sun's plan for Java on iPhone could hit roadblock". The Standard. Retrieved 2008-03-29. {{cite web}}: Italic or bold markup not allowed in: |publisher= (help)