FACTOID # 172: The number of tourists in San Marino is almost 19 times the resident population.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RECENT ARTICLES
More Recent Articles »
 

FACTS & STATISTICS    Simple view

  1. Select countries to view: (hold down Control key and click to select several)

     

     

    Compare:

     

     

  1. Select fact or statistic: (* = graphable)

     

     

     

  2. (OPTIONAL) Compare to statistic: (both need to be graphable)

     

     

     

  3. View result as:

     

       
(OR) SEARCH ALL encyclopedia, stats & forums:   

Encyclopedia > Carbon (API)

Carbon is the codename of Apple Computer's API for the Macintosh operating system, which permits a good degree of forward and backward compatibility between source code written to run on the classic Mac OS, and the newer Mac OS X. The APIs are published and accessed in the form of C header files and a dynamically linkable library (called CarbonLib on Mac OS). The implementation of the APIs is different in the two systems, but this difference is shielded from the executable. This permits code that conforms to the Carbon APIs to run unchanged and natively on both operating systems. Apple Computer, Inc. ... API may refer to: In computing, application programming interface In petroleum industry, American Petroleum Institute In education, Academic Performance Index This page concerning a three-letter acronym or abbreviation is a disambiguation page — a navigational aid which lists other pages that might otherwise share the same title. ... The first Macintosh computer, introduced in 1984 The Macintosh, or Mac, is a line of personal computers designed, developed, manufactured and marketed by Apple Computer that run the Macintosh operating system (Mac OS). Named after the McIntosh apple, the original Macintosh was released on January 24, 1984. ... In computing, an operating system (aka, OS) is the system software responsible for the direct control and management of hardware and basic system operations. ... Source code (commonly just source or code) is any series of statements written in some human-readable computer programming language. ... Mac OS, which stands for Macintosh Operating System, is a range of graphical user interface-based operating systems developed by Apple Computer for their Macintosh computers. ... Mac OS X is the operating system which is included with all shipping Apple Macintosh computers in the consumer and professional markets. ... The C Programming Language, Brian Kernighan and Dennis Ritchie, the original edition that served for many years as an informal specification of the language The C programming language is a standardized imperative computer programming language developed in the early 1970s by Dennis Ritchie for use on the Unix operating system. ... In computer programming, especially in the C programming language or C++, a header file is a text file containing small bits of program code, which is used to describe the contents of the main body of code to other modules. ... In computer science, a library is a collection of subprograms used to develop software. ...


Without Carbon, applications written solely using the older APIs can only be run in the Classic Environment on Mac OS X.


The Carbon APIs have been designed to include as many of the older classic APIs as possible, to permit easy porting of most legacy code to Mac OS X. Such porting is known in Mac programming parlance as Carbonisation. Carbon also adds new APIs to make up some of the deficiencies in the older APIs. For example, in the classic APIs, many data structures were exposed and code was expected to manipulate or query fields within these structures directly. In Carbon, most such structures are now fully opaque, and so new APIs have been added to allow the same queries and manipulations to be done. Such changes require legacy source code to be slightly modified, but the result is usually cleaner and less error-prone code. Carbon does not include some of the older APIs that deal with now-obsolescent technology, for example the Palette Manager. On OS X, it also includes additional APIs for new technologies which were never part of the original Mac OS — applications requiring these cannot run on the older Mac OS. Legacy code is source code that relates to a no-longer supported or manufactured operating system or other computer system. ... A binary tree, a simple type of branching linked data structure. ... Source code (commonly just source or code) is any series of statements written in some human-readable computer programming language. ...


Carbon is often seen as a transitional or legacy technology, but in fact it is unlikely that large legacy codebases (eg, Adobe Photoshop, etc) will be completely rewritten for Mac OS X, and so it will necessarily remain a core part of the OS X operating system indefinitely. In addition, Cocoa relies on Carbon for some of its lower level services, and some services that don't fit the Cocoa design approach only have Carbon APIs. What is likely is that software vendors will quickly drop support for running under Mac OS 9.x using Carbon, since that operating system has already been officially retired by Apple. This is already happening — there are numerous applications which, while written using the Carbon APIs, will only run on OS X. Examples include iTunes 3.x and later, and Microsoft Office v.X. Since Carbon is lower level and accessible by a range of programming languages, it is also closer in style to the Win32 APIs of Windows, and therefore may be a better choice for cross-platform development. Adobe Photoshop is a bitmap graphics editor (with some text and vector graphics capabilities) published by Adobe Systems. ... A Cocoa application being developed using Xcode. ... Mac OS 9 was the last version of what has since become known as the classic Macintosh Operating System (Mac OS), introduced by Apple Computer on October 23rd, 1999. ... iTunes is a digital media player application, developed by Apple Computer, for playing and organizing digital music and video files. ... Microsoft Corporation (NASDAQ: MSFT, HKEx: 4338) is the worlds largest software company, with 2005 global annual sales of 40 billion US dollars and nearly 60,000 employees in 85 countries and regions. ... Computer code (HTML with JavaScript) in a tool that uses colors to help the developer see the function of each piece of code. ... Windows API is a set of APIs, (application programming interfaces) available in the Microsoft Windows operating systems. ... Microsoft Windows is a series of operating environments and operating systems created by Microsoft for use on personal computers and servers. ... A cross-platform (or platform independent) programming language, software application or hardware device works on more than one system platform (e. ...


