Dzisiaj jest 17 stycznia 2025 r.
Chcę dodać własny artykuł

Singularity (system operacyjny)

„`html

Singularity

Singularity to projekt badawczy firmy Microsoft, mający na celu stworzenie systemu operacyjnego opartego na mikrojądrze. Jego głównym zamierzeniem jest zapewnienie bardziej niezawodnej platformy systemowej oraz aplikacyjnej.

Wprowadzenie

W odróżnieniu od tradycyjnych systemów ochrony, Singularity korzysta z programowej ochrony, eliminując potrzebę używania sprzętowych mechanizmów takich jak oddzielne przestrzenie adresowe. Dzięki kompilacji programów do bezpiecznego kodu zarządzanego, system weryfikuje poprawność kompilacji w momencie uruchamiania programu. Po rozpoczęciu działania, aplikacje mają zdolność samodzielnej kontroli poprawności, co obejmuje także wskaźniki pamięci.

Komunikacja między procesami odbywa się za pomocą exchange heap, co umożliwia bezpieczne i efektywne przenoszenie danych. Programy w Singularity mogą działać w tej samej sprzętowej przestrzeni adresowej, korzystając z najwyższego poziomu ochrony procesora.

Większość systemu, w tym jądro, została napisana w języku C# oraz Sing#. Kluczowym elementem jest kompilator natywnego kodu Bartok. Każdy proces dysponuje oddzielnym garbage collector’em, a tylko niewielkie fragmenty systemu, odpowiedzialne za wczesny rozruch, zostały stworzone w językach takich jak asembler, C++ czy C.

W późniejszym etapie rozwoju wprowadzono mechanizm sprzętowego wsparcia ochrony, który umożliwia grupowanie procesów oraz przydzielanie im osobnych przestrzeni adresowych, co pozwala na uruchamianie aplikacji napisanych w konwencjonalnych językach programowania.

Wydajność

Wyłączenie sprzętowych systemów ochrony przyczyniło się do zwiększenia wydajności Singularity. Operacje, takie jak przełączanie zadań czy wywołania systemowe, są realizowane znacznie szybciej w porównaniu do systemów takich jak Windows, dzięki eliminacji konieczności zmiany przestrzeni adresowej i trybu ochrony procesora.

„`