Symbian OS je mobilni operativni sustav i računalna platforma dizajnirana za pametne telefone. Izvorno je razvijen kao operativni sustav zatvorenog izvora za PDA-e 1998. godine od strane Symbian Ltd. Ova je platforma izvorno bila naknadna distribucija EPOC Psiona i radila isključivo na ARM procesorima (iako je postojala i x86 verzija).
Symbian su koristili mnogi veliki brendovi mobilnih telefona - Samsung, Motorola, Sony Ericsson i, iznad svega, Nokia. Kao pionir u stvaranju industrije pametnih telefona, bio je najpopularniji operativni sustav za pametne telefone sve do kraja 2010., to jest u vrijeme kada su bili u ograničenoj uporabi. Tada je njegov razvoj pretekao Android OS, budući da je Googleov razvoj brzo dosegao masovno tržište.
Od 2001. godine, Symbian OS je bio sistemska ljuska i zahtijevao je dodatno korisničko sučelje (kao middleware) kako bi se stvorio kompletan operacijski sustav. Zatim je postao samodostatan zahvaljujući S60 platformi (bivši Series 60), koju je kreirala Nokia i prvi put izdana 2002. godine. Budući da je ugrađen u većinu Nokia pametnih telefona, Symbian OS je naposljetku postao najrašireniji pametni mobilni operativni sustav.
UIQ je drugo korisničko sučelje za Symbian, koje su uglavnom koristile Motorola i SonyEricsson, dok je MOAP također postojao u Japanu. Aplikacije tih sučelja nisu bile međusobno kompatibilne, unatoč činjenici da je svaka od njih bila izgrađena na Symbian OS-u. Nokia je bila većinski dioničar Simbiana i 2008. godine stekla svoj cjelokupni udjel. Nakon toga, stvorena je neprofitna Symbian Foundation da bi razvila besplatni softver temeljen na S60. Kao rezultat ovog rada, Symbian ^ 1 (ili S60 5. izdanje) objavljen je 2009. godine. Sljedeći distribucijski komplet ^ 2 korišten je samo za NTT DoCoMo medije na japanskom tržištu. Symbian ^ 3 objavljen je 2010. godine i do tada je postao potpuno otvorena platforma. Ova verzija dobila je značajna ažuriranja u 2011. godini.
Zaklada Symbian raspala se krajem 2010. i Nokia je ponovno uspostavila kontrolu nad razvojem OS-a. U veljači 2011. Nokia, kao jedina preostala tvrtka koja još uvijek podržava Symbian izvan Japana, objavila je da će koristiti Microsoftov Windows Phone 7 kao glavnu platformu za pametne telefone. Dva mjeseca kasnije, OS je premješten na zatvoreno licenciranje. Unatoč činjenici da je podrška platformi bila obećana do 2016. godine, svi se događaji od 2012. godine loše razvijaju. U siječnju 2014. Nokia je prestala prihvaćati nove ili modificirane Symbian programe od programera.
Nokia 808 PureView službeno je postao najnoviji Symbian smartphone ovog proizvođača. Međutim, NTT DoCoMo je nastavio proizvoditi OPP (Operator Symbian Symbian, MOAP nasljednik) uređaje u Japanu, koji još uvijek djeluju kao middleware na vrhu Symbiana. Drugi Symbian OS telefoni koji se danas široko koriste su Fujitsu F-07F i Sharp SH-07F, izdani 2014. godine.
Od svog osnutka, Symbian je imao svoj vlastiti grafički alat, poznat kao AVKON (prethodno - Series 60). S60 je dizajniran za upravljanje pomoću tipkovnice slične alatu za sučelje (mini-QWERTY). Softver temeljen na AVKON-u kompatibilan je s binarnim verzijama Symbiana, uključujući verziju ^ 3.
Symbian ^ 3 uključuje Qt okvir, koji je trenutno preporučeni alat za nove aplikacije. Qt se također može instalirati na starije uređaje s ovim OS-om.
Četvrta distribucija planirala je uvesti novu grafičku knjižnicu posebno dizajniranu za dodirno sučelje, poznato kao "UI Extensions for Mobile" ili UIEMO, koja je razvijena na temelju QtWidget. Probna verzija objavljena je u siječnju 2010., no u listopadu iste godine Nokia je najavila da Orbit / UIEMO neće ući na tržište.
Trenutno Nokia preporučuje programerima da koriste QtQuick s QML-om, novim deklarativnim korisničkim sučeljem na visokoj razini i razvojnim okruženjem za skriptiranje koje omogućuje razvoj i Symbian OS-a i MeeGo-a. Dostupan je za postojeće uređaje treće generacije kao Qt ažuriranje. Kada se u drugim aplikacijama postupno pojavljuje novo korisničko sučelje, zastarjela struktura S60 (AVKON) se zamjenjuje i više nije uključena u nove uređaje, što krši binarnu kompatibilnost sa starijim aplikacijama za Symbian OS S60.
Symbian ^ 3 i starije verzije imaju ugrađeni preglednik temeljen na WebKit-u. Symbian je prva mobilna platforma koja je koristila ovu aplikaciju (u lipnju 2005.). Neki stariji (na Symbian OS) telefoni koriste Opera Mobile kao zadani preglednik.
Nakon toga, Nokia je objavila novi preglednik Symbian Anna s poboljšanom brzinom i poboljšanim korisničkim sučeljem.
Symbian ima snažnu podršku za lokalizaciju, omogućujući proizvođačima i programerima aplikacija trećih strana da koriste svoje proizvode temeljene na ovom OS-u kako bi podržali globalnu distribuciju. Trenutna verzija Symbiana (Belle) podržava 48 jezika koje Nokia stavlja na raspolaganje na uređajima u jezičnim paketima. Svi imaju zajednički engleski ili lokalno relevantni dijalekt.
Operativni sustav OS Symbian podržava preventivni multitasking i zaštitu memorije, kao i drugi operativni sustavi (posebno oni dizajnirani za korištenje na stolnim računalima). EPOC pristup multitaskingu je naučen iz VMS-a i temelji se na asinkronim događajima poslužitelja.
Symbian OS kreiran je s obzirom na tri načela dizajna sustava:
Da bi bolje slijedili ova načela, Symbian koristi mikrokernel, ima pristup uslugama povratnog poziva i podržava razdvajanje između korisničkog sučelja i motora. OS je optimiziran za uređaje s malom potrošnjom energije na baterijama i za sustave temeljene na ROM-u (na primjer, značajke kao što su XIP i ponovno uključivanje u zajedničke knjižnice). Aplikacije i OS prate objektno orijentirani dizajn: Model-view-controller (MVC).
Kasnije iteracije OS-a razriješile su ovaj pristup kao odgovor na zahtjeve tržišta, osobito uvođenjem kernela u realnom vremenu i sigurnosnim modelima platforme u verzijama Symbian OS 9.3 i novijim.
Posebna pozornost posvećena je očuvanju resursa, čiji su primjeri posebni programski idiomi, kao što su deskriptori i hrpe čišćenja. Slične metode postoje za uštedu prostora za pohranu. Osim toga, svi Symbian programi su zasnovani na događajima, a središnja procesorska jedinica (CPU) prelazi u način rada male snage kada aplikacije nisu izravno povezane s događajem. To se radi pomoću softverskog idioma, nazvanog aktivni objekti. Slično tome, pristup Symbian OS-a (9.4) nitima i procesima posljedica je smanjenja režijskih troškova.
Model AllOver sadrži sljedeće slojeve odozgo prema dolje:
Razina osnovnih usluga je najniža razina dostupna za korisničke operacije. To uključuje datotečni poslužitelj i korisničku knjižnicu, plug-in platformu koja upravlja svim dodatcima, pohranom, središnjim spremištem, sustavom za upravljanje bazom podataka i kriptografskim uslugama. Sadrži i poslužitelj s tekstualnim okvirom i tekstualnu ljusku: dvije osnovne usluge iz kojih možete stvoriti potpuno funkcionalan port bez potrebe za bilo kakvom uslugom više razine.
Symbian OS ima arhitekturu mikrokernela, što znači da je minimum potreban unutar kernela kako bi se povećala pouzdanost, dostupnost i brzina odziva. Sadrži planer, upravljanje memorijom i upravljačke programe uređaja, ali druge usluge, kao što su umrežavanje, telefonija i podrška datotečnom sustavu, smještene su na razini OS-a ili osnovnih usluga. Uključivanje upravljačkih programa uređaja znači da kernel nije pravi mikrokernel. Kernel EKA2 u stvarnom vremenu, nazvan nano-jezgra, sadrži samo najprimitivnije položaje i zahtijeva prošireni modul za implementaciju bilo koje druge apstrakcije.
Symbian je osmišljen kako bi naglasio kompatibilnost s drugim uređajima, osobito sustavima prijenosnih medijskih datoteka. Rani razvoj EPOC-a doveo je do toga da FAT postane interni datotečni sustav (i ostaje do danas), ali je objektno orijentirani model upornosti stavljen na vrh temeljnog FAT-a kako bi osigurao sučelje u stilu POSIX i in-line model. Interni formati podataka temelje se na korištenju istih API-ja koji stvaraju podatke za izvođenje svih manipulacija datotekama. To je dovelo do ovisnosti podataka i povezanih poteškoća s njihovim promjenama i migracijama.
Postoji veliki mrežni i komunikacijski podsustav koji ima tri glavna poslužitelja: ETEL (EPOC telefonija), ESOCK (EPOC utičnice) i C32 (odgovorni za serijsku komunikaciju). Svaka od njih ima dijagram dodatka. Primjerice, ESOCK omogućuje različite module protokola „.PRT“ za implementaciju raznih mrežnih protokola. Podsustav također sadrži kod koji podržava kratke linije komunikacije, kao što su Bluetooth, IrDA i USB.
Postoji i velika količina korisničkog sučelja (UI). Symbian OS sadrži samo osnovne klase i podstrukturu, dok je većina stvarnih korisničkih sučelja podržana od trećih strana. To više nije slučaj. Tri glavna sučelja - S60, UIQ i MOAP - predstavljeni su Symbianu 2009. godine. Symbian također sadrži grafike, raspored teksta i knjižnice za prikaz fontova.
Svi C ++ native programi za Symbian OS izgrađeni su od tri osnovne klase definirane aplikacijskom arhitekturom: aplikacijsko, dokumentarno i aplikacijsko korisničko sučelje. Ove klase stvaraju temeljno ponašanje aplikacije. Preostale potrebne funkcije, pogled aplikacije, model i podatkovno sučelje kreiraju se neovisno i međusobno djeluju isključivo preko API-ja s drugim klasama.
Mnoge druge komponente još se ne uklapaju u ovaj model - na primjer, SyncML, Java ME, koji pruža različite skupove API-ja na većini operacijskih sustava i multimedija. Mnogi od njih su okviri, a od programera se očekuje da isporučuju dodatke za njih od trećih strana (na primjer, HelixPlayer za multimedijske kodeke). To ima prednost u tome što su API-ji za takva područja funkcionalnosti isti u mnogim modelima telefona, a programeri također imaju veću fleksibilnost. No, u isto vrijeme, to znači da proizvođači telefona moraju mnogo raditi na integraciji kako bi stvorili funkcionalni gadget sa Symbian OS-om.
Symbian sadrži korisničko sučelje za pomoć nazvano TechView. On pruža osnovu za početno postavljanje i okruženje u kojem se izvode mnogi Symbian testovi i uzorci.
Symbian, koji je napredovao do verzije OS 7.0, podijeljen je na nekoliko grafičkih korisničkih sučelja, od kojih je svaka podržana od strane određene tvrtke ili njihove grupe. Za razliku od različitih verzija Android OS-a, Symbian grafička sučelja nazivaju se "platformama" zbog značajnijih izmjena i integracija. Sve je postalo kompliciranije kada su aplikacije (uključujući igre za Symbian OS igre) razvijene za različite GUI platforme postale nekompatibilne jedna s drugom, što je dovelo do fragmentacije OS-a.