Opracowanie - wykładowe WDI PDF

Title Opracowanie - wykładowe WDI
Course Informatyka
Institution Politechnika Lódzka
Pages 20
File Size 330.2 KB
File Type PDF
Total Downloads 31
Total Views 155

Summary

Wprowadzenie do Informatyki Notatki...


Description

Unicode Rozbudowana w stosunku do ASCII tablica znaków, która opisuje przyporządkowanie poszczególnych symboli do odpowiadających im wartości liczbowych. UTF-8 Każdy tekst ASCII jest tekstem w UTF-8 UTF-16 Działa na liczbach 16-bitowych, a więc może opisać 216, czyli 65 536 różnych znaków, co wystarcza do zapamiętania większości liter używanych we wszystkich alfabetach świata. UTF-32/UCS-4 Słowo 32 bitowe Unicode opracowany od lat 1988-1991 przez Unicode Consortium (wiele firm) współpracujące z ISO. Standard jest cały czas rozwijany. Translacja: Translator, definicje (1) Translator to program, który umożliwia wykonanie programów napisanych w języku różnym od języka komputera. (2) Translator to specjalny program komputerowy, dokonujący tłumaczenia (translacji) programu napisanego w języku programowania, z postaci źródłowej do postaci wynikowej, zrozumiałej dla maszyny. Rozróżnia się dwa rodzaje translatorów oraz odpowiednio dwie podstawowe techniki translacji: • kompilatory (kompilacja) • interpretery (interpretacja) Kompilator:

1

Kompilator: program, który tłumaczy tekst (kod) źródłowy programu na równoważny tekst (kod) wynikowy. Program źródłowy jest napisany w języku źródłowym, a program wynikowy należy do języka wynikowego. Wykonanie programu kompilatora następuje w czasie tłumaczenia. • Cecha zasadnicza: program po przetłumaczeniu nie da się zmienić, jest statyczny. • Kompilator jako dane wejściowe otrzymuje „cały” program źródłowy i przekształca go na postać wynikową. Zalety kompilacji: • program skompilowany wykonuje się szybciej niż program interpretowany • do wykonania programu wynikowego nie jest potrzebny kompilator Interpretacja:

Interpreter można nazwać dynamicznym translatorem. Tłumaczy on oraz na bieżąco wykonuje program źródłowy. Działanie interpretera polega na wyodrębnieniu niewielkich jednostek programu źródłowego, tłumaczeniu ich na pewną postać wynikową i natychmiastowym ich wykonywaniu. Proces jest cykliczny. W czasie interpretacji przechowywany jest program źródłowy. Wynik tłumaczenia nie jest dostępny. 2

Zalety interpreterów: • łatwość zmian programu • mniejsza zajętość pamięci zewnętrznej (tylko tekst źródłowy) • możliwość pracy konwersacyjnej (zatrzymanie wykonania, zmiana wartości zmiennych, modyfikacja kodu, kontynuacja wykonania) • przenośność, niezależność od platformy systemowo-sprzętowej, wykorzystanie w zastosowaniach sieciowych (tylko tekst źródłowy) Rodzaje pamięci ze względu na dostęp 

Dostęp sekwencyjny – odczyt i zapis przez adres rekordu dostępny dzięki sekwencji liniowej. Czas dostępu różny.



Dostęp bezpośredni – dostęp do najbliższego otoczenia bloku lub rekordu i sekwencyjne poszukiwanie lokalizacji. Czas dostępu różny.



Dostęp swobodny – lokalizacja adresowana bezpośrednio. Czas dostępu stały.



Dostęp skojarzeniowy – umożliwia porównanie i wybór bitów wewnątrz wielu słów. Czas dostępu stały.

CZAS DOSTĘPU – czas jaki upływa od momentu zainicjowania pracy pamięci do momentu otrzymania na jej wyjściu gotowej informacji.

3

Pamięci typu RAM: SRAM (do realizacji jednej komórki układu konieczne jest 6 tranzystorów



[4 tranzystory+2 oporniki]) DRAM (do realizacji jednej komórki układu konieczne jest 1 tranzystor i 1 kondensator)



