Systemy operacyjne Informatyka Stosowana, I rok Krzysztof Wilk Katedra Informatyki Stosowanej i Modelowania wilk@metal.agh.edu.pl Konsultacje: poniedziałek, 11.30-13; B-4, pok. 207
Systemy operacyjne Wykłady: 2 godziny / tydzień, s. 122, B-4 Laboratoria: 2 godziny co tydzień, s. 101, B-4; 612 i 601, B-5 Ćwiczenia: 2 godziny co 2 tygodnie, s. 101, B-4 (wymiennie)
Systemy operacyjne Warunki zaliczenia przedmiotu Zaliczenia z ćwiczeń i laboratoriów (prowadzący podadzą szczegółowe warunki zaliczenia) Ocena 4,0 i wyżej z ćwiczeń i laboratoriów daje prawo do przystąpienia do egzaminu zerowego Egzamin z materiału wykładów - pisemny
Program wykładów Rozwój systemów operacyjnych, Jądro systemu, struktura i funkcje, Procesy, ich współpraca i współistnienie, Organizacja i adresowanie pamięci, Organizacja systemu plików, Urządzenia wejścia/wyjścia, Obsługa sieci i aplikacje sieciowe, Systemy rozproszone Systemy czasu rzeczywistego.
Program ćwiczeń i laboratoriów System Windows, charakterystyczne procesy, rejestr systemu, konfiguracja, System UNIX - analiza i sterowanie procesami, prace na systemie plików, pliki konfiguracyjne systemu, Skrypty - zapoznanie się ze składnią skryptów pod różne powłoki, samodzielne rozwiązywanie zadań PERL
Strona WWW przedmiotu: http://www www.metal..metal.agh.edu.pl/~wilk/dydaktyka.html
Literatura: Notatki z wykładów, Silberschatz A., Galvin P.B.: Podstawy systemów operacyjnych, WNT 2000. Nemeth E., Snyder G., Hein T., Whaley B.: Unix i Linux Przewodnik administratora systemów, Helion 2011 Stevens R.W.: Programowanie w środowisku systemu UNIX, WNT 2002. Bach M.J.: Budowa systemu operacyjnego UNIX, WNT 1995. Petersen R.: Arkana Linux, Wydawnictwo RM 1997. Inne dostępne książki o systemach DOS, Unix,, Windows, Strony WWW.
System operacyjny Definicja (wg A. S. i P. B. G.): System operacyjny jest programem, który działa jako pośrednik pomiędzy użytkownikiem komputera a sprzętem komputerowym. Zadaniem systemu operacyjnego jest tworzenie środowiska w którym użytkownik może wykonywać programy.
Użytkownicy U1 U2 U3 U4 Un Programy użytkowe kompilator Edytor tekstu System operacyjny Sprzęt komputerowy Baza danych
Warstwowa budowa systemu operacyjnego sprzęt użytkownicy jądro programy powłoka
Składniki systemu jądro - komunikuje się z komputerem przez sterowniki urządzeń i wykonuje kolejkowanie zadań, obsługę pamięci powłoka - stanowi interpreter poleceń systemu (komunikacja z użytkownikiem) programy - polecenia systemowe nie zawarte w jądrze, programy narzędziowe, programy użytkowe
Głównym celem systemu operacyjnego jest to, aby był system komputerowy był wygodny w użyciu. Drugim celem jest wydajna eksploatacja sprzętu komputerowego.
Pytanie: Czy komputer mógłby się obyć bez systemu operacyjnego? Odpowiedź: Tak, ale... Program użytkowy musiałby zawierać wszelkie procedury obsługi pamięci, urządzeń wejścia i wyjścia, dysków itd. Program musiałby sprawdzać czy urządzenia są gotowe, czy nie są aktualnie wykorzystywane przez inne programy, Program musiałby znać np. organizację danych na dysku, protokół komunikacji sieciowej itd
Po przeniesieniu na inny, nawet bardzo podobny komputer, trzeba by w programie zmienić większość procedur obsługi sprzętu Istniałyby ogromne problemy ze standaryzacją i kompatybilnością Przykład takiego oprogramowania użytkowego to na przykład tzw. firmware sprzętu elektronicznego zawierającego procesory.
Systemy operacyjne: jednozadaniowe (np. DOS) wielozadaniowe (np. UNIX) niewielozadaniowe ;-) (Windows)
System DOS na komputery IBM PC jednozadaniowy bez wielodostępu (tylko z klawiatury) system wyszedł z użycia
Systemy MS Windows na komputery IBM PC ciągle rozwijane (ale wymagają coraz silniejszych komputerów) interfejs graficzny ułatwia pracę systemy wielozadaniowe, ale bez wielodostępu chociaż... świadczą pewne usługi poprzez sieć
Systemy UNIX Na wszystkie typy komputerów, od prostych PC do superkomputerów systemy od początku wielodostępne i wielozadaniowe łatwe w konfiguracji (pliki tekstowe) przeznaczone głównie do pracy zdalnej jasno określone prawa użytkowników
Inne popularne systemy Linux rodzina unixopodobnych systemów operacyjnych opartych o jądro Linux (autorstwa Linusa Thorvaldsa). Pierwsza wersja jądra Linux została udostępniona publicznie 17 IX 1991 dla architektury komputera PC. Do jądra dołączono narzędzia systemowe i biblioteki z projektu GNU aby otrzymać nadający się do użytku system operacyjny. OS X rodzina unixowych systemów operacyjnych produkowanych i rozprowadzanych przez Apple Inc. dostępnych (oficjalnie) jedynie dla komputerów Macintosh, instalowany fabrycznie w nich od 2002 roku. Android system operacyjny dla urządzeń mobilnych takich jak telefony komórkowe, smartfony, tablety PC i netbooki. Android został oparty na jądrze Linuxa oraz oprogramowaniu na licencji GNU.
Wielozadaniowość i wielodostęp jednozadaniowość - kolejne zadanie wykonywane po zakończeniu poprzedniego wielozadaniowość - wykonywanie wielu zadań w tym samym czasie. W rzeczywistości zadania są wykonywane kolejno w przydzielonych im przedziałach czasowych (chyba że jest kilka procesorów) wielodostęp - w tym samym czasie z jednego komputera korzysta wielu użytkowników