Systemy operacyjne i GUI
Transkrypt
Systemy operacyjne i GUI
Wydział Zarządzania AGH Katedra Informatyki Stosowanej System operacyjny GUI Technologie informacyjne Co to jest system operacyjny? Systemy operacyjne dla komputerów osobistych Graficzny interfejs uŜytkownika Windows jako przykład GUI Technologie informacyjne Systemy operacyjne i GUI 2 System operacyjny Jest zestawem programów umoŜliwiających zarządzanie komputerem oraz danymi w pamięci operacyjnej i zewnętrznej. wykonywanie poleceń (programów), instalowanie i obsługa urządzeń zewnętrznych (pośredniczenie między sprzętem a programami i uŜytkownikiem), zarządzanie zbiorami programów i danych, zarządzanie pamięcią operacyjną. Technologie informacyjne Podstawowymi funkcjami SO są: 3 Podstawowe cechy SO przetwarzanie wsadowe zadania (zlecenia uŜytkownika) czekają w kolejce na przetworzenie: jedno z nich jest przetwarzane, przy czym zadanie, którego przetwarzanie zostało raz zainicjowane musi być przetwarzane do końca, wieloprogramowość jest to sposób wykorzystania komputera, pozwalający wykonywać więcej niŜ jeden program w taki sposób, Ŝe Ŝaden z nich nie musi być zakończony, zanim jakiś inny zostanie rozpoczęty lub wznowiony (pojęcia związane: podział czasu i podział pamięci), Technologie informacyjne 4 Podstawowe cechy SO wielodostęp bezpośrednie wykorzystanie komputera przez co najmniej dwóch uŜytkowników jednocześnie (pozornie jednocześnie) w taki sposób, Ŝe Ŝaden z nich nie musi być świadomy postępowania pozostałych uŜytkowników, pamięć wirtualna mechanizm wykorzystania pamięci zewnętrznej polegający na przetrzymywaniu w niej części programu i wczytywaniu go do pamięci operacyjnej w razie potrzeby, co umoŜliwia wykonywanie programu o rozmiarze większym niŜ dostępna pamięć operacyjna. Technologie informacyjne 5 Podstawowe cechy SO program sekwencja instrukcji zapisana w pliku dyskowym zamieniająca się w instancję programu (proces) w momencie załadowania do pamięci operacyjnej komputera, proces (zadanie) to kaŜda uruchomiona aplikacja; obejmuje on kod programu, prywatną przestrzeń adresową oraz przynajmniej jeden wątek, wątek składnik procesu (strumień rozkazów), który jest wykonywany (unit of execution); wątek korzysta z zasobów oraz przestrzeni adresowej procesu, do którego naleŜy. Technologie informacyjne 6 Podstawowe cechy SO Zarządzanie procesami jest podstawowym zadaniem SO i obejmuje: alokowanie zasobów do procesów, organizację wymiany danych między procesami, ochrona zasobów procesów przed niepoŜądanym wpływem innych procesów, KaŜdy proces znajduje się w jednym, spośród kilku moŜliwych, stanów np. gotowy, działający, zablokowany, zatrzymany. SO przechowuje podstawowe informacje o tych stanach oraz uŜywanych zasobach (ang. track – ślad) i zarządza przechodzeniem między nimi. Technologie informacyjne synchronizację współpracy procesów. 7 Podstawowe cechy SO wielowątkowość polega na dzieleniu czasu pracy procesora na krótkie okresy (rzędu milisekund) i przydzielaniu ich poszczególnym wątkom. Kiedy czas przeznaczony dla danego wątku mija, kontekst (stan) jego pracy jest zapamiętywany, a jego miejsce zajmuje kontekst następnego wątku (o najwyŜszym priorytecie spośród wątków będących w stanie gotowości). Przełączanie pomiędzy wątkami realizują tzw. schedulery. Źródło: old.wb.pb.edu.pl/Materialy/KOS/Andraka%20Dariusz/pinfo7b.pdf Technologie informacyjne oznacza zdolność SO do obsługi wielu wątków w ramach jednego procesu. Np. kaŜde okno folderu Eksploratora Windows stanowi odrębny wątek. Gdy uŜytkownik rozpocznie kopiowanie czy przenoszenie plików z jednego okna do drugiego, operacja ta jest obsługiwana przez okno docelowe. W tym czasie, nie czekając na zakończenie kopiowania, moŜemy w innym oknie wykonywać inne czynności. 8 Podstawowe cechy SO jednoprogramowe, jednodostępne, wieloprogramowe, jednodostępne, wieloprogramowe, wielodostępne, jednoprogramowe, wielodostępne. Technologie informacyjne Klasyfikacja SO z punktu widzenia moŜliwości jednoczesnej realizacji wielu programów i pracy wielu uŜytkowników w tym samym czasie: 9 jednoprogramowe i jednodostępne DOS (Disk Operating System): MS-DOS, PC-DOS, itp., UNIX, LINUX - uniwersalny system operacyjny pozwalający na wielodostęp i wieloprogramowość, Windows, OS/2, MAC OS, itp. - systemy zorientowane graficznie, w których opcje dostępne dla uŜytkownika są zawarte w liście (menu) bądź reprezentowane przez odpowiednio dobrane piktogramy; systemy wieloprogramowe, jedno- lub wielodostępne. Google Chrome OS – oparty na Ubuntu, OS ma być szybki i lekki uruchamiać się w przeciągu kilku sekund; interfejs ma nie przytłaczać uŜytkownika. Technologie informacyjne SO dla komputerów osobistych 10 Technologie informacyjne Od Windows 1.0 do Windows XP Źródło: old.wb.pb.edu.pl/Materialy/KOS/Andraka%20Dariusz/pinfo7b.pdf 11 Dzięki nazwom, zbiory stanowią dla systemu operacyjnego oddzielne, rozróŜnialne obiekty. Plik - zbiór danych powiązanych ze sobą. Dokument - efekt pracy uŜytkownika zapisany przez program uŜytkowy w postaci pliku. Nazwa składa się z 1-255 dowolnych znaków (moŜna uŜywać spacji i polskich liter). NAZWA PRAWIDLOWA.ROZ Trójznakowe rozszerzenie identyfikowania typu pliku. nazwy zazwyczaj słuŜy do Technologie informacyjne SO - nazwy zbiorów (plików) 12 SO - katalogi (foldery) W celu ułatwienia zarządzania zbiorami w pamięci masowej zbiory zorganizowane są w struktury zwane katalogami (directory). Katalog (folder) jest zbiorem plików zgrupowanych pod wspólną nazwą. Elementem kaŜdego katalogu moŜe być katalog rzędu niŜszego tzw. podkatalog (subdirectory). Na kaŜdym dysku znajduje się katalog główny (root directory), który moŜe zawierać róŜne pliki i podkatalogi. Główną zaletą takiej organizacji jest hierarchizacja plików zgodna z celami uŜytkownika. Ponadto, kaŜdy katalog jest odizolowany od innych, więc nazwy plików w jednym katalogu mogą być takie same jak w innym katalogu. Technologie informacyjne Katalogi wraz z podkatalogami tworzą na dyskach struktury zwane drzewami (tree). 13 Organizowanie plików w katalogi wymaga podawania tzw. ścieŜek dostępu do plików. Droga do pliku (ścieŜka) składa się z nazw podkatalogów, oddzielonych od siebie znakiem \ (backslash). Początkowy znak \ , jeśli występuje, oznacza katalog główny; jeśli znak \ nie występuje, oznacza to, Ŝe ścieŜka dostępu do pliku zaczyna się w bieŜącym katalogu. UŜycie dwóch kropek .. zastępuje nazwę katalogu nadrzędnego w stosunku do aktualnego. Technologie informacyjne SO - ścieŜka dostępu do pliku 14 Interfejs uŜytkownika (UI) jest granicą między komputerem a osobą wykorzystującą go do pewnych zadań. W tym ujęciu interfejs jest zarówno urządzeniem (urządzeniami) jak i sposobem jego (ich) wykorzystania. W przypadku komputera osobistego na standardowy interfejs uŜytkownika składa się ekran, klawiatura i mysz oraz programy słuŜące do komunikowania się człowieka z komputerem przy pomocy tych urządzeń. Technologie informacyjne Interfejs uŜytkownika Następne 5 slajdów Źródło: Ian Sommerville, InŜynieria oprogramowania, WNT 2005. 15 Dobry projekt interfejsu uŜytkownika jest niezbędnym warunkiem prawidłowego uŜytkowania systemu. Interfejs trudny w uŜyciu z pewnością doprowadzi do wielu pomyłek uŜytkowników. W najgorszym wypadku uŜytkownicy odmówią uŜywania systemu oprogramowania niezaleŜnie od jego funkcjonalności. Jeśli informacja jest przedstawiona w sposób zagmatwany, uŜytkownicy na pewno źle zrozumieją znaczenie systemu. Mogą wykonać ciągi poleceń, które uszkodzą dane lub doprowadzą do awarii systemu. Technologie informacyjne Interfejs uŜytkownika 16 Projektowanie interfejsu uŜytkownika Opracuj papierowy prototyp projektu Zaprojektuj prototyp Oceń projekt z uŜytkownikami Zbuduj dynamiczny prototyp obiektu Wykonywalny prototyp Oceń projekt z uŜytkownikami Zaimplementuj docelowy interfejs uŜytkownika Technologie informacyjne Zanalizuj i rozpoznaj czynności uŜytkownika 17 Zasada Opis ZbliŜenie do uŜytkownika Interfejs powinien posługiwać się pojęciami i kategoriami wziętymi z doświadczeń osób, które najczęściej będą korzystać z systemu. Spójność Interfejs powinien być spójny, tzn. podobne operacje powinny być wykonywane w ten sam sposób. Minimum niespodzianek UŜytkownicy nie powinni być zaskakiwani zachowaniem systemu. MoŜliwość wycofania Interfejs powinien obejmować mechanizmy, które umoŜliwiają uŜytkownikom wycofanie się z błędów. Porady dla uŜytkownika Interfejs powinien przekazywać znaczące informacje zwrotne, gdy dochodzi do błędów; powinien teŜ oferować pomoc, której treść zaleŜy od kontekstu. RozróŜnianie uŜytkowników interfejs powinien oferować udogodnienia do interakcji dostosowane do róŜnych rodzajów uŜytkowników systemu. Technologie informacyjne Projektowanie interfejsu uŜytkownika 18 Projektowanie interfejsu uŜytkownika • Spójny interfejs uŜytkownika musi integrować interakcję uŜytkownika i prezentację informacji. • Rodzaje interakcji: działanie bezpośrednie, wybór z menu, wypełnianie formularza, język naturalny. Technologie informacyjne język poleceń, 19 Technologie informacyjne Projektowanie interfejsu uŜytkownika 20 Graficzny interfejs uŜytkownika jednolity interfejs uŜytkownika, wyświetlanie w kolorze i wysokiej rozdzielczości, zasada: to co widzisz na ekranie, dostaniesz naprawdę (ang. WYSIWYG - What you see is what you get), bezpośrednie sterowanie. Technologie informacyjne Cechy wyróŜniające GUI: 21 pulpit okno ikona menu wskazywanie Technologie informacyjne Elementy interfejsu 22 Było: We wczesnych latach osiemdziesiątych powszechne było wymyślanie dla kaŜdej nowej aplikacji unikalnego interfejsu uŜytkownika (Lotus 1-2-3, WP, dBase). Stąd kaŜda nowa aplikacja wymagała od uŜytkownika nauczenia się jej od podstaw. Wyuczone sposoby obsługi jednej aplikacji były zupełnie nieprzydatne w przypadku innej. UŜytkownicy PC poprzestawali na nauczeniu się i uŜywaniu dwóch aplikacji. Jest: Jednolity interfejs uŜytkownika w postaci GUI określa standard porozumiewania się z komputerem w celu osiągnięcia określonych efektów. UŜywanie rozwijalnych menu połączone z systemem pomocy pozwala uŜytkownikowi na badanie programu i odkrywanie dostępnych poleceń bez konieczności czytania dokumentacji. Technologie informacyjne GUI – jednolity wygląd i obsługa 23 Co więcej, poniewaŜ wszystkie aplikacje uŜywają tej samej struktury, nauczenie się jednej pozwala na korzystanie z innych z równym powodzeniem. Staje się to istotne, jeśli wyobrazimy sobie kilka aplikacji, kaŜdą w swoim oknie, działających w tym samym czasie i na tym samym ekranie. Istnienie jednolitego interfejsu uŜytkownika jest w dzisiejszym świecie nie tyle udogodnieniem ile koniecznością. Dobrze zaprojektowane GUI są, w połączeniu z intuicją uŜytkownika, potęŜnym narzędziem, i to w stopniu nieosiągalnym przez jakikolwiek tradycyjny interfejs terminalowy. Technologie informacyjne GUI – jednolity wygląd i obsługa 24 Było: Interfejs oparty na znakach; przykład systemu rezerwacji miejsc w samolotach. Jest: W świecie grafiki ekran dodatkowo pokazuje obrazy, będące modelami świata rzeczywistego. GUI przedstawia ten model w formie bezpośrednio zrozumiałej przez uŜytkownika (tzw. rzeczywistość wirtualna). Zamiast przekształcać go na cyfry i litery, próbuje przedstawiać świat takim, jaki jest on naprawdę. Technologie informacyjne GUI – kolor i rozdzielczość 25 W środowisku graficznym wymagania stawiane przed komputerami są bardzo duŜe. Pamięć ekranu musi wynosić ponad XXX MB, a komputer musi mieć wystarczającą moc, by manipulować tą ilością informacji wielokrotnie w ciągu sekundy. GUI wymaga operowania wielką ilością informacji, wielokrotnie częściej, w bardziej złoŜony sposób, a przy tym - w sposób niezauwaŜalny dla uŜytkownika. Jedynym sposobem na podołanie takim wymaganiom było dostarczenie kaŜdemu uŜytkownikowi oddzielnego komputera. Technologie informacyjne GUI – kolor i rozdzielczość 26 GUI jako przykład rzeczywistości wirtualnej jest często określany mianem WYSIWYG. Termin ten najczęściej odnosi się do procesorów tekstu zapewniających zgodność tego, co widzimy na ekranie z tym, co otrzymujemy po wydrukowaniu. JednakŜe moŜna ten termin rozumieć znacznie szerzej: to co widzisz, jest w miarę dokładnym modelem rzeczywistości. Technologie informacyjne GUI – WYSIWYG 27 GUI – bezpośrednie sterowanie Dawniej uŜytkownik sterował przedstawionym światem za pomocą słownych komend zorganizowanych w hierarchiczne struktury (przykład: zmiana szerokości kolumny w dawnych arkuszach kalkulacyjnych), teraz steruje częściami świata wirtualnego bezpośrednio. Koncepcja prosta i intuicyjnie zrozumiała, a jej zastosowanie w róŜnych aplikacjach daje bardzo dobre rezultaty. Omówione przykłady ilustrują jedną z technik bezpośredniego sterowania zwaną przeciągnij i zostaw (drag and drop), polegającą na wybraniu obiektu oraz przeciągnięciu go do nowego miejsca. Innym przykładem moŜe być kasowanie obiektu przez wrzucenie go do kosza na śmieci czy pomalowanie obiektu po naciśnięciu obrazka z puszką farby. Technologie informacyjne 28 GUI – bezpośrednie sterowanie KaŜdy obiekt w świecie wirtualnym, podobnie jak w świecie rzeczywistym, ma określone właściwości (cechy); wiele z nich jest widocznych, ale by poznać cechy pośrednie stosowane podwójne kliknięcie jest technika inspekcji. Inspekcja umoŜliwia natychmiastowy wgląd w cechy obiektu i ich modyfikację. Technologie informacyjne 29 Szybkość Rozdzielczość Rozmiar i kształt Przyszłość: ruch Przyszłość: komunikowanie głosem Technologie informacyjne Interfejs uŜytkownika - przyszłość 30