ARCHITEKTURY KOMPUTERÓW WG. FLYNNA (taksonomia Flynna 1967r.) 1. SISD (single instruction stream – single data stream) – pojedynczy strumień rozkazów – pojedynczy strumień danych. 2. MIMD (multiple instruction stream – multiple data stream) – wiele strumieni rozkazów - wiele strumieni danych. 3. SIMD (single instruction stream – multiple data stream) – pojedynczy strumień rozkazów – wiele strumieni danych. 4. MISD (multiple instruction stream – single data stream) – wiele strumieni rozkazów – pojedynczy strumień danych. SISD Jest to architektura klasycznego komputera sekwencyjnego, zawierającego jeden procesor i jeden blok pamięci operacyjnej. Ciąg instrukcji wykonywany jest sekwencyjnie. Architektura taka może zawierać również pewne elementy równoległości, jak np. przetwarzanie potokowe (ang. pipelining). Procesor może się składać z kilku jednostek przetwarzających, jednak wszystkie te jednostki podlegają jednej jednostce sterującej procesora. Również jeżeli komputer składa się z kilku procesorów, ale wykonują one niezależne od siebie programy, to możemy traktować go jako zestaw maszyn SISD. MIMD Jest to obecnie najbardziej rozległa i najważniejsza kategoria maszyn równoległych. W maszynach takich poszczególne procesory wykonują różne operacje na różnych danych, stanowiących różne części tego samego zadania obliczeniowego. Możemy wyróżnić dwie podkategorie tej architektury: •

SM-MIMD - Shared Memory MIMD



DM-MIMD - Distributed Memory MIMD

Istnieją także systemy hybrydowe, posiadające cechy obydwu tych kategorii.

SM-MIMD 4

Maszyny tego typu składają się z wielu procesorów mających dostęp do globalnej pamięci, jednolicie adresowanej. W praktyce dostęp do pamięci realizowany jest przez sieć połączeń, np. magistrala, wielostopniowe przełącznice krzyżowe. Zaletą tej architektury jest łatwość realizacji, a także łatwość programowania, bo skoro istnieje pamięć dzielona, nie ma potrzeby korzystania z procedur komunikacji między procesorami. Wadą jest słaba skalowalność, która jest spowodowana niemożliwością zapewnienia wzrostu przepustowości dostępu do pamięci proporcjonalnego do ilości procesorów. Tego typu architektura stosowana jest między innymi w wieloprocesorowych komputerach PC. Rynkowa nazwa tej architektury to SMP (ang. Symmetric MultiProcessing). Należy zadanie obliczeniowe podzielić tak, aby możliwie jak najrzadziej dochodziło do wymiany danych pomiędzy procesorami, co jest często zadaniem nietrywialnym. Obecnie istnieją standardy komunikacji takie jak MPI i PVM, więc sama implementacja procedur komunikacyjnych sprowadza się do użycia gotowych bibliotek. Pomimo wad, architektura ta pod względem całkowitej wydajności wyprzedza wszystkie inne. SIMD Jest to typ maszyny, która te same operacje wykonuje jednocześnie na różnych danych. Może być to realizowane przez jeden procesor operujący na tablicy danych SM-SIMD - maszyny wektorowe Głównym składnikiem jest procesor wektorowy, wykonujący w sposób równoległy ciągi tych samych instrukcji. Dane są pobierane, a po wykonaniu instrukcji zapisywane do tej samej pamięci globalnej. Zaletą architektury SM-SIMD jest bardzo proste programowanie, wadą to że warto ją stosować tylko do zadań w których wykonuje się głównie obliczenia wektorowe. DM-SIMD - tablice procesorów Maszyny te są zbudowane z dużej ilości prostych procesorów i z jednego procesora sterującego. Wszystkie procesory liczące mają swoją pamięć lokalną i są najczęściej połączone tylko ze swoimi sąsiadami (czterema lub sześcioma, w zależności od konfiguracji). Każdy procesor wykonuje ten sam ciąg instrukcji, w tym samym czasie, na swoich danych lokalnych. Wymiana danych zachodzi tylko między sąsiadami, tak więc przesyłanie danych między dalszymi procesorami zachodzi na zasadzie – od procesora do procesora – zgodnie z ustalonym algorytmem routingu, co bardzo spowalnia obliczenia. Zaletą tej architektury jest łatwość w programowaniu, natomiast wadą – przydatność jedynie w szczególnych zastosowaniach, charakteryzujących się dużą regularnością i rzadką wymianą danych z dalszymi procesorami. Maszyny tego typu dominowały w drugiej połowie lat 70-tych.

MISD 5

