Zbigniew S. Szewczak Podstawy Systemów Operacyjnych



Podobne dokumenty
Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Zadania systemu operacyjnego. Abstrakcyjne składniki systemu. System komputerowy

Wprowadzenie do systemów operacyjnych

Wprowadzenie do systemów operacyjnych. mgr inż. Krzysztof Szałajko

Systemy operacyjne. Wojciech Kwedlo Wydział Informatyki PB, p. 127 aragorn.pb.bialystok.pl/~wkwedlo

Składowe systemu komputerowego

Systemy operacyjne III

Systemy operacyjne. Paweł Pełczyński

Wprowadzenie do systemów operacyjnych

System komputerowy. System komputerowy

Systemy operacyjne. Literatura: A. Silberschatz, J.L. Peterson, P.B. Galwin, Podstawy systemów operacyjnych, WNT, Warszawa 2006

Systemy operacyjne. Informatyka Stosowana, I rok. Krzysztof Wilk. Katedra Informatyki Stosowanej i Modelowania

Systemy operacyjne. Wojciech Kwedlo Wydział Informatyki PB, p. 205 aragorn.pb.bialystok.pl/~wkwedlo/dydaktyka.

Systemy operacyjne. wykład dr Marcin Czarnota laboratorium mgr Radosław Maj

ZADANIA SYSTEMÓW OPERACYJNYCH

SYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX)

Podstawy informatyki. System operacyjny. dr inż. Adam Klimowicz

Definicja systemu operacyjnego (1) Definicja systemu operacyjnego (2) Miejsce systemu operacyjnego w architekturze systemu komputerowego

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Przegląd współczesnych systemów operacyjnych

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Systemy operacyjne. Zadania systemu operacyjnego. System komputerowy. Wprowadzenie. Dr inż. Ignacy Pardyka

Technologia informacyjna. Urządzenia techniki komputerowej

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

SYSTEMY OPERACYJNE. kik.pcz.czest.pl/so. (C) KIK PCz Materiały pomocnicze 1 PROWADZI: PODSTAWOWA LITERATURA: ZAJĘCIA: STRONA

Czujniki obiektowe Sterowniki przemysłowe

Informatyka. informatyka i nauki komputerowe (computer science)

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Program wykładów. Program wykładów, c.d. Program ćwiczeń i laboratoriów

Działanie systemu operacyjnego

Podstawy informatyki. Izabela Szczęch. Politechnika Poznańska

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Działanie systemu operacyjnego

System operacyjny System operacyjny

Systemy operacyjne. wykład 1- System operacyjny i jego zadania. dr Marcin Ziółkowski

Warstwy systemu Windows 2000

Działanie systemu operacyjnego

Systemy operacyjne. Krzysztof Wilk. Katedra Informatyki Stosowanej i Modelowania

Jądro systemu operacyjnego

1. Etapy rozwoju systemów komputerowych

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2010/2011

Architektura i administracja systemów operacyjnych

Systemy operacyjne. Wojciech Kwedlo Wydział Informatyki PB, p. 205 aragorn.pb.bialystok.pl/~wkwedlo/dydaktyka.

Opis efektów kształcenia dla modułu zajęć

Podstawowe zagadnienia

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Program wykładów. Program projektów i laboratoriów. Strona WWW przedmiotu:

Architektura systemów informatycznych. system operacyjny podstawowe pojęcia, budowa

Temat. Budowa systemu komputerowego Zakładka 1. Elementy tworzące stanowisko komputerowe.

Podstawy obsługi komputerów. Budowa komputera. Podstawowe pojęcia

Paweł Skrobanek. C-3, pok pawel.skrobanek.staff.iiar.pwr.wroc.pl

Architektura komputerów

Jednostka centralna. Miejsca na napędy 5,25 :CD-ROM, DVD. Miejsca na napędy 3,5 : stacja dyskietek

System operacyjny komputera Informacje podstawowe

MAGISTRALE ZEWNĘTRZNE, gniazda kart rozszerzeń, w istotnym stopniu wpływają na

System komputerowy. Sprzęt. System komputerowy. Oprogramowanie

Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola

Systemy operacyjne. Tomasz Lewicki. marzec WWSIS, Wrocław. Tomasz Lewicki (WWSIS, Wrocław) Systemy operacyjne marzec / 25

