EKA2

EKA2
Deweloper



Psion Symbian Ltd. Symbian Foundation Nokia Accenture
Napisane w Język asemblera , C , a następnie C++
Rodzina OS EPOC ( Symbian )
Stan roboczy Przerwane
Model źródłowy Własne i otwarte oprogramowanie
Pierwsze wydanie 2005 ; 18 lat temu ( 2005 )
Ostateczne wydanie 10.1 / 2 października 2012 ; 10 lat temu ( 2012-10-02 )
Cel marketingowy Telefony komórkowe
Dostępne w język angielski
Platformy RAMIĘ
Typ jądra Mikrojądro w czasie rzeczywistym
Licencja Publiczne zaćmienie
Poprzedzony EKA1
Oficjalna strona internetowa deweloper .symbian .org /wiki /index .php /Category:Kernel _& _Hardware _Services

EKA2 ( EPOC Kernel Architecture 2 ) to jądro systemu operacyjnego czasu rzeczywistego platformy Symbian drugiej generacji , wywodzące się z wcześniejszego systemu operacyjnego EPOC .

EKA2 zaczęło się od własnościowej licencji na oprogramowanie. W październiku 2009 został wydany jako darmowe oprogramowanie typu open source na licencji Eclipse Public License . W kwietniu 2011 roku przywrócono licencję zastrzeżoną.

Podobnie jak jego poprzednik, EKA1 , ma wielowątkowość z wywłaszczaniem i pełną ochronę pamięci. Główne różnice to:

  • czasu rzeczywistego : każde wywołanie interfejsu programowania aplikacji ( API ) jest szybkie, ale co ważniejsze, ograniczone czasowo
  • Wiele wątków wewnątrz jądra i na zewnątrz
  • Modele pamięci z możliwością podłączenia , umożliwiające lepszą obsługę późniejszych generacji architektury zestawu instrukcji ARM .
  • Nanojądro , które zapewnia najbardziej podstawowe funkcje systemu operacyjnego, na których można budować inne warstwy osobowości

Interfejs użytkownika EKA2 jest prawie w pełni kompatybilny z EKA1. EKA1 nie był używany po Symbian OS w wersji 8.1 i został zastąpiony w 2005 roku.

Główną zaletą EKA2 była możliwość obsługi pełnych stosów protokołów sygnalizacji telefonicznej . Wcześniej w telefonach z systemem Symbian musiały one działać na oddzielnej jednostce centralnej (CPU). Takie stosy sygnalizacyjne są bardzo złożone i przepisanie ich tak, aby działały natywnie w systemie operacyjnym Symbian, zwykle nie wchodzi w grę. [ Potrzebne źródło ] EKA2 umożliwia zatem warstwom osobowości naśladowanie podstawowych prymitywów innych systemów operacyjnych, umożliwiając w ten sposób działanie istniejących stosów sygnalizacyjnych w dużej mierze bez zmian.

Gwarancje czasu rzeczywistego są warunkiem stosów sygnalizacyjnych, a także pomagają w zadaniach multimedialnych. Jednak, podobnie jak w przypadku każdego RTOS, konieczna jest pełna analiza wszystkich wątków, zanim będzie można zaoferować jakiekolwiek gwarancje czasu rzeczywistego dla czegokolwiek poza wątkiem o najwyższym priorytecie; ponieważ wątki o wyższym priorytecie mogą uniemożliwić uruchomienie wątków o niższym priorytecie. Każde zadanie multimedialne może obejmować grafikę, przechowywanie i/lub pracę w sieci, z których wszystkie częściej zakłócają strumień niż jądro.

Wewnątrz jądra EKA1 zezwalał tylko na jeden wątek (plus pusty bezczynny wątek). EKA2 pozwala na wiele wątków. To znacznie ułatwia pisanie sterowników urządzeń , które obejmują złożone maszyny o skończonych stanach , takie jak karty pamięci SD lub dyski flash USB . Przerwania są obsługiwane za pomocą procedury obsługi przerwań , która może żądać natychmiastowego odroczonego wywołania funkcji (wywoływanego natychmiast po przetworzeniu przerwań) lub odroczonego wywołania funkcji , które jest ustawiane w kolejce do wykonania w wątku jądra. Każdy z nich może z kolei komunikować się z wątkami po stronie użytkownika.

Zarządzanie energią w EKA2 pozostało w dużej mierze niezmienione od EKA1. Dokładny schemat różni się w zależności od telefonu, ale ogólnie wątek zerowy powoduje uśpienie procesora i urządzeń peryferyjnych po zażądaniu wybudzenia, gdy zbliża się wygaśnięcie następnego licznika czasu.

EKA2 działa na procesorach o architekturze ARM i emulatorze WINS . Istnieją nieoficjalne porty dla innych procesorów. W emulatorze EKA2 zapewnia nieco lepszą emulację niż EKA1, bardziej w przypadku RProcess , których Symbian OS używa do reprezentowania procesów . W EKA1 w ogóle nie działały na emulatorze, który działa jako pojedynczy proces Windows.

EKA2 jest w dużej mierze zasługą jednego inżyniera jądra Symbiana, który rozpoczął projekt jako eksperyment na wiele lat przed tym, zanim stał się on oficjalną częścią systemu operacyjnego Symbian.

Zobacz też

Linki zewnętrzne