Maszyny tego typu, wykonują różne operacje na tych samych danych. Architektura ta występuje w klasyfikacji wyłącznie w celach formalnych. Jedyny przykład zastosowania to procesor szyfrujący wg algorytmu DES. -------------------------------------------------------------------------------------------------------------------------------Klastry Klaster możemy zdefiniować, jako zbiór niezależnych, połączonych ze sobą stacji roboczych, wykonujących wspólne obliczenia. Klastry zaliczamy do architektury DM-MIMD. Rozkwit systemów klastrowych nastąpił w 1994, kiedy powstał pierwszy klaster Beowulf. Zbudowany był z szesnastu komputerów z procesorem Intel DX4, połączonych siecią Ethernet. Był to duży sukces ponieważ dowodził celowości i ekonomii budowania klastrów. Główną ich zaletą są niskie koszty sprzętu i oprogramowania. Klaster można zbudować z komputerów PC, a większość bibliotek programistycznych jest darmowa. Zalety: •

Duża wydajność i duża przepustowość



Duża niezawodność i dyspozycyjność – Przy wielu połączonych maszynach, strata jednej nie

wpłynie znacząco na działanie klastra. Najważniejsze komponenty systemu, można powielić na wielu maszynach, tak aby system mógł działać po awarii którejś z maszyn. •

Ekonomia – Klastry mają najwyższy stosunek wydajność do ceny.



Duża rozszerzalność i skalowalność – Kiedy wzrasta zapotrzebowanie na moc obliczeniową,

dodatkowa stacja może być dołączona do sieci, a oprogramowanie „sklonowane” lub skopiowane z innego komputera. Dla architektury zcentralizowanej, uaktualnienie jednostki typu mainframe jest kosztowne i skomplikowane. •

Technologia – Dzisiejsze klastry mogą być zbudowane z tysięcy maszyn i osiągają prędkości

niedostępne dla systemów zcentralizowanych. Wady: •

Ograniczona ilość oprogramowania – Obecnie istnieje niewielka ilość oprogramowania

wykorzystująca klastry, a pisanie takich aplikacji od podstaw może być kosztowne i czasochłonne. •

Sieć łącząca stacje może zawodzić – Sieć może być przeciążona, gubić komunikaty lub może mieć

zbyt małą przepustowość aby efektywnie obsłużyć odpowiednią ilość maszyn. •

Problemy bezpieczeństwa – W przypadku klastrów zwiększa się możliwość dostępu do systemu, a

także ataku osób trzecich, lub włamania do systemu.

Chmura (cloud computing) kompleksowa, zewnętrzna obsługa środowiska IT firmy. 6

Chmura daje możliwość korzystania z najnowszego oprogramowania, serwerów, pamięci masowych, mocy obliczeniowej, aplikacji bez potrzeby rozbudowy infrastruktury informatycznej i działu IT w firmie. Cloud Computing pozwala na kompleksową realizację potrzeb informatycznych z jednym dostawcą odpowiadającym za realizację całości usługi (sprzęt / sieć / oprogramowanie). Zalety chmury: Oszczędność - chmura redukuje koszty zakupu i utrzymania sprzętu i oprogramowania oraz koszty osobowe. Skalowalność

- elastyczność architektury chmury pozwala na natychmiastowe zwiększenie lub

zmniejszenie mocy obliczeniowej. Chmura umożliwia dostosowanie środowiska IT do aktualnych potrzeb firmy. Bezpieczeństwo - chmura daje gwarancję niezawodności działania poprzez zapewnienie: bezpiecznego centrum danych, podstawowej i zapasowej infrastruktury, w tym infrastruktury sieciowej, stałego monitoringu systemów oraz nadzoru zasilania z wykrywaniem awarii i natychmiastową sygnalizacją. Komfort - chmura zapewnia pełen komfort pracy firmy, ponieważ odpowiedzialność za utrzymanie i prawidłowe działanie środowiska IT przesuwa na dostawcę rozwiązania. Chmura systematycznie aktualizuje aplikacje i sprzęt. Czas realizacji – chmura pozwala na niemal natychmiastową modyfikację zakresu wykorzystywanych aplikacji Outsourcing - „korzystanie z usług firm zewnętrznych” jest jedną z najefektywniejszych strategii zarządzania firmą gdyż dzięki niemu można zrezygnować z wielu funkcji, które zajmują dużo czasu i pieniędzy a skupić się na kluczowej działalności. Outsourcing obejmuje: •

administracja serwerami



administracja siecią wewnętrzną oraz dostępem do Internetu



administracja aplikacjami biznesowymi



