Podstawy systemów operacyjnych i programowania dr inż. Sebastian Bielski Wydzia l Fizyki Technicznej i Matematyki Stosowanej PG 1 / 26
Wyk lad: Podstawy systemów operacyjnych i programowania Zakres materia lu: Systemy operacyjne ska ι d sie ι wzie ι ly; podstawowe definicje, w lasności, elementy... Programowanie (c++) dlaczego czasem coś dzia la źle? Algorytmika przygotowanie sposobu rozwia ι zywania zagadnienia 2 / 26
Wyk lad: Podstawy systemów operacyjnych i programowania Literatura: A. Silberschatz, J. L. Peterson, P. B. Galvin, Podstawy systemów operacyjnych W. Stallings, Systemy operacyjne D. Harel, Rzecz o istocie informatyki, algorytmika 3 / 26
Wyk lad: Podstawy systemów operacyjnych i programowania Zasady zaliczenia wyk lad: ocena z testu na ostatnich zaje ι ciach: 10 czerwca, 20 pytań dotycza ι cych zagadnień, hase l, poje ι ć, metod omawianych na wyk ladzie laboratorium: programowanie w c++, zadania na ocene ι ; obecność na laboratorium: obowia ι zkowa ocena końcowa: średnia (przeważa laboratorium) 4 / 26
Wyk lad: Podstawy systemów operacyjnych i programowania Przyk ladowe pytanie testowe 1. Buforowanie i spooling... a) oznaczaja ι to samo. b) buforowanie pozwala wykonywać jednocześnie operacje WE/WY i wykonywanie obliczeń dla tego samego zadania, spooling WE/WY dla jednego zadania a obliczenia dla innego c) odwrotnie niż w punkcie b) d) żadna z powyższych nie jest poprawna 5 / 26
Wyk lad: Podstawy systemów operacyjnych i programowania Przyk ladowe pytanie testowe 2. Która z poniższych wartości zmiennej typu float zostanie dok ladnie zapisana w pamie ι ci komputera? a) 2.4 b) 3.5 c) 4.6 d) wszystkie powyższe 6 / 26
Wyk lad: Podstawy systemów operacyjnych i programowania Przyk ladowe pytanie testowe 3. Ile porównań wykonamy, stosuja ι c dla zbioru N liczb sortowanie przez wybór oraz przez wstawianie? a) wybór: N(N 1)/2; wstawianie: N(N 1)/2 b) wybór: N(N 1)/2; wstawianie: co najwyżej N(N 1)/2 c) wybór: co najwyżej N(N 1)/2; wstawianie: N(N 1)/2 d) wybór: N; wstawianie: N(N 1) 7 / 26
System operacyjny co to jest? Wyk lady dotycza ι ce systemów operacyjnych...... to nie be ι da ι wyk lady maja ι ce na celu nauczenie obs lugi systemu Windows (ani żadnego innego) to be ι da ι wyk lady o podstawowych cechach systemów operacyjnych oraz z czego te cechy wynikaja ι a także o tym, jak pracuje procesor, jak wykonywane sa ι operacje wejścia/wyjścia itd. 8 / 26
System operacyjny co to jest? System operacyjny to... program pośrednicza ι cy pomie ι dzy użytkownikiem a sprze ι tem komputerowym tworzy środowisko, w którym użytkownik może wykonywać programy musi być wygodny z punktu widzenia użytkownika musi gwarantować wydajna ι eksploatacje ι sprze ι tu jest cze ι ścia ι systemu komputerowego 9 / 26
System operacyjny jako element systemu komputerowego System komputerowy (warstwy) http://zsel.edu.pl/dydaktyka/cplus/zadania so.htm 10 / 26
System operacyjny jako element systemu komputerowego System komputerowy (warstwy) sprze ι t (procesor, pamie ι ć, urza ι dzenia wejścia wyjścia) system operacyjny programy użytkowe (edytory, arkusze, bazy danych...) użytkownicy 11 / 26
System operacyjny jako element systemu komputerowego System operacyjny to,,dystrybutor zasobów zasoby: czas procesora, pamie ι ć, urza ι dzenia wejścia wyjścia,,odbiorcy : programy (czyli pośrednio użytkownicy) cel: wydajne i harmonijne dzia lanie ca lego systemu komputerowego (konfliktowe zamówienia na zasoby) 12 / 26
System operacyjny co to jest? Program pośrednicza ι cy, dystrybutor zasobów, program steruja ι cy... Nie ma uniwersalnej definicji systemu operacyjnego Zamiast mówić, czym jest s.op., latwiej powiedzieć, co ma robić Najważniejsze oczekiwania: wygoda, efektywność (sprzeczność?), rozwojowa konstrukcja. Pierwotny cel efektywność, wraz z rozwojem wygoda 13 / 26
System operacyjny co to jest? Budowa systemu operacyjnego: ja ι dro, pow loka, programy użytkowe http://www.tutorialspoint.com/operating system/os linux.htm 14 / 26
System operacyjny ska ι d sie ι wzia ι l? Ciekawostki Wszystko, co by lo do wynalezienia, zosta lo już wynalezione Charles H. Duell, Biuro Patentów USA, 1899 Już wkrótce komputery moga ι ważyć nie wie ι cej niż 1,5 tony Popular Mechanics, 1949 Zapotrzebowanie na komputery na świecie szacuje ι na oko lo pie ι ć sztuk Thomas Watson, prezes firmy IBM, 1943 Nie ma żadnego powodu, aby ktokolwiek chcia l mieć komputer w domu Ken Olson, prezes i za lożyciel firmy Digital Equipment Corp., 1977 640K powinno wystarczyć każdemu Bill Gates, prezes firmy Microsoft, 1981 http://www.cs.put.poznan.pl/mmasewicz/ 15 / 26
System operacyjny ska ι d sie ι wzia ι l? ENIAC pierwszy komputer (?), lata 40-te XX w. (wojskowość) 16 / 26
System operacyjny ska ι d sie ι wzia ι l? UNIVAC 1 pierwszy komputer do sprzedaży, lata 50-te XX w. 17 / 26
System operacyjny ska ι d sie ι wzia ι l? ODRA polski komputer, lata 60-te 80-te XX w. 18 / 26
System operacyjny ska ι d sie ι wzia ι l? IBM PC, komputer osobisty, lata 80-te XX w. 19 / 26
System operacyjny ska ι d sie ι wzia ι l? Praca na pierwszych komputerach sprze ι t wielkie maszyny cyfrowe (mnogość elementów, re ι czne sk ladanie, lutowanie)... drogie w zakupie i eksploatacji (miejsce, energia, wentylacja) nie by lo komputerów osobistych komputery ma lo egzemplarzy, niska doste ι pność harmonogramy doste ι pności, ma la elastyczność 20 / 26
System operacyjny ska ι d sie ι wzia ι l? Praca na pierwszych komputerach brak systemu operacyjnego niewielka pamie ι ć ladowanie danych przez ustawienie prze la ι czników, czytanie z kart perforowanych, taśm obs luga kart: dziurkarki, sprawdzarki, czytniki (kilkaset kart na minute ι ); pojemność: kilkaset bajtów; pliki kart; szybkie zużycie 21 / 26
System operacyjny ska ι d sie ι wzia ι l? Praca na pierwszych komputerach urza ι dzenia wejścia wyjścia: czytniki kart, taśm, drukarki i programy je obs luguja ι ce (biblioteki) asemblery, je ι zyki programowania http://www.columbia.edu/cu/computinghistory/1965.html 22 / 26
System operacyjny ska ι d sie ι wzia ι l? Praca na pierwszych komputerach za ladowanie kompilatora je ι zyka programowania za ladowanie programu kompilacja przetworzenie programu na je ι zyk asemblerowy za ladowanie asemblera i przetworzenie programu (skompilowanego) na kod binarny dodanie ewentualnych funkcji bibliotecznych uruchomienie, nadzorowanie pracy wyniki (taśma) (ewentualnie wydobycie informacji o b le ι dach, stan rejestrów) Wiele czynności montowanie i demontaż taśm Niewielki stopień wykorzystania procesora (koszty, doste ι pność... a procesor,,prawie nic nie robi ) 23 / 26
System operacyjny ska ι d sie ι wzia ι l? Jak zwie ι kszyć stopień wykorzystania procesora? 1. Zatrudnienie operatorów sprze ι tu programista dostarcza zadanie: program i opis (oszcze ι dność czasu:) operator sprawniej obs luguje sprze ι t ( laduje taśmy z kompilatorami, programami itd.)... ale zazwyczaj nie zna programu, który uruchamia programista otrzymuje wyniki, lub ewentualne informacje o b le ι dach (nie może reagować natychmiast) operator zaczyna naste ι pne zadanie 24 / 26
System operacyjny ska ι d sie ι wzia ι l? Jak zwie ι kszyć stopień wykorzystania procesora? 2. Optymalizacja kolejności zadań (przyk lad) operator otrzymuje zadanie zwia ι zane z je ι zykiem programowania X naste ι pne zadanie w je ι zyku Y i jeszcze jedno znów w je ι zyku X wykonywanie zadań nie,,po kolei a w taki sposób, aby podobne zadania by ly zebrane razem np. najpierw oba zadania w je ι zyku X, a potem zadanie w je ι zyku Y (mniej razy trzeba ladować kompilator) oszcze ι dność czasu ale i mniejszy wp lyw programisty na termin wykonania programu 25 / 26
Adresy niektórych wykorzystanych ilustracji (doste ι p 28.02.2014) ENIAC: http://ftp.arl.army.mil/ftp/historic-computers/gif/eniac3.gif UNIVAC 1: http://univac1.0catch.com ODRA: http://nortus.pinger.pl/m/3041752 IBM PC: http://www.digibarn.com/stories/ibm-pc-25/erik-klein-photos/ karta dziurkowana: http://commons.wikimedia.org/wiki/file:karta dziurkowana 1.jpg 26 / 26