Carbon is often confused and/or compared with Cocoa, but the two are complementary and are solving different problems. In general, Carbon is the lower level APIs, whereas Cocoa is a higher level application framework. While a software project may exclusively use one or the other, in practice it is often necessary to use elements of both. Carbon is more versatile in that it may be accessed using C, C++, Pascal, Ada, or any other language with suitable interface headers, whereas Cocoa exclusively uses Objective C and Java. A higher level approach may be taken with Carbon by using an application framework built on it, for example MacApp, Metrowerks Powerplant or MacZoop. A Cocoa application being developed using Xcode. ... In computer programming, an application framework is a term usually used to refer to a set of libraries or classes that are used to implement the standard structure of an application for a specific operating system. ... The C Programming Language, Brian Kernighan and Dennis Ritchie, the original edition that served for many years as an informal specification of the language The C programming language is a standardized imperative computer programming language developed in the early 1970s by Dennis Ritchie for use on the Unix operating system. ... C++ (pronounced see plus plus, IPA: ) is a general-purpose computer programming language. ... Pascal is an imperative computer programming language, developed in 1970 by Niklaus Wirth as a language particularly suitable for structured programming. ... Ada is a structured, statically typed imperative computer programming language designed by a team lead by Jean Ichbiah of CII Honeywell Bull during 1977–1983. ... Objective-C, often referred to as ObjC or more seldom as Objective C or Obj-C, is a reflective, object oriented programming language which adds Smalltalk-style messaging to C. It is used primarily on Mac OS X and GNUstep, two environments based on the OpenStep standard, and is the... Java is an object-oriented programming language developed primarily by James Gosling and colleagues at Sun Microsystems. ... MacApp was Apple Computers primary object oriented application framework for the Mac OS for much of the 1990s. ... MacZoop is a popular application framework for the Apple Macintosh, based on Carbon. ...


Following Apple's announcement of a switch to the Intel processor to begin in 2006, the company CEO, Steve Jobs, discussed the projected effort required to port various types of apps to the new architecture. Cocoa apps require "a few minor tweaks", Carbon apps written in Xcode require "more tweaks", and Carbon apps written in CodeWarrior must be moved to Xcode. Intel Corporation (NASDAQ: INTC, HKEx: 4335), founded in 1968 as Integrated Electronics Corporation, is a U.S.-based multinational corporation that is best known for designing and manufacturing microprocessors and specialized integrated circuits. ... 2006 (MMVI) is a common year starting on Sunday of the Gregorian calendar. ... Chief Executive Officer (CEO) is the job of having the ultimate executive responsibility or authority within an organization or corporation. ... Steven Paul Jobs (born February 24, 1955) is the CEO of Apple Computer and a leading figure in the computer industry. ... Xcode is Apple Computers integrated development environment (IDE) for developing applications and other software for Mac OS X. It is shipped free with Mac OS X. First introduced on October 24, 2003 along with the release of Mac OS X v10. ... CodeWarrior is an integrated development environment for the Macintosh, Microsoft Windows, Linux, and embedded systems. ...


Architecture

Carbon descends from the Toolbox, and as such, is comprised of "Managers". Each Manager is a functionally-related API, defining sets of data structures and functions to manipulate them. Managers are often interdependent or layered. The Macintosh Toolbox was a set of resources, drivers, routines and APIs stored in the ROM of Old World ROM Apple Macintosh computers. ...