tworzenie, utrzymanie i rozwój aplikacji



zarządzanie bezpieczeństwem, archiwizacja dokumentów i baz danych



zarządzanie projektami informatycznymi



wsparcie techniczne i merytoryczne dla użytkowników



audyt i inwentaryzacja sprzętu i oprogramowania

SYSTEM OPERACYJNY ZESTAW PROGRAMÓW ZARZĄDZAJĄCYCH ZASOBAMI KOMPUTERA. 7

Program, zwany jądrem działa w komputerze nieustannie SYSTEMY WSADOWE – automatyczne przekazywanie sterowania od jednego zadania do następnego. SPOOLING (simultaneous peripheral operation on-line) – jednoczesna bezpośrednia praca urządzeń. Przyspieszenie, ale: •

konieczne planowanie zadań



podział czasu procesora

Przetwarzanie zadań: 1.

wieloprogramowane (wieloprogramowość)

2.

systemy z podziałem czasu (wielozadaniowość ang. MULTITASKING) – logiczne rozszerzenie

wieloprogramowości umożliwia m. in. tryb interakcyjny Problemy: •

bezpośredni dostęp do systemu plików



synchronizacja zadań i komunikacja między nimi



działania współbieżne

SYSTEMY WIELOPROCESOROWE •

Model przetwarzania symetrycznego – na każdym procesorze identyczna wersja systemy

operacyjnego •

Model przetwarzania asymetrycznego – każdy procesor ma przypisane inne zadanie. Systemem

zawiaduje procesor główny. SYSTEMY ROZPROSZONE Każdy procesor ma własną pamięć lokalną. Komunikacja w różny sposób (szyny danych lub nawet linie telefoniczne!) Procesory mogą być różne (mikroprocesory, stacje robocze czy wielkie systemy). Powody budowy: 1.

podział zasobów

2.

przyspieszenie obliczeń

3.

niezawodność

4.

komunikacja

8

SYSTEMY CZASU RZECZYWISTEGO (real-time) •

RYGORYSTYCZNY (hard real-time system) – gwarantuje terminowe wypełnienie krytycznych

zadań •

ŁAGODNY (soft real-time system) – krytyczne zadanie ma pierwszeństwo przed innymi

FUNKCJE SYSTEMU OPERACYJNEGO ZARZĄDZANIE PROCESAMI •

tworzenie i usuwanie procesów użytkowych i systemowych



wstrzymywanie i wznawianie procesów



dostarczanie mechanizmów synchronizacji procesów



dostarczanie mechanizmów komunikacji procesów



dostarczanie mechanizmów obsługi zakleszczeń

POWŁOKI SYTEMOWE Powłoka (shell - interpreter poleceń) jest programem, który odczytuje, interpretuje i przetwarza polecenia. Zaraz po zarejestrowaniu się użytkownika system przygotowuje powłokę, która czeka na wydanie polecenia. Powłoka zapewnia łączność pomiędzy systemem a użytkownikiem. Istnieje kilka rodzajów powłok, z których najważniejsze to powłoki Bourne'a i C. Z obu powłok wywodzi się kilka innych. Nazwa sh rsh ksh rksh bash csh tcsh

Pełna nazwa (nazwa angielska) powłoka Bourne'a (Bourne Shell) ograniczona powłoka Bourne'a (Restricted Bourne Shell) powłoka Korna (Korn Shell) ograniczona powłoka Korna (Restricted Korn Shell) ponowiona powłoka Bourne'a (Bourne Again Shell) powłoka C (C-Shell) bez nazwy

Metody przydziału miejsca na dysku 1.

Przydział ciągły

Przydział ciągły jest najprostszym z modeli zarządzania pamięcią. W modelu tym każdemu procesowi przydziela się jeden spójny fragment pamięci fizycznej. W systemie zwykle działa współbieżnie wiele procesów. Pamięć fizyczna jest więc podzielona na zajęte i wolne fragmenty 2.

Przydział listowy

9

Przydział listowy polega na tym, że bloki tworzące jeden plik są połączone w listę jednokierunkową. Każdy z bloków zawiera numer następnego bloku tworzącego plik. Dzięki temu bloki pliku mogą być rozmieszczone dowolnie. Plik jest identyfikowany przez pierwszy swój blok. Wadą takiego rozwiązania jest bardzo wolny dostęp swobodny do pliku. Zmiana pozycji w pliku może wymagać przejrzenia bloków tworzących plik od początku pliku. 3.

Przydział indeksowy