Program Windykator I Moduły do programu. Wymagania systemowe oraz środowiskowe dla programów

Sieciowe Systemy Operacyjne

1. Co to jest system operacyjny

Systemy operacyjne. Informatyka Stosowana, I rok. Krzysztof Wilk. Katedra Informatyki Stosowanej i Modelowania

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Program wykładów. Program wykładów, c.d. Program ćwiczeń i laboratoriów

Systemy operacyjne i sieci komputerowe Szymon Wilk System operacyjny 1

Systemy operacyjne Charakterystyka systemów operacyjnych

Działanie systemu operacyjnego

Podstawy technologii informacyjnej. Beata Kuźmińska

Systemy Operacyjne. Wykład dla I roku Informatyki Stosowanej i II roku Fizyki Komputerowej Wydziału FAIS UJ Rok akademicki: 2004/05

Systemy Operacyjne. wykład 1. Adam Kolany. Październik, Instytut Techniczny Państwowa Wyższa Szkoła Zawodowa w Nowym Sączu

LEKCJA TEMAT: Zasada działania komputera.

WIELODOSTĘPNE SYSTEMY OPERACYJNE 1 (SO1)

DZANIA I MARKETINGU BIAŁYSTOK,

O systemach operacyjnych. R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski

DOS COMMAND.COM. Rys. 2. Główne moduły programowe systemu operacyjnego DOS. Interpreter poleceń. Rys. 3. Warstwowa struktura systemu DOS

System komputerowy, rodzaje, jednostki pamięci

Podstawy Informatyki Systemy operacyjne

SYSTEMY OPERACYJNE WYKŁAD 1 INTEGRACJA ZE SPRZĘTEM

URZĄDZENIA WEJŚCIA-WYJŚCIA

Podstawy Technik Informatycznych. Mariusz Stenchlik

PI-12 01/12. podłączonych do innych komputerów, komputerach. wspólnej bazie. ! Współużytkowanie drukarek, ploterów czy modemów

Temat. Budowa systemu komputerowego. Zakładka 1. Elementy tworzące stanowisko komputerowe.

Systemy operacyjne Wprowadzenie

Spis treści. Wstęp Rozdział 1. Zasady pracy z komputerem Rozdział 2. Budowa komputera... 20

System operacyjny wstęp

"Klasyczna" struktura systemu operacyjnego:

1. Co to jest system operacyjny?

Systemy operacyjne. dr inż. Jerzy Sas.

Przedmiot Systemy operacyjne (II) Systemy operacyjne / Wprowadzenie str.4/26. Konspekt wykładu Systemy operacyjne. Przedmiot Systemy operacyjne (I)

Chipset i magistrala Chipset Mostek północny (ang. Northbridge) Mostek południowy (ang. Southbridge) -

1. Budowa komputera schemat ogólny.

Spotkanie z komputerem

Systemy operacyjne. Literatura do zagadnień wykładowych (1) Literatura do zagadnień wykładowych (2) Program przedmiotu. Forma zaliczenia przedmiotu

Podsystem graficzny. W skład podsystemu graficznego wchodzą: karta graficzna monitor

System operacyjny. System operacyjny to program kontrolujący pracę komputera

KARTA KURSU. Systemy operacyjne

Systemy Operacyjne. informacje dodatkowe

DOS (ang. Disk Operating System). 1 DOS

Budowa Mikrokomputera

Architektura systemów komputerowych. dr Artur Bartoszewski

Struktury systemów operacyjnych

Transkrypt:

Zbigniew S. Szewczak Podstawy Systemów Operacyjnych Wykład 1 Ewolucja systemów operacyjnych. Toruń, 2004

O czym będzie? Wstęp System komputerowy System operacyjny Systemy wsadowe Systemy z podziałem czasu Systemy operacyjne na PC Systemy równoległe Systemy rozproszone Systemy czasu rzeczywistego Przykłady systemów operacyjnych

Literatura A. Silberschatz, P.B. Gavin, Podstawy systemów operacyjnych, wyd. III, WNT, 2000 (tł. 5th ed.) http://www.bell-labs.com/topic/books/os-book W. Stallings, Organizacja i architektura systemu komputerowego. Projektowanie systemu a jego wydajność, PWN, Warszawa, 2000 (tł. 4th ed.) http://william.stallings.com/

