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:

[edytuj] Zobacz też