Wstęp do informatyki - Katedra Informatyki > Home
Transkrypt
Wstęp do informatyki - Katedra Informatyki > Home
Wstęp do informatyki Komputer osobisty (Personal Computer) Cezary Bolek [email protected] Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki Świat komputerów Komputery wbudowane (embedded) – sterowanie urządzeniami, przetwarzanie sygnałów, etc. Superkomputery – obliczenia naukowe Komputery osobiste (PC) Wstęp do informatyki Cezary Bolek <[email protected]> 2 Sprzęt (Hardware) Pamięć operacyjna ROM, RAM Wstęp do informatyki Jednostka centralna CPU Układy we/wy In/Out Cezary Bolek <[email protected]> 3 1 Komputer osobisty 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: 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 Cezary Bolek <[email protected]> 4 „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 Cezary Bolek <[email protected]> 5 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 Cezary Bolek <[email protected]> 6 2 Kompatybilność ... – wzajemnie się uzupełniający; zgodny, współgrający z czymś 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 Cezary Bolek <[email protected]> 7 Kompatybilność „w dół” i „w górę” Kompatybilność w dół (downward compatibility): 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 Cezary Bolek <[email protected]> 8 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ę” 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 Cezary Bolek <[email protected]> 9 3 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. Programy dla komputerów 8bitowych (gry) Komputery PC z systemem Windows, Unix 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 Wstęp do informatyki Cezary Bolek <[email protected]> 10 System operacyjny Oprogramowanie, który umoŜliwia zarządzenie zasobami komputera i kontrolowane uruchamianie innych programów, bez znajomości szczegółów sprzętowych komputera. UŜytkownik Interfejs uŜytkownika Program Program Program Interfejs funkcji systemowych (API) Zarządzanie systemem plików (programy i dane) Zarządzanie systemem pamięci (procesy, multi-tasking) Sterowniki urządzeń we/wy Sprzęt komputera (Hardware) Wstęp do informatyki Cezary Bolek <[email protected]> 11 Systemy operacyjne czasu rzeczywistego 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. Systemy operacyjne typu RT zwykle stosuje się do komputerów wbudowanych, gdzie brak reakcji komputera moŜe mieć tragiczne konsekwencje. 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) Wstęp do informatyki Cezary Bolek <[email protected]> 12 4 System operacyjny single-user single-task 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 • PC: DOS – Disk Operating System • Komputery kieszonkowe (Palm OS) • Telefony komórkowe Wstęp do informatyki Cezary Bolek <[email protected]> 13 System operacyjny single-user multi-task single-user tylko jeden uŜytkownik moŜe korzystać z komputera jednocześnie multi-task wiele programów moŜe być wykonywanych przez komputer jednocześnie PC: Windows 3.x, 9x, NT, 2000, XP, MacOS Komputery kieszonkowe (Win CE) Wstęp do informatyki Cezary Bolek <[email protected]> 14 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: Unix (Linux), VMS, ... Wstęp do informatyki Cezary Bolek <[email protected]> 15 5 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 Procesor (CPU) Pamięć operacyjna RAM Wstęp do informatyki Cezary Bolek <[email protected]> 16 Procesy i multi-tasking Jądro systemu Scheduler lista procesów systemu adres procesu k System operacyjny adres procesu m Kod k-ty proces w pamięci Dane Kontekst Kod m-ty proces w pamięci Dane Kontekst Pamięć operacyjna systemu komputerowego Wstęp do informatyki Cezary Bolek <[email protected]> 17 Procesy i multi-tasking A B C czas System z podziałem czasu procesora (time-sharing) Proces aktywny Proces uśpiony A B C czas System z podziałem czasu wielu procesorów Wstęp do informatyki Proces aktywny – CPU1 Proces aktywny – CPU2 Proces uśpiony Cezary Bolek <[email protected]> 18 6 Pamięć wirtualna System operacyjny System operacyjny CPU Dane Adres wirtualny Proces M Proces A Proces C Proces B Proces A Adres fizyczny Proces C Memory Management Unit (MMU) Pamięć fizyczna (RAM) Proces M Proces N Pamięć wirtualna (dysk twardy) Wstęp do informatyki Rozkaz ładowania do pamięci fizycznej Ŝądanego fragmentu pamięci wirtualnej Cezary Bolek <[email protected]> 19 Pamięć wirtualna 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 Cezary Bolek <[email protected]> 20 Interfejs uŜytkownika (IU) 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 Cezary Bolek <[email protected]> 21 7 Historia IU UŜytkownicy Interfejs uŜytkownika Przeznaczenia Ŝaden 1945-1955 eksperci kalkulator 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 (?) Cezary Bolek <[email protected]> 22 Tekstowy IU 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 Cezary Bolek <[email protected]> 23 Tekstowy IU – interfejs funkcyjny 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 Cezary Bolek <[email protected]> 24 8 Graficzny IU 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 Cezary Bolek <[email protected]> 25 Graficzny IU – interfejs obiektowy 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 Cezary Bolek <[email protected]> 26 Graficzny IU – interfejs zadaniowy Orientacja na zadania systemu: tworzenie dokumentu, czytanie poczty, odtwarzanie muzyki, etc. Win XP 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 Cezary Bolek <[email protected]> 27 9 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 Interpretacja zadań uŜytkownika Swobodna forma i składnia poleceń Wysoki stopień abstrakcji operacji systemu ZróŜnicowany i rozproszony interfejs we/wy Programowanie poprzez demonstrację Programy agentowe i asystenckie Bio-interfejsy uŜytkownika Wstęp do informatyki Cezary Bolek <[email protected]> 28 Cezary Bolek <[email protected]> 29 PC? Wstęp do informatyki 10