Carbon (Apple)

Carbon je kolekce rozhraní pro programování aplikací (API) od společnosti Apple , které jsou součástí systémového softwaru Macintosh, který obsahuje Macintosh Toolbox ( anglicky Macintosh Toolbox ). Od samého začátku , to bylo určeno jako překlenovací technologii , aby to tak jednoduché, jak je to možné pro vývojáře programů v době, kdy se připravit své Mac OS aplikací pro Mac OS X , který byl později propuštěn . V době spuštění byl Mac OS 8 aktuálním operačním systémem Apple, Mac OS 9 stejně jako jeho nástupce a nová generace operačních systémů Mac OS X byly ve vývoji.

Mac OS X byl v roce 2012 přejmenován na OS X bez názvu „Mac“ a nakonec na MacOS v roce 2016 . Carbon nebyl od roku 2007 dále vyvíjen, a proto byl omezen na 32bitový , ale je součástí operačního systému až do macOS Mojave (10.14, 2018). U systému macOS Catalina , verze 10.15 původního systému Mac OS X vydaného v roce 2019, karbon zcela chybí, a to i proto, že od této verze jsou obecně podporovány pouze 64bitové aplikace.

Panel nástrojů Macintosh

Macintosh Toolbox , také známý jako stavebnice Macintosh, je to, že část volání funkcí původního systému Macintosh (1984), které byly uloženy v ROM, a tím trvale připojen k příslušnému počítači Macintosh. Apple ji již dlouhou dobu reprezentoval takovým způsobem, že grafické funkce tímto způsobem mohl poskytovat pouze počítač Apple.

Panel nástrojů umožňuje programátorům používat funkce poskytované systémovým softwarem za účelem snadného vytváření oken , nabídek , zaškrtávacích políček a dialogových oken vytvořených systémem (a tedy i jednotného vzhledu) a ovládání událostí . Funkce Finderu , který sám o sobě není součástí ROM Toolboxu, lze také použít pomocí stejného typu volání funkcí.

V průběhu vývoje systémového softwaru Macintosh bylo programovací rozhraní (API) průběžně rozšiřováno, například o QuickDraw a QuickTime . Byly však také odstraněny nezdokumentované funkce. S System 7 (1991) bylo API dříve naprogramované v Pascalu znovu implementováno v C , což usnadnilo přenesení operačního systému z m68k do architektury PowerPC . V rámci projektu „Star Trek“ byly také prováděny práce na portování systému 7 a tedy i programovacího rozhraní, které obsahovalo pro počítače x86, ale toto nebylo dokončeno. Protože mnoho uživatelských programů Macintosh používalo pro systém 6 nezdokumentované funkce, museli je vývojáři pro systém 7 přizpůsobit.

Od roku 1997 se Apple pokusil přejít na zcela nové programovací rozhraní: OpenStep API převzaté společností NeXT , které bylo dále vyvinuto s projektem operačního systému Rhapsody jako Yellow Box a s Mac OS X jako Cocoa . Všechny stávající programy pro Macintosh by však musely být zcela přepsány. Výrobci aplikačního softwaru, kteří jsou pro Apple nepostradatelní, po WWDC 1997 uvedli, že by tuto snahu o přenos nepřijali, načež byl Apple nucen vyvinout do značné míry kompatibilní náhradu zdrojového kódu za stavebnici Macintosh. Tato náhrada je Carbon, který byl představen s Mac OS X a je také k dispozici pro klasický Mac OS jako CarbonLib. To znamenalo, že byly nutné pouze drobné úpravy zdrojového kódu, aby bylo možné stávající program Macintosh překompilovat pro Carbon API , které pak může běžet na obou operačních systémech (Mac OS a Mac OS X).

Uhlík

Carbon je založen na programovacím rozhraní Macintosh Toolbox ( anglický Macintosh Toolbox ) klasického systémového softwaru Macintosh (1984, od 1996 Mac OS ), minus ti, kteří historicky vyrostli a byli nadbyteční, a tak typické vlastnosti Mac OS X jako jako preemptivní multitasking a ochrana paměti stál v cestě. Z přibližně 8 000 funkcí v klasickém systému Mac OS nebylo do Carbonu přeneseno asi 2 000 funkcí. Pokud byl program Mac OS napsán pro použití knihovny Carbon , mohl by běžet nativně na Mac OS i Mac OS X. Předpokladem však bylo, že se již nepoužívá kód Motorola 68k , protože Carbon byl k dispozici pouze na architektuře PowerPC pod Mac OS .

