3.2 Το λογισμικό (software)
[58]
Core Services
Είναι το στρώμα που περιλαμβάνει βιβλιοθήκες και πλαίσια
(framework) που χρησιμοποιούν οι εφαρμογές του λειτουργικού
συστήματος.
Το σημαντικότερο framework είναι το Core Foundation το οποίο
αποτελείται από διεπαφές σε γλώσσα C, οι οποίες παρέχουν θεμελιώδη
διαχείριση δεδομένων και υπηρεσιών όπως διαχείριση ημερομηνίας και
ώρας, διαχείριση προτιμήσεων χρήστη και δικτυακή ροή.
Υπάρχει επίσης το CFNetwork framework επίσης γραμμένο σε C,
είναι υψηλής απόδοσης και παρέχει μία συλλογή αντικειμενοστραφών
αφαιρέσεων για αλληλεπίδραση με δικτυακά πρωτόκολλα. Μπορούμε να
το χρησιμοποιήσουμε για να κάνουμε απλούστερη τη δικτυακή
επικοινωνία μέσω FTP/ HTTP.
Το Security framework μας παρέχει τους μηχανισμούς προστασίας
των δεδομένων των εφαρμογών μας. Επίσης παρέχει διαχείριση
πιστοποιητικών ασφαλείας και δημοσίων ιδιωτικών κλειδιών.
Η ενσωματωμένη βιβλιοθήκη SQLite [19] επιτρέπει στις εφαρμογές
τη δημιουργία και τη χρήση αρχείων βάσεων δεδομένων. Η
συγκεκριμένη βιβλιοθήκη ενώ είναι γενικής χρήσης εδώ έχει
βελτιστοποιηθεί για αποθήκευση δεδομένων σε φορητές συσκευές.
Media
Σε αυτό το στρώμα περιλαμβάνονται οι τεχνολογίες πολυμέσων και
γραφικών. Περιλαμβάνει υψηλού επιπέδου framework που επιτρέπουν
προηγμένα γραφικά και animations, όπως και χαμηλού επιπέδου
συναρτήσεις που επιτρέπουν υψηλότερο έλεγχο των επιθυμητών
λειτουργιών.
Για τα γραφικά παρέχεται η τεχνολογία Quartz η οποία δίνει
δυνατότητες ζωγραφικής σε δύο διαστάσεις, γραμμών και σχημάτων,
μοτίβων και εικόνων. Επίσης το Core Animation αποτελείται από ένα
API που μας επιτρέπει τη δημιουργία animation. Η τεχνολογία OpenGL
ES η οποία είναι η mobile εκδοχή της OpenGL μας παρέχει τη
δυνατότητα για animation με γραφικά επιπέδου 3D.
Για τον ήχο παρέχονται τα Core Audio και Audio Toolbox
framework. Το Core Audio μας δίνει τη δυνατότητα για αναπαραγωγή
και καταγραφή ροών ήχου, ενώ το Audio Toolbox χρησιμοποιείται για