ATTIVITÀ : Utilizzare : Sistemi Operativi : Mac OS X : Overview

Overview

Una breve panoramica della struttura funzionale di Mac OS X, solo per chiarire termini come Classic e Cocoa, Quartz e Carbon, per buttare un po' d'Aqua sul Fuoco...

Indice

  1. Sorvolo ad alta quota
  2. Bibliografia & Link
  3. Copyright e Licenza
Inizio

Sorvolo ad alta quota

Map of Mac OS X Structure

Fig.: La struttura funzionale di Mac OS X (mappa sensibile).

La struttura funzionale di Mac OS X (la vedete in Figura e cliccando sulle sua parti andate al paragrafo specifico) è composta di quattro livelli. Il livello più alto è quello che l'utente ha davanti quando accende un Macintosh ed è l'interfaccia utente (Human-Interface, HI) di nome Aqua (nome chimico dell'acqua in inglese). Il nome si ispira alle trasparenze di cui il Finder è divenuto capace dopo la trasformazione di tutti gli elementi di interfaccia da solidi ad opachi ('solid' e 'opaque').

Inizio

Il livello inferiore sono gli 'ambienti' di esecuzione. Ambiente di esecuzione significa l'insieme delle regole, delle API (Application Program Interfaces), e delle risorse che un programma utilizza per eseguire i suoi scopi. Allo stesso modo questi ambienti di esecuzione hanno dietro analoghi ambienti di sviluppo che costringono il programmatore nei limiti delle citate regole, lo forzano all'uso delle relative API e consentono l'implementazione delle sole risorse valide per quell'ambiente.
Gli ambienti (di sviluppo e di esecuzione) in Mac OS X sono tre e si chiamano Classic, Carbon e Cocoa.
Classic è un emulatore di Mac OS 9 e quindi in esso 'girano' i programmi scritti per i vecchi Mac (dal System 7.5 in poi) senza bisogno di alcuna riscrittura. Essendo un ambiente di emulazione, Classic non è in grado di utilizzare le caratteristiche salienti del Mac OS X e dunque non può garantirsi la sopravvivenza ad un errore di una delle applicazioni che ci girano dentro. Tanto premesso, consente di avere due Mac in uno anche nel nuovo millennio e di passare alle applicazioni 'native' per Mac OS X man mano che queste verranno rese disponibili dai rispettivi produttori, senza bisogno di svenarsi o di reimparare nuovi programmi.
Le applicazioni scritte sul Mac OS 9 con un occhio di riguardo per l'ambiente di Mac OS X lavorano in Carbon. Carbon (Carbonio e non carbone...) Deve il nome alla sua essenzialità alla vita del nuovo sistema di Cupertino come essenziale è il carbonio per la vita sulla terra.
Ha consentito a coloro che da due anni a questa parte dovessero uscire con una nuova applicazione ovvero con una nuova versione di una esistente, di essere già compatibili col Mac OS X. Come? Se una applicazione usa le API Carbon, il Mac OS 9 la esegue attraverso la traduzione di CarbonLib, mentre il Mac OS X la esegue attraverso la traduzione delle API da Carbon a Cocoa, le sua API native. Questa funzione di copiatura come di carta carbone su di un livello più basso è senz'altro l'origine del fraintendimento sul nome Carbon. La stessa applicazione vale per due sistemi operativi e non è scritta per nessuno dei due.
Cocoa (Cacao) è l'insieme delle API native Mac OS X ed è mutuata quasi in toto da NeXTStep, l'aborto di Jobs appena fuoriuscito da Apple sbattendo la porta. Non a caso le API Cocoa sono tutte prefissate NS proprio come quelle di Rhapsody. Non a caso i frameworks hanno ancora molte icone in scala di grigio tra le risorse di sviluppo. Per averne la prova utilizzate la tecnica di apprendimento descritta di seguito. Chiaramente una applicazione scritta con Cocoa (che lo ripeto è un insieme di regole, API e risorse e non un IDE) trae vantaggio da tutte le caratteristiche di Mac OS X, una tra tutte la sopravvivenza del sistema ad una applicazione che s'inchioda.

Inizio

Il terzo strato riguarda il rendering, cioé il modo in cui gli oggetti vengono disegnati sullo schermo (in primis) e sulle periferiche di output in genere. Fermo restando che il Mac OS X disegna la grafica nello stesso modo indipendentemente dalla periferica (ne costruisce una versione PDF - il Portable Document Format di Abobe) un po' come faceva NeXTStep col PostScript (che manco a dirlo è di Adobe), tre sono i gestori che si occupano di questa visualizzazione:
Quartz (Quarzo) per la gestione dei Font (che non è mutuata dal Type 1 di Adobe ma è il TrueType di Apple) e della grafica monocolore ed in genere bidimensionale e solida (solida nel senso di non opaca dunque senza rispetto per il livelli e le rispettive trasparenze); in una parola il successore specializzato di QuickDraw. OpenGL per la grafica vettoriale 3D ed opaca in genere e per la grafica opaca in movimento purché calcolata (non filmati insomma); Il caro vecchio QuickTime per la grafica in movimento da riproduzione (dunque non calcolata) con tutti gli standard di compressione e decompressione relativi, sorenson 2.x in testa (quindi multimedialità).

Inizio

Il livello basso del sistema (quindi quello più distante dall'utente) si chiama Darwin in omaggio al teorico dell'evoluzione delle specie per adattabilità collettiva e non individuale o se preferite la legge del più adatto.
Unix è il sistema più longevo perché ancora il più adatto malgrado si sia passati in quindici anni dal 6504 al PowerPC G4 e malgrado venga dai server sulle workstation che intanto hanno molta più potenza dei server di un lustro prima. Unix in genere è insomma un sistemascalabile, moderno, robusto ed ha un parco programmatori vastissimo.
Darwin è il progetto che Apple ha lanciato per determinare quale fosse la specie di sistema operativo più adatta a traghettare il Mac nel terzo millennio e la risposta è stata Unix.
Per una panoramica su quanto di Unix, di Linux e dei BSD ci sia in Mac OS X, date un'occhiata alla pagina "Dall’Inizio".
Una buona fetta degli Unix è gratis ed OpenSource (viene cioé distribuito con i sorgenti). Bene Darwin lo è, è free (attenzione non Mac OS X solo Darwin, il kernel), è OpenSource (i sorgenti li scaricate dal sito ADC di Apple), è uno Unix che viene dalla California, da Berkeley più esattamente: BSD - Berkeley Software Distrubution la Distrubuzione dell'Università di Berkeley.
Darwin (il teorico) ha scelto Unix (e NeXTStep che garantisce sopravvivenza a Jobs in Apple) ed ora da il nome alla parte del sistema che dialoga con gli strati superiori (il software) e con gli strati inferiori (l'hardware, le periferiche, la rete) in una parola il Kernel (Nucleo) per dirla alla "X".

Inizio

Bibliografia & Link

  1. Apple Mac OS X. (EN)
  2. Apple Mac OS X developers Documentation. (EN)
  3. Apple Mac OS X developers Documentation [PDF]. (EN)
  4. Apple Mac OS X Training for Assistance Suppliers [PDF]. (EN)
  5. Apple Mac OS X developers Documentation: An Overview for Developers [PDF]. (EN)
  6. Apple Inside Mac OS X in versione cartacea (docs-on-demand) da Fatbrain.com (EN)

  • FreeBSD tutta la documentazione possibile (EN).
  • NetBSD il sito del progetto (EN).
  • OpenBSD il sito del progetto (EN).
  • LinuxPPC tutti i porting di Linux su processori PowerPC (EN).
Inizio

Commenti e consigli

Se l'argomento vi interessa parleremo dell'Overview in maniera più aderente ai vostri interessi. Inoltrate domande solo attraverso il SIG Aiutarsi per problemi relativi all'Overview oppure utilizzate il form qui sotto per altre segnalazioni, comprese ben accette proposte di collaborazione, ampliamenti o revisioni della pagina. Nel caso, i campi indicati dall'asterisco (*) sono obbligatori.



Home | Programmare | Utilizzare | Aiutarsi | Regalare | Software | Dizionario
Eventi | Roma | Vantaggi | Oggetti | Informazioni | Novità | Link | Mappa


Copyright © Roam - Conoscere Possibile.
Il sito è Documentazione Libera sotto FDL 1.2 o successiva.
La copia letterale e la distribuzione del materiale qui raccolto nella sua integrità sono permesse con qualsiasi mezzo, a condizione che questa nota sia riprodotta (se non diversamente indicato).
[J] Informazioni Legali