Symbian
Arkkitehtuuri > Käyttöjärjestelmä

All over -malli sisältää seuraavat kerrokset, ylhäältä alaspäin:
käyttöliittymän ohjelmistokehyskerros
sovelluspalveluiden kerros
Java ME
käyttöjärjestelmän palveluiden kerros
yleiset käyttöjärjestelmän palvelut
viestintäpalvelut
multimedia- ja grafiikkapalvelut
liitettävyyspalvelut
peruspalvelujen kerros
ytimen palvelut & laitteistorajapintakerros
Peruspalvelujen kerros on matalin taso, jonka käyttäjäpuolen operaatiot voivat saavuttaa; siihen kuuluu tiedostopalvelin ja käyttäjäkirjasto, plug-in-ohjelmistokehys, joka hallinnoi kaikkia plug-ineja, kauppa, keskusvarasto, tietokanta ja salauspalvelut. Siihen sisältyy myös teksti-ikkunapalvelin ja teksti-shell: kaksi peruspalvelua, joiden avulla voi luoda täysin toiminnallisen ohjelmistoporttauksen ilman, että tarvitsee yhtään korkeamman tason palvelua.
Symbianilla on mikroydinarkkitehtuuri, joka tarkoittaa, että ydin sisältää vain tarpeellisimmat, alkeellisimmat toiminnallisuudet parhaimman vakauden, saatavuuden ja reagointivalmiuden takaamiseksi. Se sisältää aikatauluttajan, muistin hallinnan ja laiteajurit, mutta muut palvelut, kuten verkko-, puhelin- ja tiedostojärjestelmätukipalvelut sijaitsevat joko käyttöjärjestelmän palvelujen kerroksessa tai peruspalvelujen kerroksessa. Laiteajurien sisällyttäminen tarkoittaa, että ydin ei ole todellinen mikroydin. EKA2-reaaliaikainen ydin, jota on kutsuttu nanoytimeksi, sisältää vain tarpeellisimmat, alkeellisimmat toiminnallisuudet ja se tarvitsee laajennetun ytimen toteuttaakseen mitä tahansa muita abstraktioita.
Symbian on suunniteltu painottamaan yhteensopivuutta muiden laitteiden, varsinkin poistettavia mediatiedostojärjestelmien, kanssa. EPOC:in varhaiskehityksessä päädyttiin käyttämään FAT-tiedostojärjestelmää sisäisenä tiedostojärjestelmänä ja näin on vieläkin, mutta oliopohjainen pysyvyysmalli laitettiin tiedostojärjestelmän päälle POSIX-tyylisen käyttöliittymän ja virtautusmallin aikaansaamiseksi. Sisäiset tietomuodot luottavat siihen, että samat ohjelmointirajapinnat, jotka luovat tiedoston, myös tekevät kaikki muutokset siihen. Tämä on johtanut vaikeuksiin tietojen siirtämisessä.
Laajassa verkko- ja viestintäalijärjestelmässä on kolme pääpalvelinta nimeltään ETEL (EPOC-puhelintekniikka), ESOCK (EPOC-pistokkeet) ja C32 (vastaa sarjaviestinnästä). Jokaisessa näistä on plug-in-järjestelmä. Esimerkiksi ESOCK sallii erilaisten ".PRT"-protokollamoduulien toteuttaa erinäisiä verkkoprotokollajärjestelmiä. Alijärjestelmä sisältää myös koodia, joka tukee lyhyen matkan viestintälinkkejä, kuten Bluetoothia, IrDAa ja USB:ia.
Käyttöliittymäkoodia on myös suuri määrä. Symbian OS:issa on vain pohjaluokat ja perustat, itse käyttöliittymät olivat kolmansien osapuolien ylläpitämiä. Näin ei ole enää. Kolme suurinta käyttöliittymää — S60, UIQ ja MOAP — lahjoitettiin Symbianille vuonna 2009. Symbian sisältää myös grafiikka-, tekstin asettelu- ja kirjasintyyppienmallinnuskirjastot.
Kaikki natiivit Symbian C++ -sovellukset rakentuvat näiden sovellusarkkitehtuurin määrittelemän kolmen runkoluokan ympärille: sovellusluokka, dokumenttiluokka ja sovelluksen käyttöliittymäluokka. Nämä luokat luovat sovelluksen perustavanlaatuisen käytöksen. Muut tarvittavat toiminnot, sovellusnäkymä, datamalli ja datakäyttöliittymä, luodaan itsenäisesti ja ne ovat vuorovaikutuksessa muiden luokkien kanssa yksinomaan omien ohjelmointirajapintojensa kautta.
Monet muut asiat eivät vielä sovi tähän malliin — esimerkiksi SyncML, Java ME, joka tarjoaa kokoelman ohjelmointirajapintoja käyttöjärjestelmän päälle ja multimedia. Monet näistä ovat ohelmistokehyksiä ja myyjien oletetaan tarjoavat kolmansien osapuolien plug-init näihin ohjelmistokehyksiin (esimerkiksi Helix Player multimediakoodekkeja varten). Tässä on se etu, että kyseisten osa-alueiden ohjelmointirajapinnat ovat samat monilla puhelinmalleilla, ja myyjillä on paljon liikkumavaraa, mutta se tarkoittaa, että puhelinten myyjien täytyy panostaa integraatiotyöhön paljon tehdäkseen toimiva Symbian OS -puhelin.
Symbianissa on mukana viitekäyttöliittymä nimeltään "TechView". Se sisältää pohjan, jonka perusteella voi ryhtyä tekemään muutoksia ja se on ympäristö, jossa Symbianin testi- ja esimerkkikoodia suoritetaan. Se on hyvin paljon samankaltainen kuin Psion Series 5:n käyttöliittymä eikä sitä käytetä missään tuotantoon menneen puhelimen käyttöliittymässä.