Literatura dodatkowa Per Brinch Hansen, Podstawy systemów operacyjnych, PWN, 1979 (klasyka) M. Bach, Budowa systemu operacyjnego Unix, WNT, 1995 A. Tannenbaum, Rozproszone systemy operacyjne, PWN, 1997 M. Beck,H. Bohme,M. Dziadzka,U. Kunitz,R. Magnus, D. Verworver, Linux Kernel. Jądro Linuxa, Mikom, 1999

Literatura dodatkowa U. Vahalia, Jądro systemu UNIX, WNT, Warszawa, 2001 D. P. Bovet & M. Cesati, Linux Kernel, Wydawnictwo RM, Warszawa, 2001 A. Tannenbaum, Modern Operating Systems, 2nd ed., Prentice Hall, 2001 http://www.cs.vu.nl/~ast/books/mos2/

Strony WWW http://www.computerhope.com/os.htm http://www.linux.org/ http://linuxvm.org/ http://www.pl.freebsd.org/ http://www.osweb.net/ http://tunes.org/review/oses.html http://www.freeos.com http://compnetworking.about.com/cs/networknos/ http://www.cs.arizona.edu/people/bridges/oses.htm http://www.serpentine.com/~bos/os-faq/

Inne zasoby grupy dyskusyjne (Usenet) comp.os.system comp.os.linux.development.system pl.comp.os.linux prezentacje https://plas.mat.uni.torun.pl/moodle

System komputerowy Sprzęt (ang. hardware) - zasoby o specyficznej architekturze oraz organizacji zarządzane przez system operacyjny System operacyjny - program, który nadzoruje i koordynuje dostęp programów do zasobów Programy użytkowe - realizują potrzeby użytkowników systemu komputerowego (kompilatory, bazy danych, gry,...) Użytkownicy - ludzie, maszyny, komputery..

Sieciowy system komputerowy Sieciowy system komputerowy jest częścią systemu komputerowego odpowiedzialną za komunikowanie się komputerów przez łącza sprzęt - medium transmisji danych, karta sieciowa, modem system operacyjny - implementacja protokołu (TCP/IP, NetBEUI, IPX/SPX ) w jądrze sieciowy podsystem operacyjny : NFS, SMB, NCP programy użytkowe - mount,przeglądarka WWW, telnet, ftp użytkownicy: zdalny komputer, osoba używająca ftp, itp.

Model systemu (13 warstwy) Model hierarchiczny (R. Brown &..., Computer, 1984) Warstwy dzielone (procesy, systemy zdalne..) 13: Powłoka (ang. shell) 12: Procesy użytkownika 11: Katalogi 10: Urządzenia zewnętrzne (drukarki) 9: System plików (pliki) 8: Komunikacja (potoki)

Model systemu (c.d.) Warstwy procesora (niepodzielne) 7: Pamięć wirtualna (segmenty, strony) 6: Lokalna pamięć zewnętrzna (bloki danych) 5: Procesy (kolejki procesów gotowych) Warstwy sprzętowe 4: Przerwania (programy obsługi przerwań) 3: Procedury 2: Instrukcje maszynowe (mikroprogramy) 1: Obwody elekroniczne (rejestry, szyny)

Co to jest system operacyjny? System jest pewnym zbiorem obiektów oraz realcji między tymi obiektami i między ich własnościami (Hall, Fagen) System operacyjny jest programem, który działa jako pośrednik między użytkownikiem komputera a sprzętem komputerowym Nie mam dobrej definicji systemu operacyjnego To nie to, że czegoś nie wiemy, gnębi nas, lecz to, że wiemy, iż coś nie jest tak (W. Rogers)

Zadania systemu operacyjnego Zdania systemu operacyjnego tworzenie środowiska do wykonywania programów powodowanie aby system komputerowy był wygodny w użyciu System operacyjny nadzoruje i koordynuje posługiwanie się sprzętem

System operacyjny - definicje Dystrybutor zasobów (ang. resource allocator) - przydziela zasoby poszczególnym zamawiającym (programom) Program sterujący (ang. control program) - nadzoruje wykonanie programów użytkowych oraz operacji wejścia/wyjścia, kontrola błędów Jądro systemu (ang. kernel, ang. nucleus) - program działający w komputerze nieustannie, często jest synonimem systemu operacyjnego