Použití uhlíkové knihovny poskytlo vývojářům výhodu, že mohou nadále používat velké části stávajícího zdrojového kódu . Přenos portů byl tedy zvládnutelný, protože pro modernější API Cocoa , které má svůj původ v operačním systému NeXT NeXTStep , by musela být přepsána velmi velká část zdrojového kódu stávajících programů. Mnoho známých programů bylo ještě dlouho karbonovými programy, například Adobe Photoshop až do verze CS4 (konec roku 2008). Apple sám použil uhlík u některých komponent systému Mac OS X, které již v systému Mac OS existovaly - například v systému Mac OS X Snow Leopard (10.6, 2009) byl přepsán Finder v Cocoa. Přední konce iTunes a QuickTime Player pro Mac OS 9, Mac OS X a Windows byly také dlouho založeny na Carbonu. Nově vyvinuté programy Apple jako např Například prohlížeč Safari pro Mac OS X a Windows byl od začátku založen na modernějším kakau.

Uhlíková knihovna je součástí operačního systému v systému Mac OS X od první verze ( veřejná beta , 2000). V systému Mac OS 8.1 až 9.2.2 musí být knihovna, která byla distribuována zdarma ke stažení, nainstalována ručně. Podle názoru vývojáře však lze Carbon považovat za dokončený až od verze integrované v systému Mac OS X 10.2 („Jaguar“, 2002). Poslední verze CarbonLib je 1.6 a vyžaduje alespoň Mac OS 8.6 . Classic prostředí zahrnuje CarbonLib 1.6.1, která je automaticky nainstalována ve virtualizovaném systému Mac OS 9.1 nebo novější.

Programy, které používaly uhlíkovou knihovnu a běžely na Mac OS a Mac OS X, se většinou nazývaly karbonizované aplikace . Termín nebyl aplikován na pozdější čisté programy Mac OS X, které používaly uhlíkovou knihovnu.

64bitové konzolové programy již mohly být spuštěny v systému Mac OS X Tiger (10.4, 2005); s Mac OS X Leopard (10.5, 2007) byl kakao kompatibilní s 64bitovými verzemi. Od Mac OS X Snow Leopard (10.6, 2009) bylo možné spustit buď 32bitové nebo 64bitové jádro . Od OS X Mountain Lion (10.8, 2012) byl operační systém plně převeden na 64bitový. Plány na zajištění 64bitové kompatibility s Carbonem společnost Apple v roce 2007 zrušila. Zatímco Mac OS X se postupně měnil na čistý 64bitový operační systém, další vývoj Carbonu byl nyní konečně zastaven a staré programy, které Carbon stále potřebovaly, byly omezeny na 32bitové. Z tohoto důvodu byl mimo jiné Adobe Photoshop CS4 již k dispozici jako 64bitový program pod Windows, ale stále byl 32bitovým programem pod Mac OS X. Vyhrazené vývojový tým byl použit k portu Photoshopu Cocoa (C2C: Carbon k Kakao). Na konci dubna 2010 společnost Adobe konečně vydala Photoshop CS5 jako 32- a 64bitovou kakaovou aplikaci.

Carbon není k dispozici v systému iOS , který je k dispozici od roku 2007 . S obecnou ztrátou 32bitové podpory v macOS od verze 10.15 (2019) byl Carbon, který nepodporuje 64bitové, definitivně odstraněn.

literatura

webové odkazy

Individuální důkazy

  1. Ben Schwan: macOS 10.15: Dashboard pryč, Aperture zabita, Carbon a QuickTime mrtvý. In: Heise online . 2. května 2019 . Citováno 2. května 2019; Citát: „32bitové aplikace a doplňky jsou, to už bylo známo, minulostí. MacOS 10.15 bude také nevzhledný pro vývojáře, kteří stále používají starý klasický API Carbon. Odpovídající aplikace již nebudou fungovat. “.
  2. Inside Macintosh: Macintosh Toolbox Essentials (anglicky, PDF, 6,2 MB), 1992, Apple Computer Inc .; přístup 8. března 2016
  3. ^ MacOS X Files (anglicky), Brian Kelley, přepis hlavní poznámky Steva Jobse na WWDC 1998 11. května 1998; přístup 27. září 2016.
  4. Časová osa Rhapsody , přístup 18. října 2015.

    "Carbon je založen na aplikačním prostředí navrženém pro Copland poté, co vývojáři dali najevo, že nechtějí úplně přepsat své aplikace pro Copland (totéž, co by později řekli o Rhapsody)." Carbon, i když působivý v tom, jak fungoval na WWDC 98, nebyl zdaleka tak připravený, jak si Apple myslel (mnoho lidí to nepovažovalo za použitelné až do vydání Mac OS X v10.2 v srpnu 2002). “

  5. Macworld: Photoshop CS4 bude 64bitový pro Windows, ale ne pro Mac (anglicky) 2. dubna 2008, Jim Dalrymple, přístup 26. března 2015
  6. Blog: Získání Photoshopu CS5 na 64bitový na Macintoshi , 14. března 2011, blog Jeffa Tranberryho, přístup 26. března 2015