r   e   k   l   a   m   a
r   e   k   l   a   m   a

MenuetOS: zobacz, co może system operacyjny mieszczący się na jednej dyskietce

Strona główna AktualnościOPROGRAMOWANIE

W erze Javy i .NET-u, gdy wiele osób postrzega C++ jako niskopoziomowy język, a Mozilla zachęca, by pisać aplikacje na słabiutkie telefony w JavaScripcie i HTML5, programowanie w assemblerze może wydawać się specyficzną formą masochizmu, w najlepszym razie zastrzeżoną do fragmentów kodu wymagających najwyższego poziomu wydajności, czy produkcji demosceny. Jest jednak na naszej planecie człowiek, który wraz z kilkoma towarzyszami od ponad trzynastu lat pisze w assemblerze MenuetOS-a – kompletny system operacyjny, zawierający nie tylko monolityczne jądro z kilkoma narzędziami, ale też kompletną warstwę sterowników sprzętowych, stos sieciowy, a nawet graficzny interfejs użytkownika. Po tych trzynastu latach pracy MenuetOS bliski jest wydania 1.0, a zainteresowanie nim znacząco wzrosło, szczególnie w kręgach akademickich i wśród firm zajmujących się bezpieczeństwem IT.

Twórca MenuetOS-a Ville Turjanmaa, ma się czym pochwalić. Jego hobbystycznie przecież rozwijany system operacyjny przestał być tylko zabawką. Zawiera niesamowicie szybkie jądro obsługujące wielozadaniowość z wywłaszczaniem i bogatą bibliotekę sterowników sprzętowych (obsługując nie tylko standardowe karty sieciowe czy pendrive'y, ale też takie urządzenia jak liczne karty graficzne, karty telewizji cyfrowej, kamerki internetowe czy drukarki). Wszystko to opakowane jest w oldschoolowy, autorski graficzny interfejs użytkownika, w którym można uruchomić przeglądarkę internetową, mieszcząc się przy tym na jednej dyskietce 1,44 MB.

Autorom systemu nie zależy na jak najszybszym wydawaniu kolejnych wersji – wolą stabilny rozwój swojego projektu. Dwa lata temu MenuetOS doczekał się np. obsługi przezroczystości okienek w GUI, wideo w formacie MPEG oraz podsystemu drukowania, w zeszłym roku otrzymał wsparcie dla biblioteki mathlib, która dzięki wykorzystaniu instrukcji SIMD procesora pozwala na wykonywanie operacji matematycznych szybciej niż jednostka zmiennoprzecinkowa x87. Przed wydaniem wersji 1.0, do której dojść może w przyszłym roku, deweloperzy chcą dodać m.in. obsługę dekodera AAC do wykorzystywanego w Menuecie odtwarzacza mplayer – pisząc go oczywiście od podstaw w assemblerze.

Już dzisiaj jednak Turjanmaa i jego koledzy uważają API systemu i środowiska graficznego za stabilne i dojrzałe. W przyszłych wersjach Menueta ulepszane mają być przede wszystkim aplikacje dla użytkowników – do wykorzystywania Internetu, oglądania filmów, obsługi rozmaitych urządzeń USB. Programista Madis Kalme liczy nawet na to, że uda się też stworzyć sterowniki wykorzystujące wszystkie możliwości procesorów Haswell – Intel jest dziś bowiem jedynym producentem GPU, który w pełni dokumentuje swój sprzęt na potrzeby twórców opensource'owych systemów (32-bitowa wersja MenuetOS-a dostępna jest na licencji GPL, zaś wersja 64-bitowa na licencji własnościowej).

Twórcy MenuetOS-a zapewniają też, że programowanie w assemblerze nie jest wcale takie trudne, jak mogłoby się wydawać. Teraz gdy dostępne są już wszystkie wywołania systemowe, można prosto pisać nawet graficzne aplikacje dla systemu – nie martwiąc się o obsługę okienek, bitmap czy urządzeń można systemowi kazać narysować piksel w dowolnym miejscu ekranu. Szczególnie dobrze Menuet sprawdzać się ma w zastosowaniach wymagających reakcji w czasie rzeczywistym. Jeśli masz zewnętrzne urządzenie, Menuet dobrze sobie radzi z jego kontrolą.

Drugim istotnym obszarem zastosowań ma być bezpieczeństwo – jako że kod źródłowy Menueta jest przekształcany praktycznie bezpośrednio na kod maszynowy, znikają wszelkie zagrożenia związane z wykorzystaniem kompilatorów języków wyższego rzędu, które w procesie kompilacji mogłyby wprowadzać do aplikacji swoje furtki.

Obraz Menuet OS-a pobrać możecie tutaj; pobawić się nim najlepiej w maszynie wirtualnej (w VirtualBoksie należy wybrać system jako Other/Unknown), dodać kontroler dyskietek, podłączyć do niego obraz systemu, usunąć inne kontrolery dyskowe). Trzy sekundy później powinniście mieć już w pełni działający system operacyjny, tak mały, że w całości mógłby się zmieścić w pamięci L1 procesora.

r   e   k   l   a   m   a
© dobreprogramy
r   e   k   l   a   m   a
r   e   k   l   a   m   a

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.