Wczesne systemy - Goła maszyna ( lata 50-te) Struktura wielkie maszyny obsługiwane z konsoli programista/użytkownik jako operator maszyny wejście z taśmy papierowej lub karty perforowanej cel systemu operacyjnego (monitora) : automatyczne przekazywanie sterowania następnemu zadaniu Wczesne oprogramowanie asemblery, kompilatory, programy ładujące i łączące, biblioteki modułów ładowalnych Bezpieczne Nieefektywne wykorzystanie drogich zasobów

Proste systemy wsadowe Wynajęty operator (bardzo ważna osoba!) do wczytywania zadań tzw. wsadu (ang. batch) Dodany czytnik kart perforowanych Redukcja czasu wykonania przez wsad o podobnych parametrach Automatyczne kolejkowanie zadań Rezydentny monitor (system) inicjowanie zadań, komendy operatorskie przekazywanie kontroli wykonywanym zadaniom (ang. job) przejęcie kontroli po zakończeniu zadania

Wygląd pamięci operacyjnej - prosty system wsadowy Monitor (system operacyjny) Obszar programów użytkownika

Język opisu zadań - JCL Problemy skąd monitor ma czerpać wiedzę o naturze zadania (np. asembler, Fortran) lub jaki program wykonać jak monitor ma rozróżniać zadania dane od programów Rozwiązanie język opisu zadań (Job Control Language)

Język opisu zadań - JCL (c.d.) Karty sterujące określają jak monitor ma funkcjonować //MYJOB JOB MSGLEVEL=(1,1), CLASS=A //STEP1 EXEC PGM=EDIT //OUT DD DSNAME=MYSET,DISP=OLD, // DCB=(LRECL=80, RECFM=FB) //SYSIN DD *...dane... /* //STEP2 EXEC SORTC

Język opisu zadań - JCL (c.d.) Składniki rezydentnego monitora interpreter JCL program inicjujący/kończący zadania obsługa we/wy, komendy operatora Problem: mała wydajność - we/wy i procesor nie mogą działać jednocześnie; powolny czytnik kart Rozwiązanie: praca pośrednia (ang. off-line operation) - wczytywanie zadań z taśmy i drukowanie off-line

Spooling Simultaneous Pheripheral Operation On-Line - umożliwia wykonywanie zadań w czasie operacji we/wy innych zadań wczytanie zadania z czytnika kart na dysk do kolejki zadań (ang. job queue) wyprowadzenie wydruku zakończonego zadania do kolejki na dysku (ang. print queue) a potem drukarkę Pula zadań (ang. job pool ) - zadania na dysku są wybierane do wykonania w taki sposób aby zwiększyć wykorzystanie procesora

Wieloprogramowane systemy wsadowe Wiele zadań jest przechowywanych w pamięci operacyjnej a procesor, w czasie oczekiwania jednego zadania na jakąś usługę np. operację wejścia/wyjścia lub zamontowanie taśmy jest przydzielany innemu zadaniu pierwszy przypadek gdy monitor decyduje za użytkowników a w zasadzie za operatora systemu (stąd możliwe wytłumaczenie nazwy system operacyjny) początek końca wszechwładzy operatora systemu komputerowego

Wielozadaniowość - wymagania systemu Wieloprogramowanie daje wielozadaniowość (ang. multitasking) Obsługa we/wy przez system Zarządzanie przydziałem pamięci (ang. memory management) Planowanie przydziału procesora (ang. CPU scheduling) - wybór zadania do wykonania Przydział urządzeń zewnętrznych (dyski, taśmy) (ang. I/O management)

Systemy z podziałem czasu - ang. Time-Sharing Systems Rozszerzenie wieloprogramowości (ang. multiprogramming) Procesor jest przydzielony jedynie zadaniom w pamięci operacyjnej i wykonuje na przemian wiele zadań, przy czym przełączenia następują tak często, że użytkownicy mogą współdziałać z programem podczas jego wykonania Jedno z zadań w pamięci: dialog z użytkownikiem (sesja)

Systemy z podziałem czasu - (c.d) Zadania usuwane z pamięci są zapisywane na dysk do zbioru wymiany (ang. swap) Bezpośrednia komunikacja użytkownika z systemem (ang. on-line) dzięki wielozadaniowości zadanie = sesja (ang. session) lub proces (ang. process) IBM OS/360 MVT/TSO - system interakcyjny Phoenix modyfikacja TSO realizowana w UMK

