Krótka Historia Systemów Operacyjnych
Transkrypt
Krótka Historia Systemów Operacyjnych
Krótka Historia Systemów Operacyjnych Tomasz Borzyszkowski UNIX: prepoczątki 1965r. - firmy Bell Telephone Labs, General Electric Company i Massachusetts Inst. of Tech. podjęły prace nad stworzeniem nowego systemu operacyjnego MULTICS, miał on zapewniać: wielodostęp współdzielenie danych udostępniać duże moce obliczeniowe wszystkim użytkownikom prosta wersja zaimplementowana na maszynie GE 645 przed 1969 Bell Labs wycofuje się z projektu lecz ich centum obliczeniowe pozostaje bez środowiska do obliczeń interaktywnych projekt wychował przyszłych twórców systemu UNIX: Kena Thompsona (KT) i Denisa Ritche (DR) 2 UNIX: początki 1969(KT i DR) wczesna wersja UNIXa na GE 645: ubogie jądro i prosty system plików DR pisał w Fortranie grę Podróż w przestrzeni kosmicznej lecz skomplikowana asemblacja skłoniła go do zaimplementowania sys. UNIX na komputerze PDP-7 by poprawić środowisko pisania gry; składał się z: systemu plikow; podsystemu obsługi procesów i małego zbioru programów usługowych nazwę UNIX wymyślił Brian Kernighan (kalambur od MULTICS) 1971 instalacja na PDP-11; mały rozmiar: system - 16KB, programy użytkowe - 8KB, dysk - 512KB i 64KB -ograniczenie rozmiaru pliku 3 UNIX: początki cd 1973 UNIXa napisano na nowo w języku C 1971 KT pod wpływem BCPL projektuje język B (interpreter) 1972 DR rozwinął B w język C (kompilacja i generowanie kodu, typy danych, ...) 25 instalacji w Bell Labs; powstaje Unix System Group 1976 UNIX Version 6: pierwsza wersja poza Bell Labs 1978 UNIX V7: wieloplatformowy (PDP-11/70, Interdata8/32, VAX) pochodzi od niej większość współczesnych UNIXów (komercyjnych) oraz powstaje USG (UNIX Support Group) 1984 UNIX System V R2 i R4, cechy: pamięć wirtualna ze stronicowaniem w trybie kopiowania, pamięć dzielona i system strumieni we/wy 4 UNIX: a tymczasem w Berkley ... od 1978 opracowywano UNIXa na komputery VAX. Wersje z Berkley nazywają się BSD (Berkley Software Distribution) Najpopularniejsza wersja to 4.2 BSD zawiera: protokoły sieciowe: TCP/IP, lokalne: Ethernet, pierścieniowe z żetonami i globalne: NFS NET. Przyczynia się do rozpowszechnienia Internetu i ww. protokołów. Wersja 4.3 BSD rozszerza 4.2 BSD o: c-shell (csh) edytory ex/vi kompilatory Pascala i LISPa 5 Inne UNIXy ULTRIX i OSF/1: firma DEC, administracja jak w BSD, jądro jak w System V SunOS i Solaris: pierwszy BSD, drugi V.4, oba firmy Sun AIX: mieszanka V.4, BSD i OSF/1, firma IBM SCO UNIX: V.3.2, firma Santa Cruz Operation XENIX: UNIX przepisany przez Microsoft na procesor Intel 8088 HP-UX: wariant Systemu V z wieloma cechami OSF/1, firma Hewlett-Packard Linux: "Linux is not UNIX" ale duży wpływ miała wersja 4.3BSD firma: społeczność internetowa 6 UNIX: architektura e n In nr of f comp programy Programy std. tko we Jądro e t da Sprzęt who t u o . a wc sh gre p ld vi u ży cc 7 Linux: początki 1991 - student z Finlandii Linus Torvalds rozpoczyna prace nad Linuxem; 14 maja 1991 - pojawia się wersja 0.01 jej cechy: dziła tylko na procesorach zgodnych z Intel 80386 i sprzęcie PC system plików MINIXa i niewiele urządzeń zewnętrznych jądro realizuje procesy w trybie chronionym nie współpracuje z siecią akademicka, dydaktyczna wersja UNIXa projekt A.S. Tanenbauma z Univ. of Vrije (Amsterdam) źródła dostępne w INTERNECIE! 8 Linux: początki cd. 14 marca 1994 - wersja 1.0, cechy: sieć TCP/IP sterowanie urządz. przez IP rozbudowa pamięci wirtualnej więcej urządzeń (wciąż tylko PC) nowy system plików (już nie MINIX, dodano SCSI) emulacja koprocesora 80387 zrealizowano komunikację międzyprocesową IPC zgodnie z systemem V (pamięć dzielona, semafory, kolejki komunikatów) gniazda zgodne z BSD marzec 1995 - wersja 1.2, cechy: działa w architekturze PCI emulacja 8086 (czyli DOSa) częściowa realizacja jądra na Sparc, Alpha i Mips 9 Linux: początki cd. czerwiec 1996 - wersja 2.0, cechy: dostępność wielu architektur: 64b Alpha, wieloprocesorowe, Motorola 68000, Sun Sparc wątki wewnątrz jądra podręczna pamięć plików, także w NFS nowe protokoły sieciowe: Appletalk, ISDN dynamiczne ustalanie zależności ładowanych modułów: RPM 10 Linux: GNU pierwsze UNIXy były strzeżone restrykcyjnymi licencjami i nie udostępniały kodu źródłowego Richard Stallman z Massachusetts Inst. of Tech. założył FSF: Free Software Foundation, jej celem jest zachęcanie do rozwoju i korzystania ze swobodnie dostępnego i rozprowadzanego oprogramowania FSF tworzy GPL - General Public Licence, skrót: 1. Każdy, kto dostaje oprogramowanie zgodne z GPL ma prawo do uzyskania kodu źródłowego bez dodatkowej opłaty. 2. Dowolne oprogramowanie, które powstało na podstawie narzędzi z licencją GPL musi też posiadać tę licencję. 3. Każdy, kto ma oprogramowanie zgodne z GPL, ma prawo je rozpowszechniać na warunkach GPL. 11 Linux: GNU cd. FSF sponsoruje projekt GNU's Not Unix, celem projektu jest stworzenie swobodnie dostępnego i wzorowanego na UNIXie systemu operacyjnego bazującego na licencji GPL na początku działalności skupili się na tworzeniu programów narzędziowych, najbardziej znane to: edytor Emacs system okien X Window interpreter bash system składania tekstów TeX język przetwarzania kompilator gcc tekstów gawk język Perl kolejnym etapem, w 1992, było przeniesienie pow. narzędzi na Linux wersja 0.95 itd......... 12 Windows NT połowa lat 80-tych: Microsoft i IBM współpracują przy tworzeniu systemu operacyjnego OS/2; pisany w asemblerze dla jednoprocesorowych komputerów z Intelem 80286 Application Programming Interfece 1988 projekt przejęty przez IBM, Microsoft postanawia zacząć wszystko od nowa i wyprodukować system zawierający API z OS/2 i zgodny ze standardem POSIX Portable Operating System Interface 13 Windows NT cd. Podstawowe cechy Windows NT: przenośność między platformami łatwe dodawania nowych rozwiązań sprzętowych i programowych odporność na błędy bezpieczeństwo, klasa C-2 zgodność: możliwość kompilacji programów spełniających POSIX wydajność i wymogi międzynarod. w 1988 Microsoft wynajmuje Dave'a Cutlera, twórce systemu VMS na komp. VAX z firmy DEC Rząd USA zdefiniował standardy (rosnąco): C1, C2, B1, B2, A1. C2 to: obowiązkowe hasła oraz ich starzenie się i szyfrowanie 14