Mac OS X : Aperçu du système
description
Transcript of Mac OS X : Aperçu du système
Mac OS X : Aperçu du Mac OS X : Aperçu du systèmesystème
Aperçu de l ’interfaceAperçu de l ’interface
Un système modulaireUn système modulaire
Darwin : Noyau de Mac OS XDarwin : Noyau de Mac OS X
Mach 3.0Mach 3.0
BSDBSD
Networking facilitiesNetworking facilities
Mac OS X : un UN*X like ???Mac OS X : un UN*X like ???
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Aperçu de l ’interfaceAperçu de l ’interface
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Un système modulaireUn système modulaire
Aqua
Quartz OpenGL QuickTime
Darwin
Classic Carbon Cocoa
Vue fonctionnelle de Mac OS XVue fonctionnelle de Mac OS X
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
AquaAqua
Interface graphique coloréeInterface graphique colorée
Icônes 128 x 128 pixelsIcônes 128 x 128 pixels
1 fenêtre pour 1 application (cf. Opéra) - 1 fenêtre pour 1 application (cf. Opéra) - Module OptionnelModule Optionnel
Nouvelles boites de dialogue attachées à la Nouvelles boites de dialogue attachées à la fenêtre mèrefenêtre mère
Réutilisation des anciennes interfaces MacRéutilisation des anciennes interfaces Mac
Basé sur QuartzBasé sur Quartz
Aqua
Quartz OpenGL QuickTime
Darwin
Classic Carbon Cocoa
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Aqua
Quartz OpenGL QuickTime
Darwin
Classic Carbon CocoaLes environnements Les environnements d ’exécution (1)d ’exécution (1)
ClassicClassic
Dédié aux applications Mac OS 9Dédié aux applications Mac OS 9
Ne supporte pas les nouvelles fonctionnalités Ne supporte pas les nouvelles fonctionnalités
de l ’OS X (Aqua, amélioration de de l ’OS X (Aqua, amélioration de
l ’architecture dues au noyau…)l ’architecture dues au noyau…)
Conserve la compatibilité descendanteConserve la compatibilité descendante
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Aqua
Quartz OpenGL QuickTime
Darwin
Classic Carbon CocoaLes environnements Les environnements d ’exécution (2)d ’exécution (2)
CarbonCarbon
Dédié aux applications Mac OS 8 et 9 Dédié aux applications Mac OS 8 et 9 optimisées pour Mac OS Xoptimisées pour Mac OS X
Le code des applications est converti pour Le code des applications est converti pour utiliser les nouvelles API de Carbonutiliser les nouvelles API de Carbon
Utilisation des améliorations dues au noyauUtilisation des améliorations dues au noyau
Pas compatible avec les autres Mac OSPas compatible avec les autres Mac OSYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Aqua
Quartz OpenGL QuickTime
Darwin
Classic Carbon CocoaLes environnements Les environnements d ’exécution (3)d ’exécution (3)
CocoaCocoa
Nouvel environnement propre à Mac OS XNouvel environnement propre à Mac OS X
Prend en compte toutes les améliorations de Prend en compte toutes les améliorations de
l ’OSl ’OS
Pas compatible avec les autres Mac OSPas compatible avec les autres Mac OS
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Aqua
Quartz OpenGL QuickTime
Darwin
Classic Carbon CocoaGestion graphique (1)Gestion graphique (1)
QuartzQuartz
Moteur graphique 2D de Mac OS XMoteur graphique 2D de Mac OS X
Gestion du fenêtrageGestion du fenêtrage
Génération native de PDFs, PSGénération native de PDFs, PS
Gestion des imprimantesGestion des imprimantes
Rendu à l ’écran de haute qualitéRendu à l ’écran de haute qualité
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Aqua
Quartz OpenGL QuickTime
Darwin
Classic Carbon CocoaGestion graphique (2)Gestion graphique (2)
OpenGLOpenGL
API de rendu 3D optimiséeAPI de rendu 3D optimisée
Mapping de textures, gestion des surfaces Mapping de textures, gestion des surfaces
cachées …cachées …
Quake 3 koi !!!!!!! Quake 3 koi !!!!!!!
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Aqua
Quartz OpenGL QuickTime
Darwin
Classic Carbon CocoaGestion graphique (3)Gestion graphique (3)
Quicktime 4Quicktime 4
Manipulation, amélioration, stockage de Manipulation, amélioration, stockage de
sons, animations, graphiques, textes, ….sons, animations, graphiques, textes, ….
Cross-plateformeCross-plateforme
StreamingStreaming
......Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Darwin : Base de Mac OS XDarwin : Base de Mac OS X
Aqua
Quartz OpenGL QuickTime
Darwin
Classic Carbon Cocoa
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Architecture de Mac OS XArchitecture de Mac OS X
BSDBSDJavaJava
(JDK)(JDK)CarbonCarbonCocoaCocoaClassicClassic
Application ServicesApplication Services QuickTimeQuickTime
Core ServicesCore Services
Kernel EnvironnementKernel Environnement
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Darwin : Sous ensemble de Darwin : Sous ensemble de Mac OS XMac OS X
BSDBSDJavaJava
(JDK)(JDK)CarbonCarbonCocoaCocoaClassicClassic
Application ServicesApplication Services QuickTimeQuickTime
Core ServicesCore Services
Kernel EnvironnementKernel Environnement
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Conception de DarwinConception de Darwin
Basé sur un noyau MACH 3.0Basé sur un noyau MACH 3.0
Respect des interfaces POSIXRespect des interfaces POSIX
Respect des APIs Carbon, Classic et CocoaRespect des APIs Carbon, Classic et Cocoa
Noyau Open Source (Sous Apple Open Source Noyau Open Source (Sous Apple Open Source
Licence)Licence)
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Architecture de DarwinArchitecture de Darwin
File SystemFile SystemNetworkingNetworking
NKENKE BSDBSD
MachMachI/O KitI/O Kit
DriversDrivers
Fonctionnalités du noyau Fonctionnalités du noyau MACH 3.0 (1)MACH 3.0 (1)
Interface entre le système et la mémoire et le Interface entre le système et la mémoire et le
processeurprocesseur
Protection de la mémoireProtection de la mémoire
Gestion des ressources CPUGestion des ressources CPU
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Fonctionnalités du noyau Fonctionnalités du noyau MACH 3.0 (2)MACH 3.0 (2)
Gestion du multi tache et multi threadGestion du multi tache et multi thread
Gestion de la préemptionGestion de la préemption
Gestion des ressources I/O (I/O Kit)Gestion des ressources I/O (I/O Kit)
Fonctionne au travers de messages (IPC et Fonctionne au travers de messages (IPC et
RPC)RPC)
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Fonctionnalités du noyau BSDFonctionnalités du noyau BSD
Gestion des systèmes de fichiers (HFS+, NFS …)Gestion des systèmes de fichiers (HFS+, NFS …)
API de gestion des systèmes de fichiersAPI de gestion des systèmes de fichiers
API réseauAPI réseau
Règles de sécurité (User ID, permissions…)Règles de sécurité (User ID, permissions…)
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Fonctionnalités du noyau BSDFonctionnalités du noyau BSD
Réseau :Réseau :
Support TCP/IPSupport TCP/IP
API socketsAPI sockets
Support d’IP et AppleTalkSupport d’IP et AppleTalk
Multihoming, routageMultihoming, routage
MulticastMulticast
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Network Kernel ExtensionsNetwork Kernel Extensions
Visualisation du trafic réseauVisualisation du trafic réseau
Modification du traficModification du trafic
Reception de messages de la couche DriversReception de messages de la couche Drivers
Création de piles de protocoles chargés Création de piles de protocoles chargés
dynamiquement : insertion d ’une interface dynamiquement : insertion d ’une interface
générique supplémentaire...générique supplémentaire...
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Mac OS X : UN*X like ???Mac OS X : UN*X like ???
+ Respect des interfaces POSIX+ Respect des interfaces POSIX
+ Basé sur un noyau BSD (UN*X) remodelé+ Basé sur un noyau BSD (UN*X) remodelé
- Ajout des interfaces Mac- Ajout des interfaces Mac
- Masquage de l ’interface BSD- Masquage de l ’interface BSD
- Pas d ’environnement d ’exécution UN*X- Pas d ’environnement d ’exécution UN*X
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
BibliographieBibliographie
Apple Insider - dédié à AppleApple Insider - dédié à Apple
http://www.appleinsider.comhttp://www.appleinsider.com
mosx: dédié à Mac OS X - mosx: dédié à Mac OS X - Essentiellement des news - Essentiellement des news - http://www.mosx.nethttp://www.mosx.net
Apple Web SiteApple Web Site
http://www.apple.com/macosxhttp://www.apple.com/macosx
http://developer.apple.com/techpubs/macosx/macosx.htmlhttp://developer.apple.com/techpubs/macosx/macosx.html
Yann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fmYann Barraud - UMLV - Ingénieurs 2000 - http://www.macosx.fr.fm
Yann BarraudYann Barraud
http://www.macosx.fr.fmhttp://www.macosx.fr.fmdès qu ’il sera dès qu ’il sera
disponible… ;-)disponible… ;-)
09/11/200009/11/2000
Questions ????Questions ????
Pas beaucoup, merci!!Pas beaucoup, merci!!