Wymiana - ang. swapping Problem: we/wy jest wolniejsze od procesora więc nawet wieloprogramowany system może powodować przestoje w pracy procesora Inne rozwiązania: zwiększenie pamięci drogie wzrasta apetyt wymiana

Co to jest wymiana? Zadanie zamiast przebywać bezczynnie w pamięci (z powodu niespełnialności żądań) jest zapamiętane (ang. swapped out) na dysku w zbiorze wymiany Zadanie (inne) zostaje wczytane (ang. swapped in ) ze zbioru wymiany do pamięci komputera i wykonywane Zadanie kończy się i jest usuwane z pamięci

Systemy operacyjne na PC Zmniejszenie cen sprzętu Komputer osobisty (ang. personal computer) - przeznaczony dla jednego użytkownika Urządzenia we/wy : klawiatura, myszka, monitory, małe drukarki Przenoszenie technologii wcześniej rozwiniętej dla dużych komputerów ( ang. mainframe) na stacje robocze (ang. workstations) systemy jednoprogramowane, jednostanowiskowe (MS- DOS, Macintosh)

Systemy równoległe Systemy równoległe (ang. parallel systems) - systemy z wieloma współpracującymi procesorami (ang. multiprocessor systems) Systemy ściśle powiązane (ang. tightly coupled) - procesory dzielą zegar, pamięć; komunikacja zwykle poprzez pamięć dzieloną Korzyści: zwiększona przepustowość (ang. throughput) zdolność do kontynuowania usług na poziomie proporcjonalnym do ilości ocalałych zasobów łagodna degradacja (ang. graceful degradation) systemy tolerujące awarie (ang. fault-tolerant)

Systemy równoległe (c.d.) Wieloprzetwarzanie symetryczne (ang. Symmetric MultiProcessing - SMP) każdy z procesorów wykonuje identyczną kopie systemu Wieloprzetwarzanie asymetryczne (ang. asymmetric multiprocessing) każdy procesor ma przypisane inne zadanie; procesor główny planuje i przydziela prace procesorom podporządkowanym procesor: IBM 4381 (VM SP/6) i procesor czołowy (ang. front-end ): IBM 3705 - węzeł sieci EARN/BITNET (PLTUMK1) w UMK, 1991

Wieloprzetwarzanie symetryczne CPU CPU CPU CPU Pamięć

Systemy rozproszone Rozproszone przetwarzanie za pomocą wielu procesorów zwanych węzłami (ang. nodes) Systemy luźno powiązane (ang. loosely coupled) lub rozproszone (ang. distributed systems) - każdy procesor ma własną pamięć lokalną; procesory komunikują się szybkim łaczem Powody: podział zasobów: zdalne drukowanie plików przyspieszenie obliczeń, dzielenie obciążeń (ang.load sharing) niezawodność, komunikacja: poczta (ang. e-mail)

Systemy rozproszone (c.d.) Sieciowe systemy operacyjne dzielenie plików (NFS, Samba, NetWare) protokół komunikacyjny (TCP/IP, NetBEUI, NCP) przetwarzanie niezależne od innych komputerów w sieci, duża autonomia Rozproszone systemy operacyjne mniejsza autonomia systemów (System Andrew) powstaje wrażenie jednego dużego systemu operacyjnego kontrolowanego poprzez sieć rozległą

Systemy czasu rzeczywistego Ang. Real-Time Systems - stosowane często do sterowania urządzeniami dedykowanymi do konkretnych zastosowań (proces produkcji) Ściśle zdefiniowane, stałe ograniczenia czasowe Rygorystyczny system czasu rzeczywistego (ang. hard real-time) tylko pamięć o krótkim czasie dostępu Łagodny system czasu rzeczywistego (ang. soft real-time) krytyczne zadanie do obsługi w czasie rzeczywistym ma najwyższy priorytet

Minisystemy systemy podręczne (ang. handheld systems) PDA (ang. personal digital assistants) palmtopy (PalmOS, Windows CE) telefony komórkowe (interpreter Javy) technologia bezprzewodowa (podczerwień, BlueTooth) 512KB-8MB pamięci, mały display, wolny procesor Inne sprzęt domowy (mikrofalówki, pralki,...) sprzęt elektroniczny (aparaty, odtwarzacze, TV,...)

Przykłady: System Atlas Uniwerystet w Manchester (Anglia) - koniec lat 50-tych/początek lat 60-tych System wsadowy Główna część systemu: moduły sterujące wejściem/wyjściem Planowanie zadań - spooling Pamięć rdzeniowa jako pamięć podręczna Nowatorski, wiele jego cech przetrwało w systemach operacyjnych do dziś

Przykłady: System CTSS Compatible Time-Sharing System System na komputer IBM 7090 zrealizowany w MIT (Massachusetts Institute of Technology), 1962 System z podziałem czasu Umożliwiał konwersację 32 użytkownikom Wielkość systemu: 32,000 słów 36-bitowych Wielki sukces, w użyciu do 1972

Przykłady: System MULTICS MULTiplexed Information and Computing Service Naturalne rozszerzenie CTSS napisane w języku PL/I na maszyny o mocy IBM PC 386 Wspólne przedsięwzięcie MIT (m.in. Dennis Ritchie), General Electric i Bell Laboratory (AT&T), 1965 Protoplasta systemów:ibm OS/360(1966),Unix(1970) Wielkość: 20M instrukcji maszynowych (1975) 1969, Bell Labs rezygnuje z projektu : Unics modyfikacja Multicsa na PDP-7 (Ken Thompson, Dennis Ritchie) cross-assembler Honeywell 635->gra Space Travel na PDP-7

Przykłady: System OS/360 System z podziałem czasu jednolity dla wszystkich komputerów od małych maszyn biurowych po wielkie komputery obliczeniowe Wszystko dla wszystkich Skomplikowany i zbyt wielki: >1,000,000 instrukcji maszynowych Błędne założenie: moc obliczeniowa ma być uzyskiwana zdalnie z wielkiego komputera OS/MFT, OS/MVT+TSO; poźniej IBM 370: OS/MVS+CMS Polska : System RIAD 32 (przełom 80/90)

Przykłady: Systemy operacyjne na IBM PC CP/M (Gary Kildall, 1974) na 8080,2MHz,8b i floppy IBM PC, 8086,5MHz,16b (1981): MS DOS 1.0-8KB interpreter BASICa +DOS, wielkość: 4000 linii kodu IBM PC XT, 10MHz, 16b (1983): MS DOS 2.0-24KB 1MB RAM, HDD: jeden katalog, 64 pliki IBM PC AT,80286,12MHz (1984): MS DOS 3.0-36KB 16MB RAM, sieć (v. 3.1) Microsoft Windows 1.0 - GUI (ang. Graphical User Interface) IBM PC 386,33MHz,32b (1987): MS DOS 3.3-46KB Microsoft Windows 3.0,3.1, Linux (1991) IBM PC 486,50MHz(1990):MS DOS + Win3.1, Linux

Przykłady: Systemy operacyjne firmy Microsoft Windows NT 3.1 (1993) 6M linii kodu, aplikacje MS DOS, OS/2, Windows 3.1 Windows 95, Pentium,300MHz (1995): fragmenty 16b kodu, system plików FAT-32 Windows NT 4.0 (1996) kompatybilność z W95/98, 16M linii kodu, system plików -NTFS Windows 98 (1998) - 32-bitowy fragmenty 16k kodu assemblerowego, błędy Windows ME (2000) - poprawiony W98 Windows 2000 (2000) = Windows NT 5.0

Współczesne systemy operacyjne Cechy wspólne architektura mikrojądra- zawiera jedynie niezbędne funkcje architektura monolityczna wielowątkowość proces (zadanie) składa się z wątków SMP (pod)system sieciowy systemy grafiki (GUI) i wydruku Windows: 2K/XP Unix: Solaris 2.x, 4.4BSD, Linux Maszyny wirtualne: JavaVM, VMware

Współczesna architektura - Centrino Procesor Pentium-M (L1 64kB, L2 1MB) Magistrale FSB - 400 MHz AGP 4x PCI Express 16x Chipset i855gm/pm: CPU, RAM, Bridge (mostek) ICH4-M PCI, USB, ATA, Ethernet 10Gb, WLAN DVD - Blue-ray: do 50GB, transfer danych 4,5MBps Przeznaczenie: notebooki

System operacyjny Windows 2000 wielozadaniowy system operacyjny z wywłaszczaniem na procesory 32-bitowe 4 wersje zależne od ilości pamięci i procesorów Professional, Server, Advanced Server, Datacenter Server realizuje standard POSIX (IEEE Std. 1003.1) architektura mikrojąder kod napisany w C i C++ 29M linii kodu źródłowego wydzielony kod zależny od procesora HAL (Hardware Abstraction Layer)

Windows 2000 Professional - wymagania Procesor: Intel Pentium, 133(200)MHz lub nowszy Pamięć: 64(128)MB RAM lub więcej Dysk twardy: 2000MB lub więcej 650MB wolnego miejsca Monitor: VGA (SVGA) lub o większej rozdzielczości Stacja CDROM 4(12)x lub DVD Stacja dyskietek 3,5 Mysz Microsoftowa, klawiatura,...

System operacyjny Linux System Linux jest bezpłatnie rozpowszechnianą wersją systemu operacyjnego UNIX System Linux stworzył student Uniwersystetu w Helsinkach (Finlandia) - Linus Torvalds, 1991 Monolityczny system operacyjny, którego centralną część stanowi jądro (Linux Kernel) Wielodostępny, wielozadaniowy system operacyjny z wywłaszczaniem zgodny ze standardem POSIX System Linux zawiera sieciowe systemy operacyjne:ncp(mars),smb(samba),tcp/ip(nfs)

System operacyjny Linux - (c.d.) System operacyjny Linux może działać na różnych architekturach: Intel x86, SPARC, DEC Alpha, PowerPC, MIPS, m68k System Linux może współistnieć na jednym komputerze z innymi systemami operacyjnymi: Windows 98, Windows NT, Windows 2000, Solaris, FreeBSD, OS/2,... System operacyjny Linux może symulować inne systemy operacyjne np. MS-DOS, Windows,... http://www.vmware.com v2.2-1m linii kodu źródłowego

Wymagania sprzętowe Procesor Pentium II taktowany zegarem 233MHz Pamięć RAM - 64 MB Karta graficzna 4MB Dysk twardy 2GB Czytnik CD-ROMów (opcjonalnie) Dostęp do sieci Internet (opcjonalnie)

Prawo Haeckla Haeckel Ernst (1834-1919), profesor anatomii w Jenie (1862-1909), ewolucjonista Ontogeneza jest rekapitulacją filogenezy Rozwój osobniczy (ontogeneza) jest skróconym i szybkim powtórzeniem (rekapitulacją) rozwoju rodowego (filogenezy) Komputery główne, minikomputery, mikrokomputery, komputery sieciowe, komputery osobiste, itd. w swoim rozwoju przechodzą etapy podobne jak ich poprzednicy

Podsumowanie Co to jest system operacyjny? nie ma dobrej definicji (i nigdy nie będzie) wygodnie jest przyjąć, że jest to program rezydentny (tzw. jądro systemu) pośredniczący między sprzętem a człowiekiem lub maszyną zadania: sterowanie programami, rozdzielanie zasobów, szeregowanie, sterowanie we/wy, zarządzanie danymi Co to jest system komputerowy? sprzęt system operacyjny oprogramowanie użytkowe (np. komenda who) ludzie lub maszyny

Podsumowanie (c.d.) Jakie cele wpłynęły na rozwój systemów operacyjnych w ciągu ostatnich 40 lat? efektywne działanie systemu komputerowego a zwłaszcza wykorzystanie procesora (jednostki centralnej) wygodne środowisko do opracowywania i wykonywania programów lokalnie i zdalnie W jaki sposób osiągnięto te cele? wsad, spooling wieloprogramowanie, podział czasu, swapping komputery osobiste, wieloprocesorowość sieci komputerowe fundamentalny wkład IBM

Ciąg dalszy O czym będzie mowa dalej? zarządzanie programami (procesami) zarządzanie pamięcią zarządzanie wejściem/wyjściem zarządzanie tym wszystkim razem (zdalnie) Model: komputer<->system<->użytkownik architektura komputera ( czyt. rozwój technologii) decyduje o systemie operacyjnym potrzeby użytkownika (np. multimedialne) wymuszają rozwój technologii ważne: architektura i organizacja komputera