Wprowadzenie Do Systemu X Window

Wprowadzenie Do Systemu X Window

Wprowadzenie do systemu X Window Witold Paluszy´nski Katedra Cybernetyki i Robotyki Politechnika Wroc lawska http://www.kcir.pwr.edu.pl/~witold/ 2001–2013 Ten utw´or jest doste֒ pny na licencji Creative Commons Uznanie autorstwa- Na tych samych warunkach 3.0 Unported Utw´or udoste֒ pniany na licencji Creative Commons: uznanie autorstwa, na tych samych warunkach. Udziela sie֒ zezwolenia do kopiowania, rozpowszechniania i/lub modyfikacji tre´sci utworu zgodnie z zasadami w/w licencji opublikowanej przez Creative Commons. Licencja wymaga podania oryginalnego autora utworu, a dystrybucja materia l´ow pochodnych mo˙ze odbywa´c sie֒ tylko na tych samych warunkach (nie mo˙zna zastrzec, w jakikolwiek spos´ob ograniczy´c, ani rozszerzy´c praw do nich). Za lo˙zenia i historia systemu X window System X Window zosta l opracowany na uniwersytecie M.I.T. w roku 1984 jako standard przemys lowy tworzenia system´ow okienkowych, niezale˙znych od platformy sprze֒ towej i programowej, w ´srodowisku sieciowym. W za lo˙zeniach mia l by´c zaimplementowany powy˙zej systemu operacyjnego komputera, i umo˙zliwia´c komunikacje֒ (wy´swietlanie okienek i obrazk´ow) mie֒ dzy r´o˙znymi rodzajami komputer´ow, r´o˙znych producent´ow, z gdzie indziej napisanym .oprogramowaniem, i by´c mo˙ze pod kontrola֒ innego administratora systemu Cel sformu lowany przez tw´orc´ow systemu zosta l osia֒gnie֒ ty. W roku 1987 wprowadzono wersje֒ 11 systemu (nazywanego te˙z X11), kt´ora jest jego bie˙za֒ca֒ wersja֒. W tym czasie powsta lo kilka kolejnych wyda´n (release) rozszerzaja֒cych funkcjonalno´sci systemu. Najnowszym jest wydanie 7, tzw. X11R7, z roku 2005 (11 lat po R6). Jednak poza pewnymi rozszerzeniami zasadniczy protok´o l komunikacyjny systemu X Window pozosta l w wersji 11 niezmieniony, i programy uruchomione np. w roku 1987 moga֒ komunikowa´c sie֒ z programami aktualnie kompilowanymi. ,X Window nadzoruje obecnie X Consortium zrzeszaja֒ce producent´ow, firmy i organizacje zainteresowane u˙zytkowaniem i rozwojem systemu. System X Window — wprowadzenie 3 System X Window — znaczenie spo leczne Od pocza֒tku system X Window by l projektem otwartym — zak lada l ca lkowita֒ jawno´s´c opracowanej koncepcji i zamiar udoste֒ pnienia systemu zainteresowanym jednostkom. M.I.T. od pocza֒tku udoste֒ pnia l wszystkie opracowane programy w wersji ´zr´od lowej zar´owno producentom oprogramowania, jak i u˙zytkownikom. Mie֒ dzy innymi dlatego system zosta l od pocza֒tku zaakceptowany przez mie֒ dzynarodowe konsorcjum producent´ow sprze֒ tu komputerowego jako standard systemu okienkowego, i koncepcja tego systemu jest najpowszechniej .przyje֒ ta֒ koncepcja֒ takiego systemu System X Window — wprowadzenie 4 Model konstrukcji programu graficznego Tradycyjny schemat programu graficznego Model X Window programu graficznego biblioteka procedur gra− biblioteka procedur gra− Program zródlowy ficznych zamieniajacych ficznych zamieniajacych Program zródlowy operacje graficzne wyso− operacje graficzne wy− wywolania procedur kiego rzedu na operacje sokiego rzedu na wywo− wywolania procedur wysokiego rzedu two− obslugujace konkretne lania protokolu X nie− wysokiego rzedu two− rzacych obiekty graficzne urzadzenie wyswietlajace zalezne od systemu ani rzacych obiekty graficzne sprzetu wyswietlajacego kompilator kompilator Program binarny Program binarny kod obsluguje konkretne kod wysyla polecenia urzadzenie graficzne protokolu X Window do serwera serwer X Window odbiera polecenia pro− tokolu X Window i obsluguje konkretne urzadzenie graficzne SIEC System X Window — wprowadzenie 5 Podstawowe pojecia֒ i architektura systemu X Window Sk ladniki systemu X Window: ,(serwer ekranowy: urza֒dzenie u˙zytkownika (ekran, klawiatura, mysz • i program obs luguja֒cy; najcze´s֒ ciej serwer jest uruchamiany na stacji roboczej albo komputerze typu PC, aczkolwiek istnieja֒ sprze֒ towe realizacje serwer´ow X Window, klienty: programy wy´swietlaja֒ce; moga֒ by´c uruchamiane na tym samym • komputerze co serwer X Window, albo gdziekolwiek w Internecie, w tym r´ownie˙z z komputera o innej architekturze, procesorze, systemie operacyjnym, • protok´o l X komunikacji klient´ow z serwerami. System X Window — wprowadzenie 6 Serwer X Window Rola serwera X Window — obs luga zdarze´nserwera: • odbieranie sygna l´ow od myszy i z klawiatury oraz przekazywanie ich klientowi aktywnemu (ang. focus), • odbieranie polece´n i zapyta´n klient´ow i ich realizacja. Serwer X Window jest programem, kt´ory standardowo nazywa sie֒ X, zatem normalnie jego uruchomienie polega po prostu na wywo laniu tego programu. Uruchomienie go lego”serwera X Window jest niewystarczajace, poniewa˙z ֒ ” pomimo i˙z jest on programem u˙zytkownika, sam nie mo˙ze by´c przez niego sterowany. Co najmniej pierwszy klient musi by´curuchomiony z zewnatrz.֒ Tradycyjnie, najwa˙zniejszym klientem, zwykle uruchamianym ,w domy´slnej konfiguracji, by l emulator terminala, np. xterm. Dzie֒ ki niemu u˙zytkownik serwera uzyskiwa l zdolno´s´c uruchamiania dowolnych program´ow okienkowych (klient´ow X Window), konfiguracji systemu, i og´olnie pracy. System X Window — serwer 7 Program xinit Program xinit pozwala wygodnie uruchamia´c serwer X Window. Wywo luje on serwer X, i od razu powoduje wykonanie skryptu (pliku) ${HOME}/.xinitrc: xedit -geometry -0-0 ~/.xinitrc & xclock -geometry -0+0 & xset s on s 300 xsetroot -solid ’#006060’ xterm Pierwsze dwa wiersze uruchamiaja֒ klienty okienkowe jako procesy t la (& na .ko´ncu). Programy te pracuja֒ trwale, do momentu ich jawnego zako´nczenia ,Kolejne dwa wiersze uruchamiaja֒ klienty X Window, kt´ore konfiguruja֒ serwer wydaja֒c mu pewne polecenia. Nie wy´swietlaja֒ one okienek, i szybko ko´ncza֒ .prace֒ , dlatego nie jest konieczne ich uruchamianie w tle Ostatni wiersz uruchamia zn´ow trwa ly”program okienkowy xterm. Jest on ” uruchamiany jako pierwszoplanowy, poniewa˙z po wykonaniu ca lego skryptu xinit zamyka serwer X i ko´nczy prace֒ . Gdyby ostatni klient by l uruchomiony w tle, ca la sesja by laby kr´otka i zosta laby automatycznie zamknie֒ ta. Wykonanie ostatniego klienta w pierwszym planie powoduje, ˙ze sesja trwa dop´oki dzia la ten ostatni klient. Pe lni on wie֒ c role֒ steruja֒ca֒ dla serwera X Window. Zako´nczenie xterm przez u˙zytkownika powoduje r´ownie˙z zako´nczenie sesji okienkowej. System X Window — serwer 8 Konwencje i mechanizmy systemu X Window :Zwr´o´cmy uwage֒ na pewne wbudowane mechanizmy systemu X Window ֒:Operacje mysza • lewy klawisz myszy wybiera i zaznacza (r´ownie˙z 2-click, 3-click), • ´srodkowy wkleja zaznaczony tekst, • prawy uruchamia menu kontekstowe (je´sli klient ma takie). — Stos okienek — Okienka wy´swietlane sa֒ na ekranie w kolejno´sci stosowej te p´o´zniej wy´swietlone moga֒ przykry´c te wcze´sniejsze. Ten stos okienek jest sta ly i u˙zytkownik nie mo˙ze nim sterowa´c. Je´sli jednak klient wy´swietlaja֒cy okienko na szczycie stosu zostanie zako´nczony, to ods loni sie֒ okienko poprzedniego klienta, itd. Wyb´or okna/klienta aktywnego (focus) — Okno w kt´orym jest wska´znik myszy jest aktywne. Ten klient otrzymuje znaki z klawiatury i zdarzenia myszy. Gdy wska´znik myszy jest w tle ekranu, ˙zadne okno nie jest aktywne. Nie potrzeba klika´c na okienko, aby uczyni´c je aktywnym. Jednocze´snie aktywno´s´c okienka nie jest zwia֒zana z wy´swietlaniem na szczycie stosu. Ten .(domy´slny spos´ob wyboru aktywnego nazywa sie֒ : focus-follows-mouse (FFM System X Window — serwer 9 Dynamiczna konfiguracja serwera X Window Serwer X Window posiada wiele cech i funkcji, z kt´orych niekt´orymi mo˙zna sterowa´c w czasie pracy. Istnieje dedykowany klient xset, kt´ory wysy la pewne polecenia serwerowi, zgodne z argumentami wywo lania, np.: xset r off # wylacza autorepeat na klawiaturze xset s on s 300 # wygaszanie ekranu po 300 sekundach xset pozwala r´ownie˙z ustawia´c serwerowi wa˙zniejsze parametry, jak np. ´scie˙zka doste֒ pu do czcionek (patrz ni˙zej), albo parametry sterowania zasilaniem .(monitora (sa֒ jednak one zale˙zne od konkretnej implementacji serwera Program xsetroot pozwala ustawia´c parametry wy´swietlanego okna serwera, kt´ore ma posta´c t la ekranu X Window. xsetroot -solid ’#006060’ Istnieja֒ jeszcze inne funkcje i parametry serwera, kt´ore mo˙zna ustawia´c w czasie pracy, jak np. autoryzacja wy´swietlania albo zasoby, i s lu˙za֒ do tego specjalne .klienty. Be֒ dzie o nich mowa dalej System X Window — serwer 10 Klienty X Window Po la֒czenie klient´ow z serwerem: o ile serwer normalnie komunikuje sie֒ • z wieloma klientami jednocze´snie, obs luguja֒c ich ˙za֒dania, to ka˙zdy klient typowo wysy la dane do wy´swietlania do jednego konkretnego serwera. • Zdarzenia klienta: sygna ly z klawiatury, od myszy, a tak˙ze inne zdarzenia .przekazywane klientom przez serwer, np. zdarzenie ods lonie֒ cia :Standardowe argumenty wywo lywania klient´ow okre´slaja֒ takie parametry jak • adres serwera: -display adres-ip:0.0 geometrie֒ : -geometry szer×wys±xoff±yoff czcionki: -fn ’-misc-fixed-bold-r-normal–15-140-75-75-c-90-iso8859-2’ kolory: -fg yellow -bg blue -bd red inne: -title xxx -iconic ... • Wiele klient´ow ma wiele parametr´ow konfiguracyjnych zwanych zasobami, o kt´orych ni˙zej. Poza tym niekt´ore rozbudowane wsp´o lczesne klienty X Window, jakimi sa֒ • .np. firefox, acroread, openoffice, itp. maja֒ swoje w lasne systemy konfiguracji Podobnie graficzne ´srodowiska, zwane pulpitami, be֒ da֒ce konfiguracjami .okienek, ustawie´n, konwencji, i protoko l´ow komunikacji mie֒ dzy klientami System X Window — klienty 11 Zestaw klient´ow X Window Zarzadzanie֒ systemem X Window U˙zytkowe xinit,startx - uruchamianie serwera X xbiff

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    37 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us