Przydział indeksowy polega na zebraniu numerów bloków tworzących plik w jednym bloku, tzw. bloku indeksowym. Plik na dysku jest reprezentowany przez numer bloku indeksowego. Przy zastosowaniu takiej strategii, dostęp do dowolnego miejsca w pliku wymaga co najwyżej dwóch operacji dyskowych. Jednak wielkość pliku jest ograniczona. Przykładowo, jeżeli bloki dyskowe mają po 4kB, a numer bloku zajmuje 32bity, to maksymalna wielkość pliku to 1024*4kB = 4MB. Węzły informacyjne Z punktu widzenia użytkownika plik jest identyfikowany przez nazwę sieciową. Na jej podstawie system musi zlokalizować bloki dyskowe pliku, czyli miejsce, w którym plik jest przechowywany na dysku. Podstawą lokalizacji bloków dyskowych pliku są węzły informacyjne pliku. Zawierają one zestaw informacji opisujących plik (tzn. atrybuty pliku) oraz opis organizacji fizycznej pliku (wskaźniki do dyskowych bloków danych). Wszystkie adresy dyskowe plików o rozmiarze nie przekraczającym 10 bloków są przechowywane bezpośrednio węźle informacyjnym pliku. Jeśli plik jest większy niż 10 bloków, potrzebny jest dodatkowy blok zawierający adresy pozostałych bloków pliku, natomiast w węźle informacyjnym przechowywany jest adres tego bloku, tzn. wskaźnik na wskaźnik pośredni. W zależności od rozmiaru bloku dyskowego i długości adresu pojedynczy blok pośredni może zawierać od 128 do 256 adresów.

10

Sieci komputerowe Systemy zamknięte – stare rozwiązanie protokół zależy od producenta urządzenia. Systemy otwarte – pozwala na zmianę sprzętu bez reorganizacji sieci. •

zbudowane zgodnie z pewną normą,



pozwalają na współpracę sprzętu i oprogramowania różnych producentów,



są zdolne do wymiany informacji z innymi systemami otwartymi

Sieci komputerowe – podział •

Sieci rozległe WAN (Wide Area Network) ZSK (zdalne sieci komputerowe) – łączą sieci lokalne –

przykładem jest globalna sieć Internet •

Sieci lokalne LAN (Local Area Network) LSK (lokalne sieci komputerowe ) – biura, uczelnie,

fabryki •

Sieci miejskie MAN (Metropolitan Area Network) MSK (miejskie sieci komputerowe) – do łączenia

sieci lokalnych •

Sieci personalne PAN (Personal Area Network) PSK (personalne sieci komputerowe) – np. z

wykorzystaniem Bluetooth Typy sieci wg Rodzaju komutacji: •

Sieci z komutacja łączy (circuit switching)

o

POTS (Plan Old Telephone Service)

o

N-ISDN (Narrowband Integrated Services Digital Network)



Sieci z komutacją pakietów (packet switching)

o

IP

o

X.25

o

Frame Relay

•Sieci z komutacją komórek (cell switching): o

ATM (Asynchronious Transfer Mode)

technologia przesyłania informacji w sieciach telekomunikacyjnych (szerokopasmowych) o bardzo wysokiej przepustowości, np. opartych na światłowodach, umożliwiająca optymalne wykorzystanie sieci. Cechuje ją praktycznie nieograniczone pasmo transmisji. Opiera się na asynchronicznej transmisji 53 bajtowych komórek. Została wynaleziona z myślą o przekazywaniu danych multimedialnych. o

SMDS (Switched Multimegabit Data Service)

11

technologia komutowanych usług przesyłania informacji z szybkością 45 Mb/s za pomocą pakietów o wielkości do 9188 B (które można dzielić na 53-bajtowe komórki. Usługa SMDS wypełnia lukę między szybkimi usługami sieci rozległych a usługami ATM. Każdy pakiet SMDS jest samodzielny, usługi SMDS nie tworzą obwodów wirtualnych. MODEL OSI/ISO - REFERENCE MODEL FOR OPEN SYSTEM INTERCONNECTION – KONIEC LAT 70: Warstwy modelu OSI/ISO 7.Aplikacji 6. Prezentacji 5. Sesji 4. Transportu 3. Sieciowa 2. Łącza danych 1. Fizyczna Zalety modelu warstwowego •

umożliwia niezależny rozwój warstw



zmniejsza złożoność systemu



standaryz...


Similar Free PDFs