Komputer osobisty - Katedra Informatyki > Home

Transkrypt

Komputer osobisty - Katedra Informatyki > Home
Wstęp do Informatyki
Świat komputerów
Komputer osobisty (Personal Computer)
Cezary Bolek
[email protected]
Uniwersytet Łódzki
Wydział Zarządzania
Katedra Informatyki
Superkomputery –
obliczenia naukowe
Komputery wbudowane
(embedded) –
sterowanie urządzeniami,
przetwarzanie sygnałów,
etc.
Komputery
osobiste
(PC)
Wstęp do Informatyki
[email protected]
Komputer osobisty
Sprzęt (Hardware)
Komputer ogólnego przeznaczenia ukierunkowany
na przetwarzanie danych bezpośrednio
zrozumiałych dla człowieka:
tekstu (wprowadzanie, przetwarzanie, rozpoznawanie)
dźwięku (muzyka, głos, rozpoznawanie)
obrazu (obrazy statyczne i ruchome, rozpoznawanie)
Urządzenia wejściowe:
klawiatura, mysz, mikrofon, aparat fotograficzny, kamera video,
skaner, etc...
Urządzenia wyjściowe:
Pamięć operacyjna
ROM, RAM
Jednostka centralna
CPU
Układy we/wy
In/Out
monitor (projektor), drukarka (ploter), głośnik, inne akcesoria
ukierunkowane na sterowanie.
Jak dotąd brak jest powszechnej realizacji przetwarzania sygnałów dla zmysłów
węchu, smaku i dotyku, choć próby istnieją (virtual reality)
Wstęp do Informatyki
[email protected]
Wstęp do Informatyki
[email protected]
1
„Standardy” i rzeczywistość
„Komputer typu PC”:
Procesor zgodny z architekturą Intel 80x86
Architektura wywodząca się z IBM PC
System operacyjny firmy Microsoft
DuŜa róŜnorodność procesorów do komputerów
osobistych i roboczych.
ZróŜnicowanie architektur typu PC (desktop, laptop
(notebook), palmtop, tablet, etc.
RóŜne systemy operacyjne (MacOS, Linux, PalmOS,
etc...)
Wstęp do Informatyki
[email protected]
Kompatybilność
Komputer osobisty
Komputer fizyczny:
procesor, pamięć, płyta główna, karty
rozszerzeń, monitor, etc...
Komputer logiczny:
programy, dokumenty, katalogi, pliki danych,
etc...
Komputer wirtualny:
interfejs uŜytkownika, look&feel, WWW
Ułatwienia obsługi komputera ukrywają złoŜoność całego systemu,
upraszczają wykonywanie typowych operacji, ale uniemoŜliwiają
zrozumienie istoty operacji lub problemów.
Wstęp do Informatyki
[email protected]
Kompatybilność „w dół” i „w górę”
... – wzajemnie się uzupełniający; zgodny, współgrający z czymś
Kompatybilność w dół (downward compatibility):
Kompatybilność – zdolność wykonywania programu na
róŜnych komputerach bez modyfikacji programu i
komputera.
Kompatybilność sprzętowa:
Komputery są kompatybilne (compatible) jeśli oba
mogą poprawnie wykonywać te same programy
(na poziomie kodu maszynowego)
Przenośność oprogramowania:
Program jest przenośny (portable) jeśli moŜna go
skompilować i uruchomić na róŜnych
(niekompatybilnych) komputerach
Wstęp do Informatyki
[email protected]
utrzymanie w nowych modelach sprzętu wszystkich
cech starej architektury (z moŜliwością dodania nowych)
moŜliwość uruchamiania na „nowych” komputerach
oprogramowania pisanego na „stare” komputery (na
poziomie kodu maszynowego)
Kompatybilność w górę (upward compatibility):
utrzymanie w przyszłych modelach sprzętu nowych cech
obecnej architektury (i nie dodawanie innych)
moŜliwość uruchamiania na „starych” komputerach
oprogramowania pisanego na „nowe” komputery (na
poziomie kodu maszynowego)
Wstęp do Informatyki
[email protected]
2
Kompatybilność – nieporozumienia
Kompatybilność dotyczy sprzętu, a nie
oprogramowania
kolejne wersje systemów operacyjnych mogą umoŜliwiać (lub nie)
uruchamianie oprogramowania dla innych wersji
system operacyjny jest oprogramowaniem, które będzie działać na
komputerach zgodnych „w górę”
Emulacja
Emulacja polega na interpretacji kodu programu dla innego
komputera lub systemu operacyjnego i wykonywaniu go za
pomocą własnych instrukcji, tak aby efekt działania był
identyczny z oryginalnym.
Komputery niekompatybilne mogą mieć funkcjonalnie
identyczne oprogramowanie
ten sam system operacyjny i/lub pakiety oprogramowania mogą być
implementowane na róŜne platformy sprzętowe
zwykle istnieje moŜliwość bezpośredniej wymiany danych pomiędzy
programami działającymi na niekompatybilnych komputerach
Wstęp do Informatyki
Wstęp do Informatyki
[email protected]
System operacyjny
UŜytkownik
Program
Program
Programy dla
Windows
Komputery PC
z systemem Unix
Programy dla
systemu Unix
Komputery PC
z Windows
Programy
dla telefonów
komórkowych
i palmtopów
Komputery PC
z Windows
[email protected]
Zarządzanie systemem
pamięci
(procesy, multi-tasking)
RTOS (Real Time Operating System) jest systemem, w
którym reakcja na bodziec musi nastąpić w czasie nie
dłuŜszym niŜ określony limit.
Program
Systemy operacyjne typu RT zwykle stosuje się do
komputerów wbudowanych, gdzie brak reakcji komputera
moŜe mieć tragiczne konsekwencje.
Interfejs funkcji systemowych (API)
Zarządzanie systemem
plików
(programy i dane)
Komputery PC
z systemem
Windows, Unix
Systemy operacyjne czasu rzeczywistego
Oprogramowanie, który umoŜliwia zarządzenie zasobami komputera i
kontrolowane uruchamianie innych programów, bez znajomości szczegółów
sprzętowych komputera.
Interfejs uŜytkownika
Programy dla
komputerów 8bitowych (gry)
Sterowniki
urządzeń we/wy
RTOS dla PC: QNX, RTLinux
np.
sterowanie lotem pocisku rakietowego (czas reakcji rzędu 10-6s)
system realizacji transakcji finansowych (czas reakcji rzędu 102s)
Sprzęt komputera (Hardware)
Wstęp do Informatyki
[email protected]
Wstęp do Informatyki
[email protected]
3
System operacyjny
single-user single-task
System operacyjny
single-user multi-task
single-user
tylko jeden uŜytkownik moŜe korzystać z
komputera jednocześnie
single-user
tylko jeden uŜytkownik moŜe korzystać
z komputera jednocześnie
single-task
tylko jeden program moŜe być wykonywany przez
komputer jednocześnie
multi-task
wiele programów moŜe być wykonywanych
przez komputer jednocześnie
• PC: DOS – Disk Operating System
• Komputery kieszonkowe (Palm OS)
• Telefony komórkowe
Wstęp do Informatyki
[email protected]
System operacyjny
multi-user (multi-task)
multi-user
w danym momencie z komputera moŜe
korzystać wielu uŜytkowników, którzy
mogą wykonywać wiele programów.
Systemy multi-user są wyposaŜone w wyrafinowane
metody podziału zasobów komputera dla
uŜytkowników i procesów (scheduler)
PC: Windows 3.x, 9x, NT, 2000, XP, MacOS
Komputery kieszonkowe (Win CE)
Wstęp do Informatyki
[email protected]
Programy i procesy
Program – plik na dysku zawierający instrukcje
procesora oraz swoje dane.
Proces – program załadowany do pamięci operacyjnej
komputera i uruchomiony
(kod+dane+kontekst procesora).
Proces
w pamięci
Program
(instrukcje)
Kontekst
(zawartość
rejestrów
procesora
dla danego
programu)
+
Dane
programu
PC: Unix (Linux), VMS, ...
Procesor (CPU)
Pamięć operacyjna RAM
Wstęp do Informatyki
[email protected]
Wstęp do Informatyki
[email protected]
4
Procesy i multi-tasking
Procesy i multi-tasking
A
B
C
Jądro systemu
Scheduler
lista
procesów
systemu
System
operacyjny
adres procesu k
czas
adres procesu m
System z podziałem czasu procesora
(time-sharing)
Proces aktywny
Proces uśpiony
Kod
k-ty proces
w pamięci
Dane
A
B
C
Kontekst
Kod
m-ty proces
w pamięci
Dane
czas
Kontekst
System z podziałem czasu
wielu procesorów
Proces aktywny – CPU1
Proces aktywny – CPU2
Proces uśpiony
Pamięć operacyjna systemu komputerowego
Wstęp do Informatyki
Wstęp do Informatyki
[email protected]
Pamięć wirtualna
System
operacyjny
Pamięć wirtualna
System
operacyjny
CPU
Dane
Adres
wirtualny
Proces M
Proces A
Proces B
Proces C
Proces A
Adres
fizyczny
Proces C
Pamięć fizyczna
(RAM)
Proces M
Proces N
Pamięć wirtualna
(dysk twardy)
Wstęp do Informatyki
[email protected]
Rozkaz ładowania do pamięci fizycznej
Ŝądanego fragmentu pamięci wirtualnej
[email protected]
Memory
Management
Unit
(MMU)
Rozmiar pamięci wirtualnej jest duŜo większy od
rozmiarów dostępnej pamięci fizycznej (GB, TB).
Procesor (programy) traktują pamięć wirtualną jako
normalnie dostępną i odwołują się do niej za pomocą
adresów wirtualnych.
Blok MMU (obecnie część procesora) tłumaczy adresy
ładuje Ŝądaną stronę wirtualną do pamięci fizycznej i
tłumaczy adresy wirtualne na fizyczne.
Pamięć wirtualna jest realizowana jako tzw. plik wymiany
(swap file - Windows) lub jako oddzielny fragment
twardego dysku (partycja swap – Linux)
Wstęp do Informatyki
[email protected]
5
Interfejs uŜytkownika (IU)
Historia IU
UŜytkownicy
Program pośredniczący pomiędzy uŜytkownikiem
a systemem operacyjnym i sprzętem komputera.
Generacje komputerów moŜna klasyfikować według
ich interfejsu uŜytkownika
Nowa dziedzina wiedzy: pogranicze technologii
informatycznych, psychologii i ergonomii –
„komunikacja człowiek-komputer”
Miniaturyzacja elektroniki i nowe wyzwania dla
interfejsów uŜytkownika.
Wstęp do Informatyki
[email protected]
Tekstowy IU
eksperci
kalkulator
Interfejs uŜytkownika
Ŝaden
1955-1965
naukowcy
obliczenia
tekstowy –
prosty język
poleceń
1965-1985
przeszkoleni
pracownicy
przetwarzanie
danych
tekstowy –
rozbudowany
język poleceń,
semi-grafika
1985-1995
zainteresowani
narzędzie pracy
i rozrywki
1995-2006
znaczna część
społeczeństwa
praca,
komunikacja,
rozrywka
graficzny –
polecenia
do wyboru,
formularze
multimedialny –
kontekstowy
2007-
niemal wszyscy
osobisty asystent
Wstęp do Informatyki
intuicyjny (?)
[email protected]
Tekstowy IU – interfejs funkcyjny
Zalety:
małe wymagania sprzętowe
moŜliwość obsługi zdalnej
duŜa szybkość i wydajność
duŜe moŜliwości
np. Jeśli polecenie ma 4 róŜne opcje,
to pamiętając je moŜna łatwo i szybko
stosować to polecenie w 16 wariantach!
Wady:
zapamiętanie poleceń
łatwość popełnienia pomyłek
brak wizualizacji wyników
konieczność stosowania klawiatury
Wstęp do Informatyki
1945-1955
Przeznaczenia
[email protected]
Orientacja na funkcje systemu:
tworzenie, kopiowanie, usuwanie, edycja, uruchamianie etc...
plików programów i danych,
zarządzanie procesami i pamięcią
copy /B /V a:\plik c:\dokumenty\plik
najpierw polecenie
(funkcja systemu)
Wstęp do Informatyki
później czego dotyczy polecenie
[email protected]
6
Graficzny IU
Graficzny IU – interfejs obiektowy
Zalety:
polecenia i opcje do wyboru
wybór poprzez wskazywanie
wizualizacja efektów działania
np. Sprawdzenie zajętości miejsca
na dysku i rozmiarów katalogów
za pomocą wizualizacji graficznej
daje natychmiastowe zrozumienie
otrzymanych wyników.
Wady:
coraz większe wymagania sprzętowe
nieprecyzyjność urządzeń wskazujących
zawiły system graficznych kontrolek w przypadku bardziej
zaawansowanych operacji
Wstęp do Informatyki
[email protected]
Graficzny IU – interfejs zadaniowy
Orientacja na
obiekty systemu:
pliki i katalogi: programy,
dokumenty, obrazki, etc.
najpierw obiekt
systemu
później jaka operacja ma być na nim wykonana
Wstęp do Informatyki
[email protected]
Interfejsy przyszłości
Wobec TB pojemności pamięci komputerów i PB
zasobów sieci komputerowych pojęcie systemu
plikowego staje się niewygodne dla zwykłego
uŜytkownika
Orientacja na
zadania systemu:
tworzenie dokumentu,
czytanie poczty,
odtwarzanie muzyki, etc.
Interpretacja zadań uŜytkownika
Swobodna forma i składnia poleceń
Win XP
Wysoki stopień abstrakcji operacji systemu
ZróŜnicowany i rozproszony interfejs we/wy
Programowanie poprzez demonstrację
wybór typu
zadania
nie jest istotne (dla uŜytkownika) w jakim pliku
i katalogu znajdzie się wynik działania programu
Wstęp do Informatyki
[email protected]
Programy agentowe i asystenckie
Bio-interfejsy uŜytkownika
Wstęp do Informatyki
[email protected]
7
PC?
Wstęp do Informatyki
[email protected]
8

Podobne dokumenty