UTILIZARE XWINDOW
X
Window este un sistem de interactiune cu utilizatorul orientat spre
ferestre,
care poate fi facut operational pe o mare varietate de
calculatoare care
lucreaza sub diverse sisteme de operare. A fost conceput
la MIT
(Massachusetts Institute of Technology), proiectul fiind puternic
sustinut
de IBM Si de DEC. A aparut pe piata aproximativ in 1987, iar in
prezent
este acceptat ca standard "de facto" de fabricantii statiilor
de
lucru grafice. Scopul sistemului X este de a furniza programelor
de
aplicatii un mediu de lucru independent de particularitatile statiei
de
lucru, a SO sub care se lucreaza, a retelei in care este integrat
etc.
Pentru un utilizator oarecare este transparent faptul ca aplicatia
lui se
executa in retea, deci ca se executa pe un calculator iar
rezultatele ii
sunt afisate pe ecranul altuia. De asemenea, o statie X
poate fi conectata
in acelasi timp la mai multe aplicatii executate pe
calculatoare diferite.
Programul care controleaza fiecare display
este programul X Server (XS). El
actioneaza ca si intermediar intre
display si programele utilizator, numite
clienti sau aplicatii. Acestea
din urma pot rula fie pe sistemul local, fie
pe un sistem aflat la
distanta si care foloseste resursele grafice ale
sistemului local. Conexiunea
la un XS se face implicit pe portul 6000.
Intreaga interfata a
clientilor cu XS este realizata cu ajutorul bibliotecii
Xlib (XL).
Performantele
unui sistem X intr-o retea depind in mare masura de
performantele
masinilor, in special de calitatile si performantele lor
grafice.
Intotdeauna XS se ruleaza pe statia locala. Pentru a se asigura
eficienta
mare, de multe ori se lanseaza si clientul WM (Windows Manager) tot
pe
masina locala. De exemplu, statiile de tip X Terminal dispun de memoria
RAM
proprie si pe langa un XS propriu, mai au si un WM propriu. Daca
utilizatorul
doreste, el poate sa-si lanseze un WM de oriunde din retea:
de pe masina
client, de pe o alta masina etc. Evident, apare astfel
posibilitatea ca o
anumita masina din retea sa fie supraaglomerata
deoarece pe ea sunt rulate
WM-uri pentru multi utilizatori din
retea.
Numarul de programe care folosesc specificatiile X a ajuns de
ordinul miilor
la aceasta ora. Vom aminti cateva care sunt de larg interes
si sunt
disponibile, printre altele sub UNIX System V 4.0:
xterm emulator de terminale;
Utilizare
xterm:
- se presupune ca
pe masina locala este pornit un XS (sau un
emulator de XS) la care se vor
conecta clientii de pe masina UNIX
-
in cadrul unei conexiuni obisnuite (telnet sau (recomandat) ssh)
la o una
din masinile (disco.scs.ubbcluj.ro sau rave.scs.ubbcluj.ro in cazul
nostru)
ce au instalate XWindow respectiv programe client XWindow se
lanseaza
comanda:
xterm -display
nume_masina_local:0.0 & sau
xterm
-display ip_masina_locala:0.0 &
Aceasta
din urma varianta este preferata pentru reteaua locala din
laboratoarele
SCS datorita modului de atribuire dinamic al adreselor
calculatorelor
client de catre serverul Windows NT. Pentru aflarea acestei
adrese se
foloseste comanda ipconfig lansata dintr-o fereastra DOS; la fel
de bine
insa se poate afla si din mediul Unix acest lucru; de exemplu,
folosind
comanda w in pipe cu comanda grep avand ca si parametru numele
utilizatorului
care doreste sa isi lanseze un xterm se poate afla numele statiei
sau
ip-ul masinii windows NT de pe care utilizatorul respectiv este conectat.
Aceasta comanda este esentiala si de ea
depinde in continuare lucrul
cu aplicatiile X; daca aceasta comanda
esueaza acest lucru se poate intampla
datorita, de exemplu, faptului ca
aplicatia xterm (care este un clienty) nu
se poate conecta la serverul
Xwindow.
In acest din urma caz se poate verifica
faptul ca de pe masina de pe
care se lanseaza comanda xterm este
accesibila masina pe care ruleaza XS. Se
poate verifica usor acest lucru
folosind comanda traceroute. In cazul
retelei local SCS bazata in mod
exclusiv pe adrese false (nerutabile in
exterior), au trebuit specificate
in mod explicit de catre administratori
rute inverse spre aceste adrese
false (invers erau rute implicite). Daca
prin comanda traceroute serverul
X este accesibil, atunci poate fi problema
conexiunii pe portul 6000,
interzisa de firewall.
In
momentul in care aceasta comanda este executata se deschide o noua
fereastra
din care se pot lansa comenzi X dintre care enumeram:
twm gestionar de ferestre (window
manager);
xdm gestionar de
statii de afisare (display manager);
xman
program care gestioneaza si afiseaza manuale UNIX;
xmeditor, xedit editoare de texte;
xedit prezinta o fereastra cu 4 sectiuni:
-
o sectiune de comenzi care permit iesire din xedit,
salvarea fisierului,
sau incarcarea unui nou fisier in fereastra de editare
-
o fereastra de mesaje care afiseaza mesajele pe care le
genereaz
xedit
- portiunea de afisare a numelui fisierului editat,
precum
si a informatiei daca acest fisier este deschis si in citire si in
scriere,
sau este deschis numai in citire
- in fine, este
sectiune de editare propriu-zisa
bitmap,
xpaint editoare grafice;
xmh,
xbiff utilitare destinate postei electronice;
xclock, oclock afisari de ceasuri;
xfd program care gestioneaza fonturi;
xlsfonts, xfontsel, xlswins, xwininfo,
xlsclients, xdpyinfo, xprop:
utilitare care dau informatii despre fonturi,
ferestre, clienti si statii;
xauth,
xhost utilitare de control al accesului;
xrdb,
xset, xsetroot, xmodmap pentru fixarea de catre utilizatori a
unor
parametri ai sistemului X;
xwd,
xwud, xpr, xmag utilitare de manipulare a imaginilor de pe
ecran;
xeyes, ico, muncher, puzzle, xgc etc. sunt
cateva programe cu jocuri
demonstrative sub sistemul X.
xcpustate, xsysinfo: furnizeaza informatii
grafice referitoare la
starea sistemului Unix
De asemenea, exista o multitudine de alte programe si
utilitare
XWindow: ee (Electric Eyes: pentru afisarea de imagini), etc.
In general orice comanda care incepe cu
litera x este o comanda
specfica sistemului XWindow. Asa cum se poate
vedea insa mai sus (exemplu:
utilitarul ee), aceasta nu este o regula
generala.
Facem
precizarea ca toate aceste programe se executa direct pe
masinile Unix
(folosind deci toate resursele respectivelor masini: procesor,
memorie,
disk etc.) iar rezultatul lor este afisat prin intermediul xterm pe
masina
locala.