Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałEustachy Bednarczuk Został zmieniony 11 lat temu
1
System komputerowy. Oprogramowanie. Systemy operacyjne
2
Truizmem jest stwierdzenie, że zainteresowanie komputerami ma obecnie charakter autentycznie masowy.
3
Laicy wierzą w to, że są one wszechmocne
4
Komputer jednak sam z siebie nie potrafi niestety nic zrobić.
Do tego, żeby komputer był użytecznym urządzeniem konieczne jest, by znajdował się w nim program sterujący jego pracą. Nader często właśnie program jest czynnikiem decydującym o innowacyjności jakiegoś rozwiązania technicznego. Dlatego możemy mówić o rozwiązaniach wspomaganych programami komputerowymi jako o nowej dziedzinie techniki a także jako o przedmiocie ochrony własności intelektualnej.
5
Komputery bez programów są nieprzydatne do niczego!
6
Komputery, a za ich pośrednictwem także programy, są obecnie kluczowym składnikiem większości systemów technicznych i ekonomicznych
7
Dzisiaj niepodobna już wyobrazić sobie nowoczesnej cywilizacji bez programów komputerowych, gdyż są one niezbędnym elementem wielu rozwiązań spotykanych dosłownie na każdym kroku
8
Wbrew temu, co sądzi wielu ludzi, sam komputer nie jest wcale najsilniejszą „figurą” na „szachownicy” współczesnej nauki i techniki Jego siła i zdolność oddziaływania wynikają z faktu, że komputer jako taki nic nie narzuca obszarom, w których jest stosowany - żadnych własnych, indywidualnych cech. Jest on jak gdyby przeźroczysty dla programów, które są umieszczane w jego wnętrzu i determinują jego zachowanie. Dzięki temu rozwiązania korzystające z komputerów mogą być tak bardzo elastyczne i wielozadaniowe.
9
Oprogramowanie Oprogramowanie (ang. software), program lub zbiór programów, umożliwiający korzystanie z komputera oraz ze sprzętu peryferyjnego (aparatury specjalistycznej, modemu, skanera, itp.) zgodnie z potrzebami użytkownika Z innego punktu widzenia oprogramowanie to program lub zbiór programów, pozwalający wygodnie rozwiązywać konkretne problemy użytkownika – bez konieczności każdorazowego pisania własnych programów dla każdego zadania.
10
Cechy oprogramowania Oprogramowanie jest niezbywalną częścią systemu komputerowego, dzięki swojej wymienności może zmieniać jego przeznaczenie. Ten sam komputer osobisty może być używany jako elektroniczny sekretariat, a w chwilę potem, dzięki użyciu innego oprogramowania przeistacza się w salon gier lub internetową pocztę, telefon i radio, przy czym dzięki wieloprogramowości i środowisku okienkowemu może pełnić wszystkie te funkcje jednocześnie. Źródło: Wielka Internetowa Encyklopedia Multimedialna (
11
Klasyfikacja oprogramowania
oprogramowanie systemowe (system operacyjny) - zbiór programów zarządzających pracą komputera, oprogramowanie narzędziowe - programy diagnostyczne, testujące, archiwizujące, antywirusowe, komunikacyjne, umożliwiające korzystanie z zasobów sieciowych (np. sieci Internet) i inne programy pomocnicze, oprogramowanie służące do tworzenia innych programów (translatory, linkery, biblioteki), uniwersalne programy użytkowe (edytory, arkusze kalkulacyjne, systemy zarządzania bazami danych, programy graficzne, programy matematyczne i statystyczne), programy pisane na zamówienie konkretnego użytkownika (programy dedykowane) - np. wspomagające prace rachunkowo - księgowe w konkretnym przedsiębiorstwie, sterujące procesem technologicznym, symulujące zachowanie się badanego systemu, programy pisane przez użytkowników na ich własne potrzeby - programy służące do rozwiązywania zadań specyficznych dla danego użytkownika - np. problemy obliczeniowe, makropolecenia wspomagające pracę z zastosowaniem programów użytkowych.
12
Nowoczesne oprogramowanie w pewnym sensie izoluje użytkownika od bezpośredniego kontaktu ze sprzętem oraz w wielu przypadkach „maskuje” jego niedoskonałości Programy użytkowe Programy usługowe systemu operacyjnego Jądro systemu operacyjnego sprzęt
13
Oprogramowanie jest nie tylko droższe od sprzętu komputerowego, ale w dodatku częściej się psuje
14
System operacyjny System operacyjny – jest to program (lub układ wielu programów) zarządzający zasobami systemu komputerowego i pełniący rolę pośrednika pomiędzy człowiekiem a komputerem. System operacyjny jest niezbędnym składnikiem każdego systemu komputerowego.
15
Systemy operacyjne (oraz inne elementy oprogramowania) są obecnie rozwijane na dwa konkurencyjne sposoby: Jako oprogramowanie firmowe, wytwarzane przez profesjonalne firmy i sprzedawane (drogo!) użytkownikom nie mającym wpływu na jego kształt (proprietary domain) Jako oprogramowanie tworzone przez samych użytkowników, wymieniane bezpłatnie i stale doskonalone przez inicjatywy oddolne (open source)
16
Pomiędzy zwolennikami jednego i drugiego podejścia toczy się od lat zażarta „wojna”
Dokonamy teraz krótkiego przeglądu niektórych związanych z nią zagadnień
17
Po stronie proprietary domain sytuacja jest prosta:
Liderem jest Microsoft
18
Po stronie open source sytuacja jest bardziej złożona
19
Świadczą o tym liczne symbole i zawołania bojowe
20
Chwilowo oprogramowanie firmowe ma zdecydowaną przewagę
21
Główni ideolodzy open source:
22
Richard Stallman
23
Eric Raymond
24
Na czym polega idea Open Source?
25
Ten produkt jest firmowy a jego receptura jest tajna!
26
Ten produkt jest dziełem amatorów, a jego receptura jest jawna.
27
Mapa „pola walki:
28
Dozwolone jest: uruchamianie w dowolnym celu
analizowanie dzialania programu rozpowszechnianie udoskonalanie i dostosowywanie do własnych potrzeb
29
Aby moc określić czy dany program może zostać uznany za Wolne Oprogramowanie, powstały tzw. Wytyczne Debiana dotyczące Wolnego Oprogramowania. Stanowią one formalną definicję Otwartego Źródła.
30
1. Swobodna redystrybucja: oprogramowanie może być swobodnie przekazywane lub sprzedawane.
2. Kod źródłowy: musi być dołączony lub dostępny do pobrania. 3.Programy pochodne: musi być dozwolona redystrybucja modyfikacji.
31
4. Integralność autorskiego kodu źródłowego: licencje mogą wymagać, aby modyfikacje były redystrybuowane jedynie jako patche. 5. Niedyskryminowanie osób i grup: nikt nie może zostać wykluczony. 6. Niedyskryminowanie obszarów zastosowań: nie wolno wykluczać żadnych, nawet komercyjnych zastosowań.
32
7. Dystrybucja licencji: prawa dołączone do oprogramowania muszą się odnosić do wszystkich odbiorców programu, bez konieczności wykonywania przez nich dodatkowej licencji. 8. Licencja nie może być specyficzna dla produktu: program nie może być licencjonowany tylko jako część szerszej dystrybucji.
33
9. Licencja nie może ograniczać innego oprogramowania: licencja nie może wymagać np. tego, aby inne dystrybuowane z pakietem oprogramowanie było typu Open Source. 10. Licencja musi być technicznie neutralna.
34
Kolejny podmiot na polu walki
Celem jest techniczna doskonałość kodu Free Software jest jednocześnie oprogramowaniem typu Open Source, ale OpenSource nie musi być oprogramowaniem Free Software
35
Jeszcze jedna ideologia:
copyleft
36
copyleft - all rights reversed
37
Jest to sposób licencjonowania oprogramowania zezwalający na swobodne modyfikacje i rozpowszechnianie. Pomysłodawcą jest Richard Stallman z Free Software Foundation.
38
Oprogramowanie copyleft to wolne programy, których warunki rozpowszechniania nie pozwalają redystrybutorom na dodawanie jakichkolwiek dodatkowych ograniczeń przy dalszym rozpowszechnianiu lub modyfikacji programu. Oznacza to, że każda kopia takiego oprogramowania, nawet jeśli została zmodyfikowana, musi być wolnym oprogramowaniem.
39
Oprogramowanie nie obiete copyleft
Różnica miedzy wolnym oprogramowaniem na licencji copyleft a wolnym oprogramowaniem nie objętym copyleft sprowadza się do zezwolenia przez autora na modyfikowani i rozpowszechnianie oprogramowania z możliwością nałożenia dodatkowych ograniczeń
40
GPL czyli General Public License GNU GPL jest zestawem warunków rozpowszechniania i służy nakładaniu na oprogramowanie licencji copyleft. GPL krytykowane jest często i nazywane tzw licencja wirusowa, ze względu na swoja restrykcyjność, gdyż wszelkie prace bazujące na dziele objętym GPL muszą również być oparte o tą licencję. Tak więc GPL oddziaływuje na każdy program, który korzysta z kodu GPL.
41
Jeszcze czymś innym są Public domain software...
...czyli oprogramowanie będące dobrem publicznym. Są to programy nie objęte prawem autorskim, a zarazem będące dobrem publicznym, czyli zasobem dostępnym na użytek ogółu bezpłatnie (jak ławka w parku)
42
Jeśli jakiś program jest wolny, to potencjalnie może zostać włączony do wolnego systemu operacyjnego, takiego jak GNU lub jednej z wolnych wersji systemu GNU/Linux.
44
GNU, skrot pochodzacy od GNU's Not Unix, to projekt Free Software Foundation mający na celu stworzenie wolnodostepnego systemu operacyjnego kompatybilnego z systemem Unix
46
nowoczesny wolnodostępny stabilny system operacyjny klasy UNIX
47
Budowa Linuxa jądro – zarządza urządzeniami oraz uruchamia programy
2. powłoka, jest to interfejs służący do przekazywania poleceń do jądra w celu ich wykonania. Interfejs tekstowy lub graficzny (X-Window System) 3. system plików, pliki są umieszczone w katalogach ułożonych w strukturze hierarchicznej przypominają drzewo i rozpoczynają się od katalogu głównego (root directory) 4. programy użytkowe
48
LOGO
50
http://freshmeat.net www.freshrpms.net www.sourceforge.net
51
Koniec dygresji. Powracamy do głównego wątku
52
W dużych systemach komputerowych ślady tej „wojny” są prawie niezauważalne: w sieciach komputerowych swobodnie współpracują ze sobą elementy należące do różnych technik i różnych „filozofii”
53
Funkcje systemu operacyjnego
zapewnienie komunikacji pomiędzy człowiekiem użytkującym system komputerowy a komputerem, zarządzanie procesami (proces jest to zbiór czynności, jakie wykonuje program realizowany w systemie komputerowym), zarządzanie pamięcią operacyjną, zarządzanie pamięcią zewnętrzną, zarządzanie systemem wejścia – wyjścia, zapewnienie bezpieczeństwa systemu komputerowego, realizacja funkcji sieciowych, konfigurowanie systemu komputerowego.
54
Komunikacja człowiek – komputer
Interfejs użytkownika – oprogramowanie pozwalające na komunikację pomiędzy użytkownikiem a systemem informatycznym. Typy interfejsów: tekstowy graficzny
55
Interfejs tekstowy tekstowy – użytkownik wpisuje polecenia. Przekazywane są one do realizacji w chwili zaakceptowania. Użytkownik musi znać składnię poleceń. Realizacja takiego sposobu komunikacji angażuje w niewielkim stopniu zasoby komputera.
56
Interfejs graficzny graficzny – interfejs typu WIMP (Windows, Icons, Menus, Pointer Devices – Okna, Ikony, Menu, Urządzenia wskazujące). Podstawowe czynności wykonywane są w prosty, intuicyjny sposób. Komunikacja w trybie graficznym ma duże wymagania w zakresie zasobów komputera (pamięci, czasu procesora, dysku).
57
Zarządzanie procesami
W uproszczeniu możemy przyjąć następującą tożsamość: Proces = program realizowany przez system komputerowy. Rodzaje procesów: użytkownika – programy uruchomione przez użytkownika systemowe – programy uruchomione przez system operacyjny.
58
Procesy w systemie Windows
59
Zadania systemu operacyjnego w zakresie zarządzania procesami
W chwili tworzenia procesu przedziela mu zasoby komputera niezbędne do jego realizacji (podstawowe zasoby komputera to: czas pracy procesora oraz obszary pamięci operacyjnej). Gdy proces kończy swoje działanie, to przydzielone mu wcześniej zasoby komputera są zwalniane i system operacyjny może je przydzielić innemu procesowi.
60
Procesy współbieżne We współczesnych systemach procesy zwykle realizowane są współbieżnie – co oznacza, że moc obliczeniowa procesora oraz pamięć operacyjna dzielona jest pomiędzy wiele procesów jednocześnie.
61
Zadania s. o. związane ze współbieżną realizacją procesów
przydziela każdemu procesowi odpowiednie obszary pamięci operacyjnej, dzieli czas pracy procesora, tak aby realizował on cyklicznie fragmenty kolejnych procesów (przydziela każdemu procesowi kwant czasu pracy procesora). rozstrzyga konflikty pomiędzy procesami
62
Współbieżne systemy operacyjne
Systemy, które umożliwiają współbieżną realizację procesów nazywane są: systemami wielozadaniowymi – gdyż w tym samym czasie realizuje się więcej niż jedno zadanie (przeciwieństwem systemów wielozadaniowych są systemy jednozadaniowe), systemami z podziałem czasu – gdyż czas pracy procesora dzielony jest pomiędzy poszczególne zadania. systemami wielodostępnymi – gdy poszczególne procesy realizowane są na użytek różnych użytkowników
63
Wielowątkowość Wielowątkowość polega na tym, że współbieżnie mogą być realizowane różne fragmenty tej samej aplikacji (np. w trakcie pracy z edytorem możliwa jest jednoczesna edycja jednego dokumentu i drukowanie innego).
64
Zarządzanie pamięcią operacyjną
W zakresie zarządzania pamięcią operacyjną system operacyjny wykonuje następujące zadania: ewidencjonowanie zajętych obszarów pamięci, przydzielanie i zwalnianie pamięci (często dynamiczne, związane ze zbiorami danych o zmiennych rozmiarach), nadzorowanie ustalonych alokacji pamięci i zapobieganie naruszaniu przez jeden proces zasobów przydzielonych innemu procesowi pozorowanie dostępności większego zasobu pamięci operacyjnej niż ten, który jest fizycznie dostępny poprzez zrzucanie fragmentów nie używanych w danym momencie kodów i danych na dysk (tzw. stronicowanie)
65
Zarządzanie pamięcią zewnętrzną
przydział obszarów na nośniku (dysku, dyskietce, taśmie) oraz ewidencja zajętych i wolnych obszarów nośnika, organizowanie dostępu do danych i programów przechowywanych w pamięci zewnętrznej: zasady nadawania nazw plikom, sposób uporządkowania plików (w większości przypadków stosowany jest hierarchiczny system plików), wykonywanie operacji na plikach – kopiowanie, przesuwanie, kasowanie itd.
66
Zarządzanie systemem wejścia – wyjścia
System wejścia - wyjścia to zespół elementów sprzętowych i programowych pozwalających na komunikację pomiędzy komputerem a światem zewnętrznym (ludźmi, innymi komputerami, aparaturą specjalistyczną itp.). W skład systemu operacyjnego wchodzi między innymi oprogramowanie pozwalające na korzystanie z portów (np. COM, LPT, USB). System wejścia - wyjścia służy do realizacja operacji związanych z: wprowadzaniem danych przez użytkownika, wprowadzaniem danych pochodzących z różnych urządzeń – pamięci masowej, wskazujących, skanerów, urządzeń pomiarowych, wyprowadzanie informacji przeznaczonych dla użytkownika, przesyłanie informacji do różnych urządzeń.
67
Zapewnienie bezpieczeństwa systemu
ochrona obszarów pamięci przydzielonych jednemu procesowi przed ingerencją innych procesów (np. aby uniemożliwić zawieszenie systemu przez błędnie działający program), ochrona systemu przed innymi użytkownikami identyfikatory i hasła prawa dostępu do plików i katalogów, ochrona przed błędami ze strony użytkownika: prośba o potwierdzenie operacji (kasowania pliku, usunięcia użytkownika), czasowe przechowywanie usuniętych elementów (Kosz w systemie Windows), ochrona przed skutkami awarii (np. archiwizacja danych), archiwizacja danych, tworzenie kopii obszarów systemowych dysków (np.: dane dotyczące struktury dysku, rejestry systemu Windows), organizacja jednoczesnego zapisu na wielu nośnikach. szyfrowanie danych, ochrona przed atakami za pośrednictwem sieci komputerowej (ściany ogniowe), ochrona antywirusowa.
68
Realizacja funkcji sieciowych
Sieć komputerowa – zestaw połączonych ze sobą komputerów. Podstawowe funkcje systemu operacyjnego związane z funkcjonowaniem w środowisku sieciowym to: zapewnienie możliwości korzystania ze wspólnych zasobów (dysków, drukarek, nagrywarek), zapewnienie komunikacji pomiędzy użytkownikami komputerów przyłączonych do sieci (poczta elektroniczna, komunikacja bezpośrednia, transfer plików), zapewnienie bezpieczeństwa systemom komputerowym przyłączonym do sieci.
69
Konfigurowanie systemu komputerowego
System operacyjny umożliwia: określenie podstawowych parametrów komputera oraz włączenie lub wyłączenie pewnych opcji, przystosowanie systemu do indywidualnych potrzeb i upodobań użytkownika (np. Linux - pliki tekstowe, Windows - rejestry), wiązanie konfiguracji sprzętowej i programowej z konkretnymi użytkownikami i z konkretnymi zadaniami.
70
Dawniej do każdego nowobudowanego komputera tworzony był „na miarę” jego unikatowy system operacyjny
Obecnie w tym zakresie istnieje korzystna standaryzacja oraz unifikacja
71
Charakterystyka przykładowych systemów operacyjnych
Unix Linux MS Dos MS Windows
72
Unix system wielozadaniowy,
pozwalający na pracę w trybie wielodostępnym, zawierający mechanizmy pozwalające na pracę w środowisku sieciowym, korzystający z hierarchicznego systemu plików, posiadający mechanizmy gwarantujące ochronę systemu komputerowego, pozwalający na korzystanie z interfejsu tekstowego lub graficznego, stosowany na różnych platformach sprzętowych.
73
Niektóre dodatkowe fakty na temat systemu UNIX
Pierwsza wersje powstała w 1969 roku w Bell Labs (UNIX System Laboratories, USL) Stworzyli go Denis Ritchie i Ken Thompson Korzystali oni z zasady KISS Stworzyli dla budowy UNIX język C Nazwa jest zastrzeżona dla Open Group - przemysłowego konsorcjum zajmującego się standaryzacją kompatybilnych systemów TCP/IP, FTP, DNS pierwotny pień stanowią systemyV i BSD (komercyjne i niekomercyjne) oraz klony ze standaryzowanymi normami
74
Linux stosunkowo nowy (pierwsza edycja 1991)
darmowy, zgodny z systemem UNIX, system operacyjny stworzony przez Linusa Torvalda (zobacz:
75
MS DOS - Microsoft Disk Operating System
dosyć stary (1981) i dzisiaj już rzadko używany jednozadaniowy system operacyjny przeznaczony dla jednego użytkownika wykorzystujący tekstowy interfejs użytkownika zarządzający pamięcią operacyjną o wielkości do 640 kB (korzystanie z większych obszarów pamięci było bardzo utrudnione), wykorzystujący hierarchiczny system plików nazwy plików tworzone były zgodnie ze schematem 8 + 3, co utrudniało zarządzanie informacjami przeznaczony dla komputerów osobistych.
76
MS Windows rodzina systemów operacyjnych Microsoft Windows, rozwijana od 1985 (Windows 1.0) - do dnia dzisiejszego przez firmę Microsoft graficzny interfejs użytkownika wielozadaniowość, praca w środowisku sieciowym hierarchiczna struktura plików standaryzacja sposobu obsługi programów, multimedialność możliwość wymiany danych pomiędzy aplikacjami (schowek, DDE - Dynamical Data Exchange, OLE - Object Linking and Embedding)
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.