Mach (system operacyjny)
Z Wikipedii
Mach to jądro dla systemów operacyjnych opracowane na amerykańskim Uniwersytecie Carnegie-Mellon. Projekt rozwijany tam był w latach 1985-1994 i skończył się na wersji 3.0. Dalej rozwijany był na Uniwersytecie Utah, gdzie opracowano wersję 4.
Mach jest architekturą zapewniającą:
- obsługę wieloprocesowości zarówno w jednej maszynie, jak i poprzez sieć
- obsługę wielu aplikacji pracujących w trybie wielozadaniowości z wywłaszczeniem
- wątkowanie działania aplikacji
- bezpośrednią komunikację międzyprocesową
- bezpieczną ochronę pamięci
Od początku projektowania Mach dążono do usunięcia z jądra jak największej liczby elementów, które nie były niezbędne do jego działania. Do wydania 2.5 włącznie jądro posiadało warstwę wyższego poziomu, która zawierała API zgodne z Uniksem BSD. Wersja 3.0 była już mikrojądrem, w którym warstwę BSD usunięto poza jądro (działa w przestrzeni użytkownika). Dodano w niej także mechanizm kontynuacji.
Pliki wykonywalne dla Macha są w formacie Mach-O.
Komunikacja międzyprocesowa (IPC) w Machu jest bardzo rozbudowana - oparta na komunikatach, czyli zestawach danych, oraz portach, czyli kolejkach komunikatów. Wykorzystują je nie tylko procesy użytkownika, ale także samo jądro i jest podstawowym mechanizmem komunikacji. Jest to rozwiązanie wygodne w użyciu i rozwiązujące wiele problemów istniejących w IPC Uniksa, ale jest znacznie od niego wolniejsze.
Mach stał się podstawą do rozwoju takich projektów informatycznych jak:
- NeXTStep
- OSF/1
- GNU/Hurd (obecnie z innym jądrem)
- nieukończony system Rhapsody firmy Apple Computer
- Apple Darwin i Mac OS X którego współtwórcą jest dr. Avie Tevanian, dawny pracownik naukowy Uniwersytetu Carnegie-Mellon.