historia systemów operacyjnych
TRANSCRIPT
SystemyOperacyjne
Definicje systemu operacyjnego
� są różne
� zależą od specyficznego rozumienia czym jest użytkownik i maszyna
� są określane przez potrzeby i wymagania odbiorcy
� są wielopoziomowe
Systemy Operacyjne
� są wielopoziomowe
Jak zdefiniować system operacyjny?
� odwołajmy się do wiedzy zbiorowej
Definicja Per Brinch Hansena
System operacyjny jest zbiorem ręcznychi automatycznych procedur, które pozwalają grupie osób na efektywne współdzielenie urządzeń maszyny cyfrowej.
Systemy Operacyjne
Distinguished professor Of computer science
Electrical Engineering and Computer Science2-175 Center for Science and Technology
Syracuse UniversitySyracuse, New York 13244, U.S.A.
Telefon: (315) 446-4813Email: [email protected]
Definicja Abrahama Silberschatza
System operacyjny jest programem, którydziała jako pośrednik między użytkownikiem komputera a sprzętem komputerowym.
Zadaniem systemu operacyjnego jest
Systemy Operacyjne
Zadaniem systemu operacyjnego jest tworzenie środowiska, w którym użytkownik może wykonywać programy w sposób wygodny i wydajny.
Professorship in Computer SciencesM.S. (1973),Ph.D. (1976),
S.U.N.Y. at Stony Brook
Definicja Andrewa Tanenbauma
System operacyjny jest warstwą oprogramowania operującą bezpośrednio na sprzęcie, której celem jest zarządzanie zasobami systemu komputerowego i stworzenie użytkownikowi środowiska
Systemy Operacyjne
stworzenie użytkownikowi środowiska łatwiejszego do zrozumienia i wykorzystania.
Dept. of Computer Science Faculty of Sciences
Vrije UniversiteitDe Boelelaan 1081A
1081 HV Amsterdam , The NetherlandsTelefon: +31 20 598-7780
Email: [email protected]
Systemy Operacyjne
Zespół programów, które sterują wprowadzaniem danych do pamięci operacyjnej i działaniem innych programów, a także sterują pracą urządzeń wejściowych i wyjściowych, tłumaczeniem programów przydzielaniem pamięci i zarządzaniem danymi.
Umożliwia także wykrywanie nieprawidłowości w działaniu Umożliwia także wykrywanie nieprawidłowości w działaniu komputera i pośredniczy w komunikowaniu się użytkownika z komputerem, często przez stosowny interfejs graficzny.
Jak to zobaczyć?
� Czas na oględziny…
Systemy Operacyjne
Krótka historia
Microsoft Windows
MS Windows 1.xMS Windows 2.xMS Windows 3.0MS Windows 3.1MS Windows 3.11 dla Grup RoboczychMS Windows Chicago Beta-1MiS Windows 95 (Wersja 4.0)MS Windows 98 (Wersja 4.1)MS Windows ME (Wersja 4.9)
Apple
Start Apple LisaApple Lisa Office System 1.0Apple Lisa Office System 3.1Apple II DesktopGEOS dla Apple IIGS/OS dla Apple IIgsApple Macintosh w
Linux/Unix
Redhat Linux 5.0 DECWindowsWine Mandrake Linux 9.0 Redhat Linux 8.0 IRIX Interactive Desktop 6.5Solaris 8 CDE i OpenWindowSolaris 10
Pozostałe
Xerox AltoXerox StarXerox GlobalView 2.1VisiCorp Visi OnGEM 1.1GEM 2.0GEM 3.11Atari TOS 1.0DeskmateCommodore 64 GEOS
Systemy Operacyjne
MS Windows ME (Wersja 4.9)98Lite 1.398Lite 2.098Lite 4.5
Microsoft Windows NT
MS Windows NT 3.1MS Windows NT 3.51MS Windows NT 4.0MS Windows 2000 ProfessionalMS Windows XPMS Windows Server 2003
1984MacOS 1.1MacOS 7.5.5MacOS 8.1MacOS 9.2.2At Ease 2.0At Ease for Workgroup 4.0OPENSTEPRhapsodyMacOS X 10.1MacOS X 10.3.4
Solaris 10Zdalne
Citrix Metaframe Microsoft Terminal ServerX11 - X Windowing System VNC Telnet Aplikacje Klient/Serwer Śieć
Commodore 64 GEOSApple II GEOSGeoWorks w PC/GEOSNewDeal Office 3.2aBreadBox EnsembleDESQview/XAmigaOS 3.5RISC OS wersja 3RISC OS wersja 4BeOS 5 Personal EditionQNX z dyskietki 1.44MBQNX 6.2.1 z CDMS OS/2 v1.3IBM OS/2 2.0IBM OS/2 Warp 4Demo CD eComStationMS BOBAmstrad PcW16
Jak doszło do takiej różnorodności?
� Historia systemów operacyjnych…
Systemy Operacyjne
Historia systemów operacyjnych
� Zaczyna się w szalonych latach ‘60…
� 1966 - rozpoczęcie prac na Multicsem, zespół naukowców z Bell Labs, MIT i General Electric, wśród tych pierwszych Ken Thompson
� 1969 - AT&T porzuca projekt Multicsa; pierwsza wersja Unix napisana w asemblerze w ośrodku Bell Labs firmy AT&T (stan New Jersey, USA)
Systemy Operacyjne
asemblerze w ośrodku Bell Labs firmy AT&T (stan New Jersey, USA) przez Dennisa Ritchie i Kena Thompsona
Historia systemów operacyjnych
� Trwa przez lata ’70…
� 1971 - port Uniksa na nowy komputery PDP-11 firmy DEC
� 1972 - Unix Second Edition, pojawia się potok (ang. pipe)
� 1973 - Unix Fourth Edition, pierwsza napisana w C, co zaowocowało przenośnością systemu
Systemy Operacyjne
przenośnością systemu
� 1975 - Unix Sixth Edition - inaczej Wersja Szósta - rozprowadzana nieodpłatnie w uczelniach dla zastosowań akademickich, dał początek rozszerzeniom BSD
� 1976 - John Lions na Uniwersytecie Nowej Południowej Walii pisze komentarz do kodu Uniksa. tzw. Lions Book zawiera pełny kod v.6
� 1977 - pod koniec roku ukazują się pierwsze taśmy 1BSD, rozszerzenia Uniksa z Uniwersytetu Kalifornijskiego Berkeley
� 1979 - Unix 7th edition - the last true Unix - zawiera C, UUCP i powłokę Bourne'a. Przeniesiony na nowe komputery VAX kernel liczył 40 Kb.
Historia systemów operacyjnych
PDP-11
Digital Equipment Corporation, 1970
Oprócz tego modelu– także cała seria PDP-4 do PDP-16
Systemy Operacyjne
– także cała seria PDP-4 do PDP-16
Dwie książki:- Processor Handbook- Peripherials Handbook
Historia systemów operacyjnych
PDP-4
Digital Equipment Corporation, 1962
Systemy Operacyjne
Historia systemów operacyjnych
PDP-10 Console
Digital Equipment Corporation, 1980
Systemy Operacyjne
Historia systemów operacyjnych
VAX
Digital Equipment Corporation, 1970
Systemy Operacyjne
Historia systemów operacyjnych
� Trwa przez lata ’80…
� 1980 - w Santa Cruz Operation (aka. SCO) na licencji od AT&T i na zamówienie MS powstaje Xenix, pierwszy Unix dla PC
� 1982 - Silicon Graphics prezentuje IRIX
� 1983 - rozpoczęcie projektu GNU (GNU's Not UNIX); System V - pierwsza komercyjna wersja Uniksa AT&T
Systemy Operacyjne
wersja Uniksa AT&T
� 1984 - 4.2BSD - wprowadzenie rozszerzeń TCP/IP; DEC wydaje pierwszą wersję Ultriksa
� 1986 - Hewlett-Packard prezentuje HP-UX, własną wersję Uniksa
� 1989 - SVR4 - 4 wydanie System V; unifikacja Systemu V, BSD oraz Xeniksa; SCO UNIX System V/386, pierwszy Unix spoza AT&T, który ma prawo być sprzedawany pod tą nazwą.
Historia systemów operacyjnych
� Trwa przez lata ’90…
� 1990 - luty, IBM wydaje AIX (Advanced Interactive eXecutive)
� 1991 - Solaris 2 (oparty na SysV) wydany przez Sun Microsystems; wrzesień, powstanie jądra Linux, wersja 0.01
� 1993 - 4.4BSD; 20 kwietnia - ukazuje się NetBSD 0.8; grudzień - premiera FreeBSD 1.0 (na bazie 4.3BSD Net/2); koniec roku - SVR4.2MP, ostatnia wersja Systemu V z
Systemy Operacyjne
1.0 (na bazie 4.3BSD Net/2); koniec roku - SVR4.2MP, ostatnia wersja Systemu V z Unix System Laboratories (USL)
� 1994 - 4.4BSD-Lite; powstają firmy Red Hat oraz Caldera;13 marca - Linux 1.0; 26 października - wydanie NetBSD 1.0;listopad - FreeBSD 2.0 (oparte na kodzie 4.4BSD Lite)
� 1996 – Linux 2.0
� 1999 – Linux 2.2
� Potem: 4 stycznia 2001 - Linux 2.4;19 stycznia 2003 - prezentacja FreeBSD 5.0; 17 grudzień 2003 - Linux 2.6
Historia systemów operacyjnych
� 1991 - powstanie jądra Linux, wersja 0.01
Jak to się odbyło?
� Istnieją już Multisc, UNIX, XENIX, AIX, HP-UX, SunOS, Xenix, Ultix, SVR4, Solaris, Mach, OSF1, IRIX, BSD.
� Cała historia sięga końca lat 80., kiedy Linus Torvald's tworzył system operacyjny na
Systemy Operacyjne
� Cała historia sięga końca lat 80., kiedy Linus Torvald's tworzył system operacyjny na komputer oparty na procesorze Intel 80386.
� Dołączył do niego polecenia znane z UNIXa, możliwość zarządzania zadaniami i korzystania z wirtualnych konsol. Źródła systemu ukazały się w Internecie w 1991r.
� Pierwsza wersja Linuxa (0.01) mogła obsługiwać dyski oraz mały system plików. Nie miała jednak jeszcze zaimplementowanej obsługi napędu dyskietek.
� Wersja oznaczona była numerem 0.02 i posiadała już możliwość uruchomienia bash'a (Bourne Again Shell) a także gcc. Niestety poza tym prawie nic nie działało.
Historia systemów operacyjnych
� Trwa przez lata ’90…
� 1990 - luty, IBM wydaje AIX (Advanced Interactive eXecutive)
� 1991 - Solaris 2 (oparty na SysV) wydany przez Sun Microsystems; wrzesień, powstanie jądra Linux, wersja 0.01
� 1993 - 4.4BSD; 20 kwietnia - ukazuje się NetBSD 0.8; grudzień - premiera FreeBSD 1.0 (na bazie 4.3BSD Net/2); koniec roku - SVR4.2MP, ostatnia wersja Systemu V z
Systemy Operacyjne
1.0 (na bazie 4.3BSD Net/2); koniec roku - SVR4.2MP, ostatnia wersja Systemu V z Unix System Laboratories (USL)
� 1994 - 4.4BSD-Lite; powstają firmy Red Hat oraz Caldera;13 marca - Linux 1.0; 26 października - wydanie NetBSD 1.0;listopad - FreeBSD 2.0 (oparte na kodzie 4.4BSD Lite)
� 1996 – Linux 2.0
� 1999 – Linux 2.2
� Potem: 4 stycznia 2001 - Linux 2.4;19 stycznia 2003 - prezentacja FreeBSD 5.0; 17 grudzień 2003 - Linux 2.6
Nazwy systemów UNIX i Linux
� UNIX = (Uniplexed Information and Computing System - UNICS)
� Linux = LINUs + uniX
� Linux jest rozprowadzany w tzw. dystrybucjach
Systemy Operacyjne
Dystrybucja:
Dystrybucja w odniesieniu do systemu operacyjnego Linux to zestaw programów rozpowszechnianych łącznie i dający po zainstalowaniu gotowy do użycia system.
Cechy dystrybucji:
� Programy występują w pakietach (DEB, RPM, Ebuild, lub skompresowane Tar)
� System pobierania, instalacji, deinstalacji i aktualizacji pojedynczych pakietów (APT, DPKG, RPM, make, i inne)
Najbardziej rozpowszechnione dystrybucje
� Debian - http://www.debian.org/
� Fedora Core - http://fedora.redhat.com/
� Gentoo - http://www.gentoo.org/
� Knoppix - http://www.knoppix.net/ ☺
Systemy Operacyjne
� Knoppix - http://www.knoppix.net/ ☺
� Mandriva Linux (dawniej Mandrake) - http://www.mandrivalinux.com/
� PLD Linux (polska) - http://www.pld-linux.org/
� Red Hat Linux - http://www.redhat.com/
� Slackware - http://www.slackware.org/
� SUSE - http://www.opensuse.org/
� Ubuntu - http://www.ubuntulinux.org/
� Innych jest jeszcze ponad 200, w tym jednodyskietkowe!
Co to jest Knoppix?
� Knoppix to dystrybucja Linuksaoparta na Debianie
� możliwa do uruchomienia z CD-ROMu
Systemy Operacyjne
� bez instalacji na twardym dysku (LiveCD)
� rozwijana przez niemieckiego inżyniera Klausa Knoppera
Systemy Operacyjne
związane z producentem Nie związane z producentem
Systemyoperacyjne
Podział systemów ….
ZX Spectrum
Commodore
Atari
Apple
UNIX
Windows
DOS
CP/M
Podział systemów:
� Systemy wsadowe
� Systemy wieloprogramowe
� Systemy z podziałem czasu
� Systemy biurkowe
Systemy Operacyjne
� Systemy wieloprogramowe
� Systemy rozproszone
�Systemy klient – serwer
�Systemy partnerskie (peer-to-peer)
� Systemy zgrupowane
� Systemy czasu rzeczywistego
� Systemy kieszonkowe
Systemy Operacyjne
CP/M
Control Program for Microcomputers
• Opracowany w 1974r przez Kanadyjczyka Gary Kildalla, ówczesnego pracownika firmy Intel. Firma Intel nie była zainteresowana dystrybucją i dlatego założono firmę Digital Research.
• System dla procesorów Intel 8080 oraz Zilog Z80 pomyślany jako system do uruchamiania programów stał się standardem mikroprocesorów 8-bitowych
Systemy Operacyjne
CP/M
Control Program for Microcomputers
• Umożliwia pracę jednego programu, obsługę urządzeń we/wy - w tym pamięci dyskowych – oraz gospodarkę plikami.
• Zyskał popularność ze względu na możliwość adaptacji na różnych komputerach, zawarte narzędzia do uruchamiania programów.programów.
• Tak znane programy jak Turbo Pascal, dBase, Word Star, CBasic były implementowane pierwotnie w tym systemie.
Systemy Operacyjne
MS-DOS
Historia
Wywodzi się z systemu o nazwie QDOS opracowanego przez Seatle Computers dla procesorów 8086.
Kolejne wersje systemu o nazwie 86 DOS zostały w 1981 roku zakupione przez firmę Microsoft i nazwane MS-DOS.roku zakupione przez firmę Microsoft i nazwane MS-DOS.
Firma IBM nazwała ten system dla swojego komputera jako PC-DOS
Systemy Operacyjne
System wzorowany na CP/M, przejęta ogólna struktura systemu, automatyczna konwersja programów CP/M do postaci DOS.Bardziej efektywny system zarządzania pamięcią dyskową.
Kolejne wersje udoskonalają korzystanie z dysków:
Charakterystyka
1.0 – obsługuje dyskietki jednostronne1.1 – dwustronne2.0 – dyski twarde i in. urządzenia zewnętrzne, hierarchiczny system zbiorów, 2.1 – mechanizm przetwarzania potokowego (łączy wyjście jednego programu z wyjściem drugiego), możliwość pracy jednego programu pod nadzorem drugiego (np. wydruki), pliki wsadowe (batch)
Systemy Operacyjne
Charakterystyka
Rozwój systemu PC/MS DOS
Wersje 3.1 i 3.2 obsługują dyskietki o pojedynczej, podwójnej i poczwórnej gęstości (1,2/1,44 MB), pliki dyskowe otrzymują atrybuty (np. read only), dyski wirtualne
Wersje 4.0 i 5.0 zapewniają zautomatyzowany sposób instalacji Wersje 4.0 i 5.0 zapewniają zautomatyzowany sposób instalacji na dysku twardym, umożliwiają wprowadzenie sieci i pracę w środowisku wielodostępnym
Wersje 6.0-6.22 ułatwiony sposób ładowania ustawień narodowych, rozszerzone środowisko graficzne
Wersje 7.0-> dostępne tylko w połączeniu z systemem Windows. Planowane wyłączenie systemu DOS ze środowiska Windows
MS/PC-DOSOgraniczenia
• System przeznaczony w założeniu tylko dla jednego użytkownika. Brak typowego środowiska wielodostępu.
• Brak wieloprogramowości, uruchamianie wielu programów
Systemy Operacyjne
• Brak wieloprogramowości, uruchamianie wielu programów możliwe tylko przez specjalne nakładki.
• Brak środowiska graficznego, chociaż programy graficzne działają z reguły szybciej niż w Windows.
• Konieczność poznania określonej liczby rozkazów.
• Brak jednolitości programów użytkowych.
5
Windows
• Wersje 1.0 do 3.1 bazują na GEM firmy Digital Research, są wczytywane jako dodatek do środowiska DOS, bez możliwości obsługi sieci, ale umożliwiają uruchomienie wielu programów równocześnie
• Wersja 3.11 wprowadza możliwość pracy w sieci, ale
Systemy Operacyjne
• Wersja 3.11 wprowadza możliwość pracy w sieci, ale wykorzystuje dalej procedury DOS
• Wersja 95 pracuje samodzielnie, posiada wzbogacone możliwości pracy w sieci lokalnej i rozległej oraz nowy interfejs graficzny (powielany w wersjach 98, 2000...)
3
System operacyjny Windows
• Command Promt - połączenie z systemem MS-DOS.• Control Panel - panel sterowania.• Instalacja i usuwanie oprogramowania.• Modyfikacje konfiguracji systemu.• Obsługa multimediów (Media/CD player/odtwarzacz)
Systemy Operacyjne
• Obsługa multimediów (Media/CD player/odtwarzacz)• Elementy sieciowe systemu Windows
– Grupy robocze, domeny i konta użytkowników.– Poczta elektroniczna, połączenie z siecią rozległą.– Obsługa drukarek.
6+3
WindowsOgraniczenia• Stosunkowo wolny interfejs graficzny wymaga
stosowania drogich kart graficznych i szybkich procesorów
• Złożoność systemu powoduje liczne błędy
Systemy Operacyjne
• Złożoność systemu powoduje liczne błędy pojawiające się w nieoczekiwanych momentach.
• Brak dostępu do wielu podstawowych procedur uruchamiających i konfiguracyjnych.
3