Newer parts of Carbon tend to be much more object-oriented in their conception, most of them based on Core Foundation. Some Managers, such as the HIView Manager (a superset of the Control Manager), are implemented in C++, but Carbon remains a C API. Core Foundation (also called CF) is a Mac OS X framework and API. CF provides: Primitive types for data (raw bytes, Unicode strings, numbers, calendar dates, UUIDs) and collections (arrays, sets, dictionaries) Application preferences management (CFPropertyList, Preferences Utilities) XML parsing Bundle handling File system I/O (CFReadStream, CFWriteStream, CFURL) Network... C++ (pronounced see plus plus, IPA: ) is a general-purpose computer programming language. ... The C Programming Language, Brian Kernighan and Dennis Ritchie, the original edition that served for many years as an informal specification of the language The C programming language is a standardized imperative computer programming language developed in the early 1970s by Dennis Ritchie for use on the Unix operating system. ...


Some examples of Carbon Managers:

  • File Manager — manages access to the file system, opening closing, reading and writing files.
  • Resource Manager — manages access to resources, which are predefined chunks of data a program may require. Calls File Manager to read and write resources from disk files. Examples of resources include icons, sounds, images, templates for widgets, etc.
  • Font Manager — manages fonts.
  • QuickDraw — 2D graphics primitives. Deprecated since Mac OS X v10.4 in favor of Quartz 2D.
  • Quartz (OS X only) — 2D graphics.
  • Carbon Event Manager — converts user and system activity into events that code can recognise and respond to.
  • HIObject — a completely new object-oriented API which brings to Carbon an OO model for building GUIs. This is available in Mac OS X v10.2 or later, and gives Carbon programmers some of the tools that Cocoa developers have long been familiar with. HIView is supported by Interface Builder, part of Apple's developer tools. Traditionally GUI architectures of this sort have been left to third-party application frameworks to provide.
  • HITheme — uses QuickDraw and Quartz to render graphical user interface (GUI) elements to the screen. HITheme was introduced in Mac OS X v10.3, and Appearance Manager is a compatibility layer on top of HITheme since that version.
  • HIView Manager — manages creation, drawing, hit-testing, and manipulation of controls. Since Mac OS X v10.2, all controls are HIViews. In Mac OS X v10.4, the Control Manager was renamed HIView Manager.
  • Window Manager — manages creation, positioning, updating, and manipulation of windows. Since Mac OS X v10.2, windows are HIObjects.
  • Menu Manager — manages creation, selection, and manipulation of menus. Since Mac OS X v10.2, menus are HIObjects. Since Mac OS X v10.3, menus and the menu bar are really windows underneath.

In typography, a typeface consists of a co-ordinated set of grapheme (i. ... Two quickdraws. ... Mac OS X version 10. ... Quartz is the marketing name of the proprietary graphics layer that sits on top of the open source Darwin core of Mac OS X. Quartz is part of the Core Graphics framework. ... Mac OS X version 10. ... A graphical user interface (or GUI, sometimes pronounced gooey) is a method of interacting with a computer through a metaphor of direct manipulation of graphical images and widgets in addition to text. ... A screenshot of Mac OS X v10. ...

Event handling

Toolbox's Event Manager used a polling (a.k.a "pull") model for application design. The main event loop, which is in the application, asks the Event Manager for an event. If there was an event in the queue, the Event Manager passes it back to the application, and it is handled; otherwise, either the call "blocks" for a specified interval, or it returns immediately. In politics, polling is the surveying of public opinion on an issue. ...


The polling mechanism worked well in early Mac OS, when whatever application was running was guaranteed to be the only application running. In a preemptively-scheduled operating system like Mac OS X, however, this is inefficient; the tight event loop means that the application is "busy-waiting", executing its loop when it shouldn't be executing anything at all. Pre-emptive multitasking is a form of multitasking in which processes are not allowed to take an indefinitely long time to complete execution in the CPU. Each process, in turn, is granted a portion of CPU time (usually called a time slice, on the order of milliseconds). ... In computing, an operating system (aka, OS) is the system software responsible for the direct control and management of hardware and basic system operations. ...


Carbon introduces a replacement system, called the Carbon Event Manager (the original Event Manager still exists, though it is deprecated). Carbon Event Manager provides the event loop for you (based, in the current implementation, on Core Foundation's CFRunLoop); you set up event handlers and enter the event loop in your main function, and wait for Carbon Event Manager to bring the events to you.


External links

  • Apple Developer Connection: Carbon
  • Carbon Dev
Mac OS X
Applications

Activity Monitor · Address Book · AirPort Admin Utility · Automator · BOMArchiveHelper · Calculator · Crash Reporter · Disk Utility · Chess · Console · Dashboard · Dictionary · DigitalColor Meter · Directory Access · DVD Player · Finder · Font Book · Grab · Grapher · iCal · iChat · Image Capture · Installer · Internet Connect · iSync · Keychain Access · Mail · NetInfo Manager · Network Utility · ODBC Administrator · Printer Setup Utility · QuickTime · Safari · Sherlock · Stickies · System Preferences · System Profiler · Terminal · TextEdit · VoiceOver · X11 Mac OS X is the operating system which is included with all shipping Apple Macintosh computers in the consumer and professional markets. ... Activity Monitor is the name of a utility for performing different tasks to a computer process in the Mac OS X operating system. ... An address book or a name and address book (NAB) is a book or a collection of data storing contact details (for example: address, telephone number, e-mail address, fax number, mobile phone number). ... Apple Automator is a new technology for scripting applications, first implemented in Mac OS X v10. ... BOMArchiveHelper is the default archive file handler in Mac OS X. It is a service application that has no GUI when double-clicked, rather it is invoked by opening its associated files or by choosing Create archive of file in the Finders contextual menu. ... Crash Reporter is the standard crash reporter in Mac OS X, fount at /System/Library/CoreServices/Crash Reporter. ... Disk Utility is the name of a utility created from Apple Computer for performing disk-related tasks in Mac OS X. These tasks include: the creation of disk images; mounting, unmounting, and ejecting disks (including both hard disks, removable media and disk images); enabling or disabling journaling; verifying a disk... Chess is a chess game for Mac OS X, featuring a high quality graphical display and support for chess variants such as crazyhouse and suicide chess. ... Dashboard is an application for Apple Computers Mac OS X operating system, used for hosting mini-applications known as widgets. It is a semi-transparent layer that is invisible to the user unless activated by a hotkey (which can be set to the users preference), and is only... The Dictionary window with the new Tiger visual theme Dictionary defining a word in Safari; a WebKit/Cocoa application in Mac OS X v10. ... This page relates to Apple software. ... The Finder is the default application program used on the Mac OS and Mac OS X operating systems that is responsible for the overall user-management of files, disks, network volumes and the launching of other applications. ... Apples Font Book includes fonts, and dividing them into groups. ... Grab is an application by Apple Computer used to make screenshots of the users computer. ... Grapher is a new application bundled with Mac OS X v10. ... The correct title of this article is iCal. ... iChat is an AOL Instant Messenger (AIM) and Jabber client for Mac OS X. Using a Jabber-like protocol and Bonjour for user discovery, it also allows for LAN communication. ... Installer is an application included in Mac OS X which extracts and installs files out of . ... iSync 1. ... Mail (aka Mail. ... Network Utility is a an application included with Mac OS X that provides a variety of computer network information. ... QuickTime is a multimedia technology developed by Apple Computer, capable of handling various formats of digital video, sound, text, animation, music, and immersive virtual reality panoramic images. ... Safari is a web browser developed by Apple Computer, Inc. ... Sherlock 2 for Mac OS 9, Files Channel Sherlock, named after Sherlock Holmes, is the file and web searching tool made by Apple Computer for the Mac OS, introduced with Mac OS 8. ... Screenshot of Stickies from Mac OS X Stickies is a Macintosh application for putting Post-it note-like windows on the screen, with short reminders, notes and other clippings. ... System Preferences is the application used by Mac OS X to set user preferences. ... System Profiler is a software utility that has been bundled with Mac OS since System 7 (until Mac OS X it was called Apple System Profiler). ... A screenshot of Apples TextEdit. ... A voice-over is a narration that is played on top of a video segment, usually with the audio for that segment muted or lowered. ... X11. ...

Technology

Aqua · Carbon · Cocoa · WebKit Mac OS X 10. ... A Cocoa application being developed using Xcode. ... WebKit is an application framework included with Mac OS X v10. ...


  Results from FactBites:
 
Carbon (API) - Wikipedia, the free encyclopedia (1599 words)
Carbon is often seen as a transitional or legacy technology, but in fact it is unlikely that large legacy codebases (e.g., Adobe Photoshop, etc.) ever will be completely rewritten for Mac OS X, and so it will necessarily remain a core part of the OS X operating system indefinitely.
Carbon is often confused and/or compared with Cocoa, but the two are complementary and are solving different problems.
Carbon descends from the Toolbox, and as such, is composed of "Managers".
Carbon development language list (449 words)
Carbon applications are closely related to applications traditionally written for the Mac OS.
Carbon is based on the programming tools available for MacOS 9 and earlier, and allows a smooth path for bringing applications to OS X. Apple is providing strong support for this programming environment, and the libraries provided have been maturing for over 15 years.
A growing developer community has brought a large number of Carbon apps to the platform, and the developer tools and libraries are abundant.
  More results at FactBites »


 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments
Please enter the 5-letter protection code

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.