Symbian OS - historia, możliwości, rodzaje, interfejsy, programowanie.

Teoria modyfikacji Symbian OS, reverse engineering.

Post by pawelooss » 11 Oct 2019, o 19:42

Symbian OS - jest to system operacyjny przeznaczony dla urządzeń mobilnych, wraz z bibliotekami, rozwiązaniami interfejsu użytkownika oraz specyfikacją dla programów narzędziowych, wyprodukowanych przez firmę Symbian Ltd (powstała w 1998 roku, główna siedziba firmy znajduje się w Londynie).

Image

System przeznaczony jest na architekturę ARM (Advanced RISC Machine, początkowo Acom RISC Machine), istnieje możliwość emulacji na x86. Sam ARM jest 32-bitową architekturą typu RISC o szerokim zastosowaniu w systemach wbudowanych i systemach o niskim poborze mocy, ze względu na energooszczędność.


O historii Symbiana

Początki Symbiana sięgają roku 1980 i założenia firmy PSION (Potter Scientific Investments), początkowo zajmującej się tworzeniem gier i programów użytkowych dla wczesnych komputerów domowych takich jak ZX Spectrum.

Firma zwróciła się następnie w stronę rozwoju programów użytkowych: procesora tekstu, arkusza kalkulacyjnego, programu do zarządzania bazą danych i aplikacji do tworzenia grafiki biznesowej (przeportowanych następnie na system MSDOS).

Kolejnym etapem było wprowadzenie na rynek w 1984 roku pierwszego na świecie przenośnego komputera - Psion Organiser (8-bit Hitachi 6301-family processor, z 4K ROM, 2K RAM). Prace nad przenośnymi komputerami skutkowały powstaniem bardzo udanej konstrukcji Psion Organiser II (1986 roku). W 1987 roku firma rozpoczęła pracę nad "SIBO" (Sixteen bit organiser) - nowej rodziny urządzeń z nowym wielozadaniowym systemem operacyjnym EPOC. System wszedł do sprzedaży wraz z trzecią serią organizerów PSION i był rozwiajany w kolejnych seriach.

Image

Dnia 24 czerwca 1998 utworzona zostaje Symbian Ltd. skupiająca pracę takich firm jak Ericsson, Nokia, Motorola, Panasonic, Samsung, Siemens i Psion.

W 1999 roku wyprodukowano organizer Ericsson MC218 oparty o piąte wydanie systemu EPOC

W listopadzie 2000 roku zostaje wydany Ericsson R380, pierwszy telefon komórkowy wykorzystujący system ER5U (Symbian OS version 5, unicode).

Image

System EPOC jest nadal rozwijany i nazwa zostaje trwale przemianowana na Symbian OS. W czerwcu 2001 roku zostaje wydana Nokia 9210 Communicator, pierwszy otwarty telefon z Symbianem (seria szósta). W 2001 roku zostaje sprzedanych już pół miliona telefonów z tym systemem.


Co Symbian oferuje aktualnie?

Na podstawie wersji Symbian 9.5.

Od strony jądra i usług sprzętowych:
  • wielowątkowe jądro, umożliwiające pracę w trybie rzeczywistym,
  • wsparcie dla najnowyszych architektur procesora
  • rozlegle wsparcie dla urzadzen zewnetrznych i pamieci wewnetrznej
  • zapewnia jednocześnie energooszczędność i wysoką responsywność systemu.
Telefonia:
  • system zoptymalizowany właśnie w tym kierunku,
  • natywne wsparcie dla szerokiego zakresu standardów telefonii,
  • rozszerzalne frameworki dla niewspieranych standardów,
  • wsparcie dla komunikacji głosowej i video.
Sieć i komunikacja:
  • szerokie wsparcie dla różnych protokołów komunikacyjnych,
  • osobiste sieci lokalne: IrDA, Bluetooth, WLAN,
  • GPS, A-GPS,
  • QoS dla GPRS i innych.
Grafika i multimedia:
  • zapewnia sprzętowe i programowe wsparcie dla nagrywania, odtwarzania i strumieniowego przesyłania dźwięku i obrazu,
  • wsparcie dla rozbudowanych interfejsów użytkownika,
  • telewizja cyfrowa i radio.
Podstawowe usługi systemu:
  • baza danych SQL
  • mechanizmy ochrony przed wirusami i szkodliwym oprogramowaniem,
  • pozwala aplikacjom na przechowywanie prywatnych chronionych danych,
  • szyfrowanie, zarządzanie certyfikatami, protokoły SSL/TLS,
  • pełne wsparcie dla języków, kodowania,
  • wsparcie dla rozwoju oprogramowania.


Interfejsy użytkownika

Istnieje obecnie pięć interfejsów użytkownika opartych na systemie operacyjnym Symbian:
  • S60 - najpopularniejsza platforma oparta na Symbianie,
  • S80 - inaczej Communicator, wykorzystywany w telefonach Nokii w serii o tej samej nazwie. Zapewnie wsparcie dla edycji dokumentów, dostępu do internetu (wszystkie urządzenia mają duży wyświetlacz o rozdzielczości 640x200 i pełną klawiaturę qwerty),
  • S90 - system nie jest już rozwijany, zostały w niego wyposażone tylko dwa urządzenia: Nokia 7700 i 7710,
  • MOAP - tylko dla japońskiej sieci telefonicznej, nie jest otwartą platformą,
  • UIQ - początkowo rozwijany przez firmę Ericsson (pod nazwą Quartz). Obsługuje ekrany dotykowe o wysokiej rozdzielczości.


Bezpieczeństwo

  • system capabilities dla aplikacji,
  • cyfrowe podpisywanie oprogramowania.

Wirusy?


Od strony programisty

Aplikacje i system są napisane OOP/MVC w C++.

Kolejne warstwy wyglądają następująco:
  • UI Framework Layer
  • Application Services Layer
    • Java ME
  • OS Services Layer
    • generic OS services
    • communications services
    • multimedia and graphics services
    • connectivity services
  • Base Services Layer
  • Kernel Services & Hardware Interface Layer

Zaczniemy od standardowego programu:
Code: Select all
Please Login or Register, to see this Content


Jak wygląda język?
  • wyjątki i cleanup_stack
  • "deskryptory"
  • hierarchia klas
  • interfejsy - błędy projektowe
  • brak STLa
  • tBool, tAny?

Kod w C:
Code: Select all
Please Login or Register, to see this Content


Napis jest niemodyfikowalny. Równoważnik w Symbianie:
Code: Select all
Please Login or Register, to see this Content


Wskaźnik w C:
Code: Select all
Please Login or Register, to see this Content


W Symbianie wygląda to następująco:
Code: Select all
Please Login or Register, to see this Content



Podsumowanie

Symbian od strony użytkownika jest stabilnym, oferującym szerokie możliwości systemem operacyjnym na urządzenia mobilne. Od strony programisty - opiera się na przestarzałych paradygmatach programowania, ale z czasem błędy są poprawiane i Symbian staje się coraz bardziej przyjazny dla programisty. Z całą pewnością jest obecnie najpopularniejszym systemem w przenośnych urządzeniach.


Literatura

Wikipedia: http://en.wikipedia.org/wiki/Symbian_OS
Oficjalna strona systemu: http://www.symbian.com/index.asp
O błędach Symbiana: http://www.codeproject.com/KB/mobile/Sy ... aults.aspx
Smartphone Operating System Concepts with Symbian OS, Michael J. Jipping
I wiele innych...

Tomasz Żołnowski

Źródło: http://students.mimuw.edu.pl/SO/Projekt ... mbian.html

__________

Uzupełnienie

S30: I do not know, never heard about it. I guess closed platform, proprietary OS, extinct.
S40: this is the platform of current mass-market Nokia devices. Proprietary OS, but always supports running of 3rd-party Java (MIDP) applications. Of course JavaME has its limitations.
S60: this is the current Nokia smartphone platform. Symbian OS (starting with 6.1, Nokia 7650, now it is 9.2, Nokia N95). As Yucca said, S60 was following the Pearl reference design, but it is changing now (for example the new communicator - E90 - is an S60 device). Main API-s are C++ and Java (MIDP), however there are many others (like Python or FlashLite).
S80: the extinct communicator platform (Nokia 9500, 9300 and 9300i). Symbian OS 7.0s, C++ and Java (MIDP) API for 3rd-party developers.
S90: the extinct touchscreen device (Nokia 7710). Symbian OS 7.0s, C++ and Java API.

Źródło: http://developer.nokia.com/community/di ... 0-40-vs-60
ImageImageImage

Kolekcja ➔ Apple iPhone 5s && BlackBerry Curve 9320 && Ericsson A2618s, A2628s && Götze & Jensen GFE36 && MaxCom MM432BB
&& HTC HD2 && Motorola RAZR V3, V2288 && Samsung Galaxy S && Siemens A52 && Sony Ericsson C902 && Sony Xperia E, Xperia Z3C
&& N♥kia 100, 1100, 1110, 1600, 1616, 3100, 3110c, 3210, 3310, 3410, 3510i, 5510, 5800XM, 6020, 6230i, 6300, 6303c, 6610i, 7260, 7360

&& N♥kia Lumia 730 Dual SIM, Lumia 800, E50, E51, E52, E7-00, N8-00, N900, N9-00, N95 8GB, N-Gage && OnePlus 5T && Tracer Ovo 1.2 :)
pawelooss Male
Pan i Władca!
Administrator

User avatar
 
Offline
 
Telefon: N♥kia E52 || Moto E30F || iPh. 5s
Soft: CFW 081.003 || Android 13 || iOS 12
Operator: Play
Age: 32
Location: Ruda Śląska

Joined: 27 Feb 2009
Online: 665d 20h 39m 12s
Posts: 12083Topics: 1215
Reputation point: 17485
    Windows 10 Firefox

Post by adam111 » 27 kwi 2009, o 00:00

BoTs RoX! :D
adam111 Mężczyzna
Oddajcie mi cześć!
50%

Avatar użytkownika
 
Online
 
Telefon: Nokia 3110c
Soft: v. 05.50
Operator: -----

Joined: 30 mar 2009
Online:
Posts:   •  Topics: 
    Ubuntu  Firefox

Return to [S60] Warsztat

Who is online

Users browsing this forum: No registered users and 2 guests