Jump To:
The Reference Library is a comprehensive collection of Apple technical resources, including Articles, Guides, Reference, Release Notes, Sample Code, Technical Notes, and Technical Q&As. Each of the links below leads to the resources for a specific topic.

Document Descriptions
On Off
Display

Sort by
Title
Sorted by
Topic
Sort by
Resource Type
Sort by
Date
Secrets of the GPT (HTML)
TN2166: Describes the new partition map format used by Intel-based Macintosh computers.
Darwin Technical Notes 2006-11-06
Secure Coding Guide (HTML) (PDF)
Describes techniques to use and factors to consider to make your code more secure from attack.
Darwin Guides 2008-05-23
Security Framework Error Codes (HTML)
QA1499: Explains how to interpret errors returned by the Security Framework with an overview of Security error handling.
Darwin Technical Q&As 2006-11-16
Security Overview (HTML) (PDF)
An introduction to computer security concepts and the security APIs in Mac OS X and iPhone OS.
Darwin Guides 2008-10-15
Setting environment variables for user processes (HTML)
QA1067: Tells how to set environment variables for user processes.
Darwin Technical Q&As 2001-10-25
Signals and Threads (HTML) (日本語 HTML)
QA1184: Describes how threads and signals interact.
Darwin Technical Q&As 2002-08-27
SimpleDataQueue (HTML) (DMG) (ZIP)
Implements an IODataQueue inside an I/O Kit KEXT which passes events and data to user space.
Darwin Sample Code 2003-01-14
SimpleDial (HTML) (DMG) (ZIP)
Demonstrates management of dialup connections, such as PPP, using System Configuration framework network connection API.
Darwin Sample Code 2005-07-26
SimplePing (HTML) (DMG) (ZIP)
Sample provides simple API to programatically ping a remote host without admin privileges
Darwin Sample Code 2003-10-27
SimpleReach (HTML) (DMG) (ZIP)
Demonstrates network host reachability testing using the System Configuration framework asynchronous network reachability API.
Darwin Sample Code 2005-07-26
SimpleUserClient (HTML) (DMG) (ZIP)
Shows how to create a user client for an I/O Kit kernel driver.
Darwin Sample Code 2008-08-27
Sleep vs. Doze on Mac OS X (HTML)
QA1309: Discusses and demonstrates sleep versus doze detection on Machintosh Mac OS X
Darwin Technical Q&As 2003-10-09
SocketCancel (HTML) (DMG) (ZIP)
Shows how to safely cancel threads that are blocked within BSD sockets calls.
Darwin Sample Code 2005-08-10
SSLSample (HTML) (DMG) (ZIP)
Contains examples showing how to use SecureTransport.
Darwin Sample Code 2003-01-14
The state of mDNSResponder (HTML)
QA1339: Explains how to obtain information regarding the internal state of mDNSResponder.
Darwin Technical Q&As 2006-10-03
Static linking of user binaries on Mac OS X (HTML) (日本語 HTML)
QA1118: Explains why static linking of user binaries is not supported on Mac OS X, and possible workarounds.
Darwin Technical Q&As 2002-02-07
Supported KPIs (HTML)
QA1575: Describes how to check whether a kernel function is part of a supported KPI.
Darwin Technical Q&As 2008-03-25
Suppressing the "unexpectedly quit" alert (HTML)
QA1288: Describes how to suppress the "unexpectedly quit" alert.
Darwin Technical Q&As 2008-03-11
Symbol Variants Release Notes (HTML)
Describes symbol variants, a way of providing multiple versions of symbols for backwards compatibility.
Darwin Release Notes 2007-10-16
System Configuration Framework Reference (HTML)
Describes the API for configuration of network resources, the reachability of target hosts, and connection to network services.
Darwin Reference 2008-04-08
System Configuration Programming Guidelines (HTML) (PDF)
Explains how to use system configuration services for network configuration and management, including determining reachability and getting connected.
Darwin Guides 2006-02-07
System Configuration Reference Update (HTML) (PDF)
Summarizes the symbols added to the System Configuration framework.
Darwin Release Notes 2007-07-18
System Startup Programming Topics (HTML) (PDF)
Explains the boot process used to initialize the Mac OS X operating system.
Darwin Guides 2008-11-19
Text Encodings in VFS (HTML) (日本語 HTML)
QA1173: How to handle text encodings correctly when writing a file system (VFS) plug-in for Mac OS X.
Darwin Technical Q&As 2003-02-10
Tiger Developer Overview Series: Developing 64-bit Applications (HTML)
Learn how Mac OS X Tiger breaks the limitations of 32-bit computing.
Darwin Articles 2004-12-20
TimerEventSample (HTML) (DMG) (ZIP)
Shows how to set up and use an IOTimerEventSource in a kext.
Darwin Sample Code 2003-01-14
Understanding and Debugging Kernel Panics (HTML) (日本語 HTML)
TN2063: Addresses kernel panics: what they are and how to debug the code that caused the panic.
Darwin Technical Notes 2008-08-14
Uniquely Identifying a Macintosh Computer (HTML) (日本語 HTML)
TN1103: How to identify a specific Macintosh computer.
Darwin Technical Notes 2006-04-25
Universal Binary Programming Guidelines, Second Edition (HTML) (PDF)
Conceptual information and tips for writing code that runs on PowerPC-based and Intel-based Macintosh computers.
Darwin Guides 2009-02-04
Unix 03 Conformance Release Notes (HTML)
Describes features, issues, and workarounds related to Mac OS X v10.5 and its support of SUSv3 (Version 3 of the SUS).
Darwin Release Notes 2006-10-06
Updating the TXT record of a Bonjour service (HTML)
QA1302: Explains how to update a Bonjour TXT record while running on either Jaguar or Panther.
Darwin Technical Q&As 2004-07-14
USB Device Interface Guide (HTML) (PDF)
Provides background information and sample code for developing applications to communicate with or control USB devices and interfaces.
Darwin Guides 2007-09-04
User-Mode USB Device Arbitration (HTML)
Information about using USB device arbitration, available in Mac OS X version 10.1 and later.
Darwin Guides 2002-02-06
Using Doxygen to Create Xcode Documentation Sets (HTML)
Learn how to integrate your documentation into Xcode.
Darwin Articles 2008-06-09
UTXplorer (HTML) (DMG) (ZIP)
Uses the <utmpx.h> API to display current login sessions and login history.
Darwin Sample Code 2008-03-19
VendorSpecificType00 (HTML) (DMG) (ZIP)
Demonstrates how to access vendor-specific storage device functionality using a simple interface from user space code.
Darwin Sample Code 2006-10-02
Volumes Not Showing Up On The Desktop (HTML)
QA1491: Describes how to make a volume from a third party VFS plug-in show up on the desktop.
Darwin Technical Q&As 2006-12-20
VolumeToBSDNode (HTML) (DMG) (ZIP)
Shows how to iterate across all mounted volumes and retrieve their BSD node names.
Darwin Sample Code 2006-10-16
Watcher (HTML) (DMG) (ZIP)
Uses FSEvents to monitor a directory hierarchy to keep track of its total size
Darwin Sample Code 2006-08-04
Working with Configuration Variables (HTML) (日本語 HTML)
QA1119: Explains how to delete a specific Open Firmware configuration variable without using Command-Option-P-R.
Darwin Technical Q&As 2002-02-13
Writing Open Directory Plug-ins (HTML)
Learn how to write Open Directory plug-ins to help your application locate and manage network information.
Darwin Articles 2004-09-13
Writing PCI Drivers (HTML) (PDF)
Conceptual information about writing I/O Kit drivers for PCI, AGP, and CardBus (PC Card) devices.
Darwin Guides 2006-04-04
X11 FAQ (HTML) (日本語 HTML)
QA1232: Frequently Asked Questions about using Apple's X Window System (X11) implementation.
Darwin Technical Q&As 2003-11-17
Apple Remote Desktop Focus on Task Server (PDF)
Explains how to use Task Server to provide always-on, automated administration of client computers.
Enterprise IT Guides 2006-08-07
Bonjour Printer Subtype for HTTP (HTML)
QA1555: Describes how printer vendors can register their bonjour service such that Safari can see them.
Enterprise IT Technical Q&As 2008-03-25
Building Universal Binaries from "configure"-based Open Source Projects (HTML)
TN2137: Describes some methods for building some existing "configure"-based Open Source packages as universal binaries.
Enterprise IT Technical Notes 2006-10-05
CFBundleIdentifier and user application access (HTML)
QA1373: Describes the role of CFBundleIdentifier in limiting a user's application access.
Enterprise IT Technical Q&As 2005-02-08
Compiling X11 / OpenGL applications on Mac OS X v.10.5 Leopard (HTML)
QA1567: Trying to compile X11 / OpenGL application on Mac OS X v.10.5 result on "ld: cycle in dylib re-exports with /usr/X11R6/lib/libGL.dylib""
Enterprise IT Technical Q&As 2007-10-30
Deploying Mac OS X Computers for K-12 Education (PDF)
Explains how to configure and deploy Mac OS X Server and Mac OS X computers for K-12 education.
Enterprise IT Guides 2006-07-24
Developer Tools JBoss and Tomcat Do Not Start After Installing Java 1.4.2 Update (HTML)
QA1025: Describes how to re-enable JBoss and Tomcat after installing the Java 1.4.2 update.
Enterprise IT Technical Q&As 2004-03-04
Does Safari support 128-bit encryption? (HTML)
QA1320: Discusses support for 128-bit encryption in Apple's Safari web browser.
Enterprise IT Technical Q&As 2004-09-10
Extending Your Wiki Server (PDF)
Explains how to migrate content from other wikis, create custom themes, and enable JavaScript, YouTube, and Flash.
Enterprise IT Guides 2008-06-09
GridCalendar (HTML) (DMG) (ZIP)
Demonstrates how to add a custom job submission UI to the GridSample project.
Enterprise IT Sample Code 2005-06-01
Mac OS X Security Configuration Guide (PDF)
Describes how to configure Mac OS X to enhance security.
Enterprise IT Guides 2008-06-09
Mac OS X Server Administration (PDF)
Covers planning, installation, setup, and general server administration for advanced configurations.
Enterprise IT Guides 2008-06-09
Mac OS X Server Getting Started Supplement (PDF)
Provides an overview of Mac OS X Server features, a worksheet for installation and setup, and a setup example.
Enterprise IT Guides 2006-08-07
Mac OS X Server iCal Service Administration (PDF)
Explains how to set up and manage iCal shared calendar service.
Enterprise IT Guides 2008-06-09
Mac OS X Server iChat Service Administration (PDF)
New document that explains how to set up and manage iChat instant messaging service.
Enterprise IT Guides 2007-10-31
Mac OS X Server Installation & Setup Worksheet (PDF)
Covers installation and setup of a standard configuration or workgroup configuration of Leopard Server.
Enterprise IT Guides 2007-10-31
Mac OS X Server Podcast Producer Administration (PDF)
Explains how to set up and manage Podcast Producer service to record, process, and distribute podcasts.
Enterprise IT Guides 2007-10-31
Mac OS X Server Podcast Producer Workflow Tutorial (PDF)
Explains how to develop and customize Podcast Producer workflows.
Enterprise IT Guides 2008-06-09
Mac OS X Server Security Configuration Guide (PDF)
Describes how to configure Mac OS X Server to enhance server and service security.
Enterprise IT Guides 2008-06-09
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
Enterprise IT Sample Code 2003-10-27
NetworkAuthentication (HTML) (DMG) (ZIP)
Demonstrates authentication with Open Directory APIs and GSSAPI
Enterprise IT Sample Code 2005-06-01
Programmatically Accessing and Manipulating Multiple Keychain Items (HTML)
QA1486: An explanation on what is and is not possible using the SecKeychain API to manipulate Keychain Items.
Enterprise IT Technical Q&As 2006-10-03
Programmatically Performing an Open Directory Search (HTML)
QA1462: A short guide on how to programmatically search Open Directory for matching attribute values within records.
Enterprise IT Technical Q&As 2006-09-11
Scripting Interface Guidelines (HTML)
TN2106: Directions for providing a clean and consistent scripting interface for your application.
Enterprise IT Technical Notes 2004-03-01
Security Framework Error Codes (HTML)
QA1499: Explains how to interpret errors returned by the Security Framework with an overview of Security error handling.
Enterprise IT Technical Q&As 2006-11-16
Shell Scripting Primer (HTML) (PDF)
A guided tour of (Bourne) shell scripting, including control structures, numerical computation, regular expressions, subroutines, and error handling.
Enterprise IT Guides 2009-04-08
Smart Card Setup Guide (PDF)
Explains how to configure Mac OS X version 10.4 to use smart cards.
Enterprise IT Guides 2006-08-07
Uniquely Identifying a Macintosh Computer (HTML) (日本語 HTML)
TN1103: How to identify a specific Macintosh computer.
Enterprise IT Technical Notes 2006-04-25
Where are the LiveConnect classes on Mac OS X? (HTML)
QA1364: Locating classes necessary to build Java-Javascript communication into Java Applets on Mac OS X.
Enterprise IT Technical Q&As 2006-10-02
Why is my Ruby on Rails application with FastCGI generating "'load error /etc/irbrc" errors? (HTML)
QA1494: Describes how to resolve an error encountered hosting Ruby on Rails applications on Mac OS X 10.5.
Enterprise IT Technical Q&As 2007-11-28
WikiSampleThemeWithCSS (HTML) (DMG) (ZIP)
Demonstrates how to change the appearance of a wiki theme using CSS properties.
Enterprise IT Sample Code 2008-06-02
WikiSampleThemeWithJavaScript (HTML) (DMG) (ZIP)
Demonstrates how to add a JavaScript functionality to a wiki theme.
Enterprise IT Sample Code 2008-06-02
2D Graphics Release Notes for Mac OS X v10.5 (HTML)
Describes the changes and issues related to Core Image and Quartz 2D in Mac OS X v10.5.
Games Release Notes 2008-04-08
Accessing HTTPS Proxy Settings (HTML) (日本語 HTML)
QA1234: Describes how to programatically access Secure Web Proxy information.
Games Technical Q&As 2003-02-19
AGL Changes for Mac OS X Leopard (v. 10.5) (HTML)
QA1523: This Q&A describes the new and deprecated APIs for Apple OpenGL (AGL)
Games Technical Q&As 2008-01-04
aglClipBufferRect (HTML) (DMG) (ZIP)
Shows the use of clip regions and buffer rects in AGL.
Games Sample Code 2003-01-14
AGLSurfaceTexture (HTML) (DMG) (ZIP)
Example of render to texture/texture from surface using aglSurfaceTexture.
Games Sample Code 2003-07-07
Animating the frame of a CALayer. (HTML)
QA1620: Explains how the frame property of a layer interacts with animations.
Games Technical Q&As 2008-10-24
Animation Overview (HTML) (PDF)
Describes the animation facilities provided by Mac OS X.
Games Guides 2008-10-15
Avoiding Pauses When Looping Audio files with QuickTime (HTML)
QA1371: Demonstrates how to avoid pauses when looping audio files with QuickTime
Games Technical Q&As 2004-09-08
BlitVBL (HTML) (DMG) (ZIP)
Shows how to have Mac OS X try its best to sync to the VBL for you.
Games Sample Code 2003-01-14
BoingX (HTML) (DMG) (ZIP)
Shows off using Quartz Extreme to provide borderless OpenGL content on the desktop.
Games Sample Code 2007-11-06
Bonjour Overview (HTML) (PDF)
Explains how to use Apple's zero-configuration networking architecture in Cocoa applications.
Games Guides 2006-05-23
Building WingNuts in Xcode with OpenGL: Freeverse Creates a Great Mac-only Game (HTML)
Read how Freeverse created their award-winning Mac-only game, WingNuts 2, using Core Image, Interface Builder, Xcode, and OpenGL.
Games Articles 2007-05-15
CALayerEssentials (HTML) (DMG) (ZIP)
Demonstrates the basics of setting up various Core Animation layers
Games Sample Code 2008-09-30
Carbon Full Screen Conundrums (HTML)
QA1068: Describes the available Mac OS X DrawSprocket services.
Games Technical Q&As 2001-08-20
Carbon GLSnapshot (HTML) (DMG) (ZIP)
Demonstrates the use of OpenGL with Quicktime to capture OpenGL content.
Games Sample Code 2003-07-07
CFPrefTopScores (HTML) (DMG) (ZIP)
How to access globally shared (writable) user preferences without requiring authentication.
Games Sample Code 2006-10-09
CGBitmapContextCreate Supported Color Spaces (HTML)
QA1037: Lists the color space and alpha info combinations currently supported by CGBitmapContextCreate.
Games Technical Q&As 2007-07-18
CGGamma (HTML) (DMG) (ZIP)
Shows how to use CGDirectDisplay calls to manipulate display gamma tables.
Games Sample Code 2003-01-14
Changing the TCP Window Size (HTML)
NW47: Describes how to change the TCP window size in Open Transport.
Games Technical Q&As 1997-03-14
CIColor Class Reference (HTML) (PDF)
Describes the class used to manage color values and color spaces for Core Image filters.
Games Reference 2006-12-05
CIColorTracking (HTML) (DMG) (ZIP)
An Objective-C applicaton that implements a GPU-based technique to find the location of a uniquely colored object in a scene
Games Sample Code 2008-04-24
CIContext Class Reference (HTML) (PDF)
Describes the class that provides an evaluation context for rendering a Core Image image through Quartz 2D or OpenGL.
Games Reference 2007-03-16
CIFilter Class Reference (HTML) (PDF)
Describes the class that processes image data and produces a Core Image image as output.
Games Reference 2007-12-11
CIFilterShape Class Reference (HTML) (PDF)
Describes the class that defines the bounding shape of a filter and the domain of definition of a filter operation.
Games Reference 2006-12-07
CIImage Class Reference (HTML) (PDF)
Describes the class that represents an immutable Core Image image.
Games Reference 2007-10-31