5.
mR & ois. ae es
Vi Main, Cl ologtcă
a = an La
Li
Cum lucraţi
cu ActiveX
_ Cum se va sc
hes SN WS
oy
a Sr ENE ee PE UL eee ee ee eee eee eee eS
ie Prin ce difera
| e JavaBeans
ze, procesoare și facilităţi .
htă interes pentru dumneavoastră
Mașina Virtuală Java
P.103
Calculatoare moleculare
P.111
hi ie
Lel 8000
EE
APROBAT R.A.P.R.
Nr. 103/DC/040/1997
Valabil pina la 31.12.1997
Exp: SC Computer Press Agora s.r.l.
RO, 4300 Tg. Mureș, CP 172 0P 1
Acum puteţi ALEGE
cel mai CONFORTABIL OC. Cu un calculator Compaq
Deskpro 2000
Cereti detalii
despre solutia
completa la:
Wl Wille Wie thle Wl
Wha
Wh Wile Wh
[e mm a Cie Win tn
puteti acum sa traiti experienta unica a unui confort exceptional SS
in cele mai atractive conditii. Noul Deskpro 2000 redefineste |
întelesul valorii unui produs oferindu-vă avantajul de a lua cea
mai Simplă şi normală decizie atunci când doriți să vă procuraţi
un calculator. Acest produs reuşeşte performanţa fără precedent
de a combina inovațiile cele mai recente cuprinse în tehnologia
MMX'" cu optimizarea performanţelor prin administrarea
inteligentă a programelor.
Cel mai nou procesor, memoria şi tehnologia grafică
senzațională reuşesc ca împreună să asigure standardul
binecunoscut al Compaq de fiabilitate şi integrare uşor
accesibilă. Adăugaţi la toate aceste performanţe un cost scăzut
şi veţi avea toate elementele care explică de ce Deskpro este cel
mai popular calculator personal din lume.
Noul Compaq Deskpro 2000. Alegerea este extrem de uşoară.
pentium"
PROCESSOR
COMPAQ
DISTRIBUITOR AUTORIZAT: Î INTEGRATOR DE SISTEM
a COMPUTERLAND NET CONSULTING
SCOP COMPUTERS a Bdul Unirii 15 Str. Ştirbei Vodă 150
Str. Ştirbei Vodă 150 Sector 5 , Bucuresti Bucuresti
Tel.: 223 40 54, 223 40 55 Tel.: 336 25 95 Tel.: 312 28 33
Fax: 223 26 80 Fax: 336 75 68 Fax: 312 41 99
DEALERI:
TORNADO PLUS
Constanţa: Str. George Enescu, nr. 11
Tel.: 041-61 85 80 ;Fax: 041-61 9457
Bucuresti:Str. Pestera Scarisoara
BI M2B, Sc. 1, Ap. 4
Tel.: 726 84 24; Fax: 420 40 45
CSI Ltd. MICRODATA / BRINEL
Bd. Constructorilor 20 3400 Cluj Napoca
Sector 6 Str. luliu Maniu 2
Tel.: 220 02 50 Tel./Fax: 064-43 02 80
Fax: 220 02 56 064-43 02 85
Intel Inside Logo și Pentium sunt mărci înregistrate ale Intel Corporation iar MMX"" este marcă a Intel Corporation
Pepe aa SS a Se
EWHFREDO-voU WANT To.Co TODAY 2 vl, (ÎN F RTE = =-===
Authorized Distribution Partner/ i ÎI AA A sae sei
DSP for Romania Ne COMPUTERS
NC’ Flexibility.Made in Romania
Business Partner
Lipscani 102, București
Tel: 3122360/6137282 Fax: 3122630 Microsoft Hot Line: 3120948
Pa pa ae
UI)
COPYING FAXING PRINTING COLOUR
vt HEWLETT®
PACKARD
DEALERI
Bucuresti
Amerilex 223 43 23
Arexim 311 16 76
MBL Computerland 230 77 37
Q’NET 211 78 55
System Plus 210 85 65
THEMA 231 29 55
Cluj
Sistec (064) 190 282
RESELLERI
Arad
BB Computer (057) 280 666
Bucuresti
Alsys Data 411 26 26
Cinor 312 05 79
CIPRO 220 04 00
Crescendo 211 18 60
DECK Computers 312 78 11
Flamingo 222 49 34
FOCUS International 322 30 69
Lowtec 240 36 98
Net Consulting 638 33 45
R&M Int'l (092) 244 094
SYSCO 323 72 52
Tricorp 679 48 79
Cluj
Microinformatica (064) 438 328
Constanta
DIGISOFT (041) 653 036
Glycon (041) 619 685
GMB Computers (041) 619 222
Craiova
COMRACE (051) 415 800
Galati
Spark (036) 465 270
Iasi
Radix (032) 210 423
Open Systems (032) 225 101
Universal RX (032) 217 254
Ploiesti
PLATIN Systems (044) 191 818
Oradea
Keysys Grafx (059) 436 281
Resita
Elcom (055) 210 559
Satu-Mare
Data Electronic (061) 737 635
Sibiu
Millenium (069) 437 460
Summit (069) 216 567
Targu-Mures
CARO Comp (065) 210 040
Electro Orizont (065) 168807
Timisoara
Netring Computers (056) 132 894
Neuronic Trade (056) 130 068
Tulcea
Microline (040) 516 369
B | = Septembrie 1997, vol. 3, nr. 9
R ©) M I A pee
COVER STORY
eed
Beat
De David Chappell
si David S. Linthicum
36
Este penetrant. Este omniprezent.
Dar ce este, mai exact, ActiveX?
lata adevarul despre tehnologiile
fundamentale Microsoft.
INTEGRARE RETEA
Publicati, sau pieriti
ADMINISTRAREA DATELOR
PC scapă de gâtuiri
51 45
De Richard Hackathorn De Tom R. Halfhill
Publicarea si abonamentul Schimbările majore în
pot oferi informaţia dorită arhitectura Wintel
în momentul apariţiei. vor rezolva gâtuirile interne
de bandă de transfer.
ADMINISTRAREA DATELOR | ADMINISTRAREA DATELOR
Inbox universal OLAP prin Web
57 61
De Mike Hurwicz De Udo Flohr
Obtineti toate mesajele Aplicatii bazate pe Web
e-mail, fax sau telefonice pot simplifica accesul
printr-o singură interfață. la datele OLAP.
6 BYTE România SEPTEMBRIE 1997
EDITORIAL
Toamna se numără. ...
INBOX
10
BITS
Sisteme Notebook mai rapide
cu monitoare mai bune 12
Best of BYTElaPC Expo 13
in astepterea DHTML 15
Unix sau Windows NT?
Ambele! 16
Sala de clasa virtuala Java 16
EVENIMENT
Sun SITE Romania la UPB
17
De Darvas Attila
NetWell ‘97
21
De Daniel Moldovan
INTERVIU
ViewSonic in Romania
23
De Daniel Moldovan
Interviu cu dl. Willie Lohrke,
sales manager la ViewSonic.
LAB REPORT
PROTECT WEB
HTML + NNTP = Groupware
79
De Jon Udell
Credeţi că Web-ul a transfor-
mat lumea? Fiţi pregătiți pen-
tru o nouă revoluţie.
Wasi ease
Carte postala virtuala
83
De Péter Csaba
Un serviciu atractiv.
SURFING
Algoritmi
87
De Mircea Sabău
Efort optimizat.
FUNDAMENTE
BAZE DE DATE
Administrarea textelor critice
25
De Ann O’Leary
Integrarea datelor text si relati-
onale cu ConText de la Oracle.
SISTEME DE OPERARE
Controlul echipamentelor
prin WWW
27
De Michael Howard
si Chris Sontag
O nouă tehnologie de interfață
permite controlul şi urmărirea
echipamentelor din browser.
REȚELE
Rutare și comutare în reţele ATM
De Jeffrey Fritz
lerarhia imbunatateste
WWW.agora.ro/byte/
rutarea ATM.
uc
Pentium II revelat
31
De Clive Maxfield
El combină arhitectura
PentiumPro cu MMX
intr-un singur chip
mai ieftin.
PROGRAMARE
Functiile avansate
de la ODBCDirect
33
De Rick Dobson
ODBCDirect oferă
o interfaţă client-server
mai flexibilă care
permite conlucrare
cu o mulțime de baze de date.
PREZENTARI
ChemOffice 89
De Budai Lăszl6
Web Remote Control 91
De Peter Csaba
Modelul obiectelor active 93
De Cătălin Aurel Rusu
Mașina Virtuală Java 103
De Budai Lâsal6
Clasa java.awt.image 107
De Nicoleta și Cristian Pelin
Calculatoare moleculare 111
De Dorin Marcu
CE-I NOU
Sybase lansează PowerBuilder
Enterprise 6.0 117
IBM prezintă
Cryptolope Live Le Ws
Clone Macintosh la Umax 118
E-mail pe Digital PCS 118
Minolta ColorLine 120
Conferinte
cu produse 3Com 120
Lexmark 2030invinge 122
Tastaturi românești
la sistemele HP 122
FORBES
O cafea vărog, și să fie Java
125
De Harrison Forbes
ULTIMA
Peștera Internet
132
De Darvas Attila
DIRECTOR GENERAL:
Romulus Maier (rmaier@agora.ro)
DIRECTOR EXECUTIV:
Adrian Pop (adipop@agora.ro}
DIRECTOR EDITORIAL:
Mircea Sârbu (msarbuCagora.ro)
REDACTOR ȘEF:
Darvas Attila (adarvas@agora.ro)
SECRETAR GENERAL DE REDACŢIE:
Danie! Moldovan (dmoldovan@agora.ro)
REDACȚIA:
Mircea Sabău (msabau@agora.ro)
Budai Lâszi6 (IbudaiQagora.ro)
REDACTORI ASOCIAȚI:
losif Fettich (ifettich@agora.ro)
Cristian Mateescu (mateescu@agora.ro)
LA ACEST NUMĂR AU MAI COLABORAT:
Harrison Forbes (Chicago);
Marius Tudorică (Tg-Mureș);
Cătălin Aurel Rusu (Cluj);
Péter Csaba (Tg-Mures);
Sepsi Istvan (Tg-Mures);
Kakucs Albert (Cluj);
Nicoleta Corina Pelin (Bucuresti);
Cristian Florentin Pelin (Bucuresti);
Dorin Marcu (Bucuresti);
Bathori Zsigmond (Tg-Mures);
CorEcTURA:
Aurora Laslo;
CASETA REDACŢIEI
TEHNOREDACTARE:
ADMINISTRAȚIE: Ingrid Maier
Marxenne: Gabriela Bucsa, Annamaria Pascu
(CONTABILITATE: Pap Ilona
SECRETARIAT: Rodica Fettich
DISTRIBUȚIE: Ștefan Curtifan,
Doina Ceșa, Natalia Vânău
REPREZENTANTA BUCUREȘTI:
Daniela Pastramă, tel: (01)-3309281
fax: (01)-3309285
C.P. 94 0.P. 49 București
LS.S.N.: 1223-9801
TIPARUL: S.C. Infopress S.A.,
Odorheiul Secuiesc,
Tel: 066-216483
Computer Press Agora s.r.l.,
C.P. 172 - 1, 4300 Tg-Mures
TELEFON: (065) 16.65.16
Fax: (065) 16.62.90
BBS: (065) 21.07.80
(8N1, 14400 bps, login: bbs)
byte@agora.ro
http://www.agora.ro/byte
Primim cu plăcere materialele dvs. cu condiția ca ele să se
încadreze în profilul revistei și să nu fi fost deja publicate.
tru publicarea lui. Manuscrisele nu se restituie. Redacția își
rezervă dreptul de a edita și publica mesajele e-mail în care
nu se specifică explicit că nu sunt destinate publicării.
EDITURA:
E-MAIL:
Wes:
COPYRIGHT: Materialul editorial din BYTE Magazine USA sau National Software Testing Laboratories, Soft-
ware Digest sau PC Digest tradus și retipărit în acest număr aparține companiei McGraw-Hill, Inc. Copyright
1997. Toate drepturile sunt rezervate. Publicat cu acordul McGraw-Hill, Inc., Avenue of the Americas, New York,
New York 10020 USA. Reproducerea în orice formă, în orice limbă, integral sau în parte, fără permisiunea scrisă
a McGraw-Hill, Inc., este interzisă. BYTE, National Software Testing Laboratories, NSTL, Software Digest, PC
Digest și InterMark sunt mărci înregistrate McGraw-Hill, Inc.
SEPTEMBRIE 1997 BYTE România 7
seqitoriaia
Toamna se numara...
e numără și se calculează.
Şi se va calcula, tot mai mult,
pe echipamente de calcul.
Acest lucru pare să fie atât de
evident încât pe 23 iunie, în acest an,
Guvernul României, prin hotărârea
Nr.308, a decis ca accelerarea realizării
infrastructurii informaţionale naționale
să fie un obiectiv strategic prioritar al dez-
voltării economico-sociale. Acest fapt nu
poate decât să ne bucure, pentru că în
sfârşit există un semnal oficial că cei care
se ocupă de tehnologiile informaţiei si
comunicaţii au, și la noi, perspectiva unui
un viitor asigurat.
Septembrie, prima lună din toamna
aceasta sosită repede după o vară practic
inexistentă, a început cu evenimente im-
portante. La Mangalia, firma Tornado a
organizat şi în acest an NetWell. Acest lu-
cru pare normal, căci cu binele ne obișnu-
im repede. Tornado merită în schimb
toată stima pentru că oferă an de an spe-
cialiştilor din domeniu posibilitatea să se
întâlnească şi să participe la prezentări
interesante.
Universitatea „Politehnica“ din Bucu-
reşti, Sun Microsystems şi ROMSYS ne-au
oferit bucuria de a participa la inaugu-
rarea centrului Sun SITE România. Sunt
sigur că cititorii noştri îşi dau perfect sea-
ma de importanţa evenimentului, dar ex-
traordinara dotare, căci nici măcar băn-
cile-de la noi nu dispun de ceva similar,
oferă comunităţii academice șanse reale
de a se prezenta la adevărata ei valoare în
faţa lumii, pe Web, folosind tehnologii de
ultimă oră.
IFABO '97 începe la Bucureşti săptă-
mâna viitoare, dar revista pleacă la tipo-
grafie înainte de acest eveniment. Sperăm
ca târgul să fie reuşit. Computer Press
Agora va sărbători cu această ocazie cin-
8 BYTE Romania SEPTEMBRIE 1997
ci ani de la prima apariţie a revistei PC Re-
port, cea mai veche şi cea mai citită revistă
de calculatoare personale şi informatică
din România. Un călduros „La mulţi ani!“
pentru PC Report şi colegii noștri care
realizează această revistă.
În editorialul de luna trecută mi-am ex-
primat îngrijorarea cu privire la reducerea
numărului de domenii Web din România.
Scăderea aparentă a fost însă cauzată de
oprirea serverelor din şcoli şi universități.
Se pare că acestea reprezintă 34% din tota-
litatea domeniilor accesibile din Româ-
nia. După vacanţă, sper ca acest procent
să fie chiar mai mare şi că CNI va cuprinde
în Strategia Naţională de Informatizare
măsurile ce se impun pentru formarea
competenţelor necesare realizării și uti-
lizării unei infrastructuri informaţionale
performante. Formarea competențelor
presupune un efort deosebit, mult timp,
nu este o treabă simplă şi sper ca cei care
iau deciziile politice să poată înţelege acest
lucru. După câte ştiu, destul de puţini din-
tre ei au suferit o a doua alfabetizare. Deo-
camdată, cunoaşterea unor limbi străine
şi a aplicaţiilor de birotică este o cerință
frecventă doar la selectionarea secre-
tarelor. N-ar strica un criteriu similar nici
pentru directorii de intreprinderi $i insti-
tutii. Poate reforma economica s-ar rea-
liza mai rapid.
Spre regretul meu, Iosif Fettich, care
scrie de obicei articolul pentru ultima
pagină , a fost în concediu şi nu a reuşit să
pregătească materialul așteptat. Sper
totuşi că încercarea de a suplini această
lipsă să nu vă dezamăgeasă prea tare.
Acest număr conţine, așa cum va aştep-
taţi, articole referitoare la noutăți tehno- .
logice, tehnologii fundamentale şi admi-
nistrarea datelor, dar nu lipseşte nici Java,
ActiveX, Web Master, Lab Report sau
Surfing. Cover Story încearcă o clarificare
a tehnologiilor ActiveX. Pentru integra-
tori de sistem, articolul referitor la tehno-
logiile P&S (Publish&Subscibe) va oferi,
cred, perspective noi. Suporterii Java pot
citi o prezentare a maşinii virtuale (VM)
şi un articol despre clasa java.awt.image.
Nici specialiştii în hardware n-au fost
uitaţi: platforma Pentium II este prezentă
atât la tehnologii fundamentale cât şi în
Lab Report. Veţi mai putea găsi în acest
număr din BYTE România un articol
despre calculatoare moleculare, veţi afla
cum puteți trimite ilustrate pe Web şi
multe informaţii pe care sper să le găsiți
actuale şi interesante. Aştept să ne scrieți
părerea dumneavoastră.
Toamna se numără bobocii şi constat
cu bucurie că există unele semne bune
pentru lumea calculatoarelor și comuni-
caţiilor. În ciuda dificultăţilor zilnice, apar
realizări semnificative şi există speranța
unei evoluţii pozitive în acest domeniu.
Darvas Attila
adarvas@agora.ro
www.agora.ro/byte/
BI 10 fax cu hârtie obişnuită
* Tehnologie bubble jet
* Robot telefonic digital încorporat
* 64 nuanţe de gri (UHQ)
e ECM
; MultiPASS 0
e Bax multifuncțional cu hârtie obişnuită
„ Fax PC / Imprimantă / Scanner / Copiator / Telefon
„e Software pentru Windows 3.1 şi Windows 95
„e Memorie internă de până la 47 de pagini
Cel plin de culoare -
MultiPASSm C30
* Imprimantă color / Fax PC / Scanner / Copiator / 'Telefon
A E * 4 pagini / minut (viteză de imprimare)
alai isa m= * Rezoluţie a imprimării de 720 x 360 dpi
| + Memorie opţională de până la 2 MB
Bucuresti: eIT&S tel (01) 411 08 86 eSOTA tel
(01) 232 03 88 eROMUS tel (01) 230 16 50 eECO anon
COPY & PRINT tel (01) 679 35 39 RTC tel (01) 222
37 43 *TORNADO SISTEMS tel (01) 667 28 23:
Ploiesti: IT&S tel (044) 194 519 Arad: eELEC-
TRONIC SHOP tel (057) 289 642; Sibiu: eECO Reprezentanta | Romania
COPY & PRINT tel (069) 213 189: Constanţa: Bd-ul Expoziţiei 2, intr. D, birou 1.06,
“TORNADO SISTEMS tel (041) 618 580 tel. 01-223 3854, fax. 01-223 4236
Scrisorile trimise de cititorii
noștri ne bucură şi aşteptăm
să fie cât mai multe. Este o
posibilitate de comunicare cu
redacția, care ne ajută in ori-
entarea revistei şi în același
timp este o posibilitate de
exprimare a unui punct de
vedere diferit, sau entuzias-
mului provocat (ce bine ar fi)
de articolele publicate în
revista noastră. Aşteptăm
deci, în continuare, scrisorile
dumneavoastră.
Cărți pe Web
Legat de un articol apărut în
ultimul număr BYTE - cărți
pe WWW (cred) - site-ul nos-
tru www.racai.ro a inregistrat
două premiere în toamna
anului 1996: a fost prima
carte a unui autor român,
disponibilă în format html pe
un site din România (noi nu
am mai putut identifica o altă
carte apărută înainte) şi toto-
dată prima carte care a apărut
întâi pe web, şi după aceea a
fost tipărită - (este vorba de o
carte scrisă de dl. academi-
cian Mihai Draganescu, in
limba franceza, pe care am
editat-o). De asemenea, în
primăvara acestui an, am mai
editat o carte a d-lui academi-
cian în limba engleză,
folosind în câteva locuri Java
Script. Cărţile sunt accesibile
la http://www.racai.ro/books
/books.html
Dorin Marcu, Bucuresti.
mdorin@racai.ro
GUI, NUI si CUE
Sunt de acord că ne apropiem
de o revoluţie în concepţia
GUI (Adio GUI, salut NUI,
BYIE România, iulie 1997).
Ce este, și încotro trebuie să
se îndrepte, suferă a nouă
definire, dincolo de metafora
desktop. Aţi folosit termenul
de interfață de utilizator
rețea, sau NUI, pentru inter-
fețele noi care apar. Ai dori să
spun totuşi, că chiar și ter-
menul de interfață trebuie să
suporte o evoluţie. Gândiţi-vă
la termenul de mediu.
Oamenii realizează medii,
peste tot în jurul lor, în lumea
fizică. De ce să nu le mute în
lumea virtuală? Celălalt ter-
men, reţea, pare să se refere
mai mult la tehnologie,
canalul, decât la ceea ce se
întâmplă în realitate aici, şi
anume colaborare. Reţeaua
este următorul nivel de canal
pe care putem colabora.
Propun deci un termen mai
adecvat, mediu utilizator de
colaborare (CUE). Următorul
pas, desigur, este definirea
optimului pentru un aseme-
nea mediu de colaborare.
Rich Kilmer
Roku Technologies
Chantily, VA
rich@rokutech.com
A fost o bucurie pentru mine,
să văd articolul referitor la
NUI. Aţi acoperit zona ideilor
relative la suprafaţa de lucru a
aplicaţiilor din comerţ, ceea
ce este corect, dar cred că citi-
torii dumneavoastră ar putea
fi interesaţi şi de idei mai
avansate din cercetare. Poate
doriţi să vizitaţi situl de la
Elastic Windows, care per-
mite lucru cu mai multe feres-
tre într-un mod care face
posibilă o administrare mai
eficientă a ecranului. Pentru
mai multe informaţii vedeţi:
http://www.cs.umd.edu/pro
jects/hcil/Research/1996/elas
tic-windows.html. Aici sunt
disponibile textele de la mai
multe lucrări şi imaginile afe-
rente.
Ben Shneiderman
Human-Computer Interaction
Laboratory, University of
Maryland, College Park
ben@cs.umd.edu
Fara cod, fara bani
După ce am citit despre avan-
10 BYTE România SEPTEMBRIE 1997
tajele oferite de obţinerea
unei semnături digitale şi a
banilor electronici (Cine se
mută, iunie) Am adus de pe
Net portmoneul CyberCash.
OK, am crezut, acum voi
cheltui nişte bani electronici.
Prima dată a trebuit să incarc
nişte monede în portmoneu.
Surpriză! Am primit un cod
de eroare de la bancă. Cartela
de identitate era în regulă,
mai exista mult credit valid.
Atunci care este problema?
Am aflat că CyberCash accep-
tă împrumuturi pe credit
numai de la o carte de credit
eliberată pentru un rezident
în SUA de o bancă din SUA.
Dar acum 15 de ani am putut
să folosesc o carte de credit
eliberată de o bancă din
Marea Britanie, pentru a
cumpăra bunuri în State, fără
nici un fel de probleme.
Obstacolul întâlnit este tipic
PRIN E-MAIL
PE WEB
: Vizitaţi Agora OnLine! Trimiteţi mesajele la (065) 166.516;
“Căutaţi în arhive. redactia Qagora.ro. E-mail
„ Descărcaţi, articole. Pentru a contacta indi- office@agora.ro.
A ltimele nouă. _vidual pe redactori. saupe WWW:
folosiți adresele publi- http://www. apoi oe
cate sau căutați Dee agoralinfol
Ps ee aS oieri edi sau.
PRIN POȘTĂ "contacte care nu sunt.
Redacția BYTE _ legate de continutul —
„România, GP. 1 72- 1 editorial, telefonic. oe
A
multor intreprinderi de co-
mert cu prezenta pe Web.
Dacă nu aveţi codul poştal
ZIP, nu existaţi. Deşteaptă-te
SUA!
Charles Smith
London
Modelarea datelor
Mă bucur întotdeauna să văd
revista dumneavoastră,
deoarece pot să învăţ multe
din articolele publicate. Aşa
încât am fost dezamăgit de
articolul lui ]. L. Weldon, "O
carieră în modelarea datelor”,
- (iunie). Tratarea modelării
datelor a fost superficială şi
facilă. Dacă modelarea
datelor este așa de simplă, de
ce oare atâtea amărâte mode-
le de date provoacă aşa ne
multe necazuri, la acele com-
panii care încearcă imple-
mentarea unor magazii de
date? Dacă modelarea este
atât de simplă, de ce se
inflamează ochii partici-
pantilor la discuţiile fără de
sfârşit despre modelele de
date?
Modelarea datelor este un
proces complex şi dificil, plin
de capcane ascunse. Fac mo-
delare de date de multi ani şi
cred că Weldon a adus un
grav deserviciu subiectului.
Rainer Schoenrânk
Data Warehouse Practice
Coopers & Lybrand
San Francisco
rainer-schoenrank vag
net.att.net
ABONAMENTE
www.agora.ro/byte/
Microsoft
"Sit „feel it set.
Micro
Oc
în limba roman
3 Nu v-ar placea să folosiţi cel mai bun
pachet de programe pentru birou din lume, în limba
maternă?
Microsoft a realizat Office '97 în versiunea românească.
Lucrul cu Office '97 este acum mult mai ușor folosind
noul corector ortografic și facilitățile de despărţire în sila-
be în limba română. ui
IntelliSense îţi permite să pui întrebări despre software Solicitaţi noul Office '97 Romanian și veţi vedea cum
cu propriile tale cuvinte, instrumentele de integrare facili- puteți căpăta soluţii pentru problemele zilnice, totul de
tează sharing-ul de date, iar Microsoft Outlook vă permi- la un singur pachet de programe pentru business.
te să gestionaţi e-mail-uri, întilniri, activităţi și documente
importante, toate într-o singură fereastră.
WhereaVO
ae,
Hoda yy ?
Microsoft: BUCURESTI: DimSoft 01/322.52.04, GeCAD 01/324.84.09, QNet 01/211.78.01, Rom Team Solutions 01/311.08.51, SoftWin 01/230.50.26,
QUALIFIED DEALER CONSTANTA: GMB Micronet 041 /636.644, ARAD: BB Computer 057/280.111, BRASOV: Intelprof International 068 /411.354,
IASI: Open Systems 032/225.132, CLUJ: Sistec 064/190.282, Net Brinel 064/430.280
Știri & Noutăţi
Mai multă putere, ecrane mai mari
Datorită ecranelor mai mari şi a procesoarelor Pentium la 200 si 233-MHz,
noile portabile sunt o alternativă a calculatoarelor desktop
iţi pregătiți pentru noul val de
PC-uri portabile rulând la vi-
teze de 200 şi 300MHz şi
echipate cu cele mai recente
procesoare mobile Pentium MMX pre-
cum şi cu ecrane mari, de 14 inch.
Desigur că notebook-urile încă nu
beneficiază din plin de puterea noilor
procesoare (cum ar fi Pentium II) pe care
o posedă calculatoarele desktop, iar ver-
siunea mobilă a procesorului Pentium
II va apărea probabil doar în prima
jumătate a anului 1998. Dar graţie
noilor procesoare mobile Pentium (cu
numele de cod Tillamook) - primele
procesoare ce vor fi construite în
tehnologia de 0.25 microni CMOS
a firmei Intel - furnizorii de
notebook-uri nu vor avea
dureri de cap în pri-
vinţa puterii con-
sumate de un
Pentium
mobil la
166-MHz.
Noile procesoare,
cuplate la dispozitive CD-ROM rapide,
la unităţi hard de mare capacitate şi la
ecrane de dimensiuni mari vor oferi noii
generaţii de portabile, caracteristici demne
de luat în seamă, reprezentând o alterna-
tivă reală la actualele calculatoare desktop.
În aproape toate cazurile, furnizorii
echipează aceste sisteme cu ecrane care
oferă o rezoluţie de 1024x768 pixeli, cu
minim 32MB memorie RAM, cu unități
hard de 3GB şi, în multe cazuri, cu o uni-
tate 10xCD-ROM. Totodată caracteristi-
cile multimedia sunt semnificativ îmbu-
nătăţite prin creşterea calităţii sunetului şi
a imaginilor video animate, precum şi prin
suportul grafic 3D. De fapt, pe măsură ce
aceste portabile se maturizează, furnizorilor
le este din ce în ce mai greu să-şi diferențieze
produsele.
„Firmelor le este tot mai greu să vină pe
piaţă cu produse care să atragă datorită ca-
12 BYTE România SEPTEMBRIE 1997
racteristicilor
nemaiîntâlnite“, spunea Bruce
Stepen, un analist IDC (Framingham, MA).
„Vedem tot mai mult acele 'etape de susti-
nere! în care proiectanți, în încercarea lor
de diferenţiere a produselor, aduc acesto-
ra doar mici schimbări.“
O diferență ar putea fi ecranele. S-a
zvonit că firmele Digital Equipment şi IBM
vorechipa noile portabile HiNote şi Think-
Pads cu ecrane de 14 inch, dar ambele firme
s-au ferit să comenteze acest lucru. Mai
mult, acestea folosesc materiale cu totul noi
pentru ecran, fiind necesar un nou format
de notebook - aceste portabile sunt mai late
decât cele actuale.
Seriile Ascentia M ale firmei AST vor
putea fi echipate cu procesorul Pentium la
233-MHz cu MMX. De asemenea, firma
AST va oferi o unitate 20xCD-ROM, un
VisionBook Elite
la 4999$ la firmei
Hitachi are un
ecran de 13,3 inch
și o greutate de
doar 1,77 kg.
disc hard de maxim
4GB, un ecran de
13.3 inch şi un mo-
dem de 56Kbps. Pre-
turile se vor situa intre
2499$ si 5499$, in
functie de configuratie.
Noile serii Versa ale
firmei NEC vor dezvalui
o lista de caracteristici
similare. Firma NEC va
utiliza procesoarele Pen-
tium cu MMX la 200
şi 233 MHz cu 256KB
memorie cache L2,
~ 32MB memorie RAM
(maxim 128MB), o unitate
hard de 3.2 sau 5.2GB, o uni-
tate 20xCD-ROM, o cartelă gra-
fică 3D şi de sunet pe 16 biţi, un
“modem celular de 56Kbps, 2MB me-
morie video precum şi porturi de ieşire
video. Firma NEC a optat pentru unitatea
floppy LS-120, care suportă atât standar-
dul discurilor de 1.44MB, cât şi discurile de
înaltă capacitate de 120MB. Preţurile
portabilelor Versa, ce vor apărea în luna
octombrie, se vor situa între 5199$ şi
5999$. În ansamblu, vă puteţi aştepta la
oferte şi preţuri comparabile atât din partea
firmelor care au deja un renume, cât şi din
partea celor noi de pe această piaţă, cum
sunt Hitachi, Fujitsu şi Sony.
Pe lângă vitezele de tact mai mari, noile
procesoare mobile Pentium ale firmei Intel
consumă o putere mai mică: sub SW în
comparaţie cu 7.7W cât consumă cipul la
166MHz. Dar consumul redus ce oferă o
potenţială conservare a bateriilor, va fi
probabil doar o iluzie din cauza ecranelor
mai mari și a unităţilor mai rapide. De fapt,
mulți utilizatori ar putea opta pentru porta-
bile cu ecrane mai mici, de 13.3 inch, cu
„matrice activă, în tehnologia TET (în care
fiecare pixel este controlat de unul până la
patru tranzistoare) datorită preţului mai
scăzut precum și consumului de energie mai
redus. Dar vestea bună este că utilizatorii
care doresc un ecran adevărat, îl vor putea
avea cât de curând.
Pe de altă parte, portabilul Libretto al
firmei Toshiba a fost prezentat într-o ten-
dinţă de întoarcere la dimensiunile unui
subnotebook sau ultraportabil, cum mai
este uneori denumit. Firmele NEC şi IBM
ar putea să se alăture firmei Toshiba în
scopul fabricării acestor mici sisteme de cal-
cul.
Ambele ultraportabile pot fi echipate cu
versiuni de dispozitive Windows CE (care
sunt ceva mai mari decât modelele actuale
şi au tastaturi mai bune) sau dispozitive
Libretto-notebook-uri mai mici, cu ecrane
mai mici, dar care rulează Windows 95.
Chiar în acest an, s-ar putea să vedem o
nouă categorie de portabile: notebook-uri
de dimensiuni ultra reduse, care folosesc
procesorul Tillamook şi noile tehnologii de
fabricare a bateriilor, cum este tehnologia
polimer litiu.
Câştigătorii finali ar putea fi toţi acei care
nu vor forţa cele două extreme. La prețul
de 2500$, utilizatorii vor putea găsi așa
numitele linii valorice, care le vor oferi o
bună combinaţie de echipamente gi, cel mai
adesea, stilul „totul într-unul singur“
(unităţi floppy, CD-ROM simultan).
-Jon Pepper
MeetingPoint
învinge la
PC Expo
Software-ul de videoconferință Meeting-
Point al firmei White Pine a câştigat la PC
Expo premiul „Best of Show“ oferit de
BYTE. Premiul recunoaşte produsele noi,
Portege al
firmei
Toshiba este
acum mai
portabil.
www.agora.ro/byte/
Curand: Productie mica
in tehnologia informatiei
i ,
' Vesti bune, vesti rele. Un raport
<2 recent al Meta Group (Stam-
ford, CT), o firma de cercetare
si analiza a tehnologiei infor-
matiei, indica faptul că salariile
angajatilor IT din SUA au crescut rapid in
comparatie cu cele ale lucratorilor din alte
domenii, dar prezice o lipsă a forţei de muncă
calificată în informatică.
“Problema este că această mare cerere
pentru noile sisteme informatice, noul
Internet și aplicaţiile de comerţ electronic,
sosește în același timp în care firmele se con-
centrează asupra descoperirii și remedierii
tuturor problemelor potenţiale generate de
„procente pe an, iar în 1995-1996 de 13.8
anul 2000. Firmele pot satisface câteva din-
tre aceste necesităţi prin achiziţionări exte-
rioare, dar multe departamente IT vor ră-
mâne încă rigide. Firma Meta Group sfătu-
iește organizațiile să lupte împotriva oricăror
acţiuni inutile, prin stabilirea unor priorităţi
stricte a proiectelor, printr-o bună selecţie
a achiziţionărilor exterioare.
Vestea bună este că salariile din domeni-
ul IT înregistrează o creștere anuală de 20
%, în comparație cu cele 4 %odin alte domenii
de activitate. lar rata de creștere a ofertelor
de serviciu în domeniul IT este de asemenea
accelerată: în perioada 1987-1995 a fost
de 9.6 procente pe an, în 1994-1995 de 11.7
procente pe an. Firma Meta Group a estimat
că există aproximativ 200.000 de locuri de
muncă neocupate în domeniul IT.
cu un impact real în tehnologia informaţiei.
MeetingPoint ridică standardele-bazate
pe tehnologia H.323 a serverelor de video-
conferință, simplificând mișcările strate-
gice pe care trebuie să le facă furnizorii de
servicii Internet şi cele necesare în intrane-
„turi. De asemenea, MeetingPointa câştigat
premiul la categoria produselor Web/Inter-
net.
Ceilalți finaliști la categoria Web/Inter-
net au fost software-ul PipeLive al firmei
Interworks Systems, care oferă suport
agenţilor şi clienţilor de a comunica pe
viu, de la persoană la persoană, pe Inter-
net și Instant Teamroom al firmei Lotus,
care permite grupurilor de lucru să sta-
bilească rapid un spaţiu de lucru privat pe
Web, dincolo de zidul de protecţie al cor-
poratiei.
Software-ul Chili ASP al firmei Chili Soft,
care permite aplicaţiilor ActiveServer să
ruleze pe servere Web, altele decât Micro-
soft Internet Information Server (IIS), a
câştigat premiul la categoria „Cel mai bun
software de dezvoltare“. Finalistul a fost
SoftFactory/2000 al firmei Micro Focus,
un set de unelte şi metodologii destinate
anului 2000.
Câștigătorul categoriei „Cele mai bune
aplicaţii şi utilitare“ a fost Sky Map al firmei
Etak, un complet GPS (Global Positioning
System) asistat de o hartă şi un sistem de
navigare prin satelit, proiectat pentru PC-
uri portabile, compatibile IBM. Finaliști
au fost Visio Map, un program pentru harti
sub Windows 95 si Kai's Photo Soap al
firmei MetaCreations, un program de
procesare foto pentru Windows 95.
Premiul la categoria „Cel mai bun porta-
bil“ a fost câştigat de Portege 300CT
3D Revolution oferă performanţe
înalte la un preţ de
aproximativ
350$.
(3499$) al firmei Toshiba, echipat cu un cip
Pentium la 133 MHz şi un ecran panoramic
de 10.4 inch. Finaliştii au fost Solo 9100 al
firmei Gateway 2000, un notebook de 8.5
SEPTEMBRIE 1997 BYTE România 13
pound (3.014 kg) configurat cu tot ceea ce
este necesar, la un preţ de 4200$ şi Vision-
Book Elite al firmei Hitachi, un notebook
echilibrat în privinţa puterii şi portabilitatii.
Elite costă în jur de 4999$, are un ecran de
13.3 inch şi cântărește 5.15 pounds (1.826
kg).
Câştigătorul la categoria „Cel mai bun
sistem“ a fost Ruffian RPX Workstation ©
/Server (5995$) al firmei DeskStation Tech-
nology, un sistem cu procesor Alpha ce
înglobează câteva dintre tehnologiile de
vârf existente, incluzând un procesor Alpha
21164 la 600MHz. Finalistii la aceasta cate-
gorie au fost AcerPower Graphics Work-
station al firmei Acer, un sistem cu proce-
sor Pentium II si sistemul Aquanta XR/6
Server al firmei Unisys, care extinde pute-
rea de calcul a platformei Windows NT,
precum 10 procesoare.
Acceleratorul grafic 3D Revolution
(349$) al firmei Number Nine Visual Tech-
nology a câştigat distincţia „Cel mai bun
hardware multimedia“ pentru combinaţia
dintre performanţă şi accesibilitate. Fina-
listul a fost Digital Versatile Library and
Panorama al firmei Elms Systems, care
oferă posibilitatea stocării pe DVD (disc
video digital) precum și soluţii pentru
aplicaţiile video la cerere.
Cel mai bun periferic a fost MultiSync
LCD2000 al firmei NEC Technologies, un
monitor plat de 20.1 inch. Finaliştii au
fost camera digitală D]J-1000 a firmei Mit-
subishi, de mici dimensiuni, echipată cu o
cartelă compactă de memorie rapidă şi CPJ-
D500 LCD Data Projector al firmei Sony,
având dimensiunile unui portabil.
Cea mai bună imprimantă a fost Stylus
Color 3000 a firmei Epson, care oferă o
grafică profesională şi reproduceri foto-
grafice digitale de excepţie pentru mai puţin
de 2000$. Finaliştii au fost Document Cen-
tre Series a firmei Xerox, o familie de
Informații despre câștigătorii Best of PC Expo
Best of Show: White Pine
(603-886-9050; http://
www.wpine.com).
Cel mai bun produs
Web/internet: White
Pine. Finaliști: Interworks
Systems (914-993-0900;
http://www.iworksys.com);
Lotus (617-577-8500;
http://www.lotus.com).
Cel mai bun software de
dezvoltare: Chili Soft
(717-290-8346; http://
www.versicom.com/
chilisoft). Finalist: Micro
Focus (415-856-4161;
http://www.microfocus
.com).
Cea mai buna aplicatie
sau utilitar: Etak
(415-328-3825;
http://www.etak.com).
Finaliști: Visio (800-248-
4746; http://www.visio
“ .com/solutions/maps);
MetaCreations (805-566-
6200; http://www
.metatools.com).
Cel mai bun portabil:
Toshiba (800-457-7777;
http://www.computers
oshiba.com). Finaliști:
Sony (800-352-7669;
http://www.sony.com/
Gateway 2000 (800- technology).
846-2000; http://www Cea mai buna impri-
.gw2k.com); Hitachi(800- mantă: Epson (800-463-
448-2244; http://www 7766; http://www.epson.
-hitachipc.com). com). Finalist: Xerox (800-
Cel mai bun sistem: 349-3769; http://www. xe-
DeskStation Technology rox.networkprinters.com).
(913-599-1900;http:// Software multimedia:
www.deskstation.com).
Finalisti: Acer (800-551 -
2237; http://www.acer
.com cec mile (408-
MetaCreations (800-297-
2665; http://www
.metacreations.com).
Finaliști: Info Value
unisys.corm) 1359; http://www
Cel mai bun hardware .infovalue.com); Noise
multimedia: Number Nine Cancellation Technologies
Visual Technology (617- (203-961-0500; http://
674-0009; http:// www
.nine.com). Finalist: Elms
www.nct-active.com).
Cele mai bune solutii de
Systems (714-461-3200; conectivitate: RightFax
Cel mai bun periferic: www.rightfax.com.
NEC Technologies (800- _Finalisti: TenFour (703-
632-4636; http://www
„nec.com). Finaliști:
Mitsubishi (7 14-220-
2500; http://www
„mitsubishi-display.com);
716-8364; http://www
.tenfour.com); River Run
Software (http://www
„riverrun.com).
“Căimaibune
pentru partaja-
rea ajajorina Bel,
Firma Hewlett-
Packard promo-
vează un nou pro-
tocol de comu-
nicatie numit JetSend, care per-
„mite o comunicare directă între
două dispozitive - fără inter-
_venţia utilizatorului - reprezen-
tând cea mai bună modalitate de
partajare a datelor. Scopul este
- acela de a oferi o nouă generaţie
de dispozitive mai ușor de utilizat
și care să furnizeze cea mai bună
„calitate posibilă făcând apel la
„. caraeteristicile oferite de două
sau mai multe dispozitive.
- Cânddouă dispozitive ce per-
mit SendJet comunică, acestea
nu au nevoie de un intermediar,
cum ar fi un server de reţea, un
driver de dispozitiv sau chiar de
doi operatori, pentru translata-
"rea și procesarea informaţiei
schimbate între acestea. Fiecare
dispozitiv își poate transmite in-
formaţia referitoare la caracte-
„risticile și domeniul de opţiuni pe
care le suportă spre alte dispo-
zitive. Dispozitivul transmiţător
iniţiază o conversaţie și trimite
informaţii despre caracteristicile
sale (cum ar fi rezoluţia, culorile)
receptorului. Conversaţia este
Me iar datele din transe
în formatul corespunzător.
Cu JetSend, fiecare dispozitiv
sau maşină de procesare a infor-
matiei include un software de
dispozitiv ce conţine informaţii
referitoare la modul de lucru al
acestuia. Accesul JetSend nu ne-
cesită un dispozitiv care să re-
zolve problema partajării datelor
între periferice, fiecare cu pro-
priul driver software, ceea ce re-
prezintă motivul principal pen-
tru care HP crede că JetSend se
potrivește bine cu viitoarele dis-
pozitive conectate la Internet și
care au nevoie de o partajare a
datelor cu un număr mare de alte
dispozitive. În acest moment, HP
a avut discuţii cu Microsoft pen-
tru includerea protocolului Jet-
Send în viitoarele versiuni Win-
dows. HP a declarat că primul său
produs ce permite JetSend va fi
lansat într-un an de zile.
HP spunea că dorește să facă
din JetSend un protocol deschis,
disponibil pentru industrie. Spe-
cificaţiile au fost publicate la
http://www/jetsend.hp.com,
pentru a permite firmelor sa-si
construiasca propriile dispozitive
JetSend. Sau firmele pot
cumpăra un pachet de la HP la un
preţ de cca. 15.000$.
-Dave Andrews
14 BYTE România SEPTEMBRIE 1997
copiatoare ce poate fi configurată pentru
tipărirea în reţea, scanare și servicii de fax
şi DocuPrint C55 Color Laser Printer a
firmei Xerox, o imprimantă de birou la un
preţ scăzut, în jur de 3500$.
Câştigătorul categoriei „Cel mai bun
software multimedia“ a fost Ray Dream
Studio 5 al firmei MetaCreations, un instru-
ment pentru animaţie şi proiectare 3D.
Finaliştii la această categorie au fost Quick
Video Suite a firmei Multimedia Soft-
ware, o platformă software completă des-
tinată serviciilor video în reţele de corpo-
raţie şi software-ul ClearSpeech PC/COM
al firmei Noise Cancellation Technologies,
care reduce ecoul şi zgomotul în aplicaţiile
destinate PC-urilor.
Distincția „Cea mai bună soluţie de
conectivitate“ a revenit produsului Enter-
prise 5.0 al firmei RighFax, o soluţie pen-
tru serviciile fax distribuite, care solicită
Internetul şi intranetul pentru evitarea chel-
tuielilor telefonice în cazul distanțelor mari.
Finaliştii au fost produsul TFS Gateway ver-
siunea 3 al firmei TenFour, care furnizează
securitate și conectivitate utilizatorilor şi
administratorilor de poştă electronică şi
Mail on the Run al firmei River Run Soft-
ware, un furnizor de acces la poşta elec-
tronică pentru utilizatorii mobili de Win-
dows CE.
Dezvoltatorilor
le place DHTML,
dar mai au de
asteptat
Noile versiuni îmbunătăţite de HTML
promit un dinamism mai accentuat al
siturilor Web, fără să necesite o bună expe-
riență în scrierea apleturilor Java sau a con-
troalelor ActiveX, dar incompatibilitatile
existente vor genera o întârziere până la
apariția unui standard uniform. Atât Net-
scape cât şi Microsoft au numit aceste noi
versiuni Dynamic HTML (DHTML). Dar,
în ciuda acestui aspect, cele două imple-
mentări diferă substanţial.
DHTML reprezintă o combinaţie între
HTML, stilul paginilor în cascadă (CSS) şi
able de programare simple (script).
Prin ce diferă acestea? În esență, HTML
specifică elemente de genul antet şi para-
graf. CSS oferă un control precis asupra
prezentării acestor elemente. DHTML,
prin Document Object Model (DOM), .
furnizează un model şi o interfață de pro-
gramare a aplicaţiilor ce permit autorului
să manipuleze limbajul HTML şi CSS.
Netscape suportă DHTML în Commu-
nicator 4.01, disponibil pe platforma Mac,
Windowsşi Unix. Suportul oferit de Micro-
soft va sosi o dată cu Internet Explorer
4.0, dar suportul pentru Unix va apărea
după cele Windows şi Mac, adică după
aproximativ 180 de zile. Informaţii supli-
mentare despre diferențele dintre cele două
specificaţii DHTML sunt date în tabelul de
mai jos.
Lauren Wood, preşedintele grupului de
lucru DOM al Consorţiului World Wide
Web (W3C), afirma că specificaţiile pre-
liminare pentru elementele cheie DOM ale
W3C, un standard pentru modurile de
acces şi actualizare a documentelor prin
programe şi „scripturi“, va fi disponibil în
luna august. Aceste elemente includ func-
fionalitati pentru navigare şi manipularea
documentelor. În orice caz, Woods a esti-
mat că recomandările fale ale W3C nu
Comparatii intre specificatiile DHTML
Caracteristici
Netscape Communicator 4.01
Microsoft Internet Explorer 4.0 Preview
Recomandări de nivel 1 ale stilului paginilor
în cascadă (CSS oferă autorilor controlul
asupra stilului de document, cum ar fi seturile
de caractere și culorile utilizate),
Poziționarea CSS (oferă autorilor de cod po-
sibilitatea „trage și plasează“ pentru obiectele
din pagină și mișcări de obiecte în 3-D).
Document Object Model (interfata DOM per- + Este permis pentru un subset de etichete
mite programelor un acces dinamic și o ac-
tualizare a conținutului, structurii si stilului
documentelor),
Suport de limbaj („scripturile“, în orice
limbaj, manipulează metodele și proprietăţile
obiectelor pentru a produce un conținut
dinamic, ca răspuns la evenimentele generate
de utilizator).
Specularea evenimentelor (poate reduce
lungimea codului când se manipulează mai
multe obiecte în același a de a
„trage şi plasează“),
Legarea datelor (permite o testare mai rapidă
a datelor Web prin reducerea necesităţii de
reîmprospătare a datelor de la server).
www.agora.ro/byte/
* Poate schimba stilul la încărcarea unui
eveniment. Implementarea Netscape per-
mite schimbări de stil doar asupra paginii
încărcate,
* Poziţionează elementele HTML cu CSS.
* De asemenea, permite poziționarea prin
eticheta de straturi.
şi atribute HTML prin modelul obiect
Netscape JavaScript.
* DOM accesibil doar de standardul
JavaScript al European Computer
Manufacturers Association (ECMA).
* Nu se speculează nici un eveniment.
* Neimplementat.
* Poate schimba stilul in timpul si dupa incarca-
rea unui eveniment. Implementarea lui Micro-
soft permite schimbarea dinamică a stilurilor,
în timpul și după încărearea unei pagini.
* Poziţionează elementele HTML cu CSS.
+ Este permis pentru toate etichetele si
atributele - chiar si pentru caracterele
etichetate,
* DOM accewsibil prin ECMA JavaScript si
VBScript.
+ Suport pentru specularea evenimentelor.
* Cache server bazat pe date locale.
* Sortare și filtru de date fără server.
* Suport ODBC, JDBC și date separate
prin virgulă.
SEPTEMBRIE 1997 BYTE România 15
LR
vor apărea mai repede de anul 1998.
„DHTMLva permite dezvoltatorilor de
situri Web efecte multimedia şi o mai
mare interactivitate,“ spunea Sal Arora,
director tehnic la NetObjects. NetObjects
comercializează Fusion, un instrument de
dezvoltare Web destinat celor care doresc
să cheltuiască mai mult timp pentru dez-
voltare de conţinut decât pentru scrierea
programelor HTML. NetObjects lucrează
Raport Datapro
Unix sau Windows NT? Ambele!
proape oricine şi-a dorit niște modalităţi pentru a face ca Unix și Windows NT să lucreze
împreună ușor și eficient. Soluţia simplă a firmei Softway Systems plasează aceste sis-
teme de operare pe aceeași platformă. În cadrul acestei integrări a celor două sisteme de
operare în OpenNT, Softway a realizat ceva mai mult decât o simplă integrare între Unix și NT:
OpennT furnizează un subsistem Unix complet și nativ deasupra unui nucleu NT. OpenNT
seamănă mult cu Unix, fiind conform standardelor Posix.2, iar Softway se așteaptă ca la sfârșitul
cu Netscape şi cu versiunile DHTML ale
firmei Microsoft.
Alţii sunt în aşteptare. Ed Foreman,
director de marketing la Elemental Soft-
ware, firmă ce comercializează programul
de autorizare dinamică a siturilor Web
Drumbeat, spunea că „a adoptat o poziție
de aşteptare relativ la DHTML* și reco-
mandă clienţilor săi același lucru. Ca multe
alte tehnologii, DHTML oferă noutăţi sem-
nificative. Dezvoltatorii care nu pot rezista
instinctului, ar putea găsi aici cea mai bună
suită pentru intraneturi sau extraneturi de
dimensiuni mici, fiind posibilă folosirea
unui singur tip de „browser“. Alţii însă ar
putea dori să câştige experienţă în
DHTIML, testând versiunile una câte una,
până la apariţia specificaţiei finale.
-Rick Dobson
Sala de clasă
virtuală Java
Sala multimedia de studiu pentru Java
Sala de clasă virtuală multimedia pentru
Java este lipsită de acele vrăjitorii tehnice
sofisticate care să-i ofere un răsunet, dar, în
compensație, CD-ul conţine informaţii
temeinice despre programarea în Java şi
numeroase exemple de cod, oferind o
modalitate excelentă de învăţare.
tat i i
Și Pl e ee
NEXT pig. 6.42
1 77 Fig Se
247
Seaport:
sapere
public
The progres:
b passing an
v
class Passkreay
awe off = @, £ 2,9,
er ic void point?
înt xfosicia = 25,
-
3
6
d
Să
+
»
Ei
2
e
i
16 BYTE Romania SEPTEMBRIE 1997
acestui an să achiziţioneze de la
Open Group marca XPG Unix
95. Când acest lucru se va în-
tâmpla, OpenNT seva putea nu-
mi cu adevărat Unix.
OpenNT este ceva mai mult
decât un software de interope-
rabilitate. Alte produse software
de acest gen au adoptat una din-
tre cele câteva strategii existen-
te, cum sunt interfețele de pro-
gramare a aplicaţiilor pe platfor-
me încrucișate, emularea Win-
dows pentru Unix (de exemplu,
Bristol și Mainsoft) sau emularea
Unix pentru Windows (cum sunt
trusa de instrumente MKS sau
GNU Win32 al firmei Cygnus).
Dar toate aceste soluţii, fie au un
preţ scăzut, ceea ce înseamnă
performanţe reduse și funcționa-
litAti si compatibilitati limitate, fie
sunt foarte scumpe. Produsul fir-
mei Softway depășește aceste
probleme prin punerea în functi-
une, într-o manieră nativă, a celor
Facilităţile suportate de OpenNT 2.0
(http://www.softway.com) includ:
“interfețe Posix.1, Posix.2 si ANSIC
*socluri BSD mapate la Winsock
*SVID IPC (cozi de mesaje, semafoare)
*memorie partajata, fisiere mapate in memorie
* posibilitatea de execuţie a aplicaţiilor Win32 din
OpenNT
*semantici complete tty mapate la ferestrele consolei
*suport pseudoterminal
*programe client și biblioteci X1 1R5 Windowing System
*server de afișare X11R6 Windowing System
-fonturi și gestiunea acestora X11R6
*OpennNTIF (sistem de gestiune a ferestrelor OSF/Motif
1.2.4, biblioteci, pachete de dezvoltare)
* demon pentru serviciu telnet (suport de conectare multi-
utilizator)
*suport de legarea fișierelor, nume de fișiere sensibile la
caractere mari sau mici
“peste 200 de comenzi și programe utilitare Unix și X11R5
*invelisuri Unix: KornShell, Bourne shell, C shell
“limbaje „script“ Unix: awk, Perl, sed, Tcl/Tk
*control complet al activităţii „shell“
“integrare completă cu modelul de securitate Windows NT
“integrare completă cu sistemul de fișiere Windows NT
“serviciu de planificare temporală a activităţilor, serviciu
sistem, suport demon
două sisteme Unix și NT. De a-
semenea, OpenNT permite apli-
caţiilor Windows și NT să ruleze
una câte una pe aceeași platfor-
mă, ceea ce reprezintă o puter-
“clienţi Internet: FTP, telnet, ping, rsh
*suport integrat pentru dispozitive de înregistrare
instrumente de dezvoltare Unix: make, rcs, yacc, lex, cc,
c89, nm, ar, strip
nică atracţie pentru utilizatorii ce au nevoie ca aplicaţiile lor să ruleze pe ambele sisteme.
Mary Hubley, analist principal, Datapro Information Services Group, analizează pieţele NT și Unix. Hubley
este director al analiștilor Datapro: Rapoarte despre Windows NT, care se axează pe piața Windows NT
și alte tehnologii înrudite, incluzând studii de caz, generalităţi despre tehnologii și produse și, nu în ultimul
rând, gestiunea și integrarea strategiilor. Pentru informaţii suplimentare despre rapoartele Datapro, sunați
la 609-764-0100; fax: 609-764-281 4; http://www.datapro.com.
AL SU SA YORE RA RET TRI SS HS GMI IONE LEAT AT
Sala de clasă virtuală pare a fi o întoarcere
la cărţile multimedia timpurii de pe CD-
ROM. Într-adevăr, există aici un preambul
video de sine stătător, şmecherii pentru
scrierea codului și secvenţe audio, dar
CD-ul este lipsit de acele posibilități extinse
cum sunt legăturile Web valoroase şi
macrourile automate de aplicaţie. Chiar
dacă moşteneşte o natură interactivă de la
Java, se remarcă absenţa dezvoltărilor mo-
derne. Noua ediţie a titlului, ce va apărea
în septembrie, va fi actualizată pentru a
acoperi modelul Java 1.1 şi va fi rescrisă din
temelie în Java. Noua versiune a acestui
CD-ROM va fi mult mai interactivă şi va
funcţiona pe mai multe sisteme de operare.
Titlul curent conţine o colecţie de pro-
grame utile (nu doar frânturi de cod) ce pot
fi vizualizate, copiate în alte aplicaţii sau
lansate direct pentru a vedea codul în exe- -
cuţie. Acest CD pare a fi mai degrabă o
sală de studiu virtuală decât o sală de clasă
multimedia interactivă, dar autorii şi-au
făcut tema de casă.
- Stan Diehl
[din BYTE, o publicaţie McGraw-Hill, Inc.
Adaptare - Mircea Sabău]
Sun SITE România la UPB
e data de 9 septembrie 1997, la Universitatea Politehni-
ca Bucuresti, Sun Microsystems şi ROMSYS au inau- -
gurat Centrul Sun SITE (SunSoftware Information and
Technology Exchange), pentru România. A fost un
eveniment remarcabil, deoarece există acum, într-o universitate
importantă, un sistem deosebit de performant, care este o resursă
atât pentru cei de la UPB cât şi pentru întreaga comunitate academică
şi de cercetare din România. Acordul dintre Sun Microsystems şi UPB
prevede donarea unui server pentru Internet a pachetelor de soft-
ware necesare, valoarea iniţială fiind de peste 100.000$. Serverul
Ultra Enterprise 3000 dispune de procesoare la 167 MHZ, memo-
rie principală de 256MB şi sistem de discuri ce se pot schimba din
mers, cu capacitate de 23GB, precum si o unitate de bandă de 4-8
GB. Donaţia companiei Sun Microsystems nu s-a limitat doar la acest
server pentru Sun SITE. Prin efortul deosebit al domnului Theo Nis-
sim, Senior Manager, Sun Engineering Department, au mai sosit un
număr de nouă servere pentru Facultatea de Automatică şi Calcula-
toare din UPB. Domnul Theo Nissim, este fost student al acestei fa-
cultăți şi nu a uitat de şcoala şi profesorii care au contribuit la for-
marea lui, ca specialist în sisteme de operare. Capacitatea totală de
memorie centrală este acum de 3 GB, 62GB pe discuri şi 15 proce-
soare. Este cea mai performantă configurație existentă în acest
moment în România şi este la o instituţie de învățământ care are la
această facultate profesori respectaţi atât la noi, cât şi întreaga lume,
aşa cum ilustrează și această donaţie (câştigată inițial pe baza unui
concurs de proiecte).
Trebuie să amintim că Sun SITE România nu s-ar fi putut realiza
fără efortul susţinut, perseverent al doamnei profesor Irina Athana-
siu și care a luptat luni de zile cu o administrație nepăsătoare şi une-
ori ostilă pentru a obţine o sală, care să adăpostească aceste echipa-
mente. Rectorul UPB, prof.dr.ing Gheorghe Zgură, amintea în
discursul de la inaugurarea SunSITE că doamna profesor a ajuns să
DI. prof. Nicolae Tapus, dl. John Perryman
_$id-na Laura Lazaroiu de la Romsys.
Www.agora.ro/byte/
Unda de şoc a atins şi România.
De Darvas Attila
Donatie
ia 0 ii ee
le
Doamna prof. lrina Athanasiu, dl. Theo Nissim si
di. John Perryman la festivitate.
plângă pe coridorul rectoratului, la un moment dat. Mie mi se pare
ruşinos şi revoltător, ca un profesor stimat pentru realizările proprii
şi munca depusă, să ajungă să plângă la ușa unor funcționari indolenți.
Indrăznesc să sper că așa ceva nu se va mai întâmpla niciodată.
Datorită, în mare parte, ajutorului oferit de ROMSYS SA, care
a contribuit până şi la amenajarea sălii, donația de la Sun Microsys-
tems şi-a găsit, în fine, un loc la UPB şi au putut rosti discursuri
oficialităţile. Deşi s-a anunţat participarea, domnul Ministru al
Educaţiei, Virgil Petrescu, nu a mai considerat necesar sa vină, nici
n-a anunțat că nu mai vine, aşa că am așteptat cu toţii o jumătate
de oră. Respectul pentru timpul celuilalt este parte din educaţie,
poate acest lucru va intra și în atenția ministerului.
Bucuria participanților nu a fost diminuată de acest incident minor.
Au rostit discursuri dl. Iustin Tănase, secretar de stat, preşedintele
CNI, Prof.Dr.Ing. Gheorghe Zgură, Rectorul UPB, Prof. Dr. Ing.
Nicolae Țăpuș, şeful catedrei de calculatoare de la UPB, dl. Theo Nis-
sim, Senior Manager, Sun Engineering Department, dl. John Perry-
man, director de vânzări, Sun Balkans şi Dl. Adrian Dogaru, direc-
tor general ROMSYS, reprezentantul Sun în România.
Prin realizarea Sun SITE, UPB intră în rândul celor peste 40 de
universităţi din întreaga lume care participă la programul SunSITE
lansat în 1992. Este o recunoaştere a competenţei în domeniul
tehnologiei informaţiei din țara noastră. Sper ca mediul academic
de la noi să își dea seama repede de importanța resurselor existente
şi care îi sunt disponibile la UPB, si sa participe la realizarea unui
conţinut semnificativ şi de înaltă calitate, care să poată fi văzută
pe acest Sun SITE.
Mulţumim Sun Microsystems, succes Sun SITE România, şi felici-
tări celor care s-au luptat ca acest proiect să fie de acum o realitate!
Darvas Attila este redactor șef la BYTE România. Poate fi contactat prin
e-mail la adresa: adarvas@agora.ro.
SEPTEMBRIE 1997 BYTE România 17
NetWell'97
AL perioada 4-6 septembrie anul
curent, Centrul de Afaceri Ma-
: rea Neagră şi Hotelul President
din Mangalia au găzduit a treia
ediţie a seminarului de reţele de calcula-
toare NetWell'97, organizat sub patrona-
jul firmei Tornado Sistems din Constanţa.
Organizarea şi subiectele abordate i-au
făcut pe mulţi dintre invitaţii străini să com-
pare această manifestare cu unele dintre
cele mai reuşite conferinţe din vest.
Seminarul a fost deschis de domnul Flo-
rea Gheorghe, director de proiect la Tor-
nado Sistems care a descris pe scurt echipa
Tornado, specificând că în prezent partea
comercială este separată de cea tehnică,
fiind capabilă să ofere informaţii despre
orice produs furnizat de Tornado Sistems.
În plus echipa tehnică a fost îmbunătățită,
având un personal specializat în reţele de
orice tip şi pentru orice mediu. Au fost
prezentate serviciile oferite dintre care
putem aminti suportul gratuit pentru
proiectare, o pregătire a beneficiarului în
vederea exploatării corespunzătoare a
reţelei, asistență tehnică şi nu în ultimul
rând testarea de categoria $.
S-a amintit că sistemul de distribuţie a
fost restructurat, în prezent toată marfa
fiind localizată în Bucuresti şi nu în Con-
stanţa, între cele două oraşe existând în
prezent o conexiune digitală la un debit de
64 Kbps.
Dintre noutăţile tehnice a fost amintit sis-
temul de cablare MILLENNIUM care
reprezintă o licență BICC BRAND-REX,
pentru care este oferită o garanţie de 15 ani
plus girul companiei. S-a amintit că în
octombrie va avea loc o certificare MIL-
LENNIUM şi în plus o certificare pentru
echipamentele furnizate de Allied Telesyn.
Domnul lon Cuşea, directorul comercial
din partea Tornado Systems a anunţat noul
parteneriat cu firma Canon şi softul profe-
sional oferit de firma Allied Telesyn folosit
în special pe partea comercială. S-a amintit
că relaţiile cu partenerii din ţară se vor axa
în special pe contracte, încurajând în acest
fel afacerile cu parteneri tradiționali.
Deşi serverul de Web nu reprezintă încă
www.agora.ro/byte/
o certitudine s-a amintit că se continuă efor-
turile pentru a-l transforma într-o realitate.
Astfel, se urmăreşte realizarea unei reţele
de firmă gen intranet între Bucureşti şi Con-
stanţa care să permită atât realizarea unor
legături telefonice interne cât și transferuri
de date. Astfel, apelând telefonic un număr
de Bucureşti, convorbirea s-ar putea direc-
tiona prin acest intranet la un telefon din
Constanta.
Prezentarile tehnice au fost deschise de
domnul Sascha Labandowsky, sales ma-
nager al companiei 3Com pentru Europa
centrala si de est. Dansul a prezentat sus-
ţinerea cu tema „Soluţii de acces la distanță
utilizând legături analogice şi E1“. În acest
sens au fost discutate soluţiile oferite de
tehnologia X2, care permite o rată de trans-
fer către abonat de 56 Kbps pe linii telefo-
nice analogice pe care există o singură
conversie digital-analogică şi integrarea de
reţea Total Control.
Legat de platforma Total Control a fost
prezentat şasiul - proiectat special pentru a
evita orice punct de cădere, folosindu-se în
acest sens surse de alimentare redundante
şi comutarea apelului către modem-uri
stand-by şi linii telefonice. Şasiul Total Con-
trol suportă module accesibile frontal
(incluzând aici cartele şi unităţi de alimen-
tare redundante) care sunt răcite cu ajutorul
ventilatoarelor şi care pot fi inserate sau în-
locuite în timp ce şasiul este în funcţiune.
Din seria Total Control a fost prezentat
hub-ul de reţea Enterprise care reprezintă
o platformă flexibilă pentru integrarea
rețelelor locale şi de mare suprafață. Pen-
tru furnizorii de servicii, Total Control
Enterprise Network Hub permite un acces
„Internet prin apel, administrarea accesului
de la distanță, posibilităţi de procesare a
tranzacţiilor, acces prin sistem celular și
flexibilitatea de-a fi folosit în medii ana-
logice, Frame Relay, X.25, Ethernet, Token
Ring si ISDN. Enterprise Network Hub a
fost proiectat pentru a asigura o cale de
migrare sigură către noile interfeţe LAN şi
WAN cum ar fi ATM sau Fast Ethernet.
Dintre caracteristicile acestui hub putem
aminti un design puternic integrat care
De Daniel Moldovan
Domnul Udo Kerkow din partea
firmei Compaq.
împachetează până la 576 de porturi mo-
dem într-un rack standard de 7 x 19 inci.
În continuare, domnul Jurai Rakovsky
a prezentat din partea 3Com susţinerea cu
tema „3 Com, o soluţie completă pentru
orice tip de reţea“. A fost amintit că noua
provocare a reţelei presupune noi aplicaţii
care sunt generatoare de noi probleme. În
acest scop 3Com urmăreşte realizarea celei
mai bune infrastructuri: aceea dedicată
unor cereri specifice şi unor clienţi speci-
fici, şi în special realizarea unei reţele care
să permită upgrade-ul viitor. Din agenda
acestei prezentări au făcut parte soluţiile
LAN, soluţiile WAN, intranet-ul, tehnolo-
gia ADSL şi soluţiile de management. Ast-
fel soluţiile pentru actualele probleme gene-
rate de noile aplicaţii de reţea necesită o
scalare a lățimii de bandă şi a performanţei
reţelei şi în mai mică măsură o scalabilitate
a platformelor. În acest sens este necesară
o îmbunătăţire a infrastructurii de rutare
şi de administrare a reţelelor LAN comu-
tate, suplimentate de-o scalare a lățimii de
bandă globale. Pentru implementarea
unei lățimi de bandă scalabile au fost reco-
mandate seriile SS (SuperStack) 9000, SS
3000, SS 1000, CB (CoreBuilder) 5000, CB
6000, CB 7000.
În ceea ce privește soluţiile Gigabit Ether-
SEPTEMBRIE 1997 BYTE Romania 21
Prezentare
Netwell'97
net, s-a menţionat faptul că 3Comva fi pri-
ma companie care va furniza o suită com-
pletă de dispozitive de reţea, care vor putea
fi administrate cu ajutorul Transcend
Enterprise Manager de la 3Com. Acestava
oferi posibilitatea realizării configurării,
a controlului, a monitorizării şi a analizării
sistemelor de reţea 3Com pe toate cele
patru platforme deschise de administrare
(HP, IBM, Microsoft, SUN), oferind unelte
de control si vizualizare RMON, RMON2,
StatusView, LANSsentry.
Domnul Udo Kerkow, project manager
din partea firmei Compaq a prezentat
serverele şi elementele de reţea Compaq.
În acest context a fost prezentat sistemul
SmartStart, o unealtă de integrare server
bazată pe CD-ROM care conţine: utili-
tățile Compaq, funcţii de administrare
server, documentaţie on-line, CD-uri cu
sisteme de operare şi cu baze de date.
SmartStart este folosit pentru a realiza o
configurare hard şi o instalare automată a
driverelor Compaq corespunzătoare. În
plus sunt instalați automat şi agenţii Com-
paq. Practic este realizată o instalare soft
fără a fi nevoie de intervenţia utilizatorului
- doar inseraţi CD-ul corespunzător.
Din partea Vero Electronics domnul
Richard Gray a prezentat cabinetele meta-
lice IMRAK ca și soluţii pentru lucrul în
reţea. Aceste cabinete metalice sunt carac-
terizate de o instalare simplă, pereți deta-
şabili, spaţii suplimentare pentru cabluri
şi un întreg arsenal de accesorii.
Domnul Stephane Baudena reprezen-
tând compania BICC BRAND REX a expus
PE i
Domnul Stephan Baudena, firma Bicc.
lucrarea cu tema „Viitorul cablării strucu-
rate“. A fost prezentat sistemul de cablare
MILLENNIUM - nume care acoperă toate
configuraţiile de sistem de cablare struc-
turată. Din acest sistem fac parte: CATS
Plus - sistem de cablare structurată folosind
cupru, clasa D; MT Connect - sistem de
cablare optica preconectorizata; Helios -
sistem de cablare optică convenţională;
Blolite - un sistem de suflare a fibrei Dedi-
cat retelelor viitorului; Blotwist - un sistem
unic de suflare a fibrei şi cuprului.
Jurai Rakowsky prezentând din partea firmei 3Com.
2 2 BYTE Romania AUGUST 1997
In continuare, din partea companiei
Allied Telesyn a luat cuvantul domnul dr.
R. Meisenburg a cărui prezentare a abor-
dat conectivitate la 10 8 100 Mbps. Au fost
prezentate comutatoare rapide din seria
AT-MS425 care suportă atât porturi de
10 cât şi de 100Mbps, posibilitatea de-a
cupla un port backbone pe fibră optică,
operaţii full şi half duplex, convertoare de
medii la 100 Mbps care permit convertirea
unei conexiuni de cupru la 100 Mbps în
fibră ST sau SC. Aceste convertoare vor
determina în mod automat tipul de cone-
xiune (half sau full duplex), fiind posibilă
configurarea portului RJ45 fie pentru MDI
fie pentru MDIX. Au mai fost prezentate
seria de hub-uri TurboStack care prezintă
funcţii de securitate crescută şi toleranță la
defecte, fiind ideal în locurile de garantare
a operaţiunilor. Au fost prezentate cartelele
de adaptare PCI Fast Ethernet - AT-2500
- care reprezintă o soluţie ce oferă o per-
formanţă de rețea maximă la un preţ mic.
Din partea firmei ViewSonic, domnul
Willi Lohrke a prezentat cele trei serii de
monitoare: economică, grafică si profe-
sională.
Finalul le-a aparţinut celor de la Tor-
nado Sistems care au prezentat un studiu
de caz legat de cablarea unui intranet de
firmă între două sedii situate unul la
Bucureşti şi celălalt la Constanţa, utilizând
linii telefonice închiriate de la RomTele-
com.
Daniel Moldovan este redactor BYTE Româ-
nid (ămoldovanQagora.ro).
Lansarea unei noi firme de renume pe piața românească de monitoare .
De Daniel Moldovan
ViewSonic in Romania
omnul Willie Lohrke, respon-
sabil cu vânzările pe piața cen-
tral şi est europeană, din
partea firmei ViewSonic a fost
prezent la seminarul NetWell'97. Cu
această ocazie, dânsul a avut amabilitatea
să ne acorde un interviu.
BYTE: Compania ViewSonic a cunoscut o
creştere explozivă într-un timp record. Care
sunt substraturile acestei evoluţii?
Lohrke: ViewSonic oferă monitoare
de înaltă performanţă pentru un preţ
foarte, foarte bun. Noi încercăm să
devenim un lider al pieţei în ceea ce
priveşte raportul preţ/performanţă.
Aceasta înseamnă obținerea celui mai bun
monitor din punctul de vedere al cali-
tatilor şi specificaţiilor pentru preţul cel
mai bun. Acesta este unul din motive. Un
alt motiv îl constituie canalele de dis-
tribuţie pe care le folosim şi politica
globală. Noi oferim partenerilor noştri
Viewsonic:
See The Difference!”
Domnul Eugen Lepadatu directorul firmei Tornado Systems
și domnul Willie Lohrke din partea firmei ViewSonic.
Cine este ViewSonic?
ViewSonic este o companie americană de monitoare color pentru
calculatoare și de surse de alimentare neîntreruptibile, localizată în
Walnut, California. Fondată în 1990, compania și-a căștigat repede
reputaţia de lider al combinației preț/performanţă în industria de
monitoare pentru calculatoare. Această poziţie a fost ulterior întărită
prin numeroase premii decernate de o varietate de recenzii inter-
naţionale. Doar în 1996, ViewSonic a câștigat peste 70 de premii.
Aceste recomandări obiective au contribuit la o creștere rapidă a
companiei, ViewSonic fiind nominalizată printre cele 500 de com-
panii americane care au cunoscut cea mai rapidă creștere în doi
ani consecutivi: 1992, 1993.
ViewSonic produce o largă varietate de monitoare color, proiec-
tate pentru a satisface orice cerințe. Această gamă poate fi împărțită
în trei serii: cea economică, cea grafică și cea profesională. Seria
economică oferă monitoare de nivel minimal pentru medii edu-
caţionale și birouri cu sarcini puţine sau pentru biroul de acasă.
Seria grafică de monitoare ViewSonic este destinată persoanelor
care au nevoie de un monitor de înaltă calitate, ușor de folosit,
pentru aplicaţii de uz general, cum ar fi prelucrare de texte,
tehnoredactare computerizată și prelucrări automate specifice
www.agora.ro/byte/
oricărui birou. Încorporând funcţii care se găsesc în mod normal în
monitoare mult mai scumpe, seria grafică permite un control View-
Match al culorilor și o rată înaltă de reîmprospătare.
Dacă aveţi nevoie însă de monitoare color de înaltă calitate, există
seria profesională ViewSonic. Proiectată pentru un DTP de înalt ni-
vel și pentru utilizatori de grafică sofisticată, aceste monitoare oferă
o imagine de-o foarte bună claritate. Sunt ideale pentru aplicaţii de
CAD/CAM/CAE si prelucrări de imagini. Din caracteristicile lor
amintim compatibilitatea PC și MAC, funcţii avansate de control
OnView pentru o ajustare ușoară, distanţa dintre puncte foarte fina,
strat anti-reflectare și anti-strălucire.
Știind că imaginea este totul atunci când faci o prezentare, un alt
domeniu în care ViewSonic s-a implicat l-a constituit cel al tehnolo-
giei de afișare prin proiecție. Astfel, proiectorul LCD PJ800 repre-
zintă unul din produsele de înaltă calitate, ideal pentru prezentări
pretențioase în cadrul ședinţelor firmelor prospere. Oferind un flux |
luminos de 550 lumeni, o rată a contrastului de 200:1 și o paletă
completă de 16,7 milioane de culori, PJ800 asigură o strălucire și o
imagine realistă chiar și în medii bine luminate.
Continuându-și evoluţia, dintr-o companie de succes pe piața
monitoarelor, ViewSonic începe să se transforme într-o companie
de succes pe piaţa tehnologiei de afișare de orice tip.
Se
SEPTEMBRIE 1997 BYTE Romania
23
Interviu
ViewSonic în România
şi dealer-ilor un suport consistent în ser-
vice şi marketing. Acesta este într-adevăr
punctul forte al politicii ViewSonic.
BYTE: Ce ne-ati putea spune despre politi-
ca ViewSonic vis-a-vis de piața românească?
Lohrke: Noi avem parteneri şi dis-
tribuitori in toate tarile din Europa cu
excepţia României şi fostei lugoslavia. In
prezent, în România avem o colaborare
cu firma Tornado Systems din Constanţa
care s-a dovedita fi un partener excelent.
Eu cred că împreună vom realiza o bună
implementare a produselor ViewSonic
pe piaţa din România. Ştim însă că aceas-
ta va lua ceva timp, deoarece ViewSonic
este destul de nouă pe această piaţă.
BYTE: Ceva aduce nou ViewSonic pe piața
românească?
Lohrke: Atunci când vorbim de View-
Sonic, ne referim la un set de produse care
este poziționat foarte aproape de calitatea
oferită de firme de marcă cum ar fi Sony,
Mitsubishi sau NEC. Astfel, dacă veţi stu-
dia specificaţiile tehnice ale monitoarelor
ViewSonic, veţi descoperi că ele pot fi
configurate la aceleaşi performanţe cu ale
unui monitor Sony însă pentru un preţ
mult mai bun. În plus, ViewSonic oferă
pentru monitoarele sale o asistenţă
tehnică şi o garanţie de trei ani atât în
Statele Unite cât şi în Europa. În acest
scop, aici în România, împreună cu Ior-
nado Systems, ViewSonic va deschide şi
va echipa puncte de service în care va
pregăti potenţialii reseller-i și va lansa, în
exclusivitate, un program numit Express
ExchangeSM, de minimizare a timpilor
morţi (down-time) în cazul unei căderi.
BYTE: Ce tebnologii foloseste ViewSonic
pentru realizarea propriilor monitoare?
Lohrke: Una dintre tehnologiile de
realizare a tuburilor catodice, folosite de
ViewSonic, ar ficeaa măştii perforate, în
care pastilele de fosfor sunt dispuse in for-
mat triunghiular si folosesc un ecran
numit masca perforata pentru a separa
zonele de fosfor individuale. O alta
tehnologie folosita ar fi cea a grilei de
deschidere (aperture grille), dezvoltata
de Sony in tuburile sale Trinitronin care,
pentru directionarea fasciculelor de elec-
troni catre suprafata acoperita cu fosfor,
sunt utilizate fire verticale. ViewSonic
foloseşte în plus o tehnologie proprietară
numită SonicTron care este bazată tot pe
tehnologia grilei de deschidere.
BYTE: Ce presupune controlul ViewMatch?
Lohrke: Acesta este un produs nou,
dezvoltat de noi, care le oferă utilizato-
rilor de monitoare ViewSonic posibili-
tatea de-a obţine cea mai bună perfor-
manta de la propriile monitoare. Sistemul
de calibrare al culorilor View Match
include un aparat de măsură a intensității
luminoase care permite măsurarea lumi-
nozităţii de ieșire ecran şi a intensității
luminii din interiorul camerei. Un pro-
gram de control al culorii vă ajută apoi să
calibrati fin afişarea de pe ecran pe baza
acestor măsurători.
Vă mulțumesc pentru timpul acordat şi vă
urez succes în afaceri! BA
A consemnat Daniel Moldovan, redactor la
BYIE România (dmoldovan Qagora.ro).
Alege-ti un sensor
Orice sensor
si citeste-l cu placile noastre de achizitie.
Indiferent de tipul de sensor pe care vrei sa-l folosesti,
National Instruments iti ofera solutia completa ce-ti satisface
cerintele aplicatiei.
De ce sa risti? Mergi cu liderul mondial in hardware si
software pentru achizitie de semnal folosind computerul PC.
e conditionare de semnal superioara
* placi de tip plug-in, PCMCIA, si solutie la distanta
e software grafic cum este LabVIEW
NATIONAL
INSTRUMENTS
\ The Software ts the Instrument
Integratori de sisteme National Instruments in Romania
Bucuresti:
ACT 637 7156
Cluj-Napoca: FROsys 064/43.08.05; Net Brine! Computers 064/43.02.80
Imperial Electric 211 3782; Genesys Software 638 4944;
Da telefon integratorilor nostrii de sisteme _
pentru informatie asupra produselor noastre 4
in gama placilor de achizitie, conditionare
Timisoara: CoRES Trade 056/19.00.51 de semnal si software grafic.
lasi: Tehnorom 032/11.65.02; Prince Software 032/21.25.59
© Copyright 1997 National Instruments Corporation. All rights reserved.
Product and company names listed are trademarks or trade names of their respective companies.
24 BYTE Romania SEPTEMBRIE 1997
Or-lat
Puteti integra cdutdrile de text si de date relationale cu ajutorul
ConText Cartridge si Oracle Universal data server. De Ann O’Leary
Administrarea textelor critice
POZE n ultimul deceniu, organizaţii-
le au investit mult în sisteme
| care permit accesul rapid la
date structurate stocate în sis-
teme de baze de date relationale (RDBMS-
Relational Database Management System),
dar in mod surprinzator, acest tip de infor-
matie reprezinta doar zece procente din
cantitatea de informatie a unei firme, pe
când restul de nouăzeci de procente îl
reprezintă texte (în documente, manuale,
rapoarte, pagini Web, scrisori, prezentări,
faxuri etc.). Până acum acest tip de dată
(text) nu putea fi accesată atât de uşor şi efi-
cient precum datele structurate.
Organizațiile, care aveau nevoie de
ambele tipuri de date, foloseau baze de date
- relaţionale, bazate pe SQL, pentru datele
structurate, în timp ce textul era păstrat în
fişiere nestructurate şi se accesa prin mo-
toare de căutare. Dar acestor motoare de
căutare , în general, le lipseau funcțiile de
prelucrare a cheii de căutare, funcții care
sunt prezente în majoritatea bazelor de date
relationale (securitate, tranzacţii). O altă
problemă care apare la stocarea textului
într-o bază de date relațională este că nu se
poate face o căutare nativă folosind SQL.
Iar soluţia de sistem dual este scumpă şi de
obicei necesită şi un produs intermediar
care să dirijeze schimburile de date și de
interogări între motorul de căutare text şi
sistemul de baze de date.
Tehnologia ConText de la Oracle rezol-
vă această problemă, prin introducerea tex-
tului ca tip de dată nativă într-un RDBMS
Oracle. Acest lucru elimină costisitorul sis-
tem dual, deoarece aceeași baza de date
relațională scalabilă şi sigură va păstra atât
datele structurate cât şi cele text. Deaseme-
nea se va furniza o interfață în care infor-
maţiile tip text combinate cu date relatio-
nale asociate pot fi căutate rapid prin
intermediul cererilor SQL.
Cum ajungem acolo
ConText Cartrige de la Oracle permite
regăsirea textelor dintr-un server universal
de date de la Oracle. Acest lucru se obține
www.agora.ro/byte/
prin transformarea textului într-o formă
folosibilă de un RDBMS şi accesibilă via
SQL (vezi figura de mai jos). De asemenea
sunt furnizate capabilități lingvistice, care
pot face față ambiguităţilor şi dependenţei
de limbaj al textului. Termenul Cartrige
indică faptul că motorul ConText este un
modul soft care extinde capabilitatea unei
cuvinte, sau lung, conţinând sute sau mii de
pagini.
Oaltă metodă de stocare implică păstra-
„rea documentelor în sistemul de fişiere, sau
altundeva pe Web. În acest caz, coloana text
va păstra doar calea de acces din sistemul
de fişiere, sau URL-ul fişierului. ConText
caută în rezumatele fişierelor spre care
Bază de date
cu tabele de date
structurate
Povestea celor două arhitecturi
Soluţia sistemului dual
Stoc de date
de tip text
Context elimină sistemul dual folosit des
pentru a combina căutări de text cu date relationale.
baze de date pentru prelucrarea noului tip
de date: text.
ConText prezintă suport pentru diferite
metode de stocare a documentelor, cea mai
simplă dintre acestea fiind stocarea directă
a datelor (direct data store), care permite
stocarea textului într-o coloană text a bazei
de date, având un document - sau orice enti-
tate logică de text - pe rând. Depinzând de
tipul coloanei alese, fiecare rând poate să
conţină un string oricât de scurt, de câteva
indica URL-urile din baza de date.
Stocarea textului în baze de date oferă o
integritate mai robustă a datelor, în timp ce
păstrarea în fişiere, pe Web sau în sistemul
de fişiere este mai accesibilă din punctul
de vedere al resurselor folosite. Această
posibilitate este utilă mai ales în cazul apli-
catiilor care cauta date pe un intranet, fara
a fi necesară copierea paginilor Web exis-
tente la o locaţie centrală.
Din moment ce textul este păstrat în baza
SEPTEMBRIE 1997 BYTE România 25
Fundamente
Administrarea textelor critice
de date, ConText va realiza un index al
acesteia, care va conţine informaţii critice
despre conţinutul documentului, aşa cum
se vede şi în figura alăturată. Mai multe ser-
vere ConText pot rula în paralel pentru a
reduce timpul necesar indexării docu-
mentelor mari. Indexul este păstrat şi uti-
lizat ca un set de tabele relaționale în baza
de date, care permit căutarea şi regăsirea
textelor cu aceeaşi viteză cu care se face
pentru date relationale.
Tabelele în care se păstrează indexul
conţin informaţii despre fiecare cuvânt din
documente, cum ar fi: din care document
provine un anume cuvânt, de câte ori apare
în acel document, care alte cuvinte sunt
aproape şi cât de aproape. Deoarece căuta-
rea se face pe index şi nu pe text, aceasta are
aceeaşi viteză ca si căutările relationale.
Generarea indexului se face după nişte
reguli stabilite de utilizator sau în funcţie
de cele implicite, furnizate de ConText. Un
set de preferinţe ale utilizatorului vor sta-
bili caracteristicile unui anume index. Aces-
te reguli vor specifica cum să se genereze
indexul. De exemplu pot fi preferinţe
pentru limbaj (Englez, Japonez), de format
(document Word, sau WordPerfect), infor-
maţii privind locul documentului (într-un
RDBMS, sau laun URL). in general, setarile
implicite sunt destule pentru generarea
indexului, dar se pot realiza indexari con-
figurabile pentru căutări după criterii spe- _
ciale.
Deoarece ConText Cartridge este inte-
grat în serverul universal de date furnizat
de Oracle, toate operaţiile de adminis-
trare sau programare se fac cu simple ape-
luri SQL sau PL/SQL. Motorul SQL de la
Oracle prelucrează cererile ConText, în
timp ce alte procese ConText, care rulează
în umbră, se vor ocupa de actualizarea
automată a indexului şi de celelalte pro-
bleme administrative. Programatorii nu au
nevoie să folosească apeluri dintr-un API
special pentru prelucrarea textului şi pot
profita de avantajele serverului de date:
scalabilitatea şi securitatea.
Utilizarea ConText
Cea mai simplă cale de a accesa ConText
este folosirea funcţiei CONTA INS, care per-
mite folosirea SQL pentru a interoga con-
ţinutul unui document. Această funcție
poate fi inclusă într-o clauză WHERE care
include şi condiţii referitoare la câmpurile
structurate. Un asemenea cod poate arăta
în felul următor:
SELECT-titie
FROM docs_tbl
WHERE organization = ‘Support’ AND
CONTAINS (docs_tbl.text, 'Web
26 BYTE Romania SEPTEMBRIE 1997
document, pentru
cautari speciale.
ConText es
§ cartridge
| Comenzile SOL
| folosese indexul de
| text pentru cautarea
— /
Indexul de text
contine informatii
“| Textele (sau indica-
tori spre fisiere
-jexterne) sunt pas- |
| trate in coloana text] __
| din baza de date.
,
Textul sau pointerii spre fisiere/URL-uri text
pot fi stocate intr-o coloana a bazei de date.
Server' )>0;
Câmpul docs_tbl.text păstrează do-
cumentul în care se doreşte căutarea. Bazat
pe o interogare de text, funcția CONTAINS
va returna un „scor“ numeric, care indică
gradul în care documentul date se potri-
veşte cu expresia. În exemplul prezentat
expresia cere găsirea exactă a cuvântului
WebServer; „scorul“ va fi mai mare pentru
acele documente în care „WebServer“
apare de mai multe ori.
Apelul SQL de mai sus va returna titlul
fiecărui document în care apare cel puţin
o dată cuvântul WebServer şi se îndeplineşte
şi condiţia de câmp structurat: organiza
tion="Support'. După ce utilizatorul
alege din lista de titluri, aplicaţia va afişa
documentul respectiv.
Pentru a ordona în funcţie de scor rezul-
tatul interogării, se poate folosi funcţia
SCORE, după cum urmează:
SELECT SCORE(0).title
FROM docs_tbl
WHERE organization='Support” AND
CONTAINS (docs_tbl.text, 'Web
Server’, 0)>0
ORDER BY SCORE(0)
Acest apel va returna o lista ordonata de
documente. (Argumentul pentru SCORE
este un index, care este inclus ca al treilea
argument in functia CONTAINS. Acesta nu
impune nici o restricţie asupra rândurilor
returnate.) Pentru căutări ConText mai
complexe, expresia de interogare text se
poate complica, iar apelul SQL poate avea
mai multe clauze CONTAINS.
ConText a fost conceput astfel încât să
se poată actualiza uşor aplicaţiile existente
bazate pe Oracle prin adăugarea capacităţii
de căutare de texte, permițând utilizatorilor
acces direct la textele care se află deja într-o
baza de date Oracle.Aplicaţii de comerţ
electronic care prelucrează preţuri, can-
tităţi, numărul de identificare produs, pot .
fi îmbunătăţite să includă căutări de texte
(descrierea produsului) sau să ofere spre
vânzare datele de tip text.
Ann O'Leary este senior manager la Oracle si
este responsabilă pentru vânzarea Oracle uni-
versal data server si ConText Cartridge. Poate
fi contactată prin e-mail la adresa: aoleary@
us.oracle.com.
[din BYTE, o publicatie McGraw-Hill, Inc.
Adaptare - Budai Lâszl6]
www.agora.ro/byte/
=
ALIUaGII
O interfaţă de la emWare permite comanda şi monitorizarea echipamen-
SR
= Sisteme de operare
telor cu ajutorul unui browser Web. De Michael Howard si Chris Sontag
Controlul echipamentelor prin WWW
nternetul este mediul ideal
pentru controlul echipa-
mentelor. Omniprezenta sa,
precum şi standardizarea pro-
tocoalelor face posibilă realizarea uşoară şi
la preţuri mici a comunicaţiei între dispozi-
tive de nivel inferior. Cu toate acestea, ade-
văratul avantaj al Internetului constă în
binecunoscutele interfeţe grafice furnizate
de navigatoarele Web. Folosirea acestora
simplifică treaba programatorului și per-
mite conducerea de pe orice platformă a
echipamentelor din reţea, cu ajutorul unei
interfeţe familiare.
Însă comanda şi monitorizarea în acest
fel a echipamentelor se poate dovedi un
lucru scump, deoarece producătorii au
adoptat o arhitectură client neperformant
/server performant. Clientul navigatorului
Web are funcţii limitate, astfel că dispozi-
tivul înglobat trebuie să realizeze pe lângă
funcţiile sale şi cele specifice unui server
Web, care include un sistem de fişiere, stivă
TCP/IP şi componente de interfaţă. Acest
lucru duce la imposibilitatea utilizării
microcontrolerelor populare, care au doar
1—4KB ROM si mai putin de 100 octeți
de RAM.
Compania emWare, producatoare de
echipamente inglobate, a studiat profund
aceasta problema si a inlocuit conceptele
traditionale privitoare la niecanismul client
/ server. Rezultatul, Embadded Micro
Interface Technology (EMIT), face posi-
bil controlul echipamentelor prin inter-
mediul Internetului.
Inversarea rolurilor
În locul realizării de către echipament a
tuturor necesităților soft şi hardware a unui
server Web, EMIT transferă toate sarcinile,
care pot fi transferate, la calculatorul gazdă
realizând astfel o arhitectură: server neper-
formant/client performant. Echipamentul
obţine acces la operaţii care necesită multe
resurse de pe partea client prin intermedi-
ul unei arhitecturi de calcul distribuit,
implementat de emWare.
Serverul Web pentru echipamente, pro-
pus de EMIT, necesita doar 30 octeți de
RAM si 750 octeti de ROM pentru a func-
tiona, lucru care face posibilă imple-
mentarea atat pe microcontrolere uzuale
cu cost redus, cat si pe cele mai avansate
microprocesoare. Datorita cantitatii mici
raspunde de decomprimarea acestora.
Arhitectura EMIT
EMIT furnizează următoarele servicii: sto-
carea şi regăsirea fişierelor, invocarea sub-
rutinelor de echipament, securitate, acce-
„ Arhitectura EMIT
=
ee
Microtagurile
pastreaza in-
formatiile
specifice echi-
pamentului
într-o formă
compactă, ca-
re va fi ex-
pandată la
client de
Un echipament înglobat folosește fişiere HTML și taguri
comprimate pentru a comunica cu un browser Web.
de memorie ocupată de server, EMIT poate
folosi EPROM-ul de pe placa echipamen-
tului pentru prelucrarea altor date legate
de acesta (informaţii log) sau pentru sto-
carea unor fişiere JavaScript şi HTML.
Pe partea client, sistemul gazdă foloseşte
o bibliotecă de funcţii preprogramate.
Acestea minimizează necesarul de resurse
al echipamentului prin construirea inter-
feţei grafice a acestuia la client şi ajută la
desfăşurarea comunicaţiei prin funcţii
specifice de echipament. De exemplu,
echipamentul înglobat păstrează informaţii
comprimate cum ar fi tag-uri speciale în
fişierele HTML, iar calculatorul client
sul variabilelor de echipament şi
evenimente de echipament. Primele trei
servicii sunt specifice serverelor Web. De
exemplu, se implementează securitatea
echipamentului prin folosirea proto-
coalelor Web bine stabilite.
Ultimele două servicii sunt specifice
EMIT. Variabilele sunt obiecte de date ale
echipamentului. Accesarea acestora se face
printr-un proces client-server secundar.
Apleturi Java lansate pe partea client pot
crea legături la serverul de variabile şi pot
citi sau scrie variabile prin acest serviciu.
Evenimentele sunt mesaje transmise către
client de către echipament. Recepţionarea
SEPTEMBRIE 1997 BYTE România 27
Fundemente
Sisteme de operare
unui astfel de mesaj poate lansa o functie
executabila pe calculatorul gazda. Aceste
functii pot inregistra date intr-o baza de
date, pot trimite un e-mail sau pot comu-
nica cu alte echipamente.
Se creeaza interfata utilizator, bazata pe
Java, a clientului cu un fişier HTML care
invocă un aplet. Fişierul va specifica, care
componente de interfaţă vor face parte din
pagina Web, cum vor arăta, unde vor fi
plasate şi la care date sau funcţii înglobate
vor fi legate. Datele de la echipament con-
trolează interfaţa și operaţiile acesteia, dar
nu sunt încărcate cu informaţii de dimen-
siuni mari, care descriu componentele.
EMIT furnizează 5 componente soft
modulare, aşa cum sunt prezentate în figu-
ra „Arhitectura EMIT“. Pornind de pe
partea client, acestea sunt:
* emObjects este o bibliotecă de funcţii
compusă din grafică JPEG/GIF sau apleturi
Java. Acestea implementează interfaţa cu
utilizatorul a clientului. Aceste obiecte
includ componente AWT standard şi com-
ponente specifice echipamentului, cum ar
fi un afişaj cu LED-uri. Există chiar şi bu-
toane transparente, care pot fi suprapuse
imaginii echipamentului. Alte obiecte din
bibliotecă se execută ca răspuns la eveni-
mentele de la echipament.
* emManager corelează componentele
grafice stocate local la client, cu echivalen-
tul lor de la echipament, furnizând o imagi-
ne reală a echipamentului în fereastra navi-
gatorului. De asemenea, emManager
rezolvă verificările de privilegiu şi validi-
tate a tuturor cererilor. Un mecanism de
interogare (pentru echipamentele mai sim-
ple) sau un mecanism de transfer de jeton
păstrează starea variabilelor de echipament.
Un proces server face disponibile aceste
variabile pentru apleturi Java.
Cândștarea echipamentului se modifică,
va returna către client o pagină HTML,
care conţine microtaguri (descrise mai jos).
emManager înlocuieşte acestea cu obiectul
corespunzător, iar browserul creează inter-
faţa cu utilizatorul din această combinaţie
dintre HTML şi emObject. Deoarece obi-
ectele pot fi apleturi Java, interfaţa poate
fi folosită pentru trimiterea unor comenzi
către echipament.
* emMicro este serverul Web special al
echipamentului. Colaborează cu emMana-
ger pentru a permite acces la fişiere, vari-
abile si functii ale echipamentului. Toate
resursele echipamentului sunt accesate prin
intermediul unor tabele. Pentru fiecare ser-
viciu furnizat de echipament exista un tabel
nume/atribut. (Serviciile tipice echipa-
28 BYTE România SEPTEMBRIE 1997
mentelor sunt funcţii, variabile, eveni-
mente, documente statice şi dinamice.)
Comenzile trimise de client sunt prelucrate
de un interpretor, care caută adresele
funcţiilor sau a variabilelor în aceste tabele.
Exemple de comenzi sunt GetVariable,
GetStaticDocument, SetByteVar,
InvokeFunction.
* Microtagurile sunt pachete mici (1 octet
sau mai multi) de informatie foarte con-
densată, care defineşte comenzi ale echipa-
mentului (butoane, comutatoare). Aces-
tea sunt înglobate în documente HTML,
care reprezintă interfaţa echipamentului.
Este relativ simplu pentru producători să
creeze propriile microtaguri pentru a se
pentru monitorizarea unor utilaje cum ar fi
tractoare, combine, sisteme de irigare.
Weiser Lock adaugă EMIT încuietoarelor
electronice pe care le produce. Acestea sunt
monitorizate printr-o reproducere exactă
a aspectului exterior ca în figură. Pe lângă
posibilitatea de a interveni asupra stării de
închis sau deschis a încuietorii, cu EMIT
se poate realiza și o monitorizare pe o
perioadă mai lungă a informaţiilor aferente.
Emit poate permite monitorizarea dife-
ritelor echipamente medicale de la distanță,
cum ar fi monitorizarea sistemului de in-
fuzie intravenoasă, monitorizarea func-
ţionării inimii sau a mişcărilor fătului.
Această tehnologie poate reduce în mod
substanţial costurile acestor sisteme. Alte
Se poate schimba
parola sau starea
incuietorii dintr-un
browser Web.
Butoanele transpa-
rente va permit
interventii cu
nae lek eed 1B
Echipamentul
: poate trimite
#-04-8) 1093. Locka eae
{7-00-67 10.1 4~- Peston Fiiiogcice
17-04-87 10:14 - Uniociend fre),
17-04-97 10:15 - Loceed (|)
17-08-57 23-32 - Bad Pov fh)
EMIT va permite sa obtineti informatii despre
functionarea in timp a echipamentului.
potrivi cu propriile echipamente.
¢ emNet este un protocol serial eficient $i
adaptabil, care permite dezvoltatorilor uti-
lizarea unui protocol de comunicare sim-
plu pentru construirea aplicatiilor mici.
emNet este un protocol master/slave bazat
pe mesaje, care foloseşte o combinaţie de
pachete şi fluxuri de date. Toate datele sunt
transmise ca valori binare cu comanda codi-
ficată în prefix. em Manager şi em Micro
operează la un nivel superior transferurilor
prin reţea a unor pachete emNet.
Aplicaţii pentru EMIT
Companiile dezvoltă o serie de aplicaţii
pentru a exploata Emit. De exemplu, pro-
ducători de utilaje agricole adaugă echipa-
mente de tip EMIT produselor proprii,
exemple de echipamente care imple-
menteaza EMIT se pot gasi la http://www
„emware.com.
Acestea sunt doar câteva aplicaţii care
folosesc EMIT. Până acum aceste tipuri de
aplicaţii erau greu de realizat din cauza ce-
rinţelor de resurse de care trebuia să dis-
pună echipamentul. Această tehnologie va
simplifica dezvoltarea următoarei generaţii
de echipamente cuplate la reţea, care pot
fi controlate de la distanță. BI
Michael Howard este proiectantul lui EMIT.
Chris Sontag este președintele emWare Inc. li
puteți contacata la adresa engQemware.com.
[din BYTE, o publicație McGraw-Hill, Inc.
Adaptare - Budai Lâszl6]
www.agora.ro/byte/
7 Or-lit
Organizarea rețelei ATM într-o ierarhie va face mai eficientă
rutarea şi va ușura extinderea. De Jeffrey Fritz
Rutare și comutare în rețele ATM
recum monarhiile vechi, co-
mutatoarele ATM pot func-
ţiona într-o structură ierarhică.
Această structură ierarhică
înseamnă montarea unor comutatoare
ATM în poziţii subordonate unui alt comu-
tator din rețea. Această abordare este diferi-
tă de cea orizontală, în care fiecare comu-
tator este de rang egal cu toate celelalte.
Ierarhia adreselor echipamentelor se
alocă la proiectarea iniţială a rețelei, dar tre-
buie facut in asa fel încât să se poată modi-
fica în timp, deoarece această necesitate va
fi inevitabilă. Pornind de la acest lucru, este
important ca pe durata ierarhizării echipa-
mentelor (mutarea în jos și în sus) să avem
în vedere consistenţa adreselor. Este impor-
tant, de asemenea, să se păstreze spaţiu (de
adresare) pentru creșterea rețelei, ca atunci
când se adaugă un nou comutator să fie
adrese disponibile pentru ierarhii adițio-
nale. În principiu, este la fel ca şi alocarea
unei subreţele într-o reţea IP, în care se
doreşte a se păstra spaţiu pentru alte sub-
reţele sau terminale la subreţeaua existen-
tă.
Este în adresă
O Ierarhie ATM este creată prin alocarea
adresei Network Services Access Point
(NSAP). Adresa NSAP are lungimea de 20
octeți. Este formată dintr-un prefix de 13
octeți (104 biţi), 6 octeți adresa Media
Access Control (MAC), care se mai numes-
te şi identificator de sistem terminal şi un
octet selector folosit ca subadresă. Reţeaua
foloseşte informaţia din cei 13 octeți pre-
fix pentru crearea ierarhiei. Se alocă 1
bit/nivel, astfel administratorul de rețea
poate crea 104 nivele. Practic, majoritatea
rețelelor vor funcţiona bine cu trei sau cinci
nivele ierarhice.
Este important să se aloce prefix unic
fiecărui comutator, diferit de cel al celor-
lalte comutatoare sau echipamente din
aceeași rețea, mai mult decât atât, toate
comutatoarele şi echipamentele ATM sub-
ordonate unui comutator anume trebuie să
aibă adresa bazată pe adresa acestuia.
www.agora.ro/byte/
Figura „Ierarhia ATM* prezintă modul
în care poate fi configurată o secţiune din-
tr-o ierarhie ATM. Să remarcăm că în
această rețea ipotetică adresa NSAP 39.10.
„OA este alocată comutatorului principal a
lucru devine esenţial în cazul rețelelor mari.
Pe lângă faptul că se creează o structură de
adresare logică, prin ierarhizare se ajunge
şi la o rutare mai simplă şi mai eficientă a
cererilor. Un alt avantaj al adresării ierar-
Aranjarea ierarhică a comutatoarelor ATM
dirijează pachetele prin reţea. ©
clădirii Colson, împreună cu masca FF.FF
.FF. Comutatoarele intermediare (Stewart
Hall, Colson, Contabilitate şi Desfacere)
vor primi adrese NSAP care sunt subordo-
nate adresei comutatorului principal. De
exemplu, comutatorul Stewart Hall va pri-
mi adresa 39.10.0A.01 şi masca FF.FF.FF
.FF. Ca urmare comutatorul va fi subor-
donat comutatorului principal Colson. În
mod asemănător, comutatorului periferic
Bursarise va aloca adresa 39.10.04.01.01
împreună cu masca FF.FF.FF.FE .FF. Fapt
care-l face subordonat atât comutatorului
intermediar Stewart, cât și celui principal.
În rețele ATM simple, stabilirea unei ie-
rarhii nu este neapărat necesară, dar acest
hice este că dă posibilitatea unei rețele ATM
de a participa la Private Network-to-Net-
work Interface Phase 1 (PNNI-1) când aces-
ta va fi disponibil. Protocolul PNNI-1
implementează conceptul de grupuri de
rang egal. Fiecare astfel de grup e format
din mai multe comutatoare, care operează
la același nivel ierarhic şi care comunică cu
comutatoare din alte ierarhii prin inter-
mediul unui comutator lider de grup. Toate
acestea sunt bazate pe o structură ierarhică.
Până la apariţia implementării complete
a protocolului PNNI-1, nu există nici o
modalitate standard prin care comuta-
toarele ATM să înveţe automat topologia
reţelei. Acest lucru însemnă că ierarhia
SEPTEMBRIE 1997 BYTE România 29
Fundamente
Rutare și comutare în reţele ATM
trebuie să puncteze calea dorită prin labi-
rintul de comutatoare ATM. Folosind
rutarea ierarhică, celulele care sosesc pe
coloană (backbone) şi care se adresează
unui echipament din rețeaua LAN cuplată
la Bursar, vor fi rutate prin comutatorul
principal către cel intermediar (Stewart) şi
apoi prin comutatorul periferic Bursar.
Despre com utare
Cel mai bun loc pentru plasarea comuta-
torului principal este pe coloană. Acesta
este supus celui mai intens trafic şi i se
adresează cele mai multe cereri. În con-
secință, acesta nu ar trebui să fie supraîncăr-
cat niciodată. Supraîncărcarea apare când
se cere comutarea unui flux de informaţie
mai mare decât capacitatea comutatorului.
Această supraîncărcare nu reprezintă o
problemă deosebită dacă apare la un comu-
tator periferic, deoarece tehnicile de mul-
tiplexare statistice rezolva relativ uşor
supraîncărcările, în schimb acestea sunt
fatale dacă apar la comutatorul principal,
deoarece acesta trebuie să facă față intre-
gului trafic din coloană. Supraîncărcările
pot să apară foarte uşor dacă comutatorul
principal implementează servicii supli-
mentare. De exemplu, este posibil ca acest
comutator principal să prezinte suport pen-
tru rețele mai vechi ca Ethernet sau Token
Ring via LAN Emulation (LANE), dar este
preferabil ca aceste servicii să fie făcute la
un comutator periferic sau intermediar.
Acest lucru permite comutatorului princi-
pal sa se concentreze asupra cererilor din
coloană.
Comutatoarele intermediare şi cele peri-
ferice sunt intre utilizator şi coloană. Un
comutator periferic este la marginea unei
reţele ATM şi în general deserveşte rețele
mai vechi prin intermediul serviciilor
LANE. În figura de pe pagina anterioară,
comutatorul Bursar este unul periferic. Pen-
tru reţele mai mici nu este necesar comu-
tatorul intermediar. În acest caz comuta-
torul periferic se poate lega direct la cel
central. Comutatoarele intermediare, cum
spune şi numele, se găsesc între cel central
şi cele periferice. De exemplu, comutatorul
Stewart Hall este unul intermediar.
Decizia cu privire la poziţia în rețea unde
va rula LANE va fi luată în funcție de con-
figuraţia rețelei ATM şi de modul în care
echipamentele ATM tratează procesele
LANE. În reţele în care infrastructura este
divizată pe departamente serviciile LAN
Emulation Server/Broadcast and Unknown
Server (LES/BUS) trebuie să ruleze pe
comutatoarele periferice. Acest lucru face
ca serviciile LANE să fie fizic mai aproape
de numeroasele LAN-uri emulate (e-LAN).
Trebuie să fie doar un singur LAN Emula-
30 BYTE România SEPTEMBRIE 1997
le
Rutează mai
multe e-
Comutatoare
principa
(pe coloana)
LAN-uri pe
aceeași in-
terfata (ATM
Ruterul cu un singur brat
39.10.0A
FF.FF.FF
Un ruter foloseste protocolul Layer 3 dintr-un punct
al reţelei ATM pentru mai multe e-LAN-uri
tion Configuration Server într-o reţea
ATM, deci poate rula pe oricare dintre
comutatoarele periferice sau intermediare.
Rutarea pezentă
și cea viitoare
LANE 1.0 rulează doar în medii cuplate.
Acest lucru duce la întrebarea „Totuşi de ce
avem nevoie de rutare în LANE 1.0 2.
Răspunsul este că rutarea nu este necesară
într-un mediu cu un singur e-LAN, dar nu
se recomandă proiectarea unei reţele indus-
triale cu un singur e-LAN. Acest lucru ar
duce la un domeniu de difuzare mare, care
poate să suprasolicite serviciul LANE. Pen-
tru a evita acest lucru se proiectează mai
multe e-LAN-uri, care vor fi subretele in
reteaua ATM rutata.
Fiecare e-LAN functioneaza ca 0 entitate
separată, folosind propriul LES/BUS. Inter-
conectarea mai multor astfel de entități
necesită un ruter, numit ruter cu un singur
braţ. Se numeşte așa deoarece este doar o
singură interfață fizică (de obicei o fibră
OC3 de 155 Mbps) care leagă comutatorul
ATM cu ruterul. Cum se vede şi din figura
de mai sus, ruterul cu un singur braţ diri-
jează protocolul Layer 3 în multiple e-
LAN-uri conectate la aceeaşi interfață.
“Ruterul poate fi o cartelă inserată în comu-
tatorul ATM sau poate fi un ruter de sine
stătător.
Acest scenariu se schimbă dramatic, când
apare LANE 2.0 şi Multi-Protocol Over
ATM (MPOA) 1.0. Dirijarea se va face prin
MPOA folosind tehnica numită „rutare vir-
tuală“. Pentru acest lucru MPOA foloseşte
Next Hop Resolution Protocol (NHRP).
NHRP permite trecerea interogărilor de
adresă de la o subretea la alta fara a necesi-
ta vreun ruter fizic. În timp ce LANE 1.0
necesită un ruter pentru a conecta diferite
e-LAN-uri, cu LANE 2.0 va fi nevoie de
un ruter doar pentru legarea diferitelor
rețele ATM.
Proiectarea pentru viitor
E bine ca totdeauna să proiectăm pentru
prezent, dar cu un ochi îndreptat spre
viitor. Stabilirea unei ierarhii bine gândite
acordând o atenţie deosebită rutării în
rețeaua ATM va aduce beneficii mari atât
în prezent cât şi pe viitor. Proiectarea
atentă a rețelei va rezulta performanțe
foarte bune şi va pava calea de migrare către
MPOA şi PNNI-1. Crearea unei reţele care
funcţionează eficient în prezent, dar ținând
cont de tehnologiile viitoare, ar trebui să fie
țelul oricărui administrator de rețea. E
Jeffrey Fritz (jfritz@wvu.edu) este responsa-
bilul pentru tehnologiile de retea avansate la
West Virginia University. Este autorul cărții
Remote LAN Access: A Guide for Networkers
and the Rest of Us (Manning/Prentice-Hall
PTR).
[din BYTE, o publicatie McGraw-Hill, Inc.
Adaptare - Budai Lâszl6)
a 4 é $
EI combină arhitectura Pentium Pro cu instrucțiunile MMX
într-un singur cip pentru sisteme ieftine. De Clive Maxfield
Pentium Il revelat
m început să mă ocup de mi-
croprocesoare pe vremea când
cel de 1 MHz era considerat
marea realizare. Astăzi, un Pen-
tium Pro la 200 MHz nu miră pe nimeni,
iar Pentium ÎI de la Intel este disponibil în
variante de la 233, 266 până la 300 MHz.
În plus faţă de aceste frecvenţe ridicate,
Pentium IL vine şi cu o radicală schimbare în
stilul de împachetare. În timp ce acesta poate
fi principala atracţie pentru proiectanţii plă-
cilor de bază, impactul acestuia asupra
designului sistemelor şi costului acestuia te
poate face să te gândeşti de două ori înainte
de a cumpăra un sistem Pentium Pro. Pen-
tru programatori şi utilizatori, Pentium II
oferă setul de instrucțiuni MMX, ce este uti-
lizat în aplicaţii multimedia, video-digital,
creaţie de conţinut și jocuri. Acest articol
îşi propune o examinare a diferenţelor
dintre Pentium Pro şi Pentium II.
Diferențe arhitecturale
La apariţia lui Pentium Pro, am fost mar-
torii unor îndrăzneţe îmbunătățiri față de
predecesorul său Pentium. De exemplu,
Pentium Pro introducea arhitectura numită
Bus dual independent (Dual Independent
Bus - DIB), pentru rezolvarea limitarilor de
capacitate ale sistemului. Aceasta se face
prin două busuri: unul între procesor şi
memoria principală; al doilea între proce-
sor şi cache-ul L2. Pentru o performanță
superioară procesorul poate accesa simul-
tan cele două busuri.
Pentium Pro poate executa până la patru
instrucțiuni per ciclu de ceas. El are, de
asemenea, execuţie dinamică, ce incor-
porează conceptele de execuţie în in-ordine
şi execuţie speculativă. Pentium Pro are
un superpipeline de 12 stagii, în compara-
ţie cu cel de cinci ale lui Pentium, respectiv
şase ale Pentium-ului cu MMX.
Pentium Pro folosește de asemenea
predicția multiplă de salturi bazată atât pe
istoric câtşi pe cunoştinţele despre cum este
folosit în mod tipic fiecare cod-instrucţi-
une. Păstrând compatibilitatea cu codul
x86, aceasta logică de predictie imbunata-
www.agora.ro/byte/
teste performantele lui Pentium Pro fata de
Pentium.
Pentium II mosteneste de la Pentium Pro
caracteristicile arhitecturale superpipeline
si DIB.
Totusi, cea mai mare schimbare apare in
logica interna: Pentium II are cache-uri L1
mai mari şi suport MMX. Aceste 57 noi
instrucțiuni permit tratarea datelor din
cuvinte de 64 biţi împărțite în două segmente
UC
Impachetarea procesorului
Pentium Pro este un multicip modul con-
ţinând două pastile: nucleul procesor şi un
cache L2. Acest modul este furnizat într-o
capsulă cu pini dispuşi matricial (pin-grid
array - PGA). Capsula se introduce într-un
soclu ZIF (zero-insertion-force), numit şi
Socket 8 pe plăcile de bază; pinii fiind
definiti de Intel.
Suta nani mas e ata ra aaa
Pentium Il folosește elemente standard cum ar fi cache L2.
de 32 biţi, patru de 16 biţi sau opt de 8 biţi.
Aceasta permite executarea parţială a aces-
tor segmente simultan, facilitând astfel, de
exemplu, afişarea pe tot ecranul a imaginilor
video-digitale. (Vezi şi „x86 intră în era mul-
timedia“, BYTE România, iulie 1996).
De asemenea, spre deosebire de Pentium
Pro, care funcționează la 3,3 V, Pentium II
se alimentează la cu 2,8 V, permiţând ast-
fel frecvenţe mai mari fără a afecta con-
sumul de putere. În timp ce un Pentium Pro
la 200 MHz cu 512 cache consumă aprox.
37,9 Wati, un Pentium II la 266 MHz cu
512 KB cache arde doar 37 W.
La prima privire Pentium II pare foarte
diferit de Pentium Pro, dar conceptual
este foarte asemănător. Din exterior Pen-
tium II pare a fi enorm, deoarece este împa-
chetat în ceea ce Intel numeşte cartuş de
conectare pe o singură muchie (sing/e-edge-
connect - SEC). El se înfige pe placă într-un
conector numit Socket 1.
De fapt, Pentium II este o încrucişare
între un modul multicip și un hibrid, folo-
sind un substrat FR4 (placă de circuit impri-
mat) cum se vede şi în figura „Interiorul
lui Pentium II“. Intel a dublat cache-ul L1
din procesor (32 KB în două părți - 16 KB
SEPTEMBRIE 1997 BYTE România 3]
Fundamente
Pentium || revelat
. pentru date si 16 KB pentru instrucțiuni).
De asemenea nucleul procesorului a fost
separat de cache-ul L2. Rezultatul este un
cartuș pe al cărui substrat SEC se află şase
dispozitive împachetate separat. Acestea
sunt procesorul, patru cache-uri burst-sta-
tic RAM standard (deci ieftine) şi un RAM
pentru tag-uri, ce a fost înainte integrat pe
pastila cache-ului L2. Cipurile de cache L2
şi cel de tag-uri RAM sunt prezente în
capsule standard pătrate şi plate (QEP -
quad flat package), în timp ce nucleul pro-
cesorului este încapsulat într-o capsulă
LGA (leadless grid array).
Cartusul SEC conduce şi către alte
viitoare avantaje privind designul. Capsu-
la PGA a lui Pentium Pro necesită 387 de
pini în timp ce cartuşul SEC foloseşte doar
242. Această reducere cu o treime a numă-
rului de pini se datorează faptului că SEC
conţine componente discrete, cum ar fi
rezistentele terminatoare sau conden-
satoarele. Aceste elemente asigura decu-
plarea semnalelor, ceea ce implica necesi-
tatea a mult mai putini pini de alimentare.
Mai mult, proiectarea traseelor de sem-
nal ale busurilor între mai multe Pentium
Pro-uri ce folosesc Socket 8 este extrem de
dificilă obligând proiectanţii să recurgă la
mărirea numărului de straturi ale plăcii de
bază. Aranjarea în linie a pinilor cartușului
SEC îmbunătăţeşte considerabil trasarea
circuitelor, permițând proiectanţilor să
obţină plăci în patru straturi - care sunt mai
ieftine.
Suportul oferit
Aşa cum arată figura „Sistem dual-proce-
sor“, Pentium Il utilizează un bus gazdă
GTL+ (gunning-transciever-logic) ce oferă
suport complet pentru două procesoare.
Aceasta oferă o soluţie economică pentru
un design minimal cu două procesoare pen-
tru multiprocesare simetrica (SMP).
Limitarea la doua procesoare nu este
impusă de Pentium II; ea vine din cip-setul
de suport. Cu toate acestea, limitarea iniți-
ală a cip-setului la o configuraţie dual-pro-
cesor, permite Intel-ului și producătorilor
de staţii de lucru să ofere sisteme duale de
o manieră rapidă şi economică. Utilizatorii
puternici ce pretind ultimele realizări în
materie de performanţă pot aştepta o ver-
siune cvadriprocesor a cip-setului lui Pen-
tium II în viitorul apropiat.
În figura „Sistem dual-procesor“ puteţi
remarca cipurile PMC şi DBX ce sunt nu-
mite împreună cip-setul 440FX. Cip-
seturile 450KX (low-end) si 450GX (high-
end) utilizate cu Pentium Pro suporta doar
memorii cu acces FPM (fast-page-mode),
deci aceste cip-seturi sunt obligate să asigu-
re intreteserea (interleaving) memoriei pen-
32 BYTE Romania SEPTEMBRIE 1997
Sistem dual-procesor
Adrese/Control
Data
Adrese
VIE Control
Bridge PCI
si controlerul
Memoria.
„principală [a
la 16B) PParitatea datelor
= F
Bus privat de date
Date pia
DBX
Accelerator
de memorie
Control
bus date
- Suportul integrat pentru două procesoare
și memorie EDO DRAM reduce costurile de sistem.
tru a reduce cicluri de acces la memorie.
Problema cu intreteserea este ca toate
soclurile de memorie trebuie sa fie ocupate,
ceea ce ridică costul suportat de utilizator
pentru upgradarea memoriei. Cip-setul
440FX nu oferă întrețeserea memoriei, dar
suportă memorie EDO RAM, ceea ce aduce
îmbunătăţirea performanţelor memoriei
prin reducerea întârzierilor de ceas.
Chestiuni legate de sistem
si performanță
Multe sisteme Pentium Il oferă pentru tem-
porizarea accesului la memorie doar mode-
lul X-3-3-3. Acesta înseamnă că la citirea
unui bloc de date din memorie, primul acces
necesită X cicluri de ceas pentru realizarea
accesului iniţial. Pentru 440FX acest x este
7, 9 sau 12 cicluri, depinzând de faptul că
sistemul primeşte pagină-găsită, pagină-gă-
sită/rând-ratat, respectiv pagină-ratată.
Accesele următoare vor lua doar trei cicluri
de ceas pe acces, deci o schemă 3-3-3.
Acces în acest context se referă la citirea
unui volum de 64 biţi, numit şi cuvânt
cvadruplu. Dar producătorii ce acordă
atenţie problemelor integrităţii şi care fo-
losesc componente de mare calitate, cum
ar fi bufere şi terminatori, pot de fapt obține
un X-2-2-2 de la procesor. Sistemele TD şi
TDZ cu Pentium II de la Intergraph bazate
pe 440FX, de exemplu, sunt construite pen-
tru a satisface această schemă strânsă de tem-
porizare.
De asemenea, proiectanţii de la Inter-
graph au construit un cartuş asemănător
SEC pentru a duce un Pentium Pro. Astfel,
utilizatorii pot cumpăra un sistem bazat pe
Pentium Pro şi apoi să upgradeze sistemul
la un Pentium II în viitor. Singura necesi-
tate este de a schimba câteva jumpere ce
modifică frecvenţa și nivelul de voltaj pen-
tru ceasul sistem.
La 266 MHz, Pentium II oferă un
SPECint95 de 10,8 şi un SPECfp95 de
6,89. Pentru cei care nu rulează teste exo-
tice de evaluare pentru a trăi, probabil că se
întreabă ce anume măsoară acestea cu
adevărat? Evaluările interne de la Inter-
graph dezvăluie că un Pentium II la 266
MHz rulează aplicaţiile reale de fiecare zi
cu 5 până la 30% mai rapid decât un Pen-
tium Pro la 200 MHz (ambele cu 512 KB
cache). Pentru un mare număr dintre aces-
te aplicaţii, îmbunătățirile de performanță
se regăsesc în intervalul de 20-25%.
Considerând aceste îmbunătățiri de per-
formanta si potenţialul oferit producăto-
rilor de a trece înspre clienți economiile
realizate cu Pentium II, aş spune că Intel
nu ne face de ruşine.
Clice Maxfield face parte din echipa tehnică de
la Intergraph Computer Systems. Este co-
autorul cărţii Bebop BYTEs Back (un ghid
neconvențional despre computere)(Doone
Publications, 1997). Îl puteți contacta la edi-
tors@byte.com.
[din BYTE, o publicatie McGraw-Hill, Inc.
Adaptare - Adrian Pop]
www.agora.ro/byte/
=
rii
4k 4
Programare
Accesul aplicaţiilor Office97 la bazele de date back-end
și actualizarea în loturi a acestora. De Rick Dobson
Funcțiile avansate ale ODBCDirect
una trecută am lansat o discuţie
E "despre ODBCDirect, o tehno-
logie client/server care vizează
mai ales dezvoltatorii de apli-
cații pentru Office 97. Această tehnologie
aduce cel puţin trei avantaje programato-
rilor de la companii.
În primul rând, permite o flexibilitate
mai mare pentru prelucrarea datelor de la
distanță, pe o cale mai scurtă decât folosirea
motorului de baze de date Jet furnizat cu
Access, În al doilea rând, prin integrarea
ODBCDirect în aplicaţiile Office 97, va
creşte valoarea programatorilor Data
Access Objects (DAO) şi Visual Basic for
Applications (VBA) permițându-le aduce-
rea datelor suport (back-end) pe calcula-
toarele din companie într-un mod cum
n-a mai fost. În al treilea rând, prin vânzarea
licenţei VBA la mulţi terți producători, se
măreşte numărul căilor prin care se poate
utiliza puterea oferită de ODBCDirect.
Acest articol se bazează pe cel de luna tre-
cută, dar merge dincolo de baze, prezen-
tând o serie de funcţii avansate furnizate de
ODBCDirect.
Prin ce diferă ODBCDirect de alte posi-
bilităţi de conectare a bazelor de date?
ODBCDirect se leagă la date ODBC mai
repede, folosind mai puţine resurse decât
Jet. Cu toate că şi Jet are anumite avantaje
incluzând posibilitatea cuplării bazelor de
date eterogene, formulare fixe şi controale..
Dezvoltatorii de aplicaţii trebuie să aleagă
ce le convine mai mult între viteza şi mări-
mea mică a funcţiilor din ODBCDirect sau
calea ușoară, tradițională, de accesare
ODBC de la Jet.
Din back-end în Excel
Prima mea aplicaţie, pe care am încercat-o,
transfera date de la un server SQL într-o
tabelă Excel. Această aplicaţie prezintă cum
se pot scoate date dintr-o baza de date
suport şi transfera într-un mediu prietenos,
prezentând posibilitățile interesante oferite
de ODBCDirect. Cu toate că acest exem-
plu folosește Excel, pentru setările mediu-
lui ODBCDirect şi conectarea la baza de
www.agora.ro/byte/
date Pubs am folosit același cod ca și luna
trecută pentru Access. Această posibilitate
de reutilizare a unui cod pentru mai multe
aplicaţii Office 97 arată posibilitatea redu-
cerii timpului de programare cu ajutorul
VBA.
Trebuie observate două lucruri privi-
toare la codul actual. Singura cale de a bene-
ficia de dimensiunea redusă a ODBCDirect
este de a-l folosi în exteriorul Access-ului,
deoarece acesta încarcă Jet chiar şi în cazul
Trebuie făcută o referire explicită la
DAO 3.5 ca să folosească ODBCDirect în
afara Access.
în care se foloseşte ODBCDirect. Pentru
Excel sau alte aplicaţii care se bazează pe
ODBCDirect, pentru evitarea folosiri
întâmplătoare a lui Access, va trebui speci-
ficat acest lucru în mod explicit în biblioteca
de obiecte DAO 3.5. În Excel alegeţi Refe-
rences din meniul Tools, apoi marcați
Microsoft DAO 3.5 Object Library, după
care se închide fereastra de dialog, ca în
figura de mai sus.
Listingul „Din back-end în Excel“, din
pagina următoare, începe prin crearea unui
string, stSQL, care va conţine SQL-ul pen-
tru datele care vor fi transferate. Se va crea
un obiect querydef bazat pe şirul stSQL.
Metoda OpenRecordset va returna în setul
de inregistrari (recordset) local, rsYTD,
liniile corespunzătoare interogării de la
serverul SQL. După câteva operaţii asupra
tabelei, un ciclu While ...Wend va copia
valorile din obiectele DAO în tabela activă
(Sheet1). Metoda Offset va muta celula
activă la cea corespunzătoare din tabel,
după care se va face atribuirea valorii.
Actualizări în loturi
din cache
O trăsătură a ODBCDirect este posibili-
tatea de modificare local, într-un cache, a
unor date de la server. ODBCDirect intro-
duce posibilitatea actualizării în loturi a
datelor aflate pe server. Acest lucru facili-
tează descărcarea unui recordset, folosit
pentru păstrarea actualizărilor locale a
datelor și actualizarea în loturi a înregistră-
rilor corespunzătoare de la server.
Alţi utilizatori pot edita înregistrări din
baza de date, în timp ce dumneavoastră
faceţi descărcarea pentru prelucrare locală
sau actualizarea acestora pe server. Când
editările de date ale altora sunt în conflict
cu ale dumneavoastră va apare o coliziune
pe server. ODBCDirect include mai multe
mecanisme pentru rezolvarea coliziuni-
lor.
Mai întâi, actualizarea optimistă, în
loturi, detectează, numără şi marchează
automat coliziunile. În al doilea rând,
ODBCDirect furnizează tehnici simple
pentru a ignora modificările făcute de alții,
prin scrierea peste modificările acestuia . În
al treilea rând, vi se permite compararea
datelor care au intrat în coliziune. Exem-
plul prezintă cum puteţi folosi aceste posi-
bilitati.
Actualizarea optimista in loturi necesita
cel puţin șase pasi: 1)Trebuie creat un spatiu
de lucru ODBCDirect. 2)Se setează pen-
tru DefaultCursorDriver valoarea dbUse-
ClientBathCursor. 3)Se creează o legătură
la un server de date prin intermediul unei
conexiuni ODBCDirect sau un obiect
DAO. 4)Se creează, cu ajutorul metodei
OpenRecordset, un recordset local bazat
pe datele de la server. Pentru argumentul
lockedits trebuie specificat dbOptimistic-
Batch. 5)Se efectuează modificările dorite
SEPTEMBRIE 1997 BYTE România 33
Fundamente | Programare
Din back-end în Excel
“Create row-returning recordset from server
“7 cle, titres vid sales FROM titles:
“Set qdfYTD = conPubs.CreateQueryDef(“”,
Caracteristici ODBCDirect
etsot= = SELECT titles. .titiectd,. titles. «2
“Create cached recordset
= dbUseClientBatchCursor
stConnect = “ODBC:DSN=Pubs;UID=sa;PWD=;”" & _
“DATABASE=Pubs”
Set conPubs = wspPubs.OpenConnection _
(So SIL CORNER)
stSQL)
‘Insert column headings
Sheets(“Sheet1”).Cells(1,
Sheets(“Sheet1”).Cells(1,
“YTD Sales”
“Copy rows
While Not rsYTD.EOF
ActiveCell.Value =
ActiveCell.Value =
rsYTD.MoveNext
Wend
Actualizari in loturi
‘Make connection
“admin”, “”, dbUseODBC)
Set rsx 1D = qdfYTD. OpenRecordset
1).Value
2).Value
Sheets(“Sheet1”).CelIs(2, 1).Activate
rsYTD! Title
ActiveCell.Offset(0, 1).Activate
rsYTD!ytd_sales
ActiveCell.0ffset(1, -1)-Activate
Set wspPubs=CreateWorkspace( “PubsSession”, _
wspPubs .DefaultCursorbriver sa
e Set: rssales-=
“fite”
Wend
“ame co ef lai:căs
intIterations=rsSales.BatchCollisionCount
pan,
For j = 0 To intlterations.
rsSales.Bookmark = _
rsSales.BatchCollisions(j)
Next j
rsSales.Update dbUpdateBatch, True
St Sl = SELECT STOR II d “Ord: num, 28
“title id, „aty FROM: Sales”
conPubs.OpenRecordset(stSQL, _
dbOpenDynaset, 0, dboptimisticBatch)
— ‘Modify local cache and attempt
“LO update Server.
While Not rsSales.E0F
rsSales.Edit
rsSales!qty = rsSales!qty + 3
rsSales.Update
rsSales.MoveNext
rsSales.Update dbUpdateBatch
“Force în changes even if there
pe recordset-ul local. 6)Se folosește meto-
da Update a recordset-ului cu un argument
de tipul dbUpdateBatch.
Paşii 2, 4 şi 6 sunt critici. Actualizarea
optimistă în loturi necesită setarea valorii
dbUseClientBatchCursor pentru Default-
CursorDriver. Folosirea valorii dbOpti-
misticBatch pentru lockedits, in pasul 4,
permite actualizările optimiste de lot. Para-
metrul dbupdateBatch pentru argumentul
de tip (pasul 6) indică faptul că ODBCDi-
rect va transmite cache-ul local către ser-
ver, ca un lot de înregistrări.
Secţiunea de cod „Actualizări în loturi“
este formată din patru blocuri: Primul
face conectarea la serverul back-end. Am
prezentat acest cod pentru a se vedea exact
unde trebuie precizată proprietatea
DefaultCursorDriver a spaţiului de lucru.
Al doilea bloc creează un recordset:
rsSales şi efectuează invocarea actualizări
optimiste prin argumentul dbOptimistic-
Batch a unei metode OpenRecordset. De
asemenea aveţi nevoie de un recordset, care
să nu fie read-only obţinut prin folosirea
argumentului dbOpenDynaset.
Altreilea bloc de cod efectuează o serie
de modificări asupra datelor din cache cu
ajutorul ciclului While .. Wend. Metoda
Update din interiorul ciclului depozitează
34 BYTE România SEPTEMBRIE 1997
local modificările, iar metoda Update din
exteriorul ciclului va transmite serverului
actualizările din cache-ul local.
Al patrulea bloc prezintă o metodă de
rezolvare a coliziunilor. Se vor suprascrie
toate coliziunile de la server cu valorile din
cache-ul local. După prima actualizare de la
sfârșitul blocului trei, ODBCDirect va mar-
ca acele înregistrări care au intrat în colizi-
une pe server şi va recepționa de la server
valorile care sunt în conflict. În exemplu se
vede cum să copiem pe server date din
cache-ul local și pe urmă să facem actuali-
zări în masă ale acestora. Ultima linie folo-
seşte argumentul dbUpdateBatch pentru a
trimite serverului toate modificările făcute.
Parametrul True va forța să se facă modi-
ficările asupra datelor de la server
Operații asincrone
ODBCDirect poate deschide recordset-uri,
querydef-uri şi conexiuni asincrone. De
asemenea vă permite să vă mutaţi, în mod
asincron, pe ultima înregistrare dintr-un
recordset. Fiecare dintre aceste funcţii pot
necesita timp. Să considerăm mutarea pe
ultima înregistrare din cele 2000000 de pe
un server îndepărtat. Funcţiile asincrone
furnizate de ODBCDirect vă permit uti-
lizarea pe plan locala timpului de aşteptare
ca serverul să răspundă comenzii. Va trebui
să realizați un cod care verifică terminarea
activităţii asincrone. Proprietatea stillExe-
cutinga unui obiect vă permite rularea unor
operaţii în timp ce se aşteaptă ca această
proprietate să devină false sau să întreru-
peti executia dacă durează prea mult.
Se recomandă folosirea tranzacţiilor
pentru realizarea operaţiilor care efectuea-
ză modificări în baza de date îndepărtată.
Acest lucru va permite programului să
refacă toate modificările în cazul în care
operaţia este abandonată sau dacă nu s-a
realizat într-o perioadă de timp dată.
ODBCDirect oferă căi puternice pen-
tru a adăuga valori la o bază de date suport.
Programatorii DAO şi VBA au noi posibili-
tăţi de a prezenta utilizatorilor datele
suport, într-o formă familiară, prietenoasă.
Sper ca Microsoft să considere necesară
introducerea evenimentelor în ODBCDi-
rect, astfel încât să fie mai ușoară folosirea
funcţiilor asincrone. BI
Rick Dobson, Ph.D. este preşedintele firmei
CAB Inc. care oferă consultanţă pentru proiec-
tare de baze de date și Internet. Puteţi trimite
e-mail la: Rick_Dobson@msn.com.
[din BYTE, o publicaţie McGraw-Hill, Inc.
Adaptare - Budai Lâs2l6)
www.agora.ro/byte/
Noua denumire a societății SIROM GRAPHICS COMPUTERS S.A. este:
Str. Av. Radu Beller, nr. 25,
sector 1, 71251 București
Tel: 230.04.78 — Fax: 230.04.79
é-mail: sgi@sirom.emat.sgi.com
URL: http://sirom.kappa.ro
lsthnricad Nietrihstar
Authorised Distributo!
Napoleon sea luptat pentru ea.
Vlad Tepes a ee pentru ea.
s-o cumpăraţi
§ XIII) Graphics ae
MIPS R5000 180 MHz Processor
32-bit Double-Buffered Graphics
Hardware Texture Mapping
Image Processing Engine
Video Compression Engine
Web-integrated User Interface
32 MB Memory SDRAM ECC
2 GB Ultra SCSI System Disk
17° Monitor, 1280x1024
100BaseTX / 10BaseT Ethernet
CD-ROM
IRIX 6.3 - UNIX Operating System
Atât de multă putere faţă de un biet PC!
Soluţii completa pentru:
Proiectare asistată, inginerie asistată
World Wide Web authoring & serving
DS RES erai 0 IP Ata n Ha oo SR cP Fo ce
SI: a ale Computer Graphics
GIS, Desktop Publishing, Baze de Date (Oracle / Informix), Modelare Moleculara
ActiveX
CLARIFICAT
Este penetrant. Este omniprezent.
Dar ce este, mai exact, ActiveX?
De David Chappell
si David S. Linthicum
acă utilizaţi un calculator, atunci ActiveX face pro- we st ig
babil parte din viata dumneavoastra. Va place, sau nu, S i ste m i a d | st a N ta
tehnologiile ActiveX au devenit parte esentiala a unel-
telor şi aplicaţiilor Microsoft şi îşi găsesc locul chiar
ca şi parte a sistemului de operare Microsoft. Ce impact are '
ActiveX? Cum influenţează milioanele de proiectanți orientaţi Micro soft
spre Microsoft şi zecile de milioane de utilizatori? Răspunsul la Transaction Server
aceste întrebări necesită mai întâi abordarea altei întrebări şi anume
una care se dovedeşte a fi dificilă: Ce este mai exact ActiveX?
În primul rând, scăpaţi de ideea că eticheta ActiveX se referă la
o tehnologie sau un grup de tehnologii bine definite, căci nu este
aşa. În schimb, ActiveX este o marcă, aga cum este Calvin Klein
sau Ford. Ca şi la alte mărci, produsul referit se poate schimba în Server COM
timp.
Totuşi, tehnologiile grupate sub umbrela ActiveX nu sunt com-
plet disparate. Multe dintre ele (dar în nici un caz toate) sunt în-
tr-un fel legate de Internet si Web. Mai important este ca toate
tehnologiile ActiveX sunt realizate cu folosirea modelului COM
(Component Object Model) de la Microsoft. Dar pasul următor,
evident, definirea lui ActiveX, care să cuprindă toate tehnologi-
ile bazate pe COM, este greşit. COM și-a găsit utilizarea în aproape
orice face Microsoft mai nou, inclusiv Microsoft Office si Win-
dows si, in mod clar, aceste produse nu fac parte din familia
ActiveX. Oricât este de neclară, trebuie să acceptăm aceasta nofi-
une orientată spre marketing, care este ActiveX, căci este singura
potrivită.
Dar nu este oare ActiveX un rezultat al OLE (Object Linking
and Embedding), tehnologia de documente compuse de la
Microsoft? De fapt, nu este oare ActiveX doar o denumire nouă
pentru ceea ce odinioară era OLE? Răspunsul la ambele întrebări
este: „da, într-un fel.“
Istoria începe cu OLE, o tehnologie pentru realizarea docu-
Stub COM
36 BYTE România SEPTEMBRIE 1997
Sistem local
ActiveX se pot lansa în același mod Clientul apelează
CoCreatelnstace. Dacă apelul nu specifică un PR
echipament la distanţă, atunci apelul CO WV, :
verifică baza de date locală din _ COM
Registry pentru a localiza
componenta apelată.
Nia ae g
COM
2 Server extern procesului
Dacă avem componentă locală concepută
ca server extern procesului (de ex. Excel),
clientul face iniţializarea și comunică
prin COM.
Sistem la distanţă
9 CO VI Stub COM
Server COM
3 Server la distanta extern procesului
Dacă avem componenta la distanță, dar clientul nu a specificat un sistem la distanţă,
Registry de la client va conţine numele echipamentului pe care trebuie creată
componenta. Un cod COM sistem examinează Registry de la acel echipament pentru a
afla numele executabilului. Dacă clientul specifică explicit sistemul la distanţă,
Registry de la client este sărit și COM face acces direct la Registry de la sistemul
specificat pentru a determina executabilul ce se lansează. În ambele cazuri, clientul și
componenta comunică folosind DCOM.
SEPTEMBRIE 1997 BYTE România 37
Cover Story
ActiveX clarificat
mentelor compuse. Pe când prima versiune
OLE aborda doar documentele compuse,
versiunea următore, OLE 2, a introdus
COM. COM a rezultat din dorinţa pro-
iectantilor OLE ca acesta să ofere un meca-
nism mai general, care să permită unei bucăţi
de software oferirea de servicii alteia. Astfel,
în timp ce OLE 2 a fost prima tehnologie care
l-a utilizat, modelul COM nu este legat
într-adevăr semnificativ de documentele
compuse. În scurt timp şi rapid, COM a
început să fie utilizat în tehnologii care nu
aveau nimic comun cu documentele com-
puse.
Astfel că acum Microsoft dispunea de o
tehnologie frumoasă şi generală de infra-
structură, dar nu era un produs, şi avea
nevoie de un nume de marcă. Vrăjitorii de la
departamentul de marketing, poate în mod
nefericit, au ales OLE ca numele mărcii.
Luând decizia de a nu mai considera numele
drept acronim, Microsoft a început să a-
dauge eticheta OLE la orice tehnologie care
utilizează COM. Majoritatea acestora,
desigur, nu aveau nimic de a face cu docu-
mentele compuse, astfel că firma a pierdut
mai mulți ani, încercând să ne convingă că
OLE nu se mai referea doar la documente
compuse.
Apoi, în primăvara lui 1996, firma s-a
răzgândit din nou. S-a ales un nume nou de
marcă, ActiveX, şi OLE a fost din nou desti-
nat să se refere doar la documentele com-
puse. Şi pe când, o dată, OLE a fost nume
de marcă pentru toate tehnologiile bazate pe
COM, COM a devenit acum atât de răspân-
dit încât nu mai este posibilă utilizarea unui
singur nume pentru orice. Rezultatul este
situaţia într-adevăr confuză de azi: ActiveX
se referă la un set vag definit de tehnologii
bazate pe COM, OLE se referă doar la doc-
umente compuse. Şi COM, care era oricum,
totdeauna, lucrul cel mai important, devine
din ce în ce mai utilizat în lumea Microsoft.
O observaţie importantă, care trebuie
făcută aici, este că deși eticheta de marketing,
aplicată multor tehnologii bazate pe COM,
s-a schimbat, COM nu s-a schimbat. „Speci-
ficaţiile de bază COM au rămas stabile din
1993, dupa cum afirma Joe Maloney, man-
ager pentru grupul COM la Microsoft. „Am
adăugat funcţii în plus, dar definiția a ceea
ce este COM a rămas consistentă“. Apli-
caţiile scrise conform specificaţiilor COM
iniţiale lucrează şi astăzi, fără modificări
Ideea unui model de obiecte, separat de
limbajul de programare, poate părea stranie.
Intelegem că un obiect poate fi în C+ + sau
Java, dar ce este un obiect COM? Un mod
simplu de a ne imagina COM este tehnolo-
gia de împachetare, un grup de convenții şi
biblioteci de suport care permit interacți-
uni între diferitele bucăți de soft, într-un mod
38 BYTE România SEPTEMBRIE 1997
consistent, orientat obiect. Obiectele COM
pot fi scrise în tot felul de limbaje, inclusiv
C++, Java, VisualBasic şi altele, și pot fi
implementate în DLL-uri sau în executabile
proprii care se execută ca procese distincte.
Un client care utilizează un obiect COM nu
trebuie să știe nici în ce limbaj a fost scris, nici
că se execută într-un DLL sau ca proces se-
parat. Pentru client nu are importanță.
Existenţa unei asemenea abordări ge-
nerale, pentru împachetarea softului, se
dovedeşte deosebit de utilă. Aplicațiile care
încărcarea datelor adecvate. Aceste obiecte
trebuie să încarce datele proprii, persistente.
COM asigură suport pentru mai multe
mecanisme de persistenţă. Cea mai simplă
este persistenţa bazată pe fişiere, unde un.
obiect doar încarcă datele persistente, din-
tr-un fişier. Pentru situaţii mai complexe,
există şi o soluţie bazată pe COM numită
memorare structurată (structured storage).
Prin această soluţie, în fiecare fişier există
ceva analog unui sistem de fişiere. Realizată
din memorări (storages), care sunt asemenea
Tranzacţii si
componente
(e tradițională cu tranzacţii comu-
nică unui server de tranzacții că trebuie să
înceapă o tranzacție, face modificările, apoi
spune serverului de tranzacții să comită (com-
mit) sau să abandoneze toate modificările. Dar
această abordare tradițională nu funcționează
atunci când tranzacţiile sunt efectuate de
componente. De ce? Amintiti-va ca scopul prin-
cipalal dezvoltării pe bază de componente este
ca să se permită dezvoltarea de aplicaţii com-
puse din părți realizate independent. Dacă
fiecare componentă ar fi totdeauna utilizată sin-
gură, structura tradițională „începe tranzacţia,
efectuează operaţii, comite sau renunță“, ar
funcţiona. Dar dacă doriţi să combinaţi mai multe
componente într-o singură tranzacţie, nu este
posibil ca fiecare componentă să aibă propria
cerere de început de tranzacție.
Soluţia Microsoft Transaction Server este cănu
permite unei componente să decidă începerea
"poate fi configurată administrativ, ca să poată
unei tranzacții. În schimb, fiecare componentă
cere tranzacție. Atunci când clientul creează o
componentă care poate cere tranzacţie, MTS
pornește automat tranzacţia. Dacă acea com-
ponentă comite sau renunţă la tranzacţie, MTS
efectuează tranzacţia cerută de componentă.
Dacă componenta creează o altă componentă,
și noua componentă solicită de asemenea o
tranzacţie, MTS poate include automat schim-
bările făcute de noua componentă în cadrul tran-
zacţiei. Când această a doua componentă
comite sau renunţă la operaţii, MTS ia la
cunoștință dar nu termina tranzactia. Asta pana
ce componenta părinte comite sau renunţă si
face ca MTS să termine tranzacţia. Această
abordare permite ca același fișier binar de com-
ponentă să poată fi utilizat în propria tranzacție
sau cu altele împreună, într-o singurătranzacție.
-David Chappell
conlucrează, pentru a oferi utilizatorului sen-
zaţia unui document compus, de exemplu,
pot implementa acea colaborare ca inter-
acțiune între obiecte COM (ceea ce este
exact ce se întâmplă cu documentele OLE
compuse, de azi). Un cod descărcat de pe un
server Web, pentru execuţie într-un brow-
ser, se poate prezenta ca obiect COM pen-
tru browser, oferind o modalitate standard
de împachetare a codului descărcabil ( este
ceea ce fac controalele ActiveX).
Poate fi specificat chiar şi modul de inter-
acţiune a unei aplicaţii cu sistemul de ope-
rare local, folosind COM (şi API-urile noi,
pentru Windows şi Windows NT sunt defi-
nite acum, deseori, ca obiecte COM). In ciu-
da originii sale, legate de documentele
compuse, COM poate fi aplicat în mod util
la multe probleme software.
Persistenta
Crearea unui obiect COM prin incarcarea
codului adecvat este bună, dar este suficien-
tă? Pentru anumite obiecte avem nevoie doar
de cod, dar multe obiecte au nevoie şi de
directorilor şi fluxuri (streams), asemenea
fişierelor, memorarea structurată permite
unor obiecte COM (care se pot executa în
mai multe aplicaţii diferite) să utilizeze par-
tajat același fişier.
Atunci când un program client creează un
obiect COM, este responsabilitatea clien-
tului săspună obiectului locul unde îşi găseşte
datele persistente (dacă are). Pentru obiectele
COM, care trebuie să încarce date persis-
tente, clienţii trebuie să facă două lucruri: să
creeze obiectul şi să-i spună unde găseşte
datele persistente. COM mai permite şi alt-
fel de persistent, dar fişierele simple și me-
morarea structurată sunt cele mai comune.
Moniker
Pentru mulţi clienţi, crearea şi iniţializarea
unei anumite instanţe a obiectului este un
lucru perfect acceptabil. În anumite cazuri,
totuşi, este o cerință prea mare faţă de
client să facă acest lucru. Un obiect poate
necesita 0 iniţializare foarte complexă, de
exemplu, un client poate avea nevoie să uti-
lizeze multe obiecte COM, fiecare cu cerințe
ActiveX clarificat
Cover Story
Active Platform
Pe Platform este viziunea lui Microsoft despre lume. Ea utilizează
controale ActiveX ca mecanism de interacțiune cu utilizatorii și pen-
tru automatizarea oricăror activităţi, pornind de la monitoare de prelucrare
tranzacţii (TP) care știu COM și terminând cu serverele Web. Are două
parti: Active Server si Active Client.
Active Server este de fapt treimea din mijloc, care oferă loc pentru logi-
ca afacerii și procesare primară pentru aplicaţii și utilizează componente
sau ASP (Active Server Pages). Tehnologiile fundamentale pentru Active
Client? Este înglobat în Microsoft Explorer 3 și 4, și poate face parte din
aplicația dumneavoastră client / server prin ActiveX.
La soluții Windows, Active Platform oferă o platformă rezonabilă de
dezvoltare de aplicaţii scalabile, de partea serverului. Deoarece Active
Server îmbină uneltele și tehnologiile de larg consum cu produse de vârf
ca monitoarele TP, grupurile mici sau aplicaţiile intranet nu vor încărca peste
capacitate Active Server. În timp ce Active Platform se adresează unor
medii diferite, ea depinde prea mult de Internet Explorer ca să ofere
soluție pentru client. Explorer apare și pe unele platforme diferite de Win-
dows, dar cel mai bun suport și ultimele versiuni sunt pentru Windows.
- David S. Linthicum
Server includ NT Server, MTS (Microsoft
Transaction Server), servicii de administrare
a datelor, servicii de directori, servicii Web
și servicii de rețea. MTS combină facilitățile
tradiționale de la monitoare, ca interogarea
(polling) firelor și multiplexarea bazelor de
date, cu modelul de programare Microsoft,
bazat pe componente.
Alte componente de la Active Platform, ca
serviciile de administrare date, îmbunătățesc
OLE DB și ODBC pentru accesul la surse
de date ca DB2, Oracle și SQL Server.
Active Directory oferă nivelul de servicii de
directori pentru DCOM (Distributed COM),
permițând obiectelor aflate la distanță să se
găsească pe rețea. Serviciile Web sunt
realizate în jurul la ISS (Internet Information
Server), oferind mecanisme de scriptare prin
ASP pentru dezvoltarea de aplicaţii Web de
- partea server. Serviciile de rețea sunt rea-
lizate cu DCOM, permiţând controalelor să
se conecteze pe reţea, prin MS-RPC sin-
cron.
Active Client este multiplatformă. Microsoft
speră să poată oferi tehnologia pentru o
gamă largă de SO, cu toate că în condiţiile
proprii, planul constă din utilizarea de HTML
standard, a variantei proprii Microsoft de
mașină virtuală Java (JVM), și un motor pen-
tru script care utilizează VBScript de la
Microsoft și JScript (Versiunea JavaScript
de la Microsoft). Deci, unde întâlniți Active
Lumea ActiveX
Active Client
(de ex. Internet Explorer)
HTML
Script
Componente
Servicii
Protocoale standard: | ,
HTTP, TCP/IP, IPX/SPX |,
Intranet, Internet,
extranet
Arhitectirile paralele Active Platform permit o mobilitate ridicata
a componentelor de la client la server.
Active Server
(e.g., IIS, MTS)
HTML
Script
Componente
Servicii sistem
Active Directory
=
9 Servicii de -
£ ns
© | componente Ş
= £
S| Securitate |?
= ecuritate
Retea
Protocoale standard:
HTTP, TCP/IP, IPX/SPX
diferite la creare / initializare. Pentru a mas-
ca această complexitate, se defineşte în COM
noțiunea de moniker.
Un moniker este un obiect COM, ca ori-
care altul, dar are o funcţie specială: orice
instanță a unui obiect moniker știe modul de
creare şi iniţializare a exact unei alte instanțe
specifice a obiectului COM. Monikerii fac
ceea ce clienţii ar putea face singuri, crearea
şi inițializarea obiectului, dar maschează
detaliile față de clienţi.
Dar monikerii sunt şi ei obiecte COM şi
au datele persistente proprii (dacă n-ar avea,
nu ar şti ce referință de obiect realizează).
Pentru a utiliza un moniker, clientul trebuie
deci să creeze, mai întâi, şi să inițializeze
monikerul şi apoi să-i ceară să initializeze
obiectul referit. Acest lucru pare stupid. De
www.agora.ro/byte/
ce nu poatesă creeze clientul singur referința
finală? Ce facilități oferă un moniker?
În multe cazuri, răspunsul este: nici unul.
Clienţii obiectelor COM creează şi initia-
lizează deseori singur acele obiecte, evitând
monikerii. Dar există cazuri în care crearea
şi iniţializarea unui obiect este atât de com-
plexă şi dependentă de moment, sau doar
obositoare, încât recurgerea la un moniker
simplifică viața clientului. Un exemplu este
conectarea la un document cu legături în
OLE, care a fost prima utilizare pentru
moniker, dar sunt și altele. Internet Explo-
rer de la Microsoft, de exemplu, se bazează
pe monikeri, ori de câte ori un utilizator acce-
sează un URL.
Automatizare
Ca şi alte tipuri de obiecte, obiectele COM
oferă metode ce pot fi apelate de către clienți.
Aceste metode sunt oferite prin interfeţe care
grupează metodele în colecţii cu nume unice.
Obiectele COM de azi pot prefera să-şi
expună metodele prin două tipuri de inter-
feţe diferite. Prima opţiune este numită
vtable interfaces şi lucrează bine atunci când
clienţii, care apelează aceste metode, sunt
realizați în C+ +. A doua opţiune este dis-
pach interfaces (prescurtată de obicei ca
dispintrefaces) şi se comportă bine atunci
când clienţii sunt realizați în limbaje mai sim-
ple, ca Visual Basic (cu toate că pot fi utilizați
şi de către clienţi C++). Din motive legate,
din nou, de marketing, expunerea metode-
lor prin dispinterface a devenit cunoscută ca
SEPTEMBRIE 1997 BYTE România 39
Cover
Story | ActiveX clarificat
ducerea de conţinut executabil
de pe situri Web necunoscute,
poate fi riscantă. Cine stie ce va face
aceasta mica aplicatie, o data insta-
lată pe sistemul propriu. Au apărut
două concepte principale de secu-
ritate, în lupta împotriva unor exe-
cutabile malițioase: semnarea codu-
lui și modelul de cutie cu nisip
(sandbox).
ActiveX folosește semnarea
codului, mai specific, tehnologia
Microsoft Authenicode. Auten-
thicode vă permite să verificați
originea unui control și să-i stabiliți
gradul de încredere și siguranță.
Dacă un control vă distruge sis-
temul, știți măcar pe cine să bateti.
Autorităţile de cerificate indepen-
dente (CA), ca VeriSign, elibereaza
semnaturile digitale pentru mar-
carea codului. Proiectantii trebuie
să plătească pentru certificate, și
pentru a fi luaţi în considerare tre-
buie să treacă printr-un proces de
verificare. Semnătura digitală con-
stă din 1024 de biţi și este astfel
practic imposibil de falsificat.
Authenticode se bazează pe
propunerea Microsoft pentru sem-
narea codului, aflată acum în evalu-
are de către World Wide Web Con-
Securitate ActiveX
sortium. Authenticode utilizează cer-
tificate de criptare conforme cu
X.509v3 și standardele de semnă-
tură PKCS 47 și 410. Semnătura
digitală folosește atât cheie publică
cât și cheie privată, cunoscute ca
pereche de chei. Doar proprietarul
cheii private cunoaște cheia pri-
vată și cheia publică este disponi-
bilă pentru toată lumea. Cheia pri-
vată este folosită la generarea
semnăturii și cea publică pentru
validare.
În mod diferit, cutia cu nisip de la
Java oferă securitate foarte restric-
tiv. Un applet nu poate executa
funcţii sistem neautorizate (de ex.
alocare memorie), sau scrie / citi
de pe disc sau alte echipamente.
Deoarece unii proiectanți au con-
siderat cutia cu nisip prea restric-
tivă, versiunile recente de Java
Development Kit asigură suport și
pentru semnarea codului și grade
diferite de protecţie. Ca urmare,
dacă un applet este semnat și de
încredere, poate ieși din cutie într-un
alt domeniu de protecţie unde poate
face |/O de fișiere, de exemplu.
Costurile sunt un alt element.
Dacă veţi adăuga semnătură la
codul dumneavoastră, va trebui să
Authenticode(tm) Security Technc
Authenticode vă avertizează că sunteţi în curs
de instalare a unui soft, dar nu vă protejează,
după ce acceptați continuarea.
plătiți CA. În timp ce marii proiectanți
suportă mai ușor costurile, cei care
produc shareware în pivniţă s-ar
putea să nu-și poată permite certi-
ficarea sau să nu treacă de veri-
ficările necesare pentru CA.
-David S. Linthicum
automatizare.
Numele de automatizare a fost dat din
cauza modului în care sunt utilizate aceste
interfeţe. Proiectanţii de aplicaţii desktop au
dorit să permită ca şi alte softuri să acceseze
funcţii din aplicaţiile lor. Acesta este un caz
croit pentru COM, deoarece raţiunea de a fi
a acestuia este să permită unei bucăţi de soft
să-şi expună serviciile pentru alta. Deoarece
majoritatea programelor, care ar dori săuti-
lizeze serviciile acestor aplicații, se presupune
„că vor fi scrise în Visual Basic, proiectantii
de aplicaţii au ales să-și expună metodele cu
dispinterface şi nu interfeţe vtable. Şi, de
vreme ce acest lucru permite scrierea unor
programe care pot executa automat, să
zicem, operaţii repetitive de calcul tabelar,
care altfel ar fi trebuit făcute manual, uti-
lizarea de dispinterface a ajuns să fie cunos-
cută ca automatizare.
Azi, dispinterface se utilizează în tot felul
de situaţii, multe dintre ele fără nici o le-.
gătură cu automatizarea utilizării aplicaţii-
lor desktop. Totuşi, numele a rămas,
adăugând încă un nume derutant la cele exis-
40 BYTE România SEPTEMBRIE 1997
tente într-un domeniu care era deja destul de
confuz.
Informatica distribuita
Prima variantă COM a presupus că obiectele
COM şi clienţii lor se executau pe același
echipament (cu toate că puteau fi în cadrul
aceluiaşi proces sau a unor procese diferite).
La început, totuşi, proiectanții COM aveau
intenţia de a adăuga facilități pentru clienți,
pentru crearea şi accesarea obiectelor aflate
pe alte echipamente. Cu toate că COM a
apărut prima dată în 1993, DCOM (Dis-
tibuted COM ) nu a devenit atractiv decât
după lansarea lui Windows NT 4.0, la
mijlocul lui 1996.Fiind, fără îndoială, un
membru important al familiei ActiveX,
DCOM este disponibil acum și pentru Win-
dows 95 (dar nu aşteptaţi versiunea Win-
dows 3.1 căci Microsoft afirmă că nu va
exista).
DCOM nu schimbă în fond multe în
felul în care un client creează şi inter-
acţionează cu obiecte COM. De fapt, ar
putea să nu modifice nimic, clientul putând
utiliza exact același cod pentru accesul la
obiecte locale ca şi la cele distante. În multe
cazuri, totuşi, clientul poate prefera uti-
lizarea câtorva extensii DCOM (cu toate că
acestea lucrează şi cu obiecte locale, pro-
iectantii COM depunând eforturi ca clienții
să nu ştie unde se execută obiectele). DCOM
mai include un mecanism de securitate dis-
tribuită, oferind autentificare şi criptarea
datelor. Windows NT 5.0, care trebuie să
apară anul viitor, va adăuga facilități Ker-
beros şi alte protocoale de securitate la
DCOM. Şi, pentru a localiza obiectele COM
pe alte echipamente, DCOM poate utiliza
azi servicii director simple ca DNS (Domain
Name System). Din nou, NT 5.0 va lărgi
paleta de opţiuni cu suport pentru Microsoft
Active Directory, bazat pe DNS şi LDAP
(Lightweight Directory Access Protocol).
Concurentul tradiţional pentru DCOMa
fost CORBA (Common Object Request Bro-
ker Architecture) de la Object Management
Group, care este integrat în multe produse
disponibile comercial, ca Orbix de la Iona
si VisiBroker de la Visigenic. Recent, a apărut
ActiveX clarificat
Cover Story
Java RMI (Remote Method Invocation) ca
o altă opţiune de suport pentru obiecte dis-
tribuite. Spre deosebire de CORBA şi
DCOM, care ambii permit comunicarea
între obiecte scrise în diferite limbaje, RMI
se concentrează asupra comunicării între
obiecte implementate în Java. Această limi-
tare implică, în mod cert, constrângeri, dar
duce și la simplitatea utilizării RMI. În plus,
realizatorii RMI au beneficiat de plăcerea de
a proiecta protocolul lor in mod specific pen-
tru Java, ceea ce le-a permis o conformitate
excelentă cu facilitățile limbajului ( COM,
pe de altă parte, trebuie să trateze trans-
formările între diferitele sisteme de tipuri
din diferite limbaje, un lucru totdeauna
neplăcut).
Scrierea unui server DCOM care ar
deservi doar câţiva clienţi este relativ simplă.
Totuşi, realizarea unui server eficient
DCOM pentru sute de clienți, sau câteva mii,
este mult mai complicată.
Pentru a uşura scrierea unor servere
DCOM scalabile, Microsoft oferă MTS
(Microsoft Transaction Server). MTS oferă
suport pentru tranzacții şi oferă în plus ser-
vicii ca urmărire automată și refolosire
inteligentă a obiectelor. Chiar şi aplicaţiile
care nu au nevoie de tranzacţii pot benefi-
cia de folosirea MTS, deoarece ușurează
mult scrierea serverelor scalabile. De fapt,
Microsoft încurajează proiectanții ca să-și
scrie aplicaţiile MTS în Visual Basic, o opţi-
une ce poate fi calificată cu greu drept
tradițională, pentru proiectanţii de servere
pentru firme. Fiecare aplicaţie MTS trebuie
scrisă ca unul sau mai multe obiecte COM,
implementate ca DLL. Pentru client, MTS
este transparent, clientul utilizând obiectele
COM, ca totdeauna până acum.
Standarde
pentru componente
Dezvoltarea de aplicaţii, pe bază de compo-
nente, promite posibilitatea construirii apli-
caţiilor asemenea felului în care se asam-
blează dispozitivele electronice: din
componente prefabricate. Componentele
bazate pe COM, pentru desktop, sunt cunos-
cute ca și controale AcvtiveX. (O greşeală
obişnuită de terminologie este confundarea
lui „ActiveX“, eticheta pentru o gamă largă
de tehnologii, cu „controale ActiveX“ o
tehnologie specifică din această familie). Un
control ActiveX este doar un obiect COM,
conform unor standarde privitoare la modul
de interacțiune cu clientul. De exemplu, un
control ActiveX trebuie să-şi expună me-
todele prin automatizare, adică dispinter-
face. Această interacțiune standardizată per-
mite utilizarea aceluiași control în multe
contexte diferite. În spatele interfeţelor stan-
dard, un control ActiveX poate face virtual
Java și ActiveX
iS ontroversa este intre Java si ActiveX. Pen-
tru a o înțelege, totuși, este important să
nuuitaţi că atât Java, cât și ActiveX, sunt etichete
aplicate unei game largi de tehnologii.
Controalele ActiveX și JavaBeans se con-
curează însă reciproc și proiectanți trebuie să
aleagă, atunci când realizează o componentă.
Dar nu se exclud reciproc, fiecare fiind adec-
vat unei anumite situații.
Atât controalele ActiveX, cât și appleturile
Java și Beans asigură suport pentru arhitectura
În cazul appleturilor Java, JVM (Java Virtual
Machine) interpretează codul octet și con-
trolează accesul la resursele sistem. JVM
eliberează appleturile de detaliile SO gazdă și
astfel appleturile se pot executa pe orice plat-
formă care dispune de JVM. Trebuie să se poată.
Spre deosebire de ele, controalele ActiveX tre-
buie să se înregistreze în Registry din Windows
și să se execute ca aplicaţii Windows native.
Compromisul este între portabilitate și per-
formanță. Orice versiune de cod Java este mul-
tiplatformă, atât timp cât există suport JVM pen-
tru platformă. Dar performanţele Java nu sunt
extraordinare și, în mod implicit, subsistemul de
securitate Java nu permite accesul la facilități
native, ca I/O de fișiere sau echipamente. Ast-
fel Java este soluția optimă pentru cei care tre-
de „aducere o dată, execuţie de mai multe ori“.
„corespondentele Java. Mai mult, majoritatea
buie să asigure suport pentru o varietate de SO
și procesoare și acceptă să scrie aplicaţii care
evită mecanismele de securitate.
În timp ce Java este soluție bună la toate,
ActiveX este maestru pentru una: Win32. Con-
troalele ActiveX funcţionează exact ca şi apli-
caţiile Windows native și au acces astfel la toate
facilitățile native, ca șirurile de așteptare impri-
manta, I/O fișiere și chiar și memorie. Pentru
securitate, ActiveX depinde de sistemul Authen-
ticode de la Microsoft (vedeți și caseta: „Secu-
ritatea ActiveX“). Utilizarea facilitatilor native de
la Windows înseamnă că execuţia controalelor
ActiveX se face cu viteza nativă, mai rapid decat
uneltelor client/server, ca Visual Basic, Delphi
și PowerBuilder asigură acum suport pentru
dezvoltarea controalelor ActiveX, folosind lim-
baje și unelte native. În fine, multe unelte și apli-
catii Windows pot utiliza controalele ActiveX,
deci acestea nu sunt limitate la browser.
Care vă convine? Evaluaţi fiecare, după faci-
lități și limitări. Este bine să adoptați controale
ActiveX pentru aplicaţii în medii omogene Win-
dows, iar Java corespunde mai bine pentru situ-
aţii cu multe platforme. Este mai bine decât să
forțați aplicaţiile sub presiunea standardelor sau,
mai rău, cruciadelor între credinţe.
-David S. Linthicum
orice şi sunt disponibile azi controale de la
diferite firme de soft, care implementează
diferite funcţii.
Controalele ActiveX sunt scrise ca şi
DLL-uri şi, astfel, ele trebuie să fie încărcate
într-un fel de container, căci nu se execută
autonom. Containerul generic pentru con-
troale ActiveX a fost Visual Basic (de ce cre-
deţi că a fost necesară utilizarea unor dispin-
terface?), dar azi există mai multe opţiuni.
Un exemplu deosebit de important de con-
tainer pentru controale este navigatorul Web
de la Microsoft, Internet Explorer. De fapt,
recunoaşterea faptului că un navigator poate
fi container pentru control (şi recunoaşterea
faptului că altfel appleturile Java ocupă piaţa)
a făcut ca Microsoft să modifice semnifica-
tiv atât tehnologia, cât și numele dat com-
ponentelor desktop bazate pe COM.
Ceea ce cunoaştem astăzi ca şi controale
ActiveX au fost iniţial controale OLE, care
trebuiau să implementeze un număr mare de
metode. Acest lucru le făcea mari, dar ce
dacă? Se încărcau de pe discul local al echipa-
mentului, într-un container ca Visual Basic.
Concepţia era că nu avea importanță dacă
un control era de sute de kilo-octeti sau cati-
va mega-octeti. Dar, dacă se încărca un
control într-un navigator Web, existau şanse
mari ca transferul să fie făcut printr-o legă-
tură telefonică lentă, pe Internet. Acum,
dimensiunea controlului a devenit de impor-
tanță vitală şi cerința ca proiectantul să nu
implementeze nimic decât strictul necesar
s-a impus pentru a nu afecta timpul de trans-
fer. În consecință, cam în aceiaşi perioadă s-a
modificat și denumirea, Microsoft decretând
că ceea ce se numeau acum controale
ActiveX puteau implementa doar facilităţile
de control absolut necesare, fără adaosuri
inutile.
Pentru câţiva ani, competitorul principal
pentru ActiveX a fost OpenDoc, promovat
de Apple şi IBM. Azi, totuşi, ambele organi-
zaţii de suport pentru OpenDoc, au declarat
oficial că acesta a murit. În schimb, majori-
tatea oponenților Microsoft s-au aliniat în
spate la JavaBeans, o arhitectură de compo-
nente bazate pe Java. Spre deosebire de con-
troale, care sunt strâns legate de Windows şi
sunt distribuite ca fişiere binare specifice pen-
tru echipamente, un Java Bean se poate
executa oriunde. Compromisul, desigur, este
căun Bean nu beneficiază de toate facilităţile
mediului local, fără o compromiterea porta-
bilităţii. Pentru multe aplicaţii, ca de exem-
plu scrierea unei componente ce poate fi
adusă de pe Internet-ul public, Java Beans
SEPTEMBRIE 1997 BYTE Romania 41
Cover Story
ActiveX clarificat
este o opţiune excelentă.
Azi, există o piaţă în creştere accelerată
pentru componente desktop, majoritatea
cărora se realizează sub formă de controale
ActiveX (există relativ puţine Java Beans).
Standardele pentru componente server au
apărut mai încet, totuși. Pe desktop, navi-
gatoarele Web şi mediile de programare ca
VB şi Power Builder sunt opţiunile evidente
pentru containere, dar ce trebuie să fie con-
tainerul pe server? Ei bine, o alegere exce-
lentă pentru container de componente, de
partea server, este serverul de tranzacții și
Microsoft promovează propriul MTS.
Concurenţii lui Microsoft sunt dezamăgiți
când văd că MTS şi NT câştigă teren în mod
semnificativ. Cel mai promiţător efort din
partea lor, pentru realizarea unui standard
pentru componente de partea server, este o
extensie Java Beans numită Enterprise Java
Beans. Această specificaţie defineşte inter-
feţele spre un server de tranzacții, asemănă-
tor cu MTS, şi suporterii speră să convingă
furnizorii independenţi de soft ca să-şi scrie
componentele server ca Beans şi nu ca şi com-
ponente COM. Microsoft este in fata pe
aceasta piata, MTS se livreaza in 1996, în
timp ce specificatia pentru Enterprise Java
Beans este noua si nu sunt inca disponibile
produsele pentru suportul ei.
Viitorul pentru Activex
Este corect să spunem că tehnologiile
ActiveX vor fitotdeauna mai adaptate lumii
Windows şi Windows NT. Dar, indiferent
de cât de mult îşi promovează Microsoft pro-
priul SO, majoritatea organizaţiilor vor avea
totdeauna o anumită diversitate, mediile
realizate cu furnizor unic nu se prevăd. În
e măsură ce popularitatea
ActiveX crește, apar și mai
multe unelte de dezvoltare de con-
troale ActiveX. Deoarece acesta
este independent de limbaj,
aproape orice unealtă tradițională
de dezvoltare poate construi și dis-
tribui controale ActiveX. Cele mai
populare unelte includ Delphi de la
Borland, PowerBuilder de la Pow-
ersoft și un arsenal de la Microsoft,
înfrunte cu Visual Basic, Visual C++
si Visual J++.
Cadre
Există mai multe căi de creare a
controalelor ActiveX utilizând
3GL, care includ:
3 Utilizarea MFC (Microsoft
Foundation Classes)
3€ Utilizarea ATL (ActiveX
Template Library)
*€ Utilizarea BaseCtrl
Framework
Majoritatea dezvoltărilor recente
ActiveX utilizează MFC, deoarece
MFC este prezent de cel mai mult
timp şi este cunoscut de multi
proiectanți în C++. De asemenea, în
mod deosebit de alte tehnici, MFC
permite proiectanților să fie atenți la
comportamentul obiectului și nu la
interfață. Dezavantajul (mai ales pen-
tru distribuție pe Internet) este
dimensiunea controalelor și necesi-
tatea unui DLL care să existe cu con-
tainerul.
ATL poate genera cod, de câte ori
este nevoie, folosind configuratoare
(template). Astfel, nu mai aveţi nevoie
de biblioteci sau DLL-uri, care tre-
buie livrate împreună cu controlul.
ATL vă cere să derivați o clasă din
mai multe clase de bază existente ca
Unelte de construit controale
şi configuratoare. În mod tipic,
proiectanții vor folosi un Wizard pen-
tru a crea clase automat. ATL are și
dezavantaje. Este mult mai greu să
lucraţi cu interfeţe folosind ATL,
deoarece trebuie să creaţi fiecare
interfață necesară pentru aplicația
proprie. În plus, ATL nu asigură
suport pentru Class Wizard, care
poate să păstreze automat fișierele
ODL (Object Description Lan-
guage) și IDL (Interface Definition
Language) sincronizate cu codul.
Soluţia lasă mult de dorit.
BaseCtrl este o bibliotecă mică,
asemănătoare cu ATL, dar fără con-
figuratoare. BaseCtrl este asa de
mică, încât Microsoft nu asigură
suportul pentru ea. Împreună cu
BaseCTRL se livrează mai multe
structuri de controale. Deși BaseCtri
oferă un model ușor de înțeles, de
dezvoltare de controale ActiveX, nu
este mult mai simplu decât ATL și nu
oferă așa flexibilitate. În acest
moment, este o opţiune greșită pen-
tru proiectantii de controale ActiveX.
Unelte
Visual C++ de la Microsoft a fost pri-
ma unealtă cu facilităţi de creare de
controale ActiveX. Azi el oferă cele
mai multe controale pentru pro-
iectantii ActiveX. Visual J++ poate
si el crea controale ActiveX. Acest
fapt strică somnul multor puriști Java,
și este o revenire bună din partea
lui Microsoft, atunci când se ceartă
pe tema ActiveX fata de Java.
Cu toate că două dintre uneltele
Borland, JBuilder și IntraBuilder, sunt
în centrul atenţiei, Delphi 3.0 și C++
Builder sunt singurele unelte Borland
capabile sa realizeze componente
Unelte
pentru script
VBScript
JavaScript
JScript
others .
ae
Unelte de
dezvoltare
Visual Basic
Delphi
Visual C++
PowerBuilder
Visual J++
Masina
virtuala
Java
ActiveX. Borland numeste facilitatile
de dezvoltare ActiveX din Delphi,
Active Inside. Ideea este transfor-
marea oricărei ferestre Delphi într- o
formă ActiveX. Active Inside
pregătește noul dumneavoastră con-
trol pentru distribuţie pe Web. Del-
phi poate lega controlul la COM sau
DCOM pentru legături la alte obiecte.
PowerBuilder 5.0 este o unealtă
de dezvoltare client/server, refăcută
pentrua deveni o fabrică de ActiveX.
PowerBuilder poate distribui Data
Window (nucleul dezvoltării de apli-
Aplicatii desktop
Word
Excel
WordPerfect
i Other OLE-compliant
catii PowerBuilder) sub forma de
controale ActiveX si permite
proiectantilor actualiin PowerBuilder *
săutilizeze facilități cunoscute, calim-
bajul de programare PowerScript.
Microsoft deţine, probabil, cele
mai bune unelte de creare a con-
troalelor ActiveX. Visual Basic 5.0, de
exemplu, permite ca proiectanții să
utilizeze mediul vizual prietenos de
programare VB și limbajul nativ Visu-
al Basic for Applications pentru real-
izat controale.
- David S. Linthicum
42 BYTE România
SEPTEMBRIE 1997
Când vorbim despre
elemente de reţea high-end,
PA iza a n a 0 NIN
Bay Networks este
„SR : 7 Pa PAPE sh iii ac ae
= RR ro e een ony sa reat em
Switchurile 303 (24x10Base-T, 1x100Base-TX), 304
performante pentru pretul la care sunt vângă sie. Numaic cu
dumneavoastră. —
i 16x10/100Base-TX autosense) au cele mai bune
je lăţimea de bandă pe care o doriţi pentru rețeaua
Noile huburi Bay Networks 150 oferă noi facil ama de ewe
excelente si pot fi folosite independent sau impred 5, Cea mai i importantă cali atea
pot fi plasate pe o lungime de 150 de metri şi doar j modu na nt.
ceste echipamente au prețuri
Oreste cad se pot stivui cate 8,
Routere Clam
Sistemul 5000 de la Bay Networks simplifică. ot i contează în câte localităţi aveţi birouri cu care doriţi să vă
integrând mai multe tehnologii într-o singură platformă. ‘Integ
înseamnă economie şi flexibilitate. În plus mai mult control ai
reţelei prin Optivity, care este în acest moment cel mai bun p )
de management de pe piață. Este grozav că utilizând aces
puteți migra de la tehnologia Ethernet de azi la tehnologi
de mâine.
nectați deoarece Bay Networks vă oferă o linie completă de
oduse pentru acces la distanță sau acces la Internet.
ile routere Clam'" au preț excelent, sunt simplu de utilizat,
portă IP sau IP/IPX şi se pretează unei game foarte largi de
caţii. Sunaţi acum deoarece routerele Clam sunt: mai
petitive ca performate si pret decat routerele Cisco.
aul. 13 Networking
Ed Mu
SEE
Constanta, George Enescu 11 pap ie: =
tel: 041-618580, 619863, 619864 fax: 041-619457 vizitati-ne pagina web
Bucuresti, Jiului 2-4, Bloc Tornado www.tornado.ro B y N W ks
tel: 01-6672823, 6672632 fax: 01-6672987 siete a et or
Cover Story
ActiveX clarificat
consecinţă, Microsoft lucrează pentru a face
produsele COM, DCOM şi o parte din
familia ActiveX să fie disponibile şi sub alte
sisteme de operare. Microsoft oferă deja
suport pentru ActiveX pe Macintosh, inclu-
siv suport pentru controale ActiveX
(deoarece Microsoft Office depinde mult de
COM, Microsoft n-a avut de ales decât să
asigure suport în acest mediu). Software AG
face mutarea acestor tehnologii pe diferite
variante Unix şi pe 0S/390 de la IBM
(numele pentru venerabilul sistem VMS).
Digital şi HP s-au angajat şi ei să mute
tehnologia pe sistemele lor, prin portarea
codului de la Microsoft.
COM a devenit o parte vitală a infra-
structurii software de la Windows şi Win-
dows NT. Dar mai există multe incertitudini
privind viitorul. Va reuşi oare Microsoft,
de exemplu, să transforme COM într-o
tehnologie viabilă pe mai multe platforme?
Plasarea serverelor Windows NT, în între-
prinderile existente, va face necesară ca
DCOM şi alte servicii distribuite să fie
disponibile pe platforme non- Microsoft.
Procesul a durat mai mult decât era de aștep-
tat şi, cu toate că unele organizaţii au făcut
promisiuni, nu se livrează încă prea mult cod
corespunzător. Între timp, atât produsele
bazate pe CORBA cât şi cele RMI rulează
deja cu succes în medii cu mai multe SO din
întreprinderi. Cu cât trece mai mult timp,
înainte ca DCOM să devină o tehnologie
multiplatformă reală, cu atât se măreşte
avansul dobândit de CORBA și RMI.
Cum rămâne cu concurenţa între ActiveX
şi Java Beans? Componentware este urmă-
torul val în dezvoltarea de software, indife-
rent dacă softul rulează într-un navigator
Web sau altundeva. Controalele ActiveX
sunt azi în frunte, dar o dată cu dispariția lui
OpenDoc, toţi oponenții lui Microsoft s-au
aliniat în spatele unui competitor unic. Chiar
şi numai datorită dorinţei utilizatorilor de a
evita monopolul, Java Beans va obţine pro-
babil un segment de piaţă.
| INFORMAȚII UTILE
Cui îi aparține ActiveX
WJ" factor cheie in transfor-
marea lui ActiveX intr-o
tehnologie multiplatforma il
constituie renumitele tratative
cu Open Group. Format din
contopirea dintre X/Open si
Open Software Foundation,
Open Group este una dintre
ultimele organizaţii rămase din
zilele bune ale sistemelor
deschise. A fost prezentat
mai pretutindeni că Microsoft
a cedat controlul tehnologiilor
de bază ActiveX la Open
Group. Dar o citire atentă a
ceea ce a afirmat Microsoft
despre acest subiect clarifică
faptul că nu este vorba de așa
ceva.
Comunicatul iniţial de presă
de la Microsoft, referitor la
acest subiect, datând din iulie
1996, începe cu: „Microsoft
Corp. a anunţat azi planuri de
împlinire a viziunii sale de
deschidere pentru ActiveX prin
transmiterea specificațiilor și
tehnologiilor corespunzătoare
la o organizaţie de standarde
industriale“. Acest lucru nu
este chiar același lucru cu
cedarea controlului. Maitârziu,
în același an, Paul Maritz,
vicepreședintele grupului
Microsoft, a afirmat că scopul
procesului a fost „asigurarea
faptului că tehnologia este
disponibilă pentru industrie,
într-un mod deschis și asigu-
rarea unui proces eficient,
deschis, în viitor“.
În octombrie 1996, într-un
comunicat care anunţa rezul-
tatul votului participanţilor
potenţiali la procesul de stan-
dardizare ActiveX, Microsoft
afirmă: „Open Group a fost
selectat de către acţionarii
Microsoft ActiveX pentru a
oferi conducerea în dez-
voltarea și răspândirea
tehnologiilor de bază ActiveX".
Remarcati din nou ca nu se
foloseste cuvantul ,control".
Anuntul continua cu ,Active
Group care se va forma sub
auspiciile Open Group, va
administra evolutia tehnolo-
giilor ActiveX. Va beneficia de
serviciile oferite de Open
Group“.
Ceea ce pare cel mai pro-
babil în acest caz este că
direcţiile viitoare pentru
tehnologiile COM și ActiveX
vor fi hotărâte de Microsoft.
Active Group se va compune
din companii care doresc să
promoveze și înmulțească
tehnologiile COM și DCOM.
Active Group va utiliza, așa
cum a afirmat Microsoft, ser-
viciile Open Group atunci când
are sens și sunt necesare, dar
nu va fi sub dominație. De
exemplu, Open Group dis-
pune de un mecanism pentru
licenţiere de soft, pe baze
egale pentru toţi doritorii și
Microsoft le-a permis să ofere
licenţa codului COM și DCOM
la alți furnizori. Dar scopul prin-
cipal pentru Open Group va fi
răspândirea și promovarea, nu
oferirea unei căi stricte de
definire a viitorului pentru
ActiveX.
Acest aranjament este o
reminiscență a lumii Java, unde
un furnizor unic (JavaSoft,
adică Sun) primește semnale
de intrare de la alţi furnizori și
utilizatori și apoi determină
direcţiile tehnologiei pe baza
acestor semnale și propriile
preferințe. Ambele tehnologii
obiect, aflate în frunte,
ActiveX/COM și mediul Java,
sunt controlate acum de furni-
zori unici. Industria noastră a
învăţat în sfârșit lecţia vitală:
tehnologiile controlate, orga-
nisme de standarde care se
mișcă lent, nu potţine pasul cu
piaţa care se schimbă rapid.
-David Chappell
COM a ajuns să joace un rol cheie în
strategia Internet de la Microsoft, în aplicații
şi chiar în propriul sistem de operare. Şi,
asemenea tuturor tehnologiilor soft exis-
tente, îmbunătățirile la COM sunt în curs de
Software AG.
Borland International 408-774-3400 |
Scotts Valley, CA http://www.mainsoft.com Darmstadt, Germany
800-457-9527 Reco (international headquarters)
408-431-1000 nese +49-6151-92-31-00
http://www.borland.com i Reston, VA (U.S. headquarters)
: 800-426-9400 703-860-5050
Bristol Technologies 206-882-8080 iia diane cats eon
Ridgefield, CT http://www.microsoft.com P pian
203-438-6969 : Symantec
http://www.bristol.com abies Monagement Coup Cupertino, CA
Framingham, MA
iei 408-253-9600
JavaSoft 508-820-4300 “http://www.symantec.com
Mountain View, CA http://www.omg.org aaa SV
800-518-1763 Dia pai ac) VeriSign
512-434-1591 ene division of Sybasc) „A ouintain Vie, CA
http://www.javasoft.com - 800-395-3525 _ 415-961-7500
ae =e http://www.verisign.com
Mainsoft „508-287-1500 eu meena
_ http://www.powersoft.com :
Sunnyvale, CA
44 BYTE Romania SEPTEMBRIE 1997
aparitie. Dar orice eticheta s-ar pune pe
tehnologiile de esentiale bazate pe COM,
initial OLE, acum ActiveX şi mâine poate
alta, importanța COM nu pare să scadă. Atât
timp cât Windows şi Windows NT sunt sis-
teme de operare importante, tehnologiile
ActiveX vor juca un rol important în viața
noastra.
David Chappell (david@chappellassoc.com)
este șeful firmei de educatie si consultanta Chap-
pell&Associates din Minneapolis. David S.
Linthicum (\inthicum @worldnet.att.net) este
Senior Manager la Center for Technology
Eneblament de la Ernst and Youg din Vienna,
Virginia.
[din BYTE, o publicaţie McGraw-Hill, Inc.
Adaptare - Darvas Attila]
ILUSTRATIA: JOHN BLECK © 1997
PC scapa de gatuiri
Schimbările majore care vor transforma PC-urile Wintel
în următoarele 18 luni vor fi în măsură să rezolve problema gâtuirilor interne
de bandă şi să îmbunătățească performanţele grafice.
De Tom R. Halfhill
ără doar şi poate, calculatoarele evoluează mereu. După
o stagnare relativă de cinci ani, PC-urile Wintel se
pregătesc pentru prima îmbunătăţire majoră de la
apariţia în 1992 a magistralei PCI şi a plăcilor de bază
la 66 MHz. Aceste schimbări vor afecta desigur deciziile oricărei
persoane dornice să achiziţioneze un sistem de calcul în următoarele
18 luni.
Dar ce se întâmplă de fapt?
Fără o serioasă revizie a actu-
alelor sisteme, gâtuirile interne
de bandă nu vor susţine cores-
punzător performanţele noilor
procesoare, care ţintesc nivelul
de 300 MHz sau chiar mai sus.
Mai mult, noi tehnologii, cum
ar fi digital videodisc (DVD)
şi utilizarea tot mai susţinută a
aplicaţiilor video şi graficii 3D,
necesită memorie şi perfor-
manţe ale magistralei PCI co-
respunzătoare.
Schimbările care se prevăd
vor afecta de asemenea şi in-
dustria PC-urilor. Probabil că
aceste schimbări vor întări in-
fluenţa companiei Intel, vor
slăbi concurenţa acestei com-
panii, vor reduce numărul fa-
bricantilor de componente şi
vor inlocui unele standarde
deschise cu solutii proprietare.
lată la ce v-aţi putea aştepta:
* Magistralele I/O ale UCP-u-
lui, care sunt acum limitate
la 66 sau 75 MHz, vor a-
junge până la începutul anu-
lui viitor la 83 şi 100 MHz.
* Pentru a face fata frecvente-
lor ridicate ale magistrale-
lor, memoriile fast-page
DRAM şi EDO RAM vor
înlocui SDRAM. Începând cu 1999,SDRAM va cunoaște imple-
mentări şi mai rapide, cum ar fi memoriile SyncLink DRAM
(SLDRAM) sau Rambus DRAM (RDRAM).
* Noile sisteme care vor debuta spre sfârşitul acestui an vor elibera
magistrala PCI de controlorul grafic, transferele grafice fiind reali-
zate printr-un canal privat numit Accelerated Graphics Port
(AGP). Acest lucru va creşte automat de două până la patru ori
www.agora.ro/byte/
performanţele grafice. -
* De asemenea, magistrala PCI pe 32 de biţi la 33.3 MHzva fi trans-
formată într-o magistală pe 64 de biti la 66.6 MHz, mai ales in
PC-urile de vârf.
* Toate noile UCP-uri Intel vor adresa memoria cache L2 printr-o
magistrală specială pentru a reduce în acest fel traficul pe magis-
trala I/O sistem. De asemenea, Intel va scoate de pe scenă soclurile
de tipul 7 (care sunt standard
industrial) în favoarea slot-
urilor de tipul 1 şi configu-
ratiilor Single-Edge Connect
(SEC). Replica rivalilor com-
paniei Intel la aceasta strate-
gie ar putea fi orientarea spre
arhitecturi cache in-line (plă-
ci de extensie cu memorie
cache adițională) sau spre
noi interfeţe UCP.
Magistrale
mai rapide
UCP-urile moderne operează
de obicei la două frecvenţe de
ceas. Miezul (care conţine
unitățile de execuţie și memo-
ria cache L1) rulează la o frec-
venta de ceas, in timp ce ma-
gistrala I/O (care interfateaza
miezul cu memoria şi peri-
fericele) rulează la o frecvență
mai scăzută. Utilizatorii au
tendinţa de a se orienta spre
frecvenţe de ceas ridicate ale
miezului fără să aibă în vedere
importanţa vitezei de lucru a
magistralei. În cele mai noi
procesoare, magistralele sunt
foarte încete faţă de miez,
încetinind serios transferurile
datelor.
Frecvența de lucru a magis-
tralelor a zăbovit un timp la bariera de 66 MHz, până în anul 1992
când Intel a lansat procesorul Pentium. Procesoarele 6x86 şi
6x86MX ale companiei Cyrix pot împinge magistralele să ruleze
la 75 MHz, dar puţine sisteme sunt capabile de asemenea perfor-
manțe. Pe lângă toate acestea, există o clară tendință industrială de
a aduce magistralele la frecvențe de 83 şi respectiv 100 MHz. Indus-
trială am putea spune că e un cuvânt cheie în discuţia noastră,
SEPTEMBRIE 1997 BYTE România 45
Administrarea datelor
PC scapă de gâtuiri
deoarece o generaţie de magistrale mai rapi-
de va necesita mult mai mult decât UCP-
uri mai rapide. În principiu, întregul sistem
trebuie schimbat-inclusiv setul de chip-uri
ce formează miezul logic al sistemului, pla-
ca de bază şi memoria DRAM.
Setul de chipuri al sistemului este format
din două chip-uri care controlează traficul
dintre UCP, memoria sistem, memoria
cache L2, magistrala PCI şi alte magistrale
periferice-ISA, SCSI, PC Card, USB şi 1394.
Fabricanţii acestor chip-uri trebuie să îşi
reproiecteze componentele pentru a face
faţă acestor frecvenţe ridicate.
Unele seturi de chip-uri suportă deja
frecvenţe de lucru de 75 şi 83 MHz. Com-
pania AMD a adoptat frecvenţa de 83 MHz
ca un pas strategic intermediar. „Nu există
nici un motiv pentru a sări de la 66 MHz
direct la 100 MHz“, este de părere Vinod
Dham, vicepreşedintele departamentului
de sisteme de calcul din cadrul AMD. „Am
favorizat o strategie de tip scară în care pri-
ma treaptă e 66 MHz, a doua 83 MHz iar,
în final, a treia e 100 MHz. Această ori-
entare va fi benefica pentru terți şi va asigu-
ra un salt de performanţă semnificativ.“
Cu toate acestea, Intel este de părere că
cea mai logică mişcare ar fi orientarea spre
frecvenţa de 100 MHz. Şi, să nu uităm că
această companie controlează circa 90% din
piața UCP-urilor, 80-90% din piaţa seturi-
lor de chip-uri şi este de asemenea cea mai
mare producătoare de plăci de bază. Intel a
pregătit pentru începutul anului următor
lansarea unui set de chip-uri numit 440BX.
Acesta va suporta frecvenţe de 100 MHz în
configuraţia Pentium II. 440BX va acom-
pania lansarea clasei de procesoare Pentium
II (purtând numele de cod Deschutes), care
vor debuta având o viteză a miezului unde-
va în jurul a 350 MHz.
Unul dintre motivele pentru care Intel
preferă frecvența de 100 MHz este impactul
acesteia asupra magistralei PCI. Magis-
trala PCI rulează în mod normal la 33,3
MHz. Dacă frecvenţa de ceas a magistralei
UCP-ului creşte la 100 MHz, PCI va con-
tinua să ruleze sincron la 33,3 MHz, 100
MHz fiind un multiplu de 33,3 (3x).
În momentul în care magistrala UCP
rulează la 75 MHz, magistrala PCI fie că va
lucra la 25 MHz (3x) sau la 30 MHz (2.5x)
pentru a menţine transferul sincron, fie că
va rula asincron la 33,3 MHz. Toate aceste
variante afectează din păcate perfor-
mantele. Unele sisteme Cyrix 6x86 au
magistrala UCP la 75 MHz, magistrala PCI
rulând la sincron la 37,5 MHz (2x)-
frecvenţă mult prea ridicată pentru unele
plăci PCI. Dacă magistrala UCP rulează la
83 MHz, bus-ul PCI poate rula sincron la
33,2 MHz (2,5x). Dar trebuie avut în vedere
46 BYTE România SEPTEMBRIE 1997
faptul că actualele seturi de chip-uri Pen-
tium nu acceptă acest multiplu.
De asemenea, Intel susţine sus şi tare că
adoptarea frecvenţei de 100 de MHz este
oricum inevitabilă, aşa că şi industria ar
trebui să facă nu doi paşi mărunți (66-83-
100) ci unul mare (66-100). „În ceea ce
priveşte performanţa, suntem de părere că
aducerea magistralei la 100 MHz şi nu la 83
reprezintă adevăratul progres“, spune Jag
nevoie de trasee mai scurte între compo-
nentele critice pentru a se evita desin-
cronizările. De asemenea, ele vor necesita:
multe îmbunătăţiri pentru ca zgomotele
interne şi externe să nu interfere cu sem-
nalele de date.
De exemplu, pentru a reduce zgomotele,
proiectantii sunt siliți să adauge conden-
satori şi să proiectezele traseele cablajelor
în zigzag pentru a scăpa de traseele lungi şi
| Cresterea vitezei o
E bussistemdela <>
„66 MHz la 83-100 MHz. ©
Port Accelerat
eliade [dd Ode Grafică
Cinci căi spre PC-uri rapide
Gat
sistem
2 Unele sisteme muta
"d memoria cache 12 de 1/0
„bus sistem pe un bus privat.
—, Pe
Memorie centrala
PC-urile noi care urmează să apară în lunile următoare
vor elimina cinci gâturi existente la PC-urile actuale.
Bolaria, directorul departamentului de
marketing al componentelor din cadrul
companiei Intel.
Orientarea companiei Intel spre frec-
venţa de 100 MHz va forţa industria să
adopte această tehnologie şi va scoate din
competiţie unele companii. Dar, există
multe probleme de adresat pentru ca plăcile
de bază la 100 MHz să atingă un nivel de fia-
bilitate corespunzător. Aceste plăci de bază
vor necesita surse de alimentare, stabiliza-
toare de tensiune şi sisteme de răcire mai
performante pentru ca UCP-urile de con-
sum ridicat să funcţioneze satisfăcător. (Un
Pentium II la 300 MHz consumă 42 W, în
comparaţie cu Pentiumul la 233 MHz care
consumă doar 17 W.) Aceste plăci vor avea
paralele care se comportă ca antene. Tre-
buie avut în vedere şi faptul că în S.U.A.
frecvența de 100 de MHz a magistralei este
afectată de banda radio FM. CPU-ul va fi
deci foarte mirat dacă, în loc să primească
datele pe care le-a solicitat din memorie, va
asculta o piesă cu Smashing Pumpkins.
„Deci, băieţilor care proiectează plăci
de bază la 100 MHz le va fi mult mai greu
decât s-a prevăzut“, este de părere Larry
Barber, preşedintele companiei Tyan Com-
puter. Pentru a scăpa de zgomot, pe ultimele
plăci de bază Tyan (ca şi pe multe altele de
acest fel) condensatoarele electrolitice s-au
înmulțit ca ciupercile după ploaie.
Fugărind memoria
PC scapă de gâtuiri | Administrarea datelor
Memoria trebuie de asemenea să ţină pasul
cu aceste frecvențe ridicate de pe magistrală.
Chip-urile DRAM obişnuite nu mai fac fata
însă. Există deja o tendinţă de migrare spre
memoriile SDRAM, care necesită pe placă
socluri de 168 de pini destinate modulelor
DIMM (Dual In-line Memory Module),
care vin să înlocuiască familiarele
SIMM-uri. Prin memoriile EDO DRAM,
conectate la o magistrală pe 64 de biţi la 66
MHz, lățimea de bandă actuală a ajuns la
533 MBps. Odată cu introducerea memo-
riilor SDRAM la 100 MHz, lăţimea de
bandă va ajunge la 800 MHz-o foarte sănă-
toasă dublare.
Memoriile vor deveni şi mai rapide până
în 1999. Cei mai probabili succesori ai me-
moriei SDRAM vor fi SLDRAM şi
RDRAM. Intel ar putea avea şi aici ultimul
cuvânt de spus, deoarece compania susține
tehnologia RDRAM prin colaborarea cu fir-
ma Rambus şi prin investiţiile făcute în
această companie. De fapt, Rambus nu fa-
brică nici un fel de memorie RAM; compa-
nia proiectează şi brevetează pentru nouă
dintre cei mai importanţi fabricanți de me-
morii RAM interfeţe proprietare de înaltă
viteză.
Rambus poate face o magistrală memo-
rie specială pe 16 biţi să ruleze la frecvenţe
de pana la 600 MHz-cifra pe care compa-
nia o măreşte cu aproximativ 100 MHz pe
an. Până când tehnologia RDRAM se va
lansa la nivel industrial, lățimea de bandă a
unei magistrale pe 16 biţi ar trebui să atingă
1,6 GBps-de două ori mai mult decât
SDRAM la 100 MHz. Pe o magistrală pe 32
de biţi această lăţime de bandă se dublează
din nou, ajungând la 3,2 GBps. Rambus
declară că magistrala memorie dezvoltată
de ei vaatinge probabil 1000 MHz (1 GHz),
asigurand o latime de banda de 4 GBps.
SLDRAM este un standard deschis, pro-
pus şi susținut de 22 de companii, printre
care Apple, Hewlett-Packard, IBM, Moto-
rola, NEC şi Texas Instruments (dar nu şi
Intel!). Deşi standardul nu este în forma
finală, SLDRAM va fi capabil şi el de rate de
transfer de ordinul gigabyte-ilor.
În cele din urmă însă, poziţia companiei
Intel ca cel mai mare fabricant de UCP-uri,
de seturi de chip-uri si de plăci de bază va
determina probabil tipul de memorie care
se va impune. „Dacă ar fi să fac un pariu, as
paria din motive tehnice pe SLDRAM şi din
motive politice pe RDRAM“, spune Dean
Hays, director al departamentului de mar-
keting din cadrul companiei VIA-un fa-
bricant de seturi de chip-uri.
Redirecționarea graficii
O altă gâtuire de bandă care chinuie
PC-urile actuale este legată de magistrala
Arhitectura pentru grafică tradiţională
Setul de chipuri logice
sistem nu are cozi
pentru cerile de
memorie PCI sosite de
la controlerul grafic.
Programele 3-D memorează
texturile în memoria centra-
UC lă și în bufferul de cadru.
Bus 1/0
Memorie
Chin set [esa E
PCI transferă datele Sia program 3-D i
în fiecare ciclu com-
plet de ceas și nu în
fiecare fază, redu-
când debitul poten-
fial de transfer. —
CD CEPE
Disp.
PCI
Disp.
Controler | oe
| Bufferul de —
cadru conține grafic
copii redun- PCI este un bus de uz general
dante ale Buffer cadru [N Partalat intre dispozitive multiple
texturilor 3-D. care concurează pentru banda de
texturi 3-D transfer limitată pe bus .
Există multe probleme cu arhitectura sistemului de grafică
de la sistemele de azi.
Cum lucrează portul accelerat de grafică
AGP este o legătură punct la
punct, de echipament unic și
nu bus, deci dispozitivul
grafic nu este concurat de | JO bus
alte dispozitive. UC
„Setul de chipuri de bază
poate pune în coadă mai
multe cereri de acces la
memorie de la controler
fără a aștepta răspuns.
Memorie centrală
Chip set
Controler î
Cai
PIN 32 biţi, 66 MHz
(533 MBps)
program 3-D
cadru
texturi 3-D
buffer 4
Programele 3-D me-
Bufferul de morează texturi în-
cadru mai : : : tr-o zonă redimen-
conține Disp. PCI Disp.PCI Disp.PCI sionabilă a memoriei
anumite date be . . centrale și nu în
3-D, dar nu și AGP transferă datele în fie- “cadrul buffer.
texturi...“ “care fază de ceas dublând
banda efectivă de transfer.
AGP ocolește busul PCI. Astfel controlerul grafic
are un acces de patru ori mai rapid la memorie.
SEPTEMBRIE 1997 BYTE România
47
Administrarea datelor
PC scapă de gâtuiri
- Avantajele memoriei SDRAM
create,
PCI, pe care Intel a introdus-o în 1992
pentru a surmonta gâtuirea produsă de
magistrala ISA. PCI nu mai poate face faţă
traficului tot mai intens dintre UCP, con-
trolorul grafic şi memorie. Utilizatorii
rulează acum aplicaţii ce implică imagini de
înaltă rezoluţie şi în multe culori, imagini
video şi grafică 3D, toate acestea saturând
lăţimea de 133 MBps a magistralei PCI. Pe
de altă parte, controlorului grafic nu-i este
deloc de ajutor faptul că trebuie să împartă
această magistrala cu alte plăci PCI.
O soluţie ar fi lărgirea magistralei PCI
de la 32 la 64 de biţi. O altă soluţie ar fi
dublarea frecvenței de ceas a magistralei de
la 33,3 la 66,6 MHz. Fiecare din cele două
soluţii mai sus amintite este inevitabilă şi ar
dubla lățimea de bandă, dar ambele sunt
prea costisitoare pentru majoritatea
PC-urilor. Dublarea lăţimii magistralei PCI
este cea mai scumpă soluţie, deoarece ea
presupune mai mulţi pini la setul de
chip-uri, mai multe trasee pe placa de bază
şi o mai mare complexitatea plăcilor PCI.
Dublarea frecvenţei de ceas este o soluţie
mai economică şi ar restaura un oarecare
echilibru în sistemele cu UCP-uri foarte
rapide.
În ciuda acestor soluţii, Intel are oa treia
alternativă: AGP. Aceasta eliberează magis-
trala PCI de transferele grafice, care sunt
realizate printr-un conecţie dedicată între
controlorul grafic şi setul de chip-uri. AGP
nu este o magistrală, tocmai datorită faptu-
lui că este folosită doar de controlorul
grafic. Astfel controlorul va dispune singur
de un canal pe 32 de biti.
Dezavantajul acestei tehnologii este fap-
tul că AGP necesită o reproiectare completă
aarhitecturii Wintel PC; trebuiesc reproiec-
tate plăcile de bază, seturile de chip-uri, con-
troloarele şi plăcile grafice. Plăcile de bază
au nevoie de un slot AGP special, destinat
noilor plăci video, setul de chip-uri are
nevoie de un port I/O pe 32 de biţi menit să
susțină noul slot iar controlorul grafic tre-
buie să-și transforme protocolul PCI în pro-
tocol AGP. PC-urile actuale-chiar şi ultimele
48 BYTE România SEPTEMBRIE 1997
sisteme care dispun de extensia MMX-nu
acceptă upgrade-uri. Pe de altă parte, AGP
necesită suport la nivelul SO; suport care nu
va fi furnizat de Microsoft până la lansarea
următoarei versiuni de Windows (Mem-
phis), lansare care se pare că va întârzia până
în 1998.
Un avantaj este faptul că protocoalele
AGP sunt similare cu cele PCI, lucru ce
simplifică proiectarea noilor seturi de
chip-uri şi plăci video. Este corect să afir-
măm că suportul hardware va fi pregătit în
momentul în care îşi face intrarea platfor-
ma software. De exemplu, Intel va suporta
tehnologia AGP prin noul set de chip-uri
440LX, a cărui lansare este programată pen-
tru toamna acestui an. Din nefericire însă,
generaţia 440LX lucrează numai cu proce-
soarele cu socluri de tipul 8 (Pentium Pro)
sau slot-uri de tipul 1 (Pentium II). Intel
spune cd nu planuieste sa asigure suport pen-
tru aceasta tehnologie pe placile cu socluri
de tipul 7 (Pentium clasic)-nici macar pen-
tru cele mai noi Pentium-uri MMX. Din
fericire, alte companii (cum ar fi AMD si
VIA) vor suporta tehnologia AGP pe placile
de bază cu socluri de tipul 7 prin lansarea
în acest an a unui nou set de chip-uri.
Pe de altă parte, prezentarea tehnologiei
AGP de către compania Intel va duce la un
anume grad de diferenţiere între fabricanți.
Aşa numita tehnologie AGP de bază (AGP-
1x) dublează lăţimea de bandă la 266 MBps
(de la 133 MBps ai magistralei PCI) prin
dublarea frecvenţei de ceas a canalului de
date la 66,6 MHz. Această implementare
minimală va fi prezentă în primele seturi
de chip-uri AGP şi controloare video, cum
ar fi VIRGE/GX2 de la $3.
În 1998, controloarele grafice vor pre-
zenta implementări full AGP (sau AGP-2x).
Această versiune de AGP va mări de patru
ori lățimea de bandă, aducând-o la 533
MBps prin transferuri de 32 de biţi pe am-
bele fronturi ale unui semnal de ceas de 66,6
MHz-tehnică cunoscută sub numele de
dublă pompare (double pumping). În 1999,
AGP-4x va aduce lățimea de bandă în jurul
a 1GBps (de opt ori mai mult decat PCI) prin
mărirea frecvenţei de ceas la 133 MHz.
Perfectionand AGP-ul
Dar potentialul tehnologiei AGP merge mai
departe de ridicarea frecventelor de ceas si
de pomparea dublă. O altă opţiune poartă
numele de control separat (sideband sig-
naling), prin care semnalele de control se
transmit prin linii separate de canalul de
date. Acest lucru dă posibilitatea utilizării
întregului canal de 32 de biti pentru grafica-
o îmbunătăţire fata de PCI, care suprapunea
pe un canal de 32 de biti semnalele de con-
trol cu datele. Nu toate implementarile AGP
vor dispune de control separat, lucru care
va da posibilitatea fabricantilor de a-si difer-
entia produsele.
O altă opţiune a tehnologiei AGP este
accesarea memoriei în algoritm pipeline.
Acestalgoritm dă posibilitatea sistemului de
a prelucra mai multe cereri de acces la me-
morie de la controlorul grafic. PCI forțează
controlorul grafic să suspende cererile de
acces la memorie dacă există deja o cerere
de acces-o întârziere care măreşte şi mai
mult timpii de acces la memorie (şi aşa destul
de semnificativi). Algoritmul pipeline al
tehnologiei AGP minimizează aceşti timpi
de acces prin punerea cererilor de acces în-
tr-o structură de tip coadă. Adâncimea aces-
tei cozi va fi o altă caracteristică variabilă a
seturilor de chip-uri; de exemplu, o coadă
tipică ar putea avea în structură o duzină
de cereri de acces.
- Olatime de banda
graficd de 1, ori mai mare
PCI AGP
_ Bitipe transfer AD 32
Transferuri One Two
pe ciclu
Cicluri “383 666
pe secunde „million million
Latime 133-533
de banda MBps MBps
Abilitatea de a pune cererile de acces in-
tr-o structură de tip coadă este foarte impor-
tantă deoarece controlorul grafic AGP
poate stoca astfel mai multe date (cum ar fi
texturi 3D) în memoria principală şi nu în
memoria video. Acest lucru ar putea părea
oarecum ilogic, deoarece chip-urile spe-
cializate de memorie de pe plăcile grafice
sunt mult mai rapide decât chip-urile
DRAM obişnuite. Cu toate acestea, unele
texturi 3D foarte bogate în detalii ar putea
depăși capacitatea memoriei video, iar adău-
PC scapă de gâtuiri
Administrarea datelor
garea de memorie video este costisitoare.
Aşa că AGP dă posibilitatea controlorului
grafic de a stoca aceste texturi în memoria
sistem, ele fiind disponibile la viteze de
transfer AGP.
În momentul în care controlorul grafic
trebuie să returneze aceste date, el trimite
o cerere către setul de chip-uri. Pentru a
economisi timp, setul de chip-uri poate
cache-a adresele de memorie frecvent acce-
sate intr-un buffer TLB (Translation Look-
aside Buffer), care este similar buffer-elor
TLB din microprocesoare. Dacă setul de
chip-uri găseşte adresa de memorie cerută
în TLB, sare rapid la această adresă şi retur-
neaza datele-deci operaţia necesită doar un
singur acces la memorie.
Dacă setul de chip-uri nu găseşte adresa
cerută în TLB, se adresează altei resurse,
numite GATT (Graphics Address Reloca-
tion Table-tabela de translatare a adreselor
grafice) sau GART (Grafics Address Relo-
cation Table-tabela de re-alocare a adreselor
grafice). Spre deosebire de TLB, GART este
localizată în memoria sistem şi nu în setul
de chip-uri. Deci va exista un acces la mem-
orie pentru a se obţine adresa din GART şi
încă un acces pentru a se obţine datele. Evi-
dent, seturile de chip-uri care dispun de
TLB-uri mai mari sunt mai performante,
deoarece datorită lor cererile de acces vor
avea ca subiect mai mult buffer-ele (cache-
urile) şi mai puţin memoria.
Desigur, stocarea datelor grafice în me-
moria sistem va duce la reducerea memoriei
RAM disponibilă pentru programe. Dar
memoria RAM este relativ ieftină, iar AGP
stochează datele în blocuri mici (4KB) şi nea-
diacente, alocate la rulare. Un singur obiect
grafic, cum ar fi o textură 3D serioasă, ar
putea ocupa mai multe alstfel de blocuri de
memorie.
Rămâne să vedem ce cantitate de date
grafice stochează de fapt controlorul grafic
AGP în memoria sistem. De altfel, până şi
chip-urile specializate de memorie de pe plă-
cile video se ieftinesc. De asemenea, con-
troloarele grafice prezintă interfeţe I/O tot
mai largi pentru bufferele lor dedicate. Pe
măsură ce aceste interfeţe cresc de la 64 la
128 şi 256 de pini, controlorul trebuie să-şi
Intel Socket 8 și SEC Slot 1
cache
Bus I/O
(de 64 biti)
Renin
Disp. PCI Disp.PCI Drisp.PCI
Doua magistrale mai bune decat una
Pilea
Socket 7
L2 Pes Chip set}
cache PEt ait
Memorie
centrala
Socket 8 si Slot 1 au doua busuri independente de 64 de biti
marind banda de transfer cu cache fata de Socket 7.
mărească dimensiunea pentru face loc
noilor pini. Probabil, circuitele logice ale
controlorului nu vor avea nevoie de tot
spaţiul creat prin mărirea dimensiunii
chip-ului, aşa că în acest spaţiu s-ar putea
plasa circuite de memorie locală destinată
cache-rii texturilor. Cu toate acestea, abili-
tatea AGP de a stoca date grafice în memo-
ria RAM este o opţiune deosebit de folosi-
toare.
De asemenea, AGP poate prelungi viața
magistralei PCI. Prin redirecţionarea graficii
spre un canal dedicat, AGP eliberează ban-
da PCI de cea mai mare bătaie de cap. Dl.
Bolaria de la Intel este de părere că apli-
caţia care solicită cel mai mult lățimea de
bandă este captura video-necesită între 40
şi 50 MBps. Aceasta reprezintă mai mult
de o treime din lățimea de bandă disponi-
bilă. În momentul în care această încărcă-
tură este preluată de AGP, alte operaţii de
pe PCI dispun de mai multă capacitate.
INFORMATII DESPRE PRODUS
AMD 972-968-8388
Sunnyvale, CA http://www.cyrix.com/
408-732-2400 intel
mie! as Santa Clara, CA
AGP Implementors 408-765-8080
Forum http://www.intel.com/
http://agpforum.org/ Ranibus
Cyrix Mountain View, CA
Richardson, TX 415-903-3800
www.agora.ro/byte/
http://www.rambus Tyan Computer
-com/ Milpitas, CA
sa 408-956-8000
Santa Clara, CA http://www.tyan.com/
108 sas BOD VIA Technologies
http://www.s3.com/ Fremont, CA
510-683-3300
SLDRAM Consortium :
http://www.scizzi.com/ http://www.via.com.tw/
P1596.7/
Slot-uri sau socluri?
Orientarea companiei Intel spre o interfaţă
UCP proprietară este o schimbare majoră
care va afecta lumea Wintel PC în urmă-
toarele 18 luni. Procesoarele Pentium II şi
viitoarele procesoare Intel x86 vor aban-
dona soclurile de tipul 7 în favoarea
slot-urilor de tipul 1 si configuratiilor SEC.
(Pentium-ul Pro are socluri de tipul 8, dez-
voltate tot de Intel.) Procesoarele Pentium
clasice de la Intel ca şi toate celelalte proce-
soare compatibile x86 folosesc încă soclurile
de tipul 7, dar Intel plănuieşte să le scoată
de pe scenă cât mai repede posibil.
Producătorii de plăci de bază pot cum-
păra licenţele soclului de tipul 8 şi slot-ului
detipul 1 de la Intel; fabricantii de UCP-uri
nu pot face însă acest lucru. Şansa realizării
unor interfeţe similare (compatibile) fără ca
acest lucru să ducă la acţiuni în justiţie din
partea companiei Intel e aproape nulă, iar
inginerii din domeniu sunt de părere că nu
e deloc practic să pui pe aceeaşi placă de bază
ambele interfeţe. De aceea, fabricantii de
plăci de bază trebuie să aleagă între Intel ca
unic furnizor de UCP-uri şi rivalii acestei
companii: AMD, Cyrix şi Centaur.
De fapt, fabricanţii nu prea au de ales. Cu
Intel controlând aproximativ 90% din piaţa
UCP-urilor, puţine companii îşi vor permite
să parieze totul pe concurenții companiei
Intel. Apoi, sloturile de tipul 1 şi soclurile
detipul 8 auşi un avantaj tehnic: pot adresa
SEPTEMBRIE 1997 BYTE România 49
Administrarea datelor
o memorie cache L2 printr-o magistrală pri-
vată, mult mai rapidă decât magistralele 1/O
obişnuite ale UCP. Soclurile de tipul 7 nu
dispun de o magistrală cache privată.
AMD şi Cyrix minimizează această dife-
rență, dar pe măsură ce frecvențele
UCP-urilor cresc, avantajul unui tranfer mai
rapid între UCP şi memoria cache L2 va
deveni tot mai clar. O alternativă ar fi com-
pensarea acestui handicap prin mărirea
memoriei cache L1, dar acest lucru ar duce
la creşterea dimensiunilor chip-ului şi cos-
turilor de producţie. O altă alternativă pen-
tru concurenţii companiei Intel ar fi ca
aceştia să proiecteze o nouă generaţie de
interfeţe UCP. Chiar dacă acești rivali
reuşesc să treacă peste disputele de ordin
politic dintre ei şi purced la elaborarea aces-
tei noi generaţii de interfeţe, ei vor trebui
să găsească sprijin în rândul fabricanţilor de
plăci de bază şi componente.
O soluţie de compromis ar fi imple-
mentarea unei plăci de exensie care să încor-
poreze memorie cache L2 adițională (in-line
12). În această configuraţie, placa de exten-
sie care va conține UCP-ul, memoria cache
L2 şi controlorul cache se va conecta la pla-
ca de bază prin soclul de tipul 7. Vor exista
PC scapă de gâtuiri
oscilatoare exterioare menite să sincro-
nizeze, la frecvență mai mare, magistra UCP
cu memoria L2 oferind sincronizare cu
placa de bază la vieză normală. Apple şi câţi-
va dintre producătorii de sisteme compati-
bile Mac se orientează deja spre această
soluţie pentru a surmonta viteza scăzută a
magistralei sistem a Mac-urilor. Ultimul sis-
tem compatibil Mac de la Umax dispune
de un procesor PowerPC 603e la 300 MHz,
memorie cache L2 adițională la 80 MHz
pe o placă de bază ce rulează la 40 MHz.
Wintel PC este capabil de chiar mai mult,
aducând placa de bază la frecvența de 83 sau
100 MHz şi dispunând de cache adiţional
care rulează la jumătate din frecvența miezu-
lui UCP-ului.
Toate aceste probleme și variante nu vor
căpăta importanţă până în 1999. Cel puţin
până anul viitor, plăcile de bază cu socluri
de tipul 7 vor continua să domine piaţa, iar
procesoarele din aceste socluri vor fi com-
petitive.
Mareea
Schimbările importante vin în valuri iar
Wintel PC se confruntă cu o adevărată
maree. Apar chiar și alte inovaţii: plăci de
bază NLX (cu format de 1mm, cu conector
pe muchie, cu 340 pini), slot-uri de exten-
sie pentru sertare şi mult aşteptata dispari-
ţie a magistralei ISA, ca să numim doar câte-
va. Dar aceste schimbări sunt mai mult de
dragul confortului.
Tehnologiie care au fost prezentate în
acest articol-magistrale UCP mai rapide,
magistrale PCI mai rapide şi mai largi, me-
morii mai rapide, AGP și noi interfețe UCP-
vor îmbunătăți substanţial performanţele
sistemelor, venind în întâmpinarea micro-
procesoarelor super-rapide. Aceste tehno-
logii, deşi apar cu o foarte mare întârziere,
vor restaura un oarecare echilibru în
actualele arhitecturi PC.
Tom R. Halfbill este un vechi redactor BYTE
domiciliat în San Mateo, California. Puteţi să-l
contactaţi la thalthillQbix.com.
[din BYTE, o publicaţie McGraw-Hill, Inc.
Adaptare - Marius Tudorică]
TOTALSOFT
NOTEBOOK
DUAL - an in one - AT 6000
PERIFERICE
Interfaţă pe port paralel
Viteze: 8x, 10x, 12x
Dimensiuni: 155x275x55 mm
Greutate: 1 kg
Interfaţă pe port paralel sau SCSI
Viteză la scriere 2x :
Viteză la citire 4x
Dimensiuni: 155x325x55 mm
Greutate: 1.7 kg
Interfaţă pe port paralel
Capacitati: 1.7, 2.0 GB
Timp de acces: 11 ms
Dimensiuni: 135x210x40 mm
Greutate: 1.8 kg
Procesor Intel 166, 200 MHz cu MMX, 16 MB RAM exp. la 128 MB
Display 12.1" TFT SVGA LCD, 2 MB VRAM 800x600x64 K culori
HDD 1.3, 1.6, 2.0 GB , Built-in Multimedia System
Autonomie 3h cu baterie Li-lON, Adaptor AC 220 V
Sloturi PCMCIA 1 x tip II, 2 xtip Il, Greutate fără baterii 3.3 kg
FREE MIND ADVERTISING
Calea Dorobanţilor 103-105, sector 1, București Tel/fax: 2302374 2300976 2301020/133 E-mail: totsoft@mb.roknet.ro
50 BYTE Romania SEPTEMBRIE 1997
ILUSTRATIA: BARTON STABLER © 1997
_ Publicati, sau pieriti
Soluţiile pentru reţele suprasolicitate şi softul care nu se conformează regulilor
constituie doar o parte din POS.
De Richard Hackathorn
mare firma de brokeri de actiuni, de pe Wall Street, are
dificultăţi în oferirea datelor adecvate pentru benefi-
ciari. Ea implementează un sistem de comerţ prin publi-
care şi abonamente P&S (publish&subscibe) pentru
distribuirea ştirilor de interes general şi a cotaţilor de la bursă. Un
furnizor de soft de mare succes, care oferă unelte CAD are o mare
problemă cu asistenţa pentru beneficiari. Firma concepe un sistem
P&S de urmărire fluxului zil-
nic de mii de cereri din partea
beneficiarilor. Un producător
mondial de echipamente pen-
tru foraj are o situaţie încur-
cată la urmărirea materialelor
şi produselor finite existente
în magazii. El instalează un sis-
tem P&S de urmărire a mate-
rialelor care urmăreşte pro-
ductia, pas cu pas.
Remarcati modelul? Toate
aceste situatii implica procese
complexe de afaceri, care au
obiective în permanentă
schimbare. Pare asemănător
cu afacerea dumneavoastră?
Dacă da, P&S va poate rezol-
va problemele.
Fara cerere -
raspuns
De 30 de ani, modelul de bază
la calculatoare a fost bazat pe
cerere - răspuns (request&re-
ply (R&R)). O aplicaţie cere
date sau servicii specifice şi un
subprogram oferă răspunsul.
Dar modelul R&R este în
curs de epuizare. În lumea di-
namică şi în permanentă
schimbare a sistemelor de în-
treprindere, de azi, o aplicaţie
nu mai are luxul de a şti când şi ce să ceară.
P&S coordonează componentele unei aplicaţii distribuite. Con-
ceptul s-a născut acum sute de ani, cu publicarea ziarelor. Recent,
s-a aplicat la o mulțime de produse care coordonează aplicaţii com-
plexe distribuite sau fac replicarea unui conţinut de informaţii di-
verse. P&S este o paradigmă de conectare care separă rolul pro-
ducătorului de cel al consumatorului printr-un intermediar numit
broker (vedeți figura R&R față de P&S). Brokerul administrează
interacțiunile în aşa fel încât nici producătorul, nici consumatorul
nu trebuie să ştie unul de celălalt. Arhitectura este decuplată sau
cuplată vag.
www.agora.ro/byte/
Cu P&S o relaţie este menţinută prin broker, pentru cuplarea
producătorilor şi consumatorilor, spre deosebire de interacțiunea
pe moment din R&R. Această relație este numită canal (sau abona-
ment, subiect sau buffer). Prin inversarea ordonării din R&R, pro-
ducătorul inițiază interacţiunea, prin publicarea unui mesaj la bro-
ker.
Modul tradițional de legătură între producătorii şi consumatorii
de date este realizarea unui
sistem, astfel ca aceste legături
să fie statice, prestabilite în le-
gături dintre module şi ape-
luri de proceduri. Pe măsură
ce ne deplasăm spre medii din
ce în ce mai dinamice şi mai
complexe, nu mai beneficiem
de luxul de a prestabili aceste
legături. Producătorii şi con-
sumatorii apar şi dispar frec-
vent. Avem nevoie de un me-
canism eficient de împereche-
re a producătorilor cu consu-
matorii şi care să fie dinamic.
Adăugarea de flexibilitate şi
adaptabilitate la arhitecturi de
sistem este rolul îndeplinit de
PSES:
Trei probleme de
afaceri
Deoarece domeniul P&S apa-
re din mai multe tehnologii
complexe, este foarte deru-
tant. Terminologia este ne-
standard şi fiecare utilizează
termenii de mesaj, canal şi e-
veniment cu sensuri care
diferă subtil.
Pentru a înţelege mai bine
tehnologia şi terminologia,
trebuie să înţelegeți prob-
lemele de afaceri pe care doreşte să le rezolve P&S: coordonarea
proceselor, replicarea conţinutului şi informarea oamenilor (vedeţi
şi tabela: P&S rezolvă probleme de afaceri).
Coordonarea proceselor. În mod tipic, acest lucru semnifică ur-
mărirea activităţii afacerii. Penetrând profund, P&S a devenit o
alternativă pentru metodologiile tradiționale de dezvoltare de apli-
caţii, un mod diferit de gândire relativ la arhitectura sistem. În loc
de serviciu la o bază de date centralizată, P&S este folosit ca şi coor-
donator pe bază de evenimente a aplicaţiilor, prin distribuirea de
mesaje. Focalizare se face pe schimbările semnificative care au loc
în procesul de afaceri, ca de exemplu comandarea unui produs, de
SEPTEMBRIE 1997 BYTE Romania 51
Administrarea datelor
Publicati, sau pieriti
către un beneficiar. O dată mesajul trans-
mis de la producător la consumator, este
tratat ca fiind nepersistent (adică distrus).
Replicarea conţinutului. Există undeva
un magazin de date persistente, ca o bază de
date relaţională sau un sit Web. Fluxul de
informaţii este strâns legat de o anumită
parte a acelui magazin persistent şi reprez-
intă schimbările care au loc în el.
Informarea oamenilor. Aceasta este esen-
ţa publicării ziarelor, dar P&S mută această
activitate către un scop global şi context
adaptabil.
Aceste trei domenii sunt similare în multe
privinţe. Facem distincţie între „împingere
de conținut (content push) şi împingere de
proces (process push)“, afirmă Mike
Kennedy de la Meta Group.
Coordonarea proceselor presupune frec-
vent ca o bază de date să facă parte din sis-
tem. Onorarea unei comenzi de la benefi-
ciar presupune existenţa unei baze de date
cu beneficiari şi inventar. Replicarea conţi-
nutului este activată de evenimentele care
modifică baza de date. Baza de date cu in-
ventarul se modifică deoarece sunt onorate
comenzile beneficiarilor. Şi informarea oa-
menilor presupune o bază comună de
cunoştinţe şi o lume în schimbare continuă.
Coordonarea proceselor necesită de obi-
cei o structură de mesaje de tipuri stricte şi
poate să fie sau să nu fie asociată strâns bazei
de date. Replicarea conţinutului presupune
de obicei legături puternice la ceva bază de
date. Poate să difere puternic prin gradul
structurii mesajului (de la declaraţii SQL
INSERT la pagini Web reimprospatate). In
fine, informarea oamenilor are de obicei o
structurare mai slabă a mesajelor, care pot
sau nu să aibă nevoie de o bază de date co-
mună, pentru înțelegerea mesajelor.
Arhitectura care apare
P&S este un mecanism de coordonare care
împerechează şi leagă producătorii şi con-
sumatorii cu medierea asigurată de un bro-
ker. Producătorii mai sunt uneori numiţi fur-
nizori sau editori şi consumatorii sunt
abonaţii.
„Rolul îndeplinit de broker este critic la
P&S“ afirmă Mitch Kramer de la Patricia
Seybold Group. „EI decuplează producă-
torii de la consumatori astfel ca să nu tre-
buie să ştie unii de alții.“
Brokerul stabileşte un canal pentru admi-
nistrarea unui flux de mesaje similare. Ca-
nalele uşurează sarcina producătorilor şi
consumatorilor de a păstra fluenta ( vedeţi
figura: Abonament gratuit). Brokerul men-
ţine un canal atât timp cât publică producă-
torul sau cât durează abonamentul. Acesta
poate dura de la câteva secunde, la câțiva ani.
Prin decuplarea relaţiei producător - con-
52 BYTE România SEPTEMBRIE 1997
sumator, securitatea ambelor părți poate fi
îmbunătăţită, permiţând ca oricare parte
să-şi păstreze anonimatul. Producătorii pot
de asemenea să-şi partajeze abonaţii sau
transfera abonamentul, pentru a echilibra
încărcarea sau pentru specializare pe anu-
mite domenii. În plus, mecanismul P&S ar
putea forma lanţuri pe nivele multiple, de
valori adăugate, în care un consumator poa-
te adăuga valoare la date şi publica din nou
rezultatul pentru un alt grup de consuma-
tori.
Un mesaj se compune de obicei dintr-un
antet, format din date structurate în mod
£ A :
iConsumator Producăto!
Crs
l
(Consumator
| age
a
tt ee te
=
comun pentru toate tipurile de mesaje, şi un
corp de mesaj format din date variabile spe-
cifice unui anumit tip de mesaj. Corpul
poate conţine text fără format, pagini
HTML, perechi de valori pentru atribute şi
altele asemenea.
În fine, o piaţă se formează atunci când a-
pare un nivel ridicat de activitate între un
grup de producători şi consumatori pe unul
sau mai multe canale. Ca şi la dinamica piețe-
lor normale, dinamica pieţelor din sistemele
P&S este un indicator major pentru directii-
le de evoluție urmate de aceste sisteme.
interacțiuni de bază
lată cum lucrează (vedeţi figura: Arhitectura
-P&S). Un producător se înregistrează la
broker pentru un anumit canal. Această
acţiune poate determina brokerul să creeze
canalul şi să stabilească ce caracteristici va
avea. Consumatorii se interesează privitor
la canalele disponibile. Dacă găseşte un
canal dorit, consumatorul se abonează. Mai
târziu, producătorul publică un mesaj la un
canal. Brokerul va livra mesajul la setul
a
corespunzator de consumatori abonati la
acel canal.
In anumite situatii, este de dorit o inter-
actiune directa intre perechea producator
- consumator. O asemenea legatura direc-
tă este cerută pentru date deosebit de vola-
tile sau voluminoase, legate de aplicaţii care
necesită semantică eficientă pentru volume
mari de tranzacţii.
Un aspect final al ineractiunilor de mai
sus este schimbul monetar posibil între pro-
ducători, consumatori şi broker. Pe măsură
ce sistemele vitale se extind peste limitele
companiei, trebuie stabilit un sistem expli-
cit stimulativ financiar pentru asigurarea
funcţionării stabile. Cu toate că asistăm la
cresterea rapidă în anumite domenii a co-
‘mertului electronic, nu au apărut încă
exemple de schimburi monetare cu P&S
P&S practic
Sunt mai multe aspecte cheie care trebuie
rezolvate in orice aplicatie practica P&S.
Cum definiti canalele? Stabiliti nivele de
servicii? Drepturi?
Canale si spatii de nume. Primul aspect
este definirea canalelor, in special spatiul
de nume. Un canal reprezinta un flux im-
portant de evenimente de afacere sau
resurse de informatii. Definirea canalelor
dumneavoastră implică definirea proce-
selor proprii de afaceri. La fel şi numele (ad-
resarea) dat canalelor implică modul în care
aplicaţiile P&S vor asigura suportul pentru
procesele afacerii dumneavoastră. Majori-
tatea argumentează că denumirile ar trebui
date prin consens, astfel ca să existe o res-
ponsabilitate partajată între producători şi
broker, în mod similar cu numele de dome-
nii de pe Internet.
Antetul de mesaj conţine de obicei un
câmp structurat pentru subiect (sau numele
tipului de obiect). Dacă numele dat mesa-
jelor utilizează acest câmp pentru subiect,
mecanismul P&S este bazat pe subiect. Prin
contrast, dacă numele dat depinde de con-
ţinutul corpului mesajului, mecanismul este
bazat pe conţinut. Lucrul bazat pe subiect
este mai eficient în timp ce lucrul bazat pe
conţinut este mai flexibil la specificaţiile
consumatorului privitoare la ce mesaje să
fie procesate. Denumirile bazate pe conți-
nut pot de asemenea implica ca să avem
pentru corpul mesajului un anumit format
auto-definit, astfel ca broker-ul să poată fil-
tra pe bază de operatori de definire de
echivalente şi nu numai pe bază de potriviri
simple de şiruri.
Q0S. Al doilea aspect este nivelul (sau
calitatea) serviciului, care depinde da obi-
cei de fiabilitatea transmiterii mesajului.
Nivelele tipice de servicii sunt de efort
optim (best effort), fiabil, garantat şi cel
Publicati, sau pieriti
Administrarea datelor
tranzactional. Efortul optim presupune ca
broker-ul utilizeaza transport eficient (dar
fara corectie de erori), ca UDP. Fiabil pre-
supune că avem transport mai puţin eficient
(dar cu corecţia erorilor), ca TCP. Garantat,
presupune că broker are cozi de mesaje pe
medii de stocare permanentă, și unde păs-
trează mesajul, până ce se asigură că a avut
loc recepţia mesajului de către consumator.
În fine, tranzacţional, presupune că bro-
ker asigură administrarea unei tranzacţii
între producători şi consumatori, astfel ca
orice acțiune din partea oricui suferă o
comitere sau este abandonată la unison.
Printre diferitele produse, scopul propus la
limitele tranzacţiei este derutant şi depinde
de perspectiva care este din punctul de ve-
dere al consumatorului sau producătoru-
lui.
Tragerea (pull) faţă de împingere(push).
Subiectul protocoalelor push a câştigat ma-
re vizibilitate recent, ca alternativa prefera-
tă. Problema apare atunci când broker-ul
trimite un mesaj la consumatori care s-au
abonat la acel mesaj. Dacă numărul acesto-
ra este mic, fiecare îşi poate trage mesajul
de la broker prin interogare (poll) periodi-
că, sau brokerul; poate trimite mesajul de
mai multe ori, o dată pentru fiecare con-
sumator. Pe măsură ca numărul consuma-
torilor ajunge de ordinul milioanelor, am-
bele abordări alterează rapid performanţele
reţelei. Altfel spus, abordările pull şi cele
push simple nu sunt scalabile. Mark Bowles
de la TIBCO remarcă: „scalabilitatea este
rea la soluţiile punct la punct“.
Esenţa împingerii veritabile la P&S are
două aspecte. Primul, consumatorul îşi re-
cepţionează asincron mesajul. Apare o
întrerupere pe un anumit nivel, pentru a co-
muta atenția consumatorului la noul mesaj.
Nu există de la consumator polling în fun-
dal. Al doilea aspect este că mesajul este de
tip multicast, de la broker la multi con-
sumatori. Brokerul initiaza transferul care
este distribuit eficient la consumatorii adec-
vati. Eficienta implica asistenta hardware,
înglobată în routere de reţea şi limitează ast-
Broker
PE ee ee cee een peer
Producator
fel retelele la echipamente omogene.
Miezul dezbaterii privind un multicasting
eficient este IP multicasting pentru TCP/IP
(vedeți şi ,, Multicast pentru mase“, BYTE
iunie 1997).
Drepturi. Al patrulea aspect consta din
specificarea şi administrarea drepturilor
pentru producători şi consumatori. Ca şi la
un sistem de baze de date, este necesar să
avem un mediu sigur sn care are loc auten-
tificarea tuturor participanţilor, cărora li se
atribuie un set de drepturi care le limitează
acțiunile
Configuraţia. Aspectul ultim este confi-
gurația arhitecturii P&S. Furnizorii își pre-
zintă implementările tipice ca fiind magis-
trală (bus), centrală (hub şi spoke) si fulg
(snowflake). (vedeti si figura Cantecul
plaiului).
Participanti cheie
P&S isi face aparitia din multe categorii de
produse diverse (vedeti figura: Unde se
potrivesc). Este o estompare rapida a limi-
telor dintre categorii, cauzată de presiunea
pieţei. O dată cu maturizarea P&S aceste
categorizări vor fi utile doar pentru scopuri
istorice.
Mesagerie. Transportul cu mesaje (numit
şi middleware orientat pe mesaje, sau
MOM) începe de la protocoale simple pen-
Consumator|
„tru trimiterea unui pachet de mesaje de la
punctul A la B într-un mod fiabil şi eficient.
Mecanismul inerent de stocare - retrans-
mitere al transportului de mesaje a fost ex-
tins în numeroase feluri, unul dintre aces-
tea fiind P&S. Ca o dezvoltare a transferu-
lui unui mesaj din punctul A în multe puncte
B, a apărut ideea de tampoane (buffer) par-
tajate şi abonaţi.
Există produse ca TIB/Rendezvous de la
TIBCO, Velociti de la Vitria, Smart Sockets
de la Talarian, NEONet de la New Era for
Networks si Active Web de la Active Soft-
ware.
Din 1986 TIBCO (fosta Teknekron,
componentă acum din Reuters) a înființat
o bază de date de clienţi în sistemul de piață
(trading) pentru WallStreet cu un middle-
ware TIB (The Information Bus). Folosind
un sistem de nume bazat pe subiect,
TIB/Rendezvous transmite pachete multi-
cast astfel ca recepţia să se poată face doar
de către destinațiile selectate, de obicei prin
IP-multicast asistat de hardware.
Velociti de la Vitria este un nou sosit care
ţinteşte în mod direct TIBCO. Produsul ex-
tinde suportul de protocol dincolo de IP-
multicast prin oferirea de suport IIOP COR-
BA (Common Object Request Architecture).
„Aspectele principale sunt definirea schemei
de canale și evenimente împreună cu speci-
== PREV TIERS
A
„Nivelde securitate
Leni
cnc on
[oo ee Me na afacere ae a „...nizare de magazii de date persistente - sautemă comună
„ Producători Aplicaţii care detectează și - Administrator de jurnal pentru | Furnizor de Sees
ee |... captează evenimente de afaceri „bază de date actualizată a
“Abonaţi „ Aplicaţii care trebuie să reacționeze Agent de replicare pentru copiile e Aia ba
„n laevenimentele de afacere bazei de date pe bază de cunoaștere,
Nivel de fiabilitate Redus sauridicat „Ridicat (tranzacţii) „Redus.
ce într-un mediu in intranet ; Scăzut racer ;
Declaraţii de modificare pentru sincro-
3 imtamnreoamenl,. d vaio ai |
_ Elemente de informaţicu subiect. a : :
Dela eee la ridicat
www.agora.ro/byte/
SEPTEMBRIE 1997 BYTE România 53
Administrarea datelor
Publicati, sau pieriti
ficarea nivelului solicitat de calitate a servi-
ciului“, spune Dale Stoken, unul din fonda-
tori şi şeful pentru tehnologie.
SmartSockets de la Talarian, un veteran
al industriei activ din 1989, pune accentul
pe posibilitatea de a oferi toleranță la erori
şi scalabilitate nelimitată, în medii tradiţi-
onale mainframe şi Unix, dar si NT. Tom
Laffey, unul din fondatori şi acum CFO la
Talarian, afirmă: „Pentru echilibrarea în-
cărcării, SmartSockets poate împinge
mesaje la abonaţii care sun cel mai puţin o-
cupati*.
NEONet are un broker de mesaje con-
trolat de un motor activat de reguli care
transformă fluxul de mesaje. Consumatorii
creează abonamente bazate pe conţinutul
mesajului şi nu pe un sistem de nume pre-
definit sau categorizare de către editor.
La limitele sistemelor de mesaje se află
ActiveWeb, care adoptă o puternică savoare
Web prin uneltele bazate pe Java. Rafael Bra-
cho de la Active Software afirmă că „Active
Web se concentrază asupra atacării proble-
mei eterogenităţii prin integrarea unor sis-
teme vechi şi a unor resurse de informaţii
cuplate vag“. Configuraţia este de centrală
cu spite (hub and spoke), spiţele fiind o varie-
tate de adaptoare în resursele de informaţii.
Aşa cum remarcă Evan Bauer de la Giga,
„cea mai frecventă implementare de P&S
prin sistem de mesaje este o variantă casnică
şi care utilizează IBM MQ“. O alternativă
răspândită pentru mulți beneficiari pri-
cepuţi este de a lua un produs matur de
mesaje şi de a-i adăuga funcţionalitate P&S
prin aplicaţia proprie. IBM este conștient
de situaţie și măreşte numărul serviciilor
P&S din MQ.
" Obiecte distribuite. Conceptul de broker
a dobândit atenţia industriei prin specifi-
catiile OMG (Object Management Group)
pentru CORBA, care se bazeaza pe apelul
de procedură la distanţă (RPC) clasic. OMG
a extins CORBA astfel încât să includă un
set mare de servicii de obiecte, două din care
sunt semnificative și pentru P&S: Object
Event Notification Service (evenimente
push/pull la/de la canale) şi Object Naming
Service (asociază nume de gen IDL (Inter-
face Definition Language) la un context,
similar cu arborele de directori din Unix).
OMG are în vedre mai multe propuneri de
realizare a acestor servicii pentru suport
complet P&S.
Exemplele de ORB (Object Reques Bro-
ker) includ Orbix de la Iona Tehnologies,
Entera de la Borland open Environement și
DataBroker de la I-Kinetics. Mulţi au extins
Object Event Notification Service din
CORBA pentru suport P&S, ca de exemplu
Ambrosia de la Open Horizon.
Nicholas Zaldastani, CEO la Open
54 BYTE Romania SEPTEMBRIE 1997
|
|
|
|
|
|
na CT
Intr-un proces în șase pași, consumatorul poate afla
ce oferă producătorul și începe recepţia.
Horizon, accentuează că „ atenţia este
îndreptată la tratarea evenimentelor sem-
nificative care vă afectează afacerile. Pro-
iectanţii trebuie să înveţe să exploateze
infrastructuri activate de către evenimente
şi să conceapă adecvat spaţiul de nume pen-
tru routarea evenimentelor“.
Un alt concurent la obiectele distribuite
este DCOM (Disributed Component Object
Model) de la Microsoft care este funda-
mentul tehnologiei ActiveX. În prezent nu
există semne că ActiveX ar adopta abordarea
P&S, cu toate că există produse apropiate
ca Microsoft MSMQ (fost Falcon), SQL
Server Replication si Webcasting bazat pe
CDF (prezentat mai jos).
Monitoare pentru tranzacţii. Monitoarele
de tranzacţii au evoluat de la baze de date si
sisteme mari de prelucrare tranzacții, ca
IMS şi seriile CICS (Customer Information
Control System) de la IBM. Atenţia este
acordată tranzacţiilor distribuite între sedii
multiple pe bază de protocoale de comitere
în două faze (2PC).
Tuxedo, oferit acum de BEA Systems,
este exemplul clasic pentru această cate-
gorie. Într-un mod similar cu serviciile pen-
tru obiecte CORBA, managementul eveni-
mentelor la Tuxedo a fost extins. „2PC este
integrat în P&S şi oferă coordonare între
resurse variate“, afirmă Ed Felt de la BEA...
Furnizorul poate trimite un mesaj la bro-
ker, care acționează ca solicitare de consens.
Tacă toţi abonaţii sunt de acord, furnizorul
poate comite tranzacţia“. În plus, BEA s-a
aliat cu Digital Equipment pentru a înglo-
ba MessageQ, ObjectBroker şi SAP/R3
Wrapper în linia de produse proprii.
Aplication Integration Server de la Inter-
mezzo Systems dispune de un broker de me-
saje activat de un monitor de procesare de
tranzacţii care coordonează mai multe apli-
caţii pentru realizarea activităţii de afaceri.
Grupuri de știri. Era să uităm că vechiul şi
bunul e-mail are elemente P&S de mult
timp. Prin liste de abonaţi de grup, un pro-
ducător (emițător) poate trimite mesaj mul-
ticast la mai mulți consumatori (receptori),
care primesc mesajul în mod asincron. Să
mai adăugăm conceptul de BBS, şi avem
grupuri de ştiri Internet, care sunt bune
merci în agitația Web. Crearea grupurilor
de ştiri și mesajele moderate sunt concepte
importante preluate de către P&S.
Flux de activitate (workflow). Sistemele
workflow (sau groupware) urmăresc un
element pe drumul parcurs prin unităţile
funcţionale ale unei organizaţii. Printr-o
anumită combinaţie dintre o bază de date
centralizată de control şi mesaje e-mail
structurate, responsabilitatea pentru un ele-
ment în lucru trece de la o persoană la alta.
Există acum o convergență puternică între
sistemele workflow tradiţionale şi cele de
mesaje şi obiecte distribuite, rezolvându-se
astfel problema implementării sistemelor
workflow foarte mari, într-un mod adapta-
bil şi incremental.
Ca un pionier P7S, Apple a proiectat IAC
(Interapplication Communication) in jurul
„unei variante P&S pentru administrarea do-
cumentelor. Un producător partajează o
secțiune de document (de exemplu, calcul
tabelar). Un abonat obţine acest conținut
pentru un alt document. Edition Manager
administrează secțiunea partajată, în cadrul
unui container de editare. În acest mod uti-
lizatorii pot schimba un document şi schim-
bările se propagă la documentele abona-
tilor.
Un alt produs este NewsStand de la
Lotus. El extinde Notes pe Web prin publi-
Publicati, sau pieriti
Administrarea datelor
carea de forme Notes si administrarea secu-
ritatii si aprobarilor pentru abonati. Mai
multe publicatii, ca Banking Report de la
BNS, utilizează NewsStand pentru dis-
tributie electronica.
Webcasting. Categoria de emisie pe Web
a fost împinsă recent în centrul atentiei. Web-
casting (sau publicare pe Web) utilizează teh-
nologie Web pentru a transmite informaţii
recurente prin protocol push. Produsele
sunt: PointCast, Castanet de la Marimba,
Back Web, I-Fusion şi DataManager.
DataManager de la Data Channel adop-
tă tehnologia TIBCO şi pune accent pe posi-
bilitatea de realizare de multicast eficient
pentru pachete TCP, ceea ce permite scala-
bilitate în medii mai intranet. David Pool,
preşedintele Data Channel spune: „dar ceea
ce este o arhitectură foarte elegantă este
modalitatea în care TIBCO trimite pachetul
şi toată lumea ascultă conţinutul. Este foarte
mic şi economic“.
Recunoscând importanţa standardizării
pentru Webcasting, Microsoft înaintat o
propunere la WWW Consortium (W3C)
pentru tehnologia proprie CDF (Channel
Definition Format) care utilizează XML (
Extensible Markup Language). Propunerea
separă Webcasting pe trei nivele: de bază,
administrat şi adevărat. Nivelul de bază este
o parcurgere (crawling) simplă, periodică
a siturilor Web de interes. Webcasting ad-
ministrat şi adevărat utilizează un fişier
CDF, astfel că un consumator are o hartă a
sitului, așa cum a fost definită de furnizorul
de conţinut. Aşa cum se afirmă în broşura
Microsoft CDF, CDF permite unui autor
să optimizeze, să dea tentă personală şi să
controleze deplin modul în care site-ul este
emis (Webcast). Pentru a emie un sit, furni-
zorul de conţinut va crea un fişier CDF în
Unde se potrivesc
A
Ridicat Monitore a
Mesagerie de tranzactii
Obiecte Replicare de
distribuite baze de date Yrograme
ca și
Distribuţie consumatori
soft
Structura Magazii d
mesajului & Flux de lucru de date
Webcasting
rsoane
Comert si
electronic iconsumatori
Scăzu +AGrupe de știri =
Seazut Ridicat
Legaturi la baze de date
Softul P&S se prezinta prin modul in care sunt structurate
mesajele si cat de stransa este integrarea cu bazele de date.
rădăcina directorului Web, pentru a stabili
un parcurs pe harta sitului şi subiectele cheie
prezentate.
Replicare de bază de date. Sistemele de
baze de date distribuite care au nevoie de
sincronizare cu o versiune primară, nece-
sită o schemă de replicare care distribuie în
mod fiabil un amestec de copii de imagini
complete şi imagini delta. Produsele sunt
Data Propagator de la IBM, Replication
Server de la Sybase si SQL Server
Replication de la Microsoft.
Distributie de software. Aceasta categorie
este un spin major infipt in coasta adminis-
tratorilor de PC-uri şi rețele. Pe măsură ce
Terminologia specifică
Bus
Brokerul are rolul unei
plăci de bază
și care este mică șui
eficientă.
interacțiunile.
a
Centrala cu spite Fulg
Aceasta configuratie
presupune ca brokerul
universale, care oricine se afla in centru si
se poate conecta poate, controleaza toate
Arhitecturile PES se livrează în trei variante principale.
Configuraţia de fulg înseamnă că
brokerul este distribuit în diferite
puncte din reţea.
creşte numărul seriilor de software pentru
stații de lucru, creşte şi nevoia unei dis-
tribuţii eficiente a softului în toată între-
prinderea. P&S pare să fie un model adec-
vat pentru distribuţia de soft, deoarece
canalul oferă o protecţie specifică pe dura-
ta cât consumatorul este abonat pentru sof-
tul care se execută pe echipamentul lui. Un
produs Webcasting, Castanet, tratează dis-
tributia de soft ca şi conținut Web. Un tuner
la staţia de lucru trage de pe serverul de
emisie diferitele actualizări ale modulelor
de soft (chiar şi ale modulelor tuner).
Magazii de date. P&S prezintă un poten-
tial ridicat pentru livrarea informaţiilor în
sisteme data warehouse. Problema depăşeş-
te cea a oferirii informaţiilor adecvate pen-
tru oamenii potriviți. Problema este cum să
mentii un flux de informaţii adecvate şi să
permiţi ca orice beneficiar să adauge valoare
şi să publice din nou informaţia. Aplicarea
tehnologiilor P&S la magaziile de date ne
va duce la o dinamică complt nouă, activată
de piață, pentru răspândirea informaţiilor.
Produsele sunt delivery-Manager de la VIT,
Tapestry de la D2K şi Aclue de la
Decision.ism.
Delivery Manager de la VIT trece dinco-
lo de magazia de date la orice sursă de infor-
maţie din întreprindere. „Atenţia trebuie
concentrată asupra beneficiarului“ remar-
„că Subhash Chowdary, fondatorul şi CEO
de la VIT. „Consumatorul creează cererea
şi activează conţinutul din orice magazie
persistentă, asemenea unei benzi rulante de
furnizare de informaţii“.
Tapestry are o interfață pentru abonat cu
SEPTEMBRIE 1997 BYTE România 55
Administrarea datelor
Publicati, sau pieriti —
care analiştii pot examina meta-catalogul şi
îşi pot depune abonamentele prin Web.
Conţinutul poate fi livrat într-o mulțime de
_ - formate (de ex. Excel Word, Lotus 1-2-3 si
prin Java) si planificat periodic (vedeti
ecranul alaturat).
Tapestry are o separare unică între
rolurile producătorilor. Un furnizor are rol
de administrator de date şi mapează sursele
de date disponibile într-unul sau mai multe
magazine de date. Un editor (publisher) are
rol de analist de afaceri şi specifică diferitele
moduri de prezentare la care se pot abona
oamenii. De exemplu, un furnizor poate
construi magazine de date din baze de date
gazdă, în vreme ce un editor va publica
diferite vizualizări din aceste magazine.
Aclue se adresează utilizatorilor Arbor
Essbase și foloseşte P&S pentru a distribui
cuburi, în mod consistent, prin rețea.
Comerţ electronic. La o primă analiză
pare că există puţine legături între P&S şi
comerţul electronic. Totuşi, ambele uti-
lizează tehnologii comune (de ex. sistem de
mesaje fiabil şi cu securitate) şi au obiective
comune (de ex. realizarea potrivirii pro-
ducătorilor şi consumatorilor). P&S poate
beneficia de pe urma experienţelor de
schimburi monetare uşoare şi fiabile, iar
comerţul electronic poate folosi mecanis-
mele de tranzacţii recurente, similare celor
de la grupurile de interes (ca la Clubul Book
of the Month).
Acum încotro?
Ca mecanism de coordonare pentru sisteme
distribuite şi oameni distribuiţi, P&S are un
potenţial imens datorat flexibilităţii, ușurin-
ţei de adaptare şi evoluţie. În situaţii com-
plexe, de scară mare, unde cerințele se
schimbă mereu, P&S poate oferi solul fertil
pe care vor creşte aceste sisteme. De aseme-
nea, standardizarea şi comercializarea teh-
nologiei P&S au potenţialul de a crea pieţe
ape - [Bookmark Applet]
Tapestry de la D2K are o interfață Web pentru planificarea
Di
PRE IRI E SE
XI
doine natie
STE =] Acu | fe ee i i
furnizării informaţiilor la care există abonament.
globale pentru schimbul de informaţii și
comerț, dincolo de orice ne-am putea imagi-
na acum.
Totusi, P&S are nevoie de câţiva ani pen-
tru maturizare. În primul rând, OMG şi alte
grupuri de standardizare trebuie să se pună
serios la definirea a ce este P&S. Apoi, infra-
structura P&S nu este încă gata. Mai trebuie
puse la locul lor tehnologiile pentru supor-
tul sistemului de mesaje fiabile în exeriorul
contextului limitat de intranet, protocolul
de transport eficient multicast şi schimbul
monetar universal. În al treilea rând, slăbi-
ciunea critică este lipsa sistemului de ma- -
nagement pentru toată întreprinderea. Este
uşor să mai adaugi câte puţin o dată, dar cine
va superviza acest lucru (sistemul P&S)“
remarcă lan MacFayden, vicepreşedinte de
administrare tehnologii la Chase Retail
INFORMAȚII UTILE
.56 BYTE România SEPTEMBRIE 1997
Active Software http://www.d2k.com 800-815-6366
Santa Clara, CA i-Kinetics, inc. http://www.neonsoft.com
aoe seer! . “Burlington, MA Talarian Corp.
NEA aeiivesve cae 617-270-1300 Mountain View, CA
BEA Systems, Inc. http://www.i-kinetics.com 415-965-8050 |
Sunnyvale, CA Intermezzo Systems, Inc. http://www.talarian.com
a name neces Boulder, CO TIBCO, Inc.
bt d/vespel Acasys.comt 303-440-5410 Palo Alto, CA
_ Borland Open Environment : 415-846-5000
Boston. MA ANI tt:fiwwwtibeo.com
Ia au 617-949-9000 VIT
http://www.openenv.com http://www.iona.com Cupertino, CA
Decision-ism, Inc. 408-342-0882
Boulder, CO Cae one http://www.vit.com
eee i 617-577-8500 Vitria Technology, Inc.
http} rem http://www.lotus.com Mountain View, CA
D2K, Inc. 415-237-6900
San Jose, CA edie ela = http://www.vitria.com
408-451-2010 :
Banking Systems. „Nu există loc pentru
responsabilii organizării, deoarece P&S
amestecă sistemele gazdă, serverele, rețeaua
şi cine şie câte altele“.
Chiar şi matură, P&S nu este soluţie la
cheie. Mai rămâne activitatea dificilă a
înțelegeri proceselor proprii afacerii, speci-
ficarea unei reprezentări eficiente a eveni-
mentelor și conceperea schemelor adecvate
pentru bazele de date. P&S va furniza doar
unelte mai puternice şi va mări paleta de
opţiuni posibile.., Nu există multă expe-
rient4 cu acest lucru, va mai dura probabil
10 ani până la adoptare, ca şi tranziția de la
lucrul pe loturi la cel on-line“, prevede Roy
Schulte de la Gartner Group. „Marii furni-
zori vor începe activitatea (pe piața P&S)
peste doi ani“.
Orice soluție P&S necesită încă profe-
sioniști calificaţi care pot s-o aplice cores-
punzător. Pentru multi ani ce vor veni, for-
marea acestor profesionişti vfi factorul care
va limita adoptarea P&S.
Richard Hackathorn (richardh@bolder.com)
este fondatorul si presedintele firmei Bolder
Technology Inc. (Boulder, CO), specializată în
interconectare în intreprindere şi magazii de
date. Puteţi obține o copie a raportului com-
plet referitor la tehnologia P&S la adresa
http://www.bolder.com.
[din BYTE, o publicatie McGraw-Hill, Inc.
Adaptare - Darvas Attila]
ILUSTRATIA: DOUGLAS FRASER © 1997
Inboxul universal
Este posibil să vă primiţi toate mesajele parvenite prin
e-mail, fax, telefon cu ajutorul unei singure interfețe.
De Mike Hurwicz
rganizatia Gallup afirma ca un oarecare angajat a unei
mari corporaţii primește zilnic 178 de mesaje. În plus,
este un lucru deja obişnuit ca mesajele să fie recepţio-
nate prin e-mail, fax, sistem voice-mail şi pager. Şi poate
ca dvs nu sunteți un angajat oarecare!
Pentru utilizatorii asaltați de mesaje din toate părţile, un inbox
universal ar fi un colac de salvare. Fiind o singură interfață pentru
utilizator, acest inbox universal se bazează pe programul client e-
mail ce listează toate mesajele
parvenite. Aceste mesaje pot fi
recepționate prin e-mail, voice-
mail, fax-mail (un fax ce
soseşte printr-un fax-server şi
este recepționat ca un e-mail)
sau pe alte căi. De la interfața
inboxului universal se pot citi,
şterge sau gestiona toate
tipurile de mesaje. Pentru a
„citi“ un voice-mail, utiliza-
torul se foloseşte de un telefon
sau un PC echipat multimedia.
Aceeași interfaţă conţine, în
mod inevitabil, funcţii necesare
pentru a răspunde la mesajele
primite, cu toate că trans-
miterea mesajelor nu este o
funcţie specifică al inboxului.
„Cutia poştală“ universală
simplifică treaba utilizatorului
prin reducerea mediului de re-
cepţionare. Este mai rapidă
verificarea unui singur inbox
decât a mai multori conturi e-
mail, aparate de fax sau sisteme
voice-mail. Iar timpul alocat
pentru învățarea folosirii core-
spunzătoare a interfeţei va
scădea, fiind vorba de un singur
software. Inboxul universal
poate elimina întârzierea recep-
ţionării mesajelor ce pot apărea
atunci când utilizatorul nu verifică destul de frecvent o anume sursă,
cum ar fi o adresă e-mail, unde nu primeşte foarte des mesaje. Mai
mult, inboxul universal permite gestionarea mesajelor fax şi voice-
mail în acelaşi fel şi în acelaşi foldere ca şi mesajele primite prin e-
mail. Avantajul nu ar consta doar în unificarea mai multor sisteme de
gestionare, dar şi în faptul că folderele e-mail pot reprezenta o metodă
de gestionare mai bună decât cele ce însoțesc produsele voice-mail
sau fax-mail. De asemenea, inboxul universal va putea oferi diverse
modalități de recepționare. De exemplu, prin convertirea textului în
vorbire (mesaj enunțat vocal) inboxul va „citi“ mesajul e-mail prin
telefon și astfel utilizatorul nu trebuie să aibă modemul conectat.
www.agora.ro/byte/
Se poate deci afirma că inboxul universal poate într-adevăr sim-
plifica viaţa, dar nu pentru toți utilizatorii. Cu toate că producătorii
lucrează la proiectul inboxului universal de mai mulţi ani, tehnolo-
gia se află încă in stadiul de maturizare, astfel produselor ce vor apărea,
le pot lipsi anume atribuţii pe care utilizatorul şi-le-ar dori. Mai mult,
în timp ce acest inbox oferă un singur client (front end) pentru diferite
tipuri de mesaje, nu prea ajută la integrarea administraţiei, structurii
de directoare sau stocării de date pe server (back end). La aceasta se
mai adaugă faptul că utiliza-
torul trebuie să ştie de ce are
nevoie $i ce-i va fi de folos in
viitor. De aceea, este mai in-
dicat ca el să opteze pentru un
singur pachet de programe ce
ar conţine totul ce crede că-i va
fi necesar. Nu este de dorit ca
utilizatorul să se confrunte cu
îmbinarea mai multor tipuri de
sisteme diferite pentru a se
bucura de opţiunile preferate,
sisteme ce individual conţin
doar o mică parte a acestor op-
ţiuni. Totuși, aceasta este situ-
aţia cu care trăieşte utilizatorul
la ora actuală. Pe de altă parte,
el nu dorește o funcţionalitate
ce nu-i va fi de folos vreodată.
Cu goana de pe Intrenet,
producătorii de browsere îşi
imaginează că își vor folosi
produsele proprii ca un inbox
universal. Astăzi browserele
oferă doar o interfață cu mul-
tiple funcțiuni, incluzând
poate e-mail şi fax. Browsere-
le populare, cum ar fi cel a lui
Netscape sau Microsoft, nu
oferă un singur inbox pentru
toate varietățile de mesaje. De
fapt, abia se conturează la ora
actuală standardul necesar
pentru a suporta inboxul universal.
Esența concepţiei inboxului universal este ca un utilizator să fie
capabil să recepționeze mesaje de la surse multiple în formate
diferite. Mai concret, piatra fundamentală a acestui inbox este un
client e-mail / groupware. La acest client se mai adaugă software-
ul ce permite utilizatorului să recepționeze faxuri de la fax server
şi voice-mail de la voice-mail server.
În general, companiile doresc ca funcţionalitatea inboxului uni-
versal să se bazeze pe produsele lor strategice e-mail în folosință
curentă sau în curs de dezvoltare. Sistemele e-mail cu fişiere comune
(shared-file), cum ar fi MS Mail, rareori au o performanță în sto-
SEPTEMBRIE 1997 BYTE România 57
Administrarea datelor
Inboxul universal
Comunicatia
poate fi digi-
tala sau DIMF.
Unified Messenger
Server comunica cu
PBX prin DIMF, RS-
232 sau cod propri-
etar. Poate spune
serverului codul ID al ~
apelantului si numa-
rul extensiei apelate.
carea de date sau o capacitate de a suporta
(sprijini) accesul greoi voice-mail şi fax-
mail. Astfel, ca şi back end este folosit de
obicei un server e-mail / groupware de o
înaltă performanță, cum ar fi Lotus Notes,
Microsoft Exchange sau Novell Group-
Wise. În aceste cazuri, producătorii fax-
serverului sau voice-mail serverului oferă o
mesagerie unificată.
Produsele de la Lucent Tehnologies şi
Octel Communications (primul făcând o o-
fertă de 1,8 miliarde $ celui din urmă în iulie
a.€.) sunt printre exemplele populare ale a-
cestei realizări de mesagerie unificată. Octel
Communications (OC) este în special o com-
panie voice-mail. Unified Messenger, pro-
dus de OC, care adaugă voice-mail la Micro-
soft Exchange Server, rulează pe un nou
voice-mail server Octel, bazat pe NT. Faxul
va face parte din versiunea următoare a pro-
dusului Unified Messenger şi OC a mai anun-
ţat că Unified Messenger va suporta Lotus
Notes aproximativ în mijlocul anului 1998.
In mod similar, Lucent Tehnologies (LT),
fosta unitate tehnologică şi de sisteme de
comunicaţie a lui AT&T, este (nu sur-
prinzător) în special o companie de tele-
fonie. Intuity, produs de LT, este un sistem
voice-mail ce foloseşte Lotus Notes pentru
a crea o mesagerie unificată. Intuity oferă
atât servicii voice-mail, cât şi fax. În plus,
Multimedia Messaging Server (MMS) a lui
Intuity are e-mail propriu. Intuity va adău-
ga un suport pentru Microsoft Exchange și
produsele Internet mail, cum ar fi Eudora.
Prin intermediul Internet mail, Intuity va
avea suport şi pentru Lotus cc:Mail. lar
suportul pentru Novell Group- Wise este
încă incert, cu toate că suportul pentru
Internet mail ar putea rezolva problema.
58 BYTE România SEPTEMBRIE 1997
Clientul exe-
cuta softcli-
ent Exchange.
Cartela PC pentru voce convertes-
te semnalul analog DTMF in date
digitale pentru Unified Messenger.
Unified Messenger foloses-
te APl-uri director pentru
perechi utilizator-extensie și
APl-uri de baze de date
pentru scriere-citire mesaje.
mesajelor DTMF.
Lucent Tehnologies si Octel Communi-
cations se concentrează din ce in ce mai mult
pe CTI (computer telephony integration).
Sistemul voice-mail face parte din astfel de
solutii CTI, dar nu reprezinta obiectul cel
mai important, cât despre fax şi e-mail, ei
sunt lăsaţi deoparte deocamdată. Printre
producătorii de CTI, ce oferă solutii de
mesagerie unificată, se numără Applied
Voice Tehnologie (AVT), Tobit Software
(TS) si CallWare Tehnologies (CWT). Call-
Xpress NT, produs de AVT, se remarca prin
opţiunile ce facilitează recepţionarea unui
e-mail sau fax prin telefon. David, produs
de T$, este sistemul de operare a unui serv-
er de mesagerie multifuncţională $i rulează
pe NetWare 3.11 sau superior ca un modul
încărcabil (NetWare loadable module -
NLM). Acesta gestionează şi controlează
baze de date ce pot conţine diferite tipuri de
obiecte (e-mail, fax, voice-mail, fişiere, link-
uri). Informaţiile pot fi accesate în diferite
feluri, incluzând LAN, telefon, fax sau WEB.
CallWare, produs de CWT, este un produs
CTI destinat in special pentru NetWare,
fiind un NLM si se integreaza strans cu
Novell Directory Service (NDS).
Lucent şi Octel furnizează atât servicii
voice-mail cât şi servicii fax. Prin împletirea
acestor produse într-un sistem e-mail, uti-
lizatorul va beneficia de cele trei funcții
majore ale mesageriei unificate: e-mail,
voice-mail şi fax. AVT oferă serviciul de
voice-mail şi fax ca produse separate, în
timp ce CallWare nu oferă servicii de fax.
Astfel, ca utilizatorul să beneficieze de ser-
vicii fax cu CallWare el trebuie să integreze
un fax server, cum ar fi ZetaFax de la
Equisys sau FaxServe de la Cheyenne
(divizia firmei Computer Associates - CA)
Cu toate că orientarea este îndreptată spre
oferirea unei funcţionalităţi a inboxului uni-
versal bazat pe un client e-mail / groupware
existent, apar clienţi ce au ca scop realizarea
unui inbox universal cu o funcţionalitate
independentă, de sine stătătoare. Acesta este
cazul şi a lui EMail Connections, (de la com-
pania cu aceiași nume - EMC), ce a fost intro-
dus pe piață în 1992 şi are instalată o bază de
câteva sute de mii de staţii, după cum afirmă
producătorii. EMail Connections a fost
recunoscut ca primul client e-mail care
suportă fiecare importantă interfață de
mesagerie, incluzând atât Messaging API
(MAPI) de la Microsoft, cât şi Message
Handling Server (MHS) lui Novell, Vendor-
Independent Messaging (VIM) de la Lotus
şi standardele Internet. Dar EMail Connec-
tions poate fi si un client la o varietate de ser-
vicii on-line incluzand AOL, Prodigy, Com-
puServe şi MCI. Fax serverele MAPI compa-
tibile pot trimite faxuri folosindu-se de
adresele e-mail.
Momentan, EMail Connections nu are in-
tegrată voice-mail, cu toate că nu este departe
de realizarea completă a funcţionalităţii in-
boxului universal. Oricum, EMail Connec-
tions 3.1 este compatibil cu Multipurpose
Internet Mail Extension (MIME), care oferă
o bază pentru voice-mail în viitor, dar inte-
grarea de voice-mail în grupul de dezvoltare
EMC este în plină desfăşurare.
Mesageria ——,
oe câștigă fr,
i mesageria unificată, puteţi retrimite a ace- A
lagi voice-mail prin lista de distribuţie.
„Puteţi proceda la fel și cu celelalte tipuri
„ demesaje. Faxurile parvenind printr-un fax Gs
„server, potfi retrimise ca si fax- mail. Ajun-
la destinaţie, ele pot fi „printate“ direct _
un aparat fax local. În același context, =
puteţi retrimite un e-mail subfomădee-
| mail, fax sau prin conversia textului în vor-
_bire (mesaj enunțat vocal chiar caun
„voice-mail.
Inboxul universal
Administrarea datelor
Stimularea fuziunilor
O parte din producătorii de e-mail, fax,
voice-mail au căzut de acord că produsele
lor trebuie să conlucreze între ei. De aici,
un exemplu pentru o soluţie de inbox uni-
versal ar fi folosirea Notes Mail şi MMS lui
Intuity conectaţi între ei prin Lotus
Telephony One-Stop.
Novell a promovat de mult FaxServe de
CA (divizia Cheyenne), ca fiind o recoman-
dată soluţie de fax pentru GroupWise.
FaxServe se integrează strâns cu NDS şi
poate fi gestionată ca un obiect NDS de sub
NWAdmin. Importarea de utilizatori de la
NetWare spre Group Wise si FaxServe este
un lucru direct si la îndemână, eliminându-
se necesitatea alocării de utilizatori în mul-
tiple locuri. Împreună, Group-Wise,
CallWare şi FaxServe întruchipează una din
cele mai manevrabile soluţii de inbox uni-
versal, datorită în mare parte NDS ce le leagă
între ele. Un nivel mai evoluat de integrare
managerială ar fi posibil prin Novell Manage
Wise. Novell şi CA au anunţat de asemenea
un management la nivel corporativ (de cor-
poratie) pentru GroupWise, NetWare,
IntranetWare şi o integrare cu Novell
Manage Wise. Această integrare ar folosi
Unicenter TNG (The Next Generation) sio
solutie de management end-to-end, ambii
lui CA , dar aceasta solutie end-to-end ar
oferi management și pentru servere NT.
Eldon Greenwood, directorul principal al
strategiei de producţie a firmei Novell, afir-
mă că cumpărătorii se pot aştepta la „paşi
uriași“ în ceea ce priveşte integrarea mana-
gerială şi că NDS va fi disponibil pe NT cam
la sfârşitul acestui an, apoi NDS va fi disponi-
bil şi pe cele trei mari platforme pe care
GroupWise rulează: NetWare, NT şi Unix.
Oricum, se pare că inboxului universal
este mediul pe care majoritatea comercianți-
lor de mesagerie unificată sunt nerăbdători
să-l sprijine sau să crească suportul progra-
melor proprii la acest mediu. Astfel, de
exemplu, Octel a început să sprijine doar
Microsoft Exchange, în timp ce Lucent a
adăugat un suport pentu acesta. Cu toate că
Notes cc:Mail continuă să fie liderul pieţei
e-mail, mai mulți observatori prevăd un po-
tential mai crescut cu Microsoft Exchange.
Dezavantaje
Inboxul universal nu se potriveste pentru
toţi utilizatorii. În special, dacă tot ce face u-
tilizatorul este combinarea a mai multor
mail-boxuri, el se poate întreba care este a-
vantajul inboxului universal. Dacă fiecare
mail-box operează cu funcții diferite, poate
că ar fi mai potrivit ca aceste cutii poştale să
fie ținute separat din punct de vedere orga-
nizatoric.
Pentru utilizatorii mai puţin e-mail cen-
www.agora.ro/byte/
= sau voice-mailcat: sipentruservere faxsl e-mail.
AP!-uri si protocoale standard
| nboxul universal necesită standarde pentru
ainterconecta produse e-mail, fax sl voice-
mail de la diferiți producători. Messaging API
(MAPI) produs de Microsoft s-a impus ca
APl-ul dominant în mediul Windows, per- -
mitand producatorilor de fax si voice-mail sa
afișeze mesaje în orice inbox MAPI compati-
bil. Alte APl-uri, cum ar fi Common Mail
Calls (CMC) sau Vendor-Independent Mes-
saging (VIM) isi gasesc rostul atat in medii
non-Windows cât și sub Windows.
„MAPI permite comunicaţii tip client / server
prin subsistemul MAPI, o componentă standard
„a Windowsului. Subsistemul transferă cererile
„între client și furnizorul de servicii MAPI: un mic
modul software, rulând pe client, oferit de furni-
zorulde servicii (pentru e-mail, faxsau voice-mail).
Furnizorul de servicii se adresează în schimb ser-
viciului propriu-zis: într-un mediu client / server
acesta rulează pe serverul email, fax sau voice-
„mail. Furnizorii de servicii multiple pot rula pe o
„singură mașină client, cu MAPI având rolul de
multiplexer / demultiplexer pentru acestea.
Din perspectiva utilizatorului, MAPI permite
clientului să comunice cu un serviciu e-mail. Dar
în realitate MAPI descrie doar felul îi în care un
„ client se adresează unui subsistem și felul în
„care furnizorul de servicii se adresează sub-
„sistemului. MAPI nu definește protocolul folosit
pentru comunicațiile client / server și nu se
referă nici la comunicaţii server / server.
Un standard Internet ce poate fi folosit la
„implementarea inboxului universal este Multi-
„purpose Internet Mail Extention (MIME), ce
_ poate trimite diferite tipuri de conținut cu ajutorul
„ Simple Mail Transport Protocol (SMTP). Studi-
„. ile intreprinse pe voice-mail, ce au început în
„1994, auavut ca rezultat Voice Profile for Inter-
net Mail (VPIM), ce la ora actuală este un stan-
_ dard grosier pentru Internet Engineering Task
„Force (IETF). IETF va adopta VPIM versiunea
„ 2.caunstandard complet în cursulacestuiveri.
i Cutoate cd VPIM a fost conceput pentru voice, A
A standardul acum. Soții pia |
ee VPIM lucrează cai unui ser-
de telefon al destinatarului. Sistemul voice-mail
observă că numărul introdus nu aparține unui
utilizator local. Un sistem non- VPIM de obicei
s-ar opri aici. În schimb, VPIM se folosește de
Lightweight Directory Access Protocol (LDAP)
pentrua căuta adresele e-mail ce au recepțion-
at un mesaj vocal pentru acel număr de telefon.
Atunci sistemul trimite acel voice-mail prin rețea
caun mesaj MIME / SMTP. Pe recepţie mesajul
poate ajunge la un sistem voice-mail VPIM sau
la orice sistem e-mail SMTP / MIME.
De vreme ce VPIM foloseste Internetul sau
un intranet pentru a transmite voice sau fax, ar
„putea reduce semnificativ costul convorbirilor
delungădistanţă și costul trimiterii faxurilor co-
lor. De asemenea, creează o bază solidă pen-
tru „voice-mail intenţionat“ (spre deosebire de
mesajele care au fost înregistrate doar pentru
că cel chemat nu a ridicat receptorul).
Producători ca Lucent, Nortel, Octel și
Siemens Rolm au demonstrat la expoziția EMA |
din 1996, că produsele | lor au fost create pe
VPIMversiunea 1,. dovedind că conceptul este
fiabil. Dar publicul nu a văzut produsele i in sine.
Produsele bazate pe VPIM versiunea 2. ale a
acelorași firme, aflate în majoritate în stare de
test beta pe timpul expoziţiei EMA din 1997,
sunt așteptate în cursul acestuian.
Teoretic vorbind, puteţi folosi standardele
„Internet pe lângă sau în locul lui MAPI sau alte.
APl-uri. După afirmaţiile lui Greg Vaudreuil,
autor al VPIM ver 1. și coautor la VPIM ver 2.,
fiind proiectantul sistemului de mesagerie de la
Octel, astăzi MAPI poate eer cu
conţinut VPIM, dar nu le poate transmite.
"VPIM este un protocol strict server - - server,
referitor doar la transportul mesajelor. Pentru
interacțiunea client / server Internet Message
„Access Protocol versiunea 4. (IMAP4) va fi _
deosebit de important pentru inboxul univer- . ]
„sal. IMAP4vă permite f arcurgerea listei de _
mesaje inainte sa sele
2 accesa. 9
trici, solutia inboxului universal ar putea
părea cam inconvenabilă. David Marshak,
consultant principal al firmei Patricia
Seybold Group cu sediul în Boston, ne oferă
exemplul unui contabil care „trăieşte“ în
Excel şi este posibil că preferă să aibă posi-
bilitatea să trimită e-mail şi faxuri din Excel
şi poate fi mulțumit să-şi primească voice-
mailul intr-un mod conservativ. Tot așa,
dacă acest contabil primeşte în mod regulat
spread-sheeturi (foi de calcul), poate că îi este
mai convenabil să folosească un director
anume pentru acestea, decât să se folosească
de e-mail pentru a le primi. Managerii de
reţea (inginerii de reţea), de asemenea, tre-
buie să fie conştienţi că o mare parte a soluti-
ilor pentru inboxul universal vor suferi de o
administrare şi de o stocare de date frag-
mentate. Dacă ei doresc să adauge un nou
utilizator la sistemul de operare pentru un
login de bază la rețea, la PBX, la sistemul
voice-mail, toate acestea ale făcute ca
operaţii separate, efectuate manual.
Toţi comercianții amintiţi (excepţie
făcând doar Octel) implementează şi moda-
lităţi de stocare a mesajelor în funcție de ti-
SEPTEMBRIE 1997 BYTE România 59
Administrarea datelor
Inboxul universal
pul acestuia, decât să stocheze, de exemplu,
voice-mail împreună cu e-mail. Doar Octel
foloseşte message store-ul din e-mail (în cazul
de fata Microsoft Exchange) pentru a stoca
toate genurile de mesaje, ceea ce reprezinta
o arhitectură mult mai eficientă şi uşor de
gestionat.(Tot această arhitectură face posi-
bilă căderea intregului serviciu, lucru nedorit
în cazul în care serverul voice-mail indepen-
dent ar fi semnificativ mai fiabil decât ser-
verul e-mail.) Ca manager principal de pro-
duse pentru mesagerie unificată de la Octel,
Robert Wohnutka afirmă că în multe alte sis-
INFORMAȚII UTILE
Applied Voice Computer Associates
Technology (AVT) Islandia, NY
Kirkland, WA 516-342-5224
206-820-6000 http://www.cai.com
http://www Cheyenne division:
-appliedvoice.com 800-243-9462
RightFAX (subsidiary _'"ttP*/Mmww-cheyenne:com
of AVT) EMail Connection
Tucson, AZ Redmond, WA
520-320-7000 800-889-3499
http://www.rightfax.com http://www
CallWare .email-connection.com
Technologies Equisys (Zetafax
Sandy, UT USA)
800-888-4226 Atlanta, GA
801-486-9922 770-622-2810
http://www.callware.com http://www.equisys.com
teme, dacă se şterge un mesaj, iar aceasta a
fost stocat în două locuri, sistemul trebuie să
coordoneze acele două locuri. Iar unele sis-
teme nu o pot face în timp real.Dar cu un sin-
gur loc de stocare apar mai puţine întârzieri
şi mai puţine posibilităţi pentru probleme.
Alte dezavantaje posibile al inboxului uni-
versal pot fi referitoare la cost şi suport.
Functionalitatea in sine a inboxului univer-
sal poate costa mai putin, pana la 40$ per
statie decat pretul total al hardware-ului, e-
mail, voice-mail gi fax-mail., Analistul sef
Michael Durr al firmei Michael Durr and
Lotus Development Novell
Cambridge, MA Orem, UT
800-346-1305 801-222-6000
617-577-8500 http://www.novell.com
http://www.lotus GroupWise:
-com 800-638-9273
Lucent Technologies Octel
Murray Hill, NJ. Communications
800-325-7466 Milpitas, CA
908-582-8500 800-444-5590
http://www.lucent.com 408-324-2000
Microsoft http://www.octel.com
Redmond, WA Tobit Software
800-426-9400 Montreal, Quebec
206-882-8080 800-444-5590
http://www.microsoft 514-392-9220
„com http://na.tobit.com
Associates (Cape Coral, Florida), firmă ce
se ocupă de consultanță și prospectarea
pietii, afirmă că în cele mai multe cazuri este
dificil de a demonstra profitabilitatea
investiţiei în inboxul universal. Mai departe,
tot el afirmă că comercianții au de obicei
experienţă, fie în e-mail, fie în telefonie.
Puţini sunt acei comercianţi care au expe-
rienţă în ambele ramuri. „În fața unei
alegeri“ spune Durr „înțelepciunea tradi-
ţională spune că este mai uşor pentru un pro-
ducător de telefonie să înveţe e-mail, decât
invers.“
Din aceste considerente, inboxul univer-
sal, cu toate că este atrăgător, nu a fost imple-
mentat pe scară largă. Oricum, administraţia
unificată ar trebui să devină mult mai uzual,
în special cum Microsoft îşi dezvoltă
tehnologia de directoare. Stocările unificate
de date vor deveni mai la îndemâna utiliza-
torului. Costurile se vor reduce și producă-
torii vor câştiga experienţă. Cu toate aces-
tea, utilizatorii ce suferă de mania mesageriei
nu trebuie să renunţe la speranțe.
Mike Hurwicz (mhurwicz@attmail.com) este
scriitor si consilier din Brooklyn, New York.
[din BYTE, o publicatie McGraw-Hill, Inc.
Adaptare - Bathori Zsigmond|
Your technology investment is too important to leave to chance !
So leave ittous!
Sediul Central
Bd. Unirii 15, Sect.5, Bucuresti,
Tel.: 336.2595, Fax.:336.7568
Cl. Grivitei 355-357, Sect. 1, Bucuresti,
Cl. |
r 152, Sect.1,Bucuresti,
Centrul de Vânzări
Dorobanţilor
Tel./Fax: 230.7737, 230.4032
Tel./Fax: 230.2575, 222.4616
Tel./Fax: 223.1443
CI. Grivitei 355-357, Sect. 1, București,
60 BYTE România SEPTEMBRIE 1997
ILUSTRATIA: TIM TEEBKEN © 1997
OLAP prin Web
Utilizarea aplicaţiilor bazate pe Web pentru procesarea analitică
se clădește pe puterea ambelor tehnologii.
De Udo Flobr
rocesarea analitică on-line (OLAP - on-line analytical
processing) poate fi cel mai important nou model de cal-
cul al deceniului, după Web. Asocierea celor două for-
mulează o puternică tehnologie.
Un depozit de date este un depozitar de baze de date, central, pen-
tru toate datele dintr-o organizație. În mod tipic, permite accesul
la această informaţie prezen-
tând-o sub forma unui cub de
date metaforic, un model de
stocare multidimensional
care, permite multiple vizual-
izări diferite şi combinaţii de
date. După corelarea unor
părţi arbitrare din datele
firmei, managerii vor putea
evidenția elemente ascunse -
copacii dintr-o pădure, cumar
Programele OLAP formea-
ză o categorie de soft de afaceri
ce permite utilizatorilor
manipularea unui cub de date.
Operatiile OLAP includ con-
solidarea, forarea (de ex.
rafinarea interogărilor),
sectionarea, curbarea si
rotirea. Rezultatele pot fi
prezentate in formate de baze
de date traditionale sau tabele,
precum şi diagrame grafice.
Deşi ieşirea poate fi într-un
format fix, adesea permite uti-
lizatorului manipularea direc-
tă a datelor pentru o analiză
ulterioară, cum ar fi identifi-
carea tendinţelor, corelaţiilor
sau seriilor de timp.
O căsătorie în
Cyberspatiu
Majoritatea pachetelor OLAP si de depozite de date au deja sau
vor avea curînd o interfață Web, permiţând utilizatorilor accesul la
date dintr-o organizaţie prin Internet sau intranet.
Intr-un raport recent, Wayne Eckerson, senior consultant la Patri-
cia Seybold Group (Boston,MA), concluziona ca pana in 1998
browserele Web vor activa jumătate din toate aplicațiile OLAP şi de
decizie. În ciuda unor probleme conexe, Eckerson crede că „ Webul
este un mediu perfect pentru activităţi informaţionale de afaceri.“
Aici el aplică regula de 80/20: 80 la sută din toți utilizatorii au ce-
rințe simple de interogare şi raport ce pot fi satisfăcute de aplicaţiile
www.agora.ro/byte/
Web. Restul de 20 la sută au nevoie sau de acces interactiv de înaltă
performanță la un volum mare de date, sau sunt dezvoltatori cu
capacităţi de creație. Acest segment de 20 la sută deocamdată va
continua să folosească unelte dedicate.
Un avantaj major în desfășurarea sistemelor OLAP folosind inter-
faţa Web este reducerea costurilor. Pachetele OLAP tradiţionale
pornesc de la 10.000$. Pe de
altă parte browserele Web
sunt omniprezente. În plus,
cele mai multe organizaţii au,
sau încep să aibă o anumită
structură intranet proprie,
realizată cu servere deja exis-
tente. Astfel, OLAP prin Web
va permite, aproape tuturor
utilizatorilor dintr-o organi-
zatie, accesul la funcţionali-
tate, cel puţin de analiză.
Mulțumită reţelei, accesul
universal s-ar putea extinde la
utilizatori externi. De exem-
plu clienţii sau furnizorii ar
putea avea acces la unele
informaţii ale firmei. Interfața
universală a navigatorului
Web, ar putea ajuta la redu-
cerea costurilor de instruire.
Majoritatea utilizatorilor sunt
deja familiarizați cu operaţiile
de selectare/activare legături,
iar procesul de interogare gi
manipulare OLAP este simi-
lar.
Un alt avantaj este că Web-
ul este un mediu multiplatfor-
mă, atât pentru utilizatori, cât
şi pentru dezvoltatori. Uti-
lizatorii găsesc aici un mediu
familiar, indiferent de sis-
temul lor de operare iar dezvoltatorii pot să-şi mute aplicaţiile Web.
Datorită arhitecturii sale centralizate, Web-ul ajută la reducerea
costurilor de distribuţie suport la clienți. Ultima versiune a softului
de client-browserul- poate fi pus pe toate calculatoarele dintr-o între-
prindere iar componentele, cum ar fi apleturi Java şi controale
ActiveX, realizează propria lor încărcare.
Obstacole pe Web
Totuşi, există anumite neajunsuri care reduc din aceste avantaje. De
exemplu, Web-ul a fost la origine un mediu pentru distribuţia
fişierelor statice. De aceea, problema lui principală este că tratează
SEPTEMBRIE 1997 BYTE România 61
Administarea datelor | OLAP prin Web
fiecare interacţiune ca o legătură nouă, anonimă. În
mod intrinsec, nu-şi „aminteşte“ cine eşti sau ce
interogare reformulezi. În plus, HTTP - principalul
protocol Web - nu menţine starea unei sesiuni. Pro-
gramatorii trebuie să folosească diferite trucuri în aju-
torarea serverului să-şi „amintească“ identitatea uti-
lizatorilor şi până unde au progresat în prelucrările
lor. Există deja iniţiative pentru remedierea acestei
situaţii într-o formă standardizată.
Altă problemă des citată este securitatea. Reţeaua
este deschisă practic pentru oricine, iar traficul ei în
forma sa de bază nu este criptat. Firmele se abţin în a
pune informaţii sensibile pe Net. Această ezitare
este de înţeles, având în vedere faptul că un depozit
de date conţine informaţiile cele mai importante
despre afacerile unei firme.
Situaţia este pe punctul de a se schimba prin
introducerea pe Net a unor tunele de comunicaţii si-
gure. Aceste tunele vor permite utilizatorilor acce-
sul la date la distanţă, în condiţii de securitate.
Zidurile de protecţie (Firewalls) şi alte sisteme de
autentificare contribuie la securitatea intraneturilor
interne prin interzicerea accesului la anumite situri.
Web-ul constă dintr-un număr de protocoale
care îl fac deschis şi uşor de integrat. Totuşi, pentru
unele aplicaţii OLAP această arhitectură simplă se
dovedeşte a fi prea simplă. De exemplu, folosind pen-
tru forare o aplicaţie OLAP dedicată, aceasta lasă fe-
restre decalate ce corespund stadiilor de rafinare
pas cu pasa interogărilor. Acestea sunt utile, întrucât
utilizatorul poate dori revenirea şi focalizarea într-o
altă parte. Dar un browser Web simplu nu permite o
asemenea abordare multidocument: fiecare pagină
nouă conţine cod HTML ce este afișat, de regulă,
ştergând ecranul precedent.
Generatii de Web
Unele situri Web permit operatii OLAP in mai mare
măsură decât altele. De exemplu, din punct de vedere
al uneltelor de interogare şi analiză on-line, studiul
lui Eckerson distinge patru generaţii de arhitectură
Web: Distribuţia de fişiere, editare HTML dinamică,
editare asistată de Java şi editare Java dinamică.
Majoritatea uneltelor informaţionale de afaceri
suportă în mod curent arhitecturi din prima şi a doua
generație.
Siturile Web din prima generaţie (vezi fig. „Situri
Web de generaţia 1“) folosesc o arhitectură pe două
nivele pentru asigurarea distribuţiei fişierelor de bază.
Uneltele OLAP off-line dedicate creează rapoarte şi
le salvează pe serverul Web ca fişiere HTML, care pot
să conţină text şi imagini bitmap. Cu browserul lor
standard, utilizatorii pot vizualiza sau imprima aces-
te documente statice, nefiind însă posibilă interacți-
unea. Pentru o vizualizare reactualizată este nevoie
de generarea unui nou raport. Hyperlink-urile ar
putea stimula o anumită interactivitate. De exemplu,
făcând clic pe o legătură denumită „Regiunea Nord-
est“, utilizatorul poate naviga către un raport
conţinând date doar pentru acea zonă geografică.
Totuşi, volumul crescând de colecţii de fişiere
62 BYTE România SEPTEMBRIE 1997
Situri Web din generaţia a patra
Interacțiunile facilitate de Java permit acces direct la date.
Patru generaţii de acces la Web
Situri Web din prima generaţie
Web browser
Server Web
TCP/IP
Utilizatorii văd date statice predefinite.
Situri Web din generaţia a doua
Serve Web
eb browser
aere Client/
J server
“N network
HTML dinamic oferă date din mers.
Situri Web din generaţia a treia
Server de
aplicaţii
Server Web
interfeţe
Web-
server
CGI
Client
Reţea
client-
Aplicațiile de extensie oferă lucru interactiv.
Server Java
OLAP prin Web | Administrarea datelor
Furnizori si produse
OLAP Suite de la Aplication
Consulting Group
Acest pachet folosește ActiveX
pentru a oferi funcţionalitate OLAP,
incluzând forare, rotaţie și selecție
de date avansată. Din browser, u-
tilizatorii pot crea rapoarte și grafice
de baze de date în direct. Folosește
standardul metadata Oracle
Express (http://www.acgi.com)
TM1 de la Applix
Această soluţie de server OLAP de
generaţia atreia, cu o arhitectură pe
patru nivele, se prezintă sub forma
unui program de calcul tabelar ba-
zat pe Java.TM1 Anywhere permite
accesul prin interogare dinamică la
serverul TM1- motorul de baze de
date multidimensional. Importă da-
te ODBC. (http://www.applix.com).
Essbase Web Gateway de
la Arbor Software
Acest produs de server OLAP de
generaţia a doua folosește o bază
de date OLAP multidimensională.
„Arhitectura sa pe patru nivele folo-
seste CGI pentru intefatarea cu pro-
grame NT sau UNIX. Utilizatorii
solicită rapoarte prin selectarea de
parametrii într-un formular HTML,
prezentarea fiind totîn HTML. Acest
pachet este în măsură să folosească
apleturile grafice de la Infospace.
(http://www.arborsoft.com).
Web Ware-House dela
„Brio Technology
Planificatorul produsului generază
rapoarte HTML statice. Un brows-
er plug-in susţine pachetul lui
decizional, BrioQuery Enterprise.
- baze de date relaţional în mod inter-
activ. (http://www.brio.com).
Business Objects
O unealtă OLAP din prima genera-
tie ce permite vizualizarea dinamica
arapoartelor construite din obiecte
native (nu HTML), cu aplicatii ajuta-
| toare. Serverul lucreaza cu baze de
date relationale; uneltele sale creea-
ză rapoarte în mod interactiv sau se
potplanifica rapoarte cu Document
Agent. (http://www.businessob-
jects.com).
Commander DecisionWeb
de la Comshare
Unserver OLAP multidimensional,
www.agora.ro/byte/
Utilizatorii pot interoga serverul de
cu arhitectură pe patru nivele. Fo-
losind apleturi Java, furnizează con-
troale OLAP directe pentru forare
și rotire. leșirea poate fi în format
HTML sau Excel. Neceșită motorul
Essbase de la Arbor și folosește
standardul ISAPI de la Microsoft.
(http://www.comshare.com).
DataFountain si
CrossTarget de la
Dimensional Insight
DataFountain creează modele de
date multidimensionale pe serverul
Web. CrossTarget folosește
DataFountain pentru a primi infor-
matii RDBMS atunci cand un uti-
lizator de browser solicită un raport.
Rapoartele sunt generate in HTML.
(http://www.dimins.com). -
WebOLAP de la
information Advantage
Este o interfață Web pe patru ni-
vele, cu poartă CGI pentru Decesi-
onSuite Server de la Information
Advantage. Introducerea și ieșirea
parametrilor de interogare se face —
prin HTML utilizatorii execută forări
folosind hyperlink-uri. (http://www
.infoadvan.com).
WebFocus dela
Information Builder
Arhitectură pe patru nivele, de ge-
neraţia atreia. Accesează motoare
de raportare UNIX, Windows NT
sau MVS cu un gateway CGI. Uti-
lizatorii creează rapoarte și grafice
cu apleturi Java. Formatele de ieșire
sunt HTML și Excel. Pachetul este
compatibil cu peste 60 de baze de
date. (http://wmww.ibi.com).
MetaCube de la Informix
Software
Reprezintă o familie de programe
susținătoare de decizii, pentru de-
pozite de date de mari dimensiuni.
Versiunea pentru Web generează
rapoarte HTML în mod off-line. O
interfaţă Java este în pregătire.
Pachetul permite forări, diagrame
și export în formate Excel.
(http://www.informix.com).
Infospace _
Prima unealtă autentică de analiză
și interpogare bazată pe Java, de
generaţia a patra. Folosește o arhi-
tectură pe trei nivele, cu apleturi Ja-
va comunicând cu un server Java.
poate să conducă la probleme administrative, specifice siturilor
Web mari. Principalul dezavantaj al acestei abordări este că
utilizatorii văd doar rapoarte predefinite, care îmbătrânesc
repede, şi toate operaţiile trebuie redefinite.
Siturile Web din a doua generaţie (vezi fig. „Situri Web de
generaţia a Il-a“) utilizează editare HTML dinamică: aplicațiile
creează din mers documente HTML ca răspuns la cerințele
utilizatorilor. Mediul este de fapt o arhitectură pe patru nivele,
alcătuită din browsere Web, servere Web, servere de aplicaţii
şi baze de date.
Pentru a interoga bazele de date şi alte resurse, utilizatorii
completează formulare HTML, pe care browserul le trans-
mite serverului Web. Rezultatul este un fişier HTML generat
dinamic, dar încă static. Utilizatorii primesc ultimele date prin
rapoarte direct executate, apoi într-o anumită măsură, pot face
adaptarea rezultatelor prin schimbarea valorilor parametrilor
„puşi la dispoziţie de designerul sitului. Serverul Web păstrează
doar șabloane şi metadate (date despre date). Parametrii de tip
metadata înştiințează serverul ce informaţii să furnizeze către
browser. De asemenea, și metadatele pot eticheta informaţii
HTML care, pe lângă altele, ajută la menţinerea stărilor şi
datelor autentice pe durata unei sesiuni.
Serverul Web transmite cererea utilizatorului către serverul
aplicaţiei printr-o poartă (gateway). Aceasta traduce cererea
HTML în declaraţii SQL sau alte apeluri de tip baze de date.
De asemenea serverul aplicaţiei formatează rezultatul pentru
serverul Web. Pentru legarea unor astfel de programe externe
la serverul Web, majoritatea arhitecturilor folosesc CGI.
Acestă abordare nu dă întotdeauna rezultatele dorite, mai
ales la instalaţii largi unde scalabilitatea este o problemă. Din
această cauză, interfețele Web server native, cum ar fi Netscape
Server API (NSAPI) sau Internet Server API de la Microsoft
(ISAPI), devin tot mai populare. Opus interfeţei CGI, care exe-
cută o nouă procesare la fiecare apel, NSAPI şi ISAPI folosesc
fire uşoare. Aspectul negativ este că o aplicaţie scrisă pentru
una din aceste interfeţe nu va putea rula cu altele (sau cu alte
servere). Pe de altă parte CGI este portabil. O altă alternativă
mai portabilă este Fast CGI, care are multe din avantajele CGI-
ului, în plus, cum sugerează denumirea, îmbunătăţeşte per-
formanţele acestuia prin reducerea timpului de apel.
Arhitecturile Web din generaţia a treia, conform modelu-
lui Patricia Seybold Group, urmăresc abordarea „editării asis-
tate de Java“ (vezi fig. „Situri Web de generaţia a III-a“).
Aceste arhitecturi completează cadrul generaţiei a doua cu
apleturi Java, controale ActiveX, elemente de plug-in sau
alte programe ale utilizatorului. Acestea pot asigura o utilizare
îmbunătăţită, mai interactivă, care poate sprijini prelucrarea
locală a datelor transferate. Această arhitecturăasigură o mai
bună comunicare interactivă a utilizatorului cu serverul de
aplicaţii, reducând multe din deficiențele HTIP şi HTML.
Softul client suplimentar poate fi o aplicaţie ajutătoare, cum
ar fi un program de calcul tabelar. Rezultatul va semăna tot
mai mult cu o aplicaţie client/server tradiţională, în același
timp menţinându-se filozofia de client suplu, bazat pe Web.
Încă nu s-a decis dacă controalele ActiveX sau apleturile
Java sunt strategia corectă pentru înzestrarea browserului cu
mai multă funcţionalitate şi interactivitate. Unii consideră Java
ca fiind prea lent. Componentele ActiveX, aceste elemente de
construcție de bază ale unei aplicaţii Windows care sunt
folosite de sute de mii de programatori Visual Basic, furnizează
un mediu de dezvoltare mai bogat şi poate mai matur. Fiind
SEPTEMBRIE 1997 BYTE România 63
OLAP prin Web
Administarea datelor
însă atașați de clienţi şi severe Microsoft, componentele
ActiveX nu sunt atât de portabile ca şi apleturile Java, fiind
stâns legaţi de arhitectura Windows (specifică Win 3.2). Com-
ponentele ActiveX sunt totodată mai greoaie decât Java,
aducând prin DDL-uri propriul mediu de rulare. În momen-
tul de față Java pare să aibă un avans în această competiţie.
În final, siturile de generaţia a patra folosesc o abordare Java
deplină. Ei utilizeză o arhitectură Java pe trei nivele, împărțind
procesarea între un server de aplicaţii Java, apleturi Java încăr-
cate de client, şi o bază de date sau administrator de resurse
(vezi fig. „Situri Web de generaţia a IV-a“). Sarcina rămasă
serverului Web este de a furniza apleturi Java. După o încăr-
care, acestea comunică direct cu serverul Jva, folosind mai ales
apleturi de procedură de la distanță. Serverul Java comunică
cu administratorul de resurse folosind drivere baze de date
native Java sau Java Database Connectivity (JDBC).
Deoarece acest tip de aplicatie este pentru si pe Web, poate
ocoli constrangerile date de HTTP si HTML. Serverul Java
poate si genereze HTML, dar prezinta datele sub un format
specific pentru vizualizarea cu browserul Java de la client. Cea
de a doua abordare are capacitatea de criptare a comunicaţiei
pentru îmbunătăţirea securităţii.
De luat în seamă
Rich Carickhoff de la Application Consulting Group, o orga-
nizatie specializată pe soluţii OLAP adaptate, sugerează că
înainte de evaluarea sistemului pentru mutarea sa pe Web, tre-
buie verificat tipul aplicaţiei. Opinia este că „Aplicațiile cen-
trate pe informaţii migrează pe Web şi profită din plin de
această arhitectură. Cel mai mare succes îl au sistemele care
prezintă informaţii cu o funcționalitate mai redusă, însă în for-
mate multiple şi către o largă audienţă“.
Dar el nu recomandă folosirea pe Web a unor aplicaţii
funcţii-intensive destinate utilizatorilor specializați. Aici există
prea mult soft adițional de administrat pe server, prea multe
date de vehiculat prin diferite servere la browser, şi totuşi ar
exista o interactivitate prea redusă.
În lucrarea sa recentă, Eckerson concluzionează că în sta-
bilirea cerințelor față de uneltele OLAP bazate pe Web, cel mai
important aspect este interactivitatea, incluzând suport pen-
tru tabele, diagrame, grafice, hărți şi alte elemente vizuale.
Aproape la fel de importante sunt performanţa şi numărul de
funcţii încorporate. Multe unelte nu permit utilizatorului să
efectueze noi calculaţii asupra unui set de rezultate. Alte
aspecte de luat în considerare sunt scalabilitatea (putând
include echilibrarea încărcării) şi suport pentru o mare diver-
sitate de baze de date.
În aspect final este prețul: vânzătorul percepe pe sesiune sau
ia în considerare numărul curent de utilizatori? Eckerson con-
cluzionează că aplicaţiile informaţionale de afaceri de genera-
ţia a patra vor fi cele care vor stimula o arhitectură client/ser-
ver bazată pe Web.
Udo Flobr este redactor asociat la Byte, cu sediul în Hanovra, Ger-
mania. Poate f; contactat la e-mail: flohrQdtn.de.
[din BYTE, o publicaţie McGraw-Hill, Inc.
Adaptare - Kakucs Albert]
64 BYTE România SEPTEMBRIE 1997
Menţine pe deplin starea unei sesi-
uni pentru o bază de date dedicată.
Serverul Java (AIX, HP-UX, NT și So-
laris) folosește tehnica cache pen-
tru îmbunătăţirea performanţei Pre-
zintă datele în formate Excel, HTML,
Java, VRML și altele. Utilizatorii pot
crea prezentări cu mai multe pagini,
cuelemente multimedia interactive.
(http://www.infospace-inc.com).
IQ/LiveWeb dela lQ
Software
Este o unealtă de raportare de ge-
neraţia a doua, pe patru nivele, folo-
sește interfață CGI pentru acce-
sarea serverelor UNIX sau NT. Prin
folosirea unei interfețe Web, utiliza-
torii pot vedea rapoarte statice
HTML, generate de unelte IOQ/Ob-
jects și IQ/SmartServer. Hyperlink-
urile implementează operaţii cum ar
fi forarea. (http://www.iqsc.com).
DSS Web de la MicroSrategy
Este o intefață CGI Web de gene-
rația a doua, pe patru nivele, pen-
truDSS Server - sistemul de luare de
decizii al lui MicroSrategy. Produsul
suportă interogări de parametrii și vi-
zualizare statică, inclusiv forări baza-
te pe hyperlink-uri. Introducerea și
ieșirea sunt prin HTML. Pachetul
folosește modelul relațional OLAP.
(http://www.strategy.com).
WebAgent de la Oracle
Această interfață pentru baza de
date multidimensională Oracle
Express Server este un server
OLAPde generaţia a doua, pe patru
nivele, cu un gateway CGI. Creează
output în HTML. Hyperlink-urile
implementează trăsături, cum ar fi
rotirea și forarea. Se pot crea grafice
folosind VRML. Pachetul de dez-
voltare folosește cod de procedură
salvat. Cu WebPublisher de la Ora-
cle poate folosi Java sau ActiveX.
(http://www.oracle.com).
Pilot Internet Publisher de
la Pilot Software
Este o interfață Web pentru
pachetul de luare de decizii al firmei
Pilot Software. Accesează serverul
multidimensional Pilot Analysis
folosind ActiveX, HTML sau Java.
(http://www.pilotsw.com).
Gentia Web Suite de la Plan-
ning Sciences International
O interfaţă de generaţia a treia, ba-
zată pe CGI pentru Gentia (un pa-
chet relational OLAP server), ca și
pentru multe baze de date SQL pro-
venite de la terţi. Pachetul folosește
HTML, dar sprijină apleturi Java și
diagrame. (http://www.gentia.com).
InfoBeacon Web de la
Platinum Technology
Este o interfață ISAPI de generaţia
a doua pentru serverul OLAP
relational al firmei Platinum, numit
InfoBeacon. Utilizatorii au acces în
direct la serverul bazat pe NT.
Operatiile de forare si pivotare sunt
sprijinite prin formulare HTML.
(http://www.platinum.com).
Seagate Software
Unelte de raportare Crystal Reports
și Crystal Info folosesc interfeţe
ISAPI sau NSAPI către programele
NT. Pentru vizualizare și manipulare,
Crystal Reports folosește con-
troalele ActiveX. Holos accesează
serverul de baze de date multidi-
mensionată Holos, folosind intrare
și ieșire HTML pentru forare în
browser. (http://www.img.seagate-
software.com).
Media/Web de la Speedware
Este ounealtă OLAP de luare de de-
cizii pentru acces și analiză de date
prin Web. Serverul Media OLAP
găzduiește o bază de date multidi-
mensională și furnizează rezultatul
interogărilor la serverele Media
/Web, transferand rezultatele în
HTML. Utilizatorii primesc interogări
parametrizate și funcţii OLAP, cum
ar fi forarea. (http://www.speed-
ware.com).
Perspectives -Web de la
Syntell
Acest server HTML este interfata
Web catre Perspectives - Zoom.
Pachetul de interfaţă cu baza de da-
te multidimensională Perspective de
la Syntell, ca și cu Informix, Oracle,
Sybase și alte baze de date re-
lationale. (http://www.syntell.com).
DB Publisher dela Xense |
DB Publisher accesează baze de
date de pe orice platformă și orice
loc. Clientul suportă orice platfor-
mă Java. Serverul necesită Win95
sau NT. Accesează baze de date
Oracle sau Sybase cu drivere
native Informix sau altele, folo-
sindODBC. Utilizatorii definesc
interogările si rapoartele in brows-
er. (http://www.xense.com).
2 Sun
microsystems
Network Computing
Informatica Secolului XXI
JAVA
ROMSYS SA
Calea Floreasca 169
BUCUREȘTI
Tel: 230.08.10
Fax: 230.08.15
http://www.romsys.ro
66 BYTE Romania
Platforme puternice:
Pentium Il la 2337 Si
266-MHz
iziunea, planificarea şi poten-
țialul reprezintă trei calități
importante şi necesare. Ne-ar
place să le distingem ca şi cali-
tăţi ale politicienilor noştri, ale arhitecţilor
oraşelor noastre, ale administratorilor de
reţea - şi în UC-urile calculatoarelor. Noul
procesor Pentium II (PII) de la Intel, prezent
în cele 17 PC-uri la 233- şi 266-MHz pe
care le-am testat în această evaluare, are
toate cele trei caracteristici.
Într-adevăr, adevăratul merit al genera-
ţiei PII şi a arhitecturii acesteia se află în
posibilităţile sale latente - nu atât de mult
legat de cât poate face în prezent dar ce va
face atunci când va putea utiliza beneficii-
le expandabilităţii, a instrucţiunilor multi-
media MMX şi a scrierilor accelerate în
regiștrii, ceea ce-i oferă lui PII capacitatea
de-a rula programe pe 16 biţi mai rapid
decât Pentium Pro.
Noua arhitectură
În primul rând, PII reprezintă o arhitectură
complet nouă, care oferă mai multe posi-
bilități pentru expansiunile viitoare decât
cele oferite de predecesorii Pentium care
folosesc Socket 7/8 (forță de inserție zero -
ZIF). Spre exemplu, posibilitatea limitată
de realizare de upgrade a procesoarelor
Pentium se datorează unei lipse de circuite
anexe dispuse pe cip şi a altor componente
care fac posibilă modernizarea la o UC
mai rapidă.
Cartusul SEC (Single Edge Contact) al
PII, care este de dimensiunea unui cartus
Nintendo, este fixat in Slotul 1 de pe placa
de bază şi este proiectat pentru a uşura
upgrade-ul. Cartuşul SEC iese cu ușurință
din Slotul 1 „după ce ati desurubat fixatorul,
radiatorul si ventilatorul UC.
Cu ajutorul designului PII, zilele în care
SEPTEMBRIE 1997
schimbarea cipurilor se efectua greoi
existând șansa îndoirii pinilor, au devenit
istorie. În interiorul cartuşului SEC există
o placă care conţine procesorul, logica de
bază şi cache-ul bus şi sistem - toate com-
ponentele fiind necesare pentru versiuni
ulterioare la frecvențe superioare ale PII
(deşi cipurile SRAM pentru cache-ul L2 nu
se află în acelaşi pachet ca şi UC-ul)
Suport pentru bus dual
Ca şi Pentium Pro, PII folosește arhitectura
DIB (Dual Independent Bus). Aceasta acce-
lerează viteza de curgere a informaţiei,
depăşind de trei ori performanţă proce-
ES
soarelor cu o arhitectură cu un singur bus.
Arhitectura DIB permite ca bus-ul memo-
riilor sistem la 66-MHz să treacă în viitor
la viteze mai ridicate.
DIB-ul este realizat cu ajutorul a două
bus-uri: bus-ul cache-ului L2 şi bus-ul de
la procesor la memoria sistem principală.
Procesorul PII poate folosi ambele bus-uri
simultan, ceea ce îi creşte şansele de atin-
gere a unui vârf de trei instrucţiuni per ciclu
de ceas.
Aceste 17 sisteme Pentium
II furnizează o putere
surprinzătoare pentru
aplicațiile de birou.
De Michelle Campanale
Tehnologia MMX
Ca şi Pentium MMX, procesorul PIl
include MMX accelerat, ceea ce-i permite
executarea simultană a două instrucțiuni
MMĂ. PII are în plus 57 de noi instrucțiu-
ni MMX proiectate în special pentru o
procesare mai eficientă a datelor video,
audio şi grafice. Folosirea tehnologiei
SIMD (single instruction / multiple data) fi
permite unei instrucțiuni să acţioneze iden-
tic pentru tipuri diferite de date, ceea ce
reduce buclele de prelucrare intensivă
specifice aplicațiilor video, audio, de grafică
şi animaţie.
Intel e de părere că printre alte aplicaţii,
MMX va juca un rol important în video-
conferință. De asemenea, sunt aşteptate noi
drivere MMX pentru îmbunătăţirea
imprimării.
Stabilirea specificațiilor
Cu posibilităţile de dezvoltare ulterioare
puse de-o parte, accentul actual al PC-urilor
cu procesoare PII şi cu noul cip set 440FX
este pus pe performanță. În această evalu-
are, ne-am focalizat pe un grup de sisteme
din care au făcut parte PC-uri puternice la
266-MHsz, respectiv maşini la 233-MHz
surprinzător de competitive. Deşi piața
PII depăşeşte domeniul afacerilor
obişnuite, noi ne-am focalizat pe PC-urile
ce rulează Windows NT al căror preţ vari-
ază de la 2200$ la 4100$. Fiecare a fost
echipat cu un singur procesor şi 64 MB
RAM. Din configurație mai făceau parte
maximum 512 KB de cache procesor
secundar, un cache L1 de 32 KB (16 KB
pentru instrucțiuni, 16 KB pentru date) şi
un hard disc de minimum 3,8 GB. În plus,
un CD-ROM, o unitate floppy şi o placă
VGA cu 4 MB de memorie video au fost
adăugate specificaţiei sistem.
ILUSTRAȚIA: SANDERS /TIKKANEN DESIGN & ILLUSTRATION € 1997
RADIATOR ȘI VENTILATOR
Observati prezența unui ventilator suplimentar pentru proce-
PLACA DE BAZĂ
În cazul de faţă, este
bazată pe standardul
ATX, deşi sunt frecvente
și cele bazate pe NLX
sau designuri proprietare.
CARTUȘUL SEC
De formă rectangulară
și de mărimea unei
palme, acesta este
prevăzut cu un dispozitiv
care permite fixarea
procesorului în slot.
SLOT 1
UC-ul se fixează în
noul Slot 1, care folo-
sește mai puțin spaţiu
sistem. Aceasta per-
mite producătorilor de
sisteme să utilizeze
designul plăcilor de
bază existente.
CACHE
jat sunt standard.
PII este optimizat pentru cod pe 32 de biti.
Deoarece cititorii BYTE au dovedit o
creştere a cererilor pentru articole care să
acopere programe pe care ei le folosesc mai
des, am selectat Windows NT Workstation
4.0 ca fiind SO-ul acestei evaluări.
Ce urmează?
Aşteptat pentru lansare în această lună, noul
cip set 440LX de la Intel va conţine niște
completări pentru o mai bună exploatare a
capacităților PII. 440LX va fi compatibil
AGP (Advanced Graphics Port) care oferă
cip seturilor grafice un acces dedicat la
memoria principală. De asemenea, va fi
suportat RAM ECC (Error-correction-code)
ceea ce va face din PII cu cip setul 440LX o
Tot cache-ul se află pe placa SEC. Cache-ul PIl are un
bus dedicat - parte a arhitecturii Dual Independent Bus -
care crește rata de transfer.
sor, care se încălzește mai puternic decât predecesorul său
P6. PIl necesită, de asemenea, un radiator mare, care este de
dimensiunea cartușului și are o grosime de un inci.
Sua 2
“Ta ¥
+
SLOTURI DE EXTENSIE
Patru PCI, două ISA și un slot parta-
componentă ideală pentru sisteme desktop
sau servere. 440LX va include suport pen-
tru SDRAM (Synchronous DRAM), care
va putea îmbunătăţii performanța generală
a sistemului, prin alocarea unei memorii
pentru fiecare bit de date care trece prin bus-
ul PCI. De asemenea, s-ar putea să fie oferit
Au contribuit:
Michelle Campanale, technical editor/BYTE
Andrew Froning, managing editor/NSTL
Dorothy Hudson, project manager/NSTL
Linda Higgins, editorial associate/BYTE
Maggi Bender, John McLoughlin, and John
McDonough, product testers/NSTL
Maryanne Eves, aquisitions editor/NSTL
MEMORII
Lipsa interferentelor permite re- HARD DISC
alizarea unui upgrade usor.Opt @ 4 GBeste
standard.
socluri SIMM pentru panala
512 MB de EDO DRAM repred
zinta capacitatea standard.
COMPARTIMENTE
UNITATI
Acestea vor contine in
mod tipic unitati ZIP,
CD-ROM, hard si tape.
BUS
Busul PCI lucrează în
mod standard la 66
MHz. Viteze de 100
MHz sunt așteptate
pentru anul următor.
Illustration is based on the DTK APRI-74M/K266.
un suport pentru hard disc UltraDMA.
Folosirea actuală a procesorului PII cu cip
setul 440LX permite folosirea unei multi-
procesări simetrice cu două procesoare:
Suport pentru SMP pe patru căi nu va fi
disponibil însă până în 1998. În plus, viteza
busului intern este de 66 MHz; suportul pen-
tru un bus de 100 MHz fiind estimat pentru
anul 1998.
La momentul când citiți aceste rânduri, se
așteaptă ca PII 440FX să apară pe piață ca
fiind primul PII cu cip setul 440LX. Cu avan-
tajul prețului, bunele rezultate ale testului de
performanță și de expandabilitate ale PII fac
din alegerea platformei Intel cea mai
rentabilă afacere pentru mulți utilizatori care
caută sisteme de calcul minimale.
SEPTEMBRIE 1997 BYTE România 67
ricare din cele 17 PC-uri testate
de data asta s-ar potrivi de mi-
nune în orice loc de muncă
sau în cadrul biroului de acasă.
Echipate cu 32 MB RAM si accelerate cu
viteza ametitoare a lui PII, aceste sisteme
oferă o mare performanță aplicaţiilor Win-
dows NT actuale. Şi, deoarece sunt
pregătite pentru MMX, ele pot folosi avan-
tajul aplicaţiilor optimizate MMX, şi al sis-
temelor de operare viitoare, compatibile
MMĂX, cum ar fi majoritatea upgrade-
urilor Windows 95 (nume de cod Mem-
phis).
Am evaluat aceste staţii de lucru pe baza
propriilor performanțe, utilităţi, funcţii, a
tehnologiei folosite, a implementărilor şi
a preţului, toate pe o scară de cinci stele.
Performanţa a fost cântărită cel mai greu,
PC-URI PENTIUM Il
uata cu 17%, in timp ce setul de functii a
primit un factor de 8%. Preţul și tehnolo-
gia (inovaţia) au primit fiecare o felie de 4%.
Deoarece mașinile PII sunt construite în
jurul unor UC-uri identice, preţul devine
un factor determinant. Astfel, pentru a
determina câştigătorul celui mai mic preţ,
am derivat o formulă de punctare separată.
Toate sistemele au fost evaluate cu un punc-
taj din care pretul reprezenta 50%, per-
formanta 30%, utilitatea 10% iar funcţiile
10%.
Am derivat evaluarea performantei ge-
nerale prin medierea rezultatelor din testele
noastre tip benchmark. Ghiduri pentru uti-
lizatori şi alte funcţii pertinente cu privire
la operaţii ale sistemului, cum ar fi uşurinţa
accesului, probleme de configurare şi insta-
lare, de upgrade, au fost folosite pentru a
urmă, punctajul funcţiilor se bazează pe
componentele care au diferențiat sistemele
unele de altele. Spre exemplu, completări
cum ar fi unități ZIP, hard discuri de mare
capacitate şi cartele grafice pe 62 de biţi.
Cel mai bun
Cu o puternică performanță, un design efi-
cient al plăcii de bază şi al şasiului şi, nu în
ultimul rând, cu un preţ bun, sistemul DTK
APRI-74M/K266 la 266-MHz se remarcă
cu usurinta. El a obtinut punctajele de per-
formanţă cele mai consistente din toate
testele pe care le-am efectuat: C++,
Access, Fourier, Imark si BYTEmark.
Desigur, performanta nu este singurul
lucru care conteaza. APRI-74M s-a com-
portat bine atât în testele de utilitate cât şi
în cele de funcții. Spre exemplu, el a venit
cu un procent de 67%. Utilitatea a fost eval-
deriva un punctaj al utilității. În cele din
Primul sistem AMD K6 cu nume de firmă
enturis FX la 233-MHz de la Digital
Equipment reprezintă prima maşină din
rândul producătorilor majori de sisteme care
este echipată cu procesorul AMD K6. La un
preţ de 2504 $, acest sistem reprezintă o bună
alegere, având în vedere că este prevăzut cu
un disc hard Ultra DMA la 4-GB și 64 MB
SDRAM. Deși linia Venturis de la Digital vine
cu Windows 95 preinstalat, noi am efectuat
testele folosind Windows NT 4.0 Workstation,
"la fel cum am făcut-o cu cele 17 PC-uri
Pentium din evaluarea noastră.
Însă,sănu vă peer la performanţe care să le depășească pe cele ale
- mașinilor PII. Am testat sistemul Venturis prin duplicarea majorităţii testelor
benchmark NSTL, inclusiv testele în virglă mobilă Fourier, testul de limbal
„C++, testul de grafică IMark şi testul UC BYTEmark. l-am comparat per-
formanta cu două din cele mai bune sisteme la 233-MHz din evaluarea
” noastră, Client Pro XLU de la Micron și Titania || 233 XLA de la Unicent. De
asemenea, i-am comparat punctajele cu cele obţinute de doi din învingă-
torii noștri - ambele sisteme la 266-MHz - APRI-74M/266 de la DTK și PC
-300XL de la IBM.
Mașinile PI la 233-MHz au avut un mic anl) al performanţei faţă de
Venturisul echipat ¢ cu K6. Astfel, nu e deloc surprinzător că sistemele Pilla
266-MHz au fost semnificativ mai i robuste decât sistemul K6 (vezi figura).
Totuși, acest sistem poate fio buna alegere, dacă nu doriți să așteptați
eS (dupa Pll cucip setul 440LX) pentru a beneficia de avantajele Ultra DMA si
‘SDRAM. Venturis FX, carea fost lansat în iulie, aavutca ţintă piața deafac-
„ eri.Eleste echipat cu procesorul AMD K6 la 233-MHz și folosește cipsetul
430 TX PCI de la Intel. Un disc hard Ultra DMA de 4-GB, un CD-ROM drive _
oS 12xsi ocartelă grafică Matrox Millenium 1 rotunjesc: caracteristicile aces- si
„ tuisistem bine echilibrat. Bus-ul său PCI la 66-MHz suportă trei socluri
DIMMși până la 256 KB de SDRAM. Un cache Lide64KBesteinclusincip |
zi ate, 32 KB pete ne rucţuni) iar pe pace de bază este a
68 BYTE Romania SEPTEMBRIE 1997
cositorit un cache L2 de 256 KB pentru pipeline-burst.
Designul plăcii de bază Digital, bazat pe standardul NLX, vă permite sa
culisați unitatea în exterior prin partea superioară a sistemului. Dacă
deșurubați cele trei șuruburi de pe carcasă puteţi accesa instantaneu com-
ponentele sale interne. Procesorul K6 oferă o compatibilitate completă cu
setul de instrucţiuni MMX. Ca și cipurile Pentium și Pentium MMX, acesta
folosește soclul de procesor ZIF Socket 7.
Cu un suport corespunzător din partea producătorului, un BIOS și un
modul de reglare a tensiunii, este posibil, teoretic, înlocuirea unui cip
Pentium sau Pentium MMXcu un AMD K6. Digital afirmă că în viitor e posi-
bil să ofere un kit de upgrade. Datorită unei compatibilități MMX șia unui
cache L1 mai mare decât al celui oferit de PI, AMD pretinde că logica cen-
trală a cipului său K6 prezintă mai puţine erori decât cea a PIl. Conform
AMD, cele 8000 de intrări stocate umbresc cele 200 de predicții de rami-
- ficări ale Pentium II, folosite pentru rularea unităților de execuţie. Pe scurt,
execuțiile sunt procesate eficient. AMD planifică lansarea unui cip set AGP
- în această toamnă și mai mulți producători de cipuri grafice planifica un
suport AGP pentru Socket 7 până la sfârșitul acestui an.
Deși nu este o stație grafică optimizată pentru jocuri 3-D intensive sau.
„pentru calcularea ecuațiilor ştiinţifice, Venturis se va descurca bine pe piața —
pentru care a fost proiectat: cea de nivel întreprindere. lar afacerile îi vor
"aprecia setul de funcții avansate și prețul redus.
Performanţe
Digital Venturis FX (233 MHz AMD K6)
Unicent Titania ll XLA (233 MHz Pll) |
Micron Client Pro XLU (233 MHz Pil)
IBM PC 300XL (266 MHz Pll)
DTK APRI-74M/K (266 MHz Ptl)
Dă
0 10 20 30 40 50 60
echipat cu un CD-ROM 16XSCSI, cu un
FOTOGRAFII: MICHAEL MAYO © 1997
NED REZULTATELE EVALUĂRII
CEL MAI BUN
DTK APRI-74.M/K266
Dintre toate sistemele Pentium II, APRI-
APRECIERE
Facilități
Tehnologie
74M/K266 de la DTK a obţinut cele mai bune
rezultate în testele benchmark, la diferențe
considerabile faţă de restul competitorilor,
remarcându-se în plus şi printr-un set solid de
funcţii şi utilităţi.
Utilitate
Performanta
PRET TEHNOLOGIE IMPLEMENTARE PERFORMANȚĂ FACILITĂȚI UTILITATE APRECIERE GENERALĂ
DTK APRI-74M/K266 $3500 Aki AA i AAA AAA Ai AAA
Dell Dimension XPS H266 $3179 Aki Ai Ai Ad Ai AAA AAA
IBM PC 300XL $2500 AAA Ardi AAA AA AO
Digital Celebris GL-2 6266 $4149 Arii dk Ai AAA Adi
Polywell Poly 7266TD $2495 AAA tok kik AAA AAA AAA AA AA
Compaq Deskpro 6000 $3199 AAA AAA kkkk kkk kk tk AAA
HP Vectra VL6/266 $3350 Ai kkkk AAA AAA AAA AAA
PREȚ MIC DAR AVANTAJOS APRECIERE
IBM PC 300XL Facilitati
Dacă preţul reprezintă un criteriu important,
vă recomandăm sistemul PC300XL dela IBM
- câştigătorul categoriei cel mai mic preţ. Ela
fost ajutat de un set excelent de funcţii și utili- ane
tati si un pret sub 2500$.
PRET FACILITĂȚI UTILITATE APRECIERE GENERALĂ
IBM PC 300XL $2500 AA AAA AAA tok kkk
Polywell Poly 7266TD $2495 tok kk toh kk tk kkk
Dell Dimension XPS H266 $3179 kkk AA kkkk
Xi 266 Pll Mtower SP $2499 kkk kk kkk
Unicent Titania Il 233 XLA $2399 kik kik kkk
DTK APRI-74M/K266 $3500 AAA AAA tok
Micron Millennia XRU $2839 tok AAA Ai
AAA AA Exceptional Ardi Foarte bine XA Bine AA Acceptabil A Slab
hard drive de 4.55 GB Cheetah Ultra-Wide
SCSI de la Seagate şi o cartelă grafică Matrox
Millenium II cu 8 MB de EDO RAM. În plus,
a venit echipat cu o cartelă de sunet Creative
Labs AWE 64 şi o interfaţă de rețea înglo-
bată. Designul său bine organizat permite un
acces uşor la părţile interne, contribuind la
creşterea utilității.
Cea mai bună valoare
Atunci când am ales câştigătorul celui mai
mic preţ, am evaluat sistemele punând
accentul pe preţ care a valorat 50% din
scorul general. 30% au reprezentat perfor-
manta, in timp ce utilitatea a reprezentat
10%. Funcţiile au acoperit restul de 10%.
www.agora.ro/byte/
Premiul pentru maşina PII cu cel mai mic
pret a fost câştigat de IBM PC 300XL. Acest
sistem la 266-MHz a obținut cele mai bune
punctaje în testele noastre benchmark. În
testele de utilitate și funcţii, chiar a strălucit.
O placă grafică Matrox Millenium II cu 32
MB RAM memorie video şi un hard drive cu
2.5-MB IDE a rotunjit valoarea acestui
câştigător. Manualul utilizatorului bine
scris, compartimentele pentru unităţi uşor
accesibil şi o cheie de blocare a cutiei au
sporit valoarea acestui sistem.
Ceilalți câștigători
Dimension XPS H266 la 266-MHz de la
Dell s-a clasat pe locul doi în evaluarea noas-
tră generală. El a obţinut un punctaj perfect
la evaluarea utilității şi a performanţelor
compuse. Setul puternic de funcţii include
un drive ZIP, o placă grafică Matrox Mille-
nium ÎI cu 8 MB de WRAM (Window RAM)
şi un CD_ROM drive 24x.
La un fir de păr în urma acestuia în cursa
pentru cel mai mic preţ s-a situat sistemul
Poly 7266TD la 266-MHz de la Polywell,
un sistem care combina un punctaj puternic,
in ceea ce priveste utilitatea si functiile, cu
performanţa medie. Această maşină include
un accelerator grafic $3 ViRGE 3D/GX cu
4 MB DRAM, un hard disc Maxtor de 5.1
GB îmbunătăţit şi un CD-ROM drive 16x.
SEPTEMBRIE 1997 BYTE România 69
erarilor interne, ceea ce îi =
comutarea jumperilor să fi ie un n adevărat coșmar.
TECH FOCUS
Investigand SEC
Cartusul SEC se află situat în Slotul 1 al plăcii de bază, o caracteris-
tică a proiectării care economisește din spaţiul și puterea sis-
temului. Dacă forţaţi deschiderea cartușului SEC, veți observa pla-
ca circuitului. Aceasta conţine UC-ul, cipurile de cache și unele din
circuitele logice de bază.
UC-ul este produs în tehnologie 0.35 microni și conţine 7.5 mili-
oane tranzistori. El folosește ambele busuri simultan datorită unei
microarhitecturi bazate pe superconducte. Conducta familiei P6
conţine 12 stagii și utilizează o execuţie dinamică cu două nivele
de pregătire și cu mecanism de predicţie a ramificării. Aceste teh-
nici de procesare combinată măresc performanţa softului, fiind
posibilă executarea a până la trei instrucțiuni per ciclu de ceas.
Tot cache-ul este localizat pe placa cartușului SEC. În contin-
uarea cipului UC se află cache-ul de 512 KB pentru conducta de
burst nivel 2; acest supliment îi permite lui Pll sa obtina perfor-
manţele sale îmbunătățite. Un cache de 32 KB nivel 1 (16 KB pen-
tru manevrarea datelor si 16 KB pentru manevrarea instructiu-
nilor) este integrat direct in cipul UC.
Alte avantaje ale cartusului SEC includ un pret de cost redus.
Intel poate folosi însă și tehnici de producţie obișnuite, care să nu
influenţeze negativ frecvențele de lucru; în acest fel, compania
poate oferi clienților costuri mai mici.
70 BYTE România SEPTEMBRIE 1997
CARTUȘE SEC
INENNNRISINAANAAU
LL
LILI]
512 KB pipeline-
burst cache,
de nivel 2
Pentium Il
nucleul procesorului
Terminatiile
rezistentelor
și condensatorilor
Conector de margine
(se fixează în Slotul 1
wwe
al placii de baza
466| O NOILVHLSNTII 9 NDISaA NaINVXMIL/SUIONVS ‘WILVYLSN
ezultatele testelor noastre
benchmark reprezintă perfor-
manța generală a sistemului
sub un SO impus (Windows
NT 4.0) şi aplicaţii intense. Domeniul
testelor de performanţă reflectă aplicaţiile
reale, folosite de cititorii obişnuiţi ai revis-
tei BYTE: Microsoft Access (test de baze de
date), C+ + 4.3 (test de limbaj), plus testele
Fourier (analiză de fişiere WAV), IMark
(teste grafice) şi testele noastre BYTEmark
de nivel jos. Nici unul din testele noastre
benchmark nu au inclus aplicaţii recompi-
late pentru tehnologie MMX - o caracte-
ristică pe care PII ar putea-o fructifica.
Teste de performanță
În testul Fourier, am rulat copii simultane
ale programului de transformată Fourier în
virgulă flotantă. Acest program realizează
o analiză spectrală a conţinutului fişierelor
WAV, rezultatele sale fiind puternic depen-
dente de puterea de calcul în virgulă flotan-
tă.
Al doilea test de procesor măsura cât de
rapid poate un sistem să proceseze (com-
pile şi link) o anumită cantitate de cod sursă,
prin rularea a două instanțe simultane ale
versiunii 4.3 Visual C++. Acest bench-
mark produce rezultate care depind de
asemenea de performanţa 1/O a discului
hard, deoarece deseori acesta trebuiă să
realizeze atât o scriere cât şi o citire.
Testul Access a fost singurul bench-
mark bazat pe aplicaţie din această suită.
Folosind compilatorul din Visual Test 4.0
de la Microsoft, am măsurat capacitatea
acestor sisteme PII de generare a unor tran-
zacţii multiple afaceri-baze de date. S-au
executat două iterații ale testului.
Testele video IMark au fost realizate la
o rezoluţie de 640x480 pixeli cu 256 de
culori, folosind driverul grafic preinstalat
al fiecărui producător.
Testul BYTEmark într-un singur fir a tes-
tat capacitățile UC, FPU şi a memoriei sis-
tem.
Utilitate și funcții
Am testat cele 17 mașini pentru evaluarea
utilității, prin focalizarea pe designul sis-
temului şi pe documentaţie. Designul sis-
temului este important; spre exemplu, am
evaluat cât de ușor este să îndepărtezi şi să
pui la loc carcasa sistemului. Usurinta reali-
zării upgrade-urilor (adăugare de RAM şi
dispozitive de stocare în masă) a adăugat
puncte la punctajul utilității. Am verificat
accesibilitatea sloturilor de memorie şi
www.agora.ro/byte/
8, 34 All Al Pe dona a,
spaţiul pentru cablare oferit de comparti-
mentele unităţilor. Sistemele care prezen-
tau conectori 1/O, blocaţi de sloturi de
extensie, au fost penalizate.
Am punctat suplimentar sistemele care
ofereau manuale de utilizare specifice
producătorului, cu un înalt grad de
cuprindere, care includeau diagrame ușor
la eliberarea mai multor sloturi de exten-
sie. Cantitatea de memorie video, cu care
a venit echipat sistemul, a reprezentat un
element critic în determinarea rezoluţiei de
afişare maxime. Am măsurat rezoluţia de
afişare maximă neîntrețesută, suportată de
fiecare sistem, împreună cu numărul ma-
xim de culori la acea rezoluție.
Contravaloarea banilor
35
9.0
8.5
8.0
Performanta/Utilitate/Facilitati
7.5
7.0
6.5
XPS H266.—-
IBM PC
300XL.
- 6000 (266). -7266TD (2
illenia 1000 (266) & Xi Pll Mtowâr (266)
8 Unicent Titania Il 266 XLP_
E illennia-XRU (266)
A Micron Client Pro.
XLU (233) i
-mUnicent
"Titania ll
Noe
Micron-Mille:
$5000 $4000
de folosit $i ofereau informatii tehnice actu-
alizate. Manualele cu un glosar si cu un
index au obținut un punctaj mai bun. Cele
care nu ofereau prea multe date despre
specificaţiile plăcii de bază şi despre sub-
sistemele grafice au obținut punctaje infe-
rioare.
Fiecare producător a completat un lung
chestionar, care i-a fost trimis pentru a
furniza o descriere detaliată a funcţiilor
fiecărui sistem şi a opţiunilor de suport. Am
cântărit fiecare funcţie şi am calculat un
punctaj general al caracteristicilor. Funcţii-
le legate de performanţă au inclus dimen-
siunea şi politica de scriere a cache-ului
secundar. Folosirea controller-elor dis-
curilor hard, a adaptoarelor de reţea şi a
adaptoarelor grafice pe placa de bază au dus
Apreciere : Performan $ 70% Utilitate 20% FacilitS i 10%
Dare eee NR EEE E TE pere ce eee pal
În final, trebuie remarcat că garanţia şi
politica de suport reprezintă ceea ce sepa-
ră în mod frecvent producătorii majori de
sisteme, de producătorii de mâna a doua.
[din BYTE, o publicaţie McGraw-Hill, Inc.
Adaptare - Daniel Moldovan]
Evaluările din acest raport prezintă aprecieri ale
redactorilor BYTE, bazate pe testele dirijate de
NTISL, Inc., prezentate într-un număr recent al
publicaţiei PCDigest. Pentru un exemplar al
raportului complet, contactaţi NTSL la 625
Ridge Pike, Conshohochen, PA 19428;
(610)941-9600; pe internet, editors@ntsl.com,
pentru abonament, contactati Computer Press
Agora s.r.l. Tg.Mures. BYTE Magazine si NTSL
reprezintă unitati functionale ale The McGraw-
Hill Companies.
SEPTEMBRIE 1997 BYTE Romania
71
SISTEME PENTIUM III
CARACTERISTICI
Compaq Dell Computer Digital Duracom Gateway Gateway Hewlett-Packard
ComputerCorp. Corp. Equipment Corp. Computtr 2000 2000 Co.
Deskpro 6000 Dimension Celebris G6-266MT G6-233 HP Vectra
6266/4200 XPS H266 GL-2 6266 Millenia 1000 VL6/266
Pretul configuratiei testate 1) $3199 $3179 $4149 $3699 $3279 $2748 $3350
MICROPROCESOR
Viteza UC (MHz) 266 266 266 266 266 233 266
Furnizor și versiune BIOS Intel/AMI Dell/AMLA01 Digital/ Intel/AMI AMI 1.00.01 AMI 1.00.01 HP/
1.00.03.DTO Phoenix 4.01/1 1.00.03.DTO VTOT VTOT Phoenix HD.07.00
Conform cu DMI V vV V oY ov Y Y
Setup ROM ROM Disk ROM ROM ROM ROM
BIOS shadowing ROM, video ROM, video ROM, video ROM, video
INFORMATI DESPRE ECHIPAMENT
Adaptor sunet/chip Compaq Yamaha ESS 1887 Yamaha Ensoniq Ensoniq ” Aztech MMPro
Business OPLSA-3 OPL3SA-3 PCI Audio PCI Audio 16V-APnP
Pro Audio/ YMS715
ESS 1868
CD-ROM/iteză Compaq OEM/ ToshibaXM- Mitsumi/16X Sony CDV-511/ Mitsumi FX- Mitsumi FX- Panasonic/
8X 6002B/24X 16X 240S/16X 240S/16X 24X
Fax/modem None U.S. Robotics/ U.S.Robotics/ U.S. Robotics/
3M Sportster 3MTelepathx2 3MTelepath x2
Placă de bază Compaq OEM intel Digital Equip Intel Portland Intel Portland Intel Portland Hewlett-Packard
54-25290-01
Tastatură/cheie Nu/e/ Nu/Nu Viv Nu/Nu Nu/Nu Nu/Nu Nu/e/
Posibilitate de parolă Keyboard, preboot Preboot Preboot Preboot N/A N/A Preboot
Jumper invalidare parole oY oY Da V
Fumizorul și modelul de disc Compaq OEM IBM Quantum Western Quantum Quantum Western
Digital AC3400 Fireball Fireball Digital AC
ST6.4AT ST6.4AT 34000
Furnizorul și modelul interfeţei ATA Intel Adaptec Intel Promise Promise Intel 440
de disc AHA-2940VW Ultra 33 Ultra 33 FĂ
Tipul interfeţei de disc Ultra SCSI EIDE SCSHI EIDE EIDE EIDE EIDE
Capacitatea discului (GB) 4.2 6.4 45 4 6.4 6.4 4
Timpul de acces disc (ms) 9.5 9.5 12 11.5 10 10 145
Arhitectura primara de sistem PCI ISA ISA ISA PCI PCI ISA
Locaşe partajate 1 1 2 1 1 1 2
Carcasă demontabilă fără scule AW ov Y oY d oY
VIDEO
Video pe placa sistem ov
Accelerator video Matrox MGA Matrox Matrox Matrox MGA STBViRGEGX STB Matrox
Millennium Millennium! MGA Millennium 2064-W ViRGE GX Millennium Il
Adaptor video (tip bus extern) 64-bit PCI 64-bit PCI 32-bit PCI 64-bit PCI 64-bit PCI 64-bit PCI 64-bit PCI
Memoria video/tipul 8/WRAM 8/WRAM 8/VRAM 8/WRAM 4/EDODRAM 4/EDODRAM 16/VRAM
Rezoluţia maximă fără extensie 1280 x 1024 1280x1024 1280x1024 1280 x 1024 1280 x 1024 1280 x 1024 1600 x 1200
PORTURI I/O
Numărul total de porturi seriale 2 1 2 2 2 2 2
Tipul de port paralel Îmbunătățit Selectabil Selectabil Selectabil Îmbunătățit imbunatatit Selectable
Porturi SCSI-2 0 0 1 0 0 0 0
Porturi EIDE 0 2 oe 2 2 2 4
MEMORIE
RAM max. pe placa de bază (MB) 256 256 256 256 256 256 192
Arhitectura memoriei (EDO) Fast paged Cached, Cached, paged, „ Fastpaged Cached, Cached, Cached
ECC RAM pe placa de bază o d o
SUPORT TEHNIC
Adresă Web http://www http://www http://www itt http://www http://www http://www http://www
W=da;N/A=nu e cazul; AAA Excepţional A 444 Foarte bine AA Bine
INP=nu se dau inforamtii 44 Acceptabil 4 Slab
1) Preţuri recomdate pentru S.U.A.
72 BYTE Romania SEPTEMBRIE 1997
Kingdom Micron Micron Polywell Premio Unicent Unicent Xi Computer
Computers Electronics, Inc. Electronics, Inc. Computers, inc. Computer, Inc. Technologies Technologies Corp.
Pinnacle 233 MillenniaXRU ClientProXLU Poly 7266TD Shadowhawk Titana 11266 Titana Il Xi 266 Pil
FX2 XLP 233 XLA Mtower SP
$2197 $2839 $2814 $2495 $3539 $3099 $2399 $2499
233 266 233 266 266 266 233 266
AMI1 AMI 19 AMI 1.00.02 AMI3 Award 1 AMI AMI AMI
.DTO5 G71595
Y Y Y Y Y Y
ROM ROM ROM ROM ROM Disk Disk ROM
ROM, video None None ROM, video ROM, video Video Video ROM, video
Ensoniq Audio Yamaha Yamaha Crystal Creative Labs Yamaha Yamaha Creative Labs
PCIES1370 OPL3SA OPL3SA 3D-16 Sound Blaster 16/ OPL3SA OPL3SA AWE 64
Vibras 16C
Goldstar CRD- Hitachi CDR- Hitachi CDR- Toshiba 6002B/ MitsumiFX-820S/ Toshiba/ Toshiba/ Panasonic
8160B/16X 8130/24X 8130/24X 16X 8X 24X 24X CR-58 S-B/24X
U.S.Robotics/ U.S.Robotics/ GVC 336i Phoebe 33.6 Phoebe 33.6
3M 1787/PC 3M 1787/PC voice/fax voice/fax
Gem-Light Intel Intel Portland Tyan51682D Premio212A Intel PD440FX Intel PD440FX Supermicro
GMB-P61AK-VO AN430TX ATX P6SKE
v/Nu Nu/Nu Nu/Nu Nu/Nu Nu/Nu Nu/Nu Nu/Nu Nu/Nu
Preboot Preboot Keyboard, preboot Preboot Preboot Keyboard, preboot Keyboard, preboot Preboot
Y oY oY ov
Seagate Maxtor Maxtor Maxtor Quantum Quantum Quantum Maxtor
Medalist Pro 6450 85210A8 85120A Atlas Il Fireball ST Fireball ST 86480A
QM 34320 QM 34320
Seagate PiiX4 N/A Intel 440FX Adaptec intel Intel Intel
ST 36450A AHA-2940VW $B82371SB
EIDE EIDE EIDE EIDE SCSI-2 EIDE EIDE EIDE
6.1 5.1 4 54 45 6.5 43 6.1
9.5 11 11 VES 8 10 10 9
ISA PCI ISA ISA ISA PCI PCI PCI
0 1 1 1 1 1 1 1
o oY o oY oY
o o
Dynamite 2000 2000 Pro 3D/GX MGA-2164 Mystique 220 Mystique 220 Millennium Uf
128-bit PCI 64-bit PCI 64-bit PCI 32-bit PCI 32-bit PCI 64-bit PCI 64-bit PCI 32-bit PCI
4/MDRAM 4/DRAM 4/DRAM 4/DRAM 4/WRAM 8/WRAM 8/SGRAM 8/WRAM
1280 x 1024 1280 x 1024 1280 x 1024 1280 x 1024 1280 x 1024 1280 x 1024 1280 x 1024 1600 x 1200
2 2 2 2 2 2 2 2
Selectabil Selectabil Selectabil Selectabil Selectabil Selectabil Selectabil Selectabil
0 0 0 0 1 0 0 0
2 2 2 2 2 2 2 2
512 256 256 1024 512 256 256 768
Paged, Fast paged Fast paged Paged, Fast paged Fast paged Fast paged Cached
fast paged Interleaved
V V oY V o a o
http://www.kingdom http://www hitp://www http://www http://www http://www http//www http://www
SEPTEMBRIE 1997 BYTE Romania
7-3
Ea:
Softul de videoconferinţă re-
prezintă cel mai important lu-
cru care va fi prezent în curând
pe piață. De David Seachrist
Să vezi si
să fi văzut pe IP
u există nici un dubiu asupra
faptului că videoconferinţa
reprezintă o ispita pentru rete-
lele IP. Indiferent ca folositi
Internetul sau intranetul de firma, video-
conferinta va ajuta sa folositi limbajul
trupului şi expresiile faciale pentru a vă face
înțeles sau pentru a înţelege mai bine ceea
ce doresc colegii dumneavoastră situați la
distanţă.
Examinarea celor două programe de
videoconferinta de sub Windows 95 a
scos în evidenţă o comunicaţie multime-
dia instantanee şi ieftină atât pe Internet cât
şi pe intranetul firmei. Cu toate acestea, au
rămas două obstacole de depăşit: bariera
lăţimii de bandă şi cea a utilității. În ciuda
unei performanţe satisfăcătoare pe linii de
28,8 Kbps, videoconferinţa ocupă o lăţime
de bandă prea mare. Şi în ciuda unei utili-
tăţi satisfăcătoare cu sisteme corespunză-
tor configurate, datorită faptului că video-
conferinţa IP se bazează pe un amestec de
tehnologii hard, soft şi de retelistica, vor
exista mai multe etape până ce totul va
deveni la fel de uşor ca un răspuns la tele-
fon.
Specificaţia H.323 a ITU (International
Telecommunications Union) reprezintă un
standard independent de producător, care
defineşte modul în care datele aplicaţiilor
de conferință audiovizuală pot fi transmise
pe o reţea deschisă folosind protocoale de
transport standard cum ar fi TCP/IP. Două
din cele mai recente produse care au ade-
rat sau sunt pe cale să adere la acest stan-
dard pentru conferințe audiovizuale sunt
CU-SeeMe versiunea 3.0 de la White Pine
Software şi NetMeeting versiunea 2.0 de la
Microsoft. Uneltele de colaborare care fac
mult mai utilă videoconferința cu aceşti noi
clienţi, includ table electronice (electronic
whiteboards) pentru a furniza spatii de
74 BYTE Romania SEPTEMBRIE 1997
desenare care pot fi folosite de toţi partici-
panţii; aplicaţii partajate pentru a permite
tuturor participanţilor să vizualizeze a-
ceeași fereastră de aplicaţie în timp ce aceas-
ta poate fi manipulată la un moment dat
doar de un singur participant; transfer de
fişiere şi chat.
Softul de colaborare IP bazat pe stan-
darde reprezintă în continuare o tehnolo-
gie nouă şi necesită o platformă cu PC-uri
bine echipate și configurate pentru conec-
tivitate IP. Pe lângă candidaţi cum ar fi
White Pine si Microsoft, piața mai prezin-
MANI BESI
IDEOCO FER]
tă o serie de produse de videoconferință
care se aflau însă în coada de aşteptare a-
tunci când am testat CU-See Me şi Net-
Meeting.
Aduse la un loc
Interoperabilitatea este numele jocului, în
special atunci când joacă şi IP. Nu contează
cât de bună este o soluţie proprietară de
videoconferinta, daca ea nu permite con-
lucrarea cu alte solutii de videoconferinta.
Pur si simplu nu va fi utila. In ciuda pre-
tentiilor de aderenta la H.323 venite din
partea producătorilor, nu am reușit să reali-
zez o interoperabilitate între CU-SeeMe şi
Apis:
interoperabilitate H.323 client-client ale
CU-SeeMe nu au fost disponibile decât
mult după ce am terminat testele. Această
facilitate va fi oferită prin produsul server
de videoconferinta MeetingPoint de la
White Pine. NetMeeting ofera o buna inter-
acţiune cu alți clienţi video însă CU-SeeMe
necesită MeetingPoint pentru a suporta
videoconferinte multipunct sau ferestre
multiple în cazul comunicării cu alți clienți
compatibili H.323. White Pine a anunțat
că la începutul anului viitor va fi lansată o
nouă versiune CU-SeeMe care le va permite
clienților o compatibilitate directă în afara
serverului.
O problemă pentru mulţi utilizatori o
reprezintă îmblânzirea scorpiei configu-
rației. Va trebui să puneţi la un loc intrările
video, intrările şi ieșirile audio, softurile şi
configuraţiile de reţea IP corespunzătoare
precum şi softul de videoconferinţă însuşi.
Chiar şi atunci când toate vin împachetate
laun loc nu e întotdeauna sigur că vor lucra
bine atunci când vor fi scoase din cutie. CU-
SeeMe si NetMeeting includ programe de
instalare şi ambele suportă orice placă de
capturi video care suportă standardul
Video for Windows. Softul de configurare
însă, s-ar putea să necesite o bună acordare,
în particular atunci când aveţi de-a face cu
ziduri de protecţie (firewall) şi administrare
de lăţime de bandă pe conexiuni LAN
interne.
Așa de multe standarde
Problemele de interoperabilitate depăşesc
graniţa compatibilităţii dintre clienţi:
Videoconferinţa este o aplicaţie complexă
care trebuie de asemenea să conlucreze cu
alte piese din rețea. Standardul H.323 pen-
tru comunicaţii audiovizuale multipunct
complică problema zidurilor de protecție
deoarece el foloseşte două conexiuni TCP
(Transmission Control Protocol) precum
NetMeeting de la Microsoft v4 permite dispune-
rea unei table electronice lângă un afișaj video.
9
V4 ANdy - Whiteboard - in use by 1 other(s)
Aplicatiile care partajeaz4 NetMeeting trebuie sa partajeze
Windows si cu alte aplicaţii cum ar fi video şi chat. 1
P133 64MB Colo
10Mbps Ethem
486/100 20 Baw
of times greater
blotchy
Lan
codecs
4
Ok Here goes.
Ohhhh 1 See now. Thanks!
Sure Thing.
Qh_you have your ruler hidden. Watch what! do to display it.
So kes sees ye ee ee i
maximize V/ord and | wall contol of Word and show you.
Select the type and area of conference you want to create.
¢ Group conference - An
aa aid za
interactive conference
and audio, and can use Chat (ind White Pine Board features.
: This is a multicast conference over:
Broadcast conference - A one-why conference where only you can send video and audio.
x en ee ee ee a but they cannot
: Note that even with bandwidth at hur 4
standard intemet connections video
686/133 12 BAW Caln: This is especially true when using ¢
p86/133 12 Baw ae And a sharp quick movement occu _
4%
Afişarea a mai mult de două ferestre îi oferă
lui CU-SeeMe un anumit avantaj în video-
conferința adevărată.
i
Area: [Subnet =] i
4
i
me
4
CU-SeeMe ca si NetMeeting foloseste
utilitare wizard pentru a simplifica
configurarea.
Imaginile sunt mici, însă cu un acces la ferestrele de chat și aplicaţiile partajate,
videoconferinta IP poate genera o creștere a productivității.
şi datagrame UDP (User Datagram Protocol)
pentru configurarea si mentinerea unei sin-
gure conexiuni. (TCP este un protocol de
transport ce foloseste circuite virtuale; UDP
este un protocol de transport fără conexi-
une.) In comparatie cu H.323, standardul
T.120 pentru conferință de documente mul-
tipunct şi partajări de date, necesită doar un
singur circuit TCP, astfel încât conexiunile
pentru acest tip de conferințe nu pun ace-
leasi probleme unui firewall ca şi comuni-
caţiile audio sau video. (Pentru mai multe
informaţii despre standarde vezi Tech
Focus.) Desi NetMeeting si CU-SeeMe pot
fi configurate sa lucreze folosind ziduri de
protectie, acest mod de lucru nu este trivial.
Pentru conferinţă, administratorul trebuie
să deschidă manual porturile TCP şi UDP
www.agora.ro/byte/
numai dacă zidul de protecţie permite în
mod explicit videoconferinta H.323.
Probleme de performanta
Latenta - intarzierea in receptionarea sem-
nalului dupa ce acesta a fost transmis - poate
afecta în mod real aplicaţiile care necesită o
mare lărgime de bandă. Un exemplu ar fi
aplicaţiile video în timp real: O întârziere
trecătoare de mai mult de o fracțiune de
secundă poate întrerupe serios recepţia. Net-
Meeting de la Microsoft prezintă un meca-
nism de acordare automatic care permite o
ajustare uşoară a calităţii audio pentru a com-
pensa variațiile lăţimii de bandă. CU-SeeMe
foloseşte o corecție anticipată a erorilor pen-
tru a compensa pierderea de pachete pe
Internet şi foloseşte întrețeserea pentru a
cobori la nivelul pierderilor de date actuale
atunci când pachetele sunt pierdute.
Deoarece fluxurile video şi audio necesită
o mare lățime de bandă, produsele de video-
conferinţă trebuie să comprime datele la
unul din capete, să le transmită în rețea şi să
le decomprime la celălalt capăt. Acest pro-
ces de compresie şi decompresie reduce cali-
tatea originalului, manifestându-se singur în
multe modalităţi: cu pierderi, cu semnale
audio sau video distorsionate. Codec-ul
reprezintă softul care comprimă și decom-
primă datele iar selectarea unuia în defavoa-
rea altuia presupune realizarea unor anali-
ze calitate versus performanţă, lățime de
bandă disponibilă versus dorinţa de inter-
operabilitate.
Aceste produse folosesc codec-uri diferite
SEPTEMBRIE 1997 BYTE România 75
Lab Report Software
Să vezi și să fii văzut pe IP
pentru a aloca o porţiune sigură din fluxul de
date pentru transmisiile audio, pentru lățimi
de bandă diferite. Aceasta ajută la păstrarea
-. calităţii audio fără a afecta calitatea video.
Oricine a folosit un receptor telefonic
ieftin ştie că la un moment dat doar o per-
soană poate vorbi iar când cineva de la un
capăt al conexiunii vorbeşte, persoana de la
celălalt capăt poate doar să asculte; aceasta
este comunicația half-duplex. Conferinţele
de tipul hands-free, full-duplex asigurate de
CU-SeeMe şi NetMeeting permit diferiților
participanţi să asculte şi să vorbească în
acelaşi timp, desigur cuun costal unei lățimi
de bandă suplimentare.
O soluție pentru îmblânzirea bestiei lățimii
de bandă este folosirea aşa numitelor produse
gardian care permit administratorilor de sis-
tem să monitorizeze fluxurile video şi audio.
Faţă de porţile (gateway) care rutează trafi-
cul H.323, gardienii monitorizează şi limi-
tează lăţimea de bandă a reţelei și permit
administratorilor să restricționeze lăţimea de
bandă folosită de aplicaţiile video şi audio.
Multe alte variabile pot afecta perfor-
manţa în timpul sesiunilor de videoconfe-
rință. Spre exemplu conectarea camerei
video la o placă de captură video este mult
mai eficientă cu resurse sistem decât prin
folosirea portului paralel. Am descoperit că
o mixare a conexiunilor LAN și de apel în
aceeaşi conferinţă a avut ca efect împot-
molirea sistemului de test.
Căutare disperată
Utilizatorii îşi pot înregistra informaţiile de
contact cu ajutorul unui server de locaţie
cum ar fi cel din Four11 sau cu ILS (Inter-
net Locator Server) de la Microsoft. Un
director bazat pe LDAP (Lightweight Direc-
tory Access Protocol), ILS va fi integrat in
Active Directory Services de la Microsoft.
Softul client semnalizează serverul de eveni-
mente cum ar fi modificări ale adresei IP, de
fiecare dată când utilizatorul realizează o
Vid
CEL MAI BUN
NetMeeting de la Microsoft
si CU-SeeMe de la White Pine
De data aceasta, e indiferent pe cine alegeţi
între NetMeeting şi CU-SeeMe. Însă dacă
aşteptaţi câteva luni, veţi avea mai multe pro-
duse din care veţi putea alege.
TEHNOLOGIE
_ Microsoft NetMeeting 2.0 AAA
White Pine CU-SeeMe 3.0 AAA
AAA AA Excepţional „kk Foarte bine AAA Bine AA Acceptabil
76 BYTE România SEPTEMBRIE 1997
eee NeoNet PROTOCOALE
Standarde pentru conferință
Standardele ITU (International Telecommunications Union) sprijină următoarele patru familii
de specificaţii importante pentru tehnologia realizării de conferinţe:
ITU H.320 a fost adoptată în 1990 și se referă la o suită de specificaţii a unor standarde
de configurare audio multipunct / videoconferinta pe retele comutate digitale. H.320 fi-
xeaza standardele pentru conferinta doar pe linii ISDN, stabilind un fundament pentru sis-
temul de conferinţe bazat pe camere care va fi foarte folositor organizaţiilor care-și pot per-
mite facilități deosebit de scumpe. ITU T.120 este parte a acestei suite.
ITU T.120 specifică protocoalele folosite pentru conferințele document multipunct și pen-
tru aplicaţiile de partajare de date și include funcţii cum ar fi partajări și schimburi de ima-
gini, table electronice și transfer de fișiere. Unele dintre aceste protocoale, mai importante
fiind cele care definesc modul de interacţiune al aplicaţiilor de conferinţă și modul în care o
fac, au fost deja ratificate. Alte protocoale din suită, în particular cele care definesc con-
trolul conferinţei și serviciile de rezervare nu au fost încă finalizate.
Suita standard ITU H.323 abordează comunicațiile audiovizuale multipunct. Ca și o exten-
sie a H.320, aceasta specifică serviciile pe ISDN și pe conexiuni telefonice ee precum
si pe interconexiuni IP si retele LAN Ethernet.
Suita standard H.324 abordează aplicaţii partajate audio, ae si de transmisii de date fo-
losind conexiuni de modem analogice punct-cu-punct pe linii telefonice obișnuite; această
specificaţie este analoagă suitei H.320 pentru conferință pe ISDN și circuite de date comutate.
O bună sursă de informaţii despre standardele ITU este la http ://www.itu
itu.ch, situl ITU.
Pentru informatii legate de interoperabilitatea intre produsele care suporta aceste stan-
darde, verificati http://www.imte.org, situl es International pentru Teleconferinta |
Multimedia.
conexiune. Conectarea directă la o video-
conferință poate fi realizată atât timp cât
aveţi o adresă IP a participanţilor. Folosirea
unui serviciu director nu este însă întot-
deauna necesară şi poate fi consumatoare de
timp. Astfel, unele directoare trebuie să-şi
pună la dispoziţie întreaga bază de date de
fiecare dată când realizaţi o interogare. Cu
toate acestea, în viitor ele vor suporta me-
tode de căutare mult mai eficiente.
Cum să decizi?
Am testat aceste produse urmărind uşurinţa
în folosire, ușurința în învăţare, calitatea sune-
tului şi varietatea de funcţii. Calitatea video
DE OC O NF E 1.
Bta LariiLocal]
sax is pigrec easy
WHITE PINE CU-SEEME
a fost măsurată subiectiv de către testorii
nostri NSTL iar rezultatele obţinute au făcut
parte din punctajele individuale privind
uşurinţa în învăţare şi utilizare. Testele
proiectate să evalueze ușurința în folosire și
ușurința în învăţare au presupus că produse-
Je vor. fi folosite în realizarea unei întâlniri
între participanți răspândiţi geografic.
White Pine CU-SeeMe
CU-SeeMe reprezintă bunicul sistemelor de
transmisie video prin IP. Deşi White Pine a
fost primul pe piață cu un grup de video-
conferință bazat pe IP, versiunea pe care am
testat-o necesită softul reflector bazat pe
IMPLEMENTARE UȘURINȚAÎN EVALUARE
UTILIZARE GENERALĂ
tk AAA AAA
AAA AAA AAA
A Slab
OTET IER
Să vezi și să fii văzut pe IP | Lab Report Software
server MeetingPoint pentru a realiza o inter-
operabilitate cu diverşi clienţi. Singurul pro-
gram pe care l-am testat şi care afişează
simultan imagini video pentru mai mult de
doi participanţi - CU-SeeMe, permite până
la 12 ferestre video într-o cameră virtuală de
conferinţe. Suplimentar puteţi avea ferestre
flotante deasupra acestora, deşi atât de multe
ferestre video deschise va consuma mult din
resursele sistemului.
Controalele oferite de CU-SeeMe permit
indivizilor să limiteze ratele de transmisie şi
recepție însă aceast lucru trebuie realizat pe
o bază client-client. MeetingPoint va per-
mite clientilor cu latime de banda mica sa
participe la conferinte care prezinta clienti
care au o latime de banda mai mare, oferind
fiecăruia şansa de-a accesa o anumită calitate
pe baza propriei lățimi de bandă. Interfața
de contact gen Rolodex a CU-SeeMe repre-
zintă un mecanism director foarte simplu
deși de fiecare dată înaintea realizării unei
conexiuni afişează o secvenţă de animaţie
ceea ce îl face greoi în timpul unei utilizări
de rutină. Serviciul de director este asigurat
prin Four11, iar White Pine adaugă suport
pentru standardul VersitvCard pentru trans-
ferarea informaţiilor EBC (Electronic Busi-
ness Card). Serviciul Four11 şi vCard oferă
un ajutor suplimentar pentru intrările direc-
tor. Suportul direct pentru directoarele
X.500 prin LDAP sunt planificate pentru
următoarea lansare.
Chat-ul integrat, disponibil de asemenea
cu NetMeeting ajută mult în aceste timpuri
când lăţimea de bandă redusă sau o conexi-
une de rețea marcată cu întreruperi limitează
transmisia unei informaţii audio sau video.
Chat-ul este bine integrat în interfaţa CU-
SeeMe. Acest mod include suport pentru
macrouri pentru realizarea unor comenzi
rapide pentru şiruri de caractere, filtre pen-
tru a ecrana expresiile violente şi o facilitate
privată pentru configurarea unei conversații
unu-la-unu, care se poate extinde ulterior şi
la o conversaţie particulară audio. CU-
SeeMe foloseşte 1.120 pentru a realiza
transportul datelor pentru table electroni-
ce şi transferul de fişiere.
Microsoft NetMeeting
Cu Microsoft NetMeeting indiferent de câţi
participanţi sunt la o întâlnire, doar două fe-
restre video pot fi afişate la un moment dat.
Audio și video sunt punct-cu-punct numai
dacă nu folosiţi un server de conferință H
.323; partajarea aplicaţiilor, tablele şi chat-ul
sunt toate multipunct fără un server supli-
mentar; pentru audio şi video puteţi comuta
între membrii unei conferinţe fără a fi nevoie
de un server. Astfel, participanţii trebuie să
ceară folosirea unei ferestre video atunci când
doresc să fie văzuţi de alți participanți.
CEO NERERIN
Microsoft
NetMeeting
FUNCȚIE
White Pine
CU-SeeMe
PARAMETRI PROGRAM
Tablă multipunct v
Video si audio multipunct simultan
Acces telefonic via porti H.323 v
Suporta unitati de control multipunct H.323 v
Suportă soft server video reflector
Suportă intern difuzare de grup IP și video
V
v
AGENDĂ/SERVICIU DIRECTOR
Atașare fişiere grafice (poze) și URL-uri la cartele de adresă .
Răspuns automat opţional V
Apel administrare (apel așteptare și blocare)
Apel istoric
Include soft client serviciu director
Suportă servere director LDAP
Ss.
SNS
Ss
CONFERINŢE VIDEO
Ajustează dimensiunea video în timpul apelului
Îngheaţă cadru
Ingheaţă cadrul cu o notificare
Audio full-duplex si half-duplex
Ajustează calitatea transmisiei pe timpul apelului
Controale ale acordării audio și video
ss ssss
~S& SS
TABLE
Table separate private si publice
Copy/cut/paste si clear
Unelte de zoom si marire
Import fișiere grafice
Import grafice via clipboard v
Import fisiere de prelucrare text
importa fișiere de calcul tabelar
Export fișiere grafice
ss
Salut atunci persoana care se va uita
la cartea ei poştală va vedea cuvântul astfel: Salut.
Avem posibilitatea să verificăm cum ar arăta cartea în cazul în
care l-am trimite, iar dacă am greşit ceva sau nu ne place aspectul,
apăsând butonul Edit putem din nou să-l edităm și să modificăm
până o vom găsi acceptabilă.
Apăsând butonul Send, programul va înştiința persoana la care
am trimis cartea printr-un e-mail că a primit o carte poștală pe care
o poate citi vizitând pagina WWW specificată de pe Internet. Aces-
te cărți poştale de obicei sunt păstrate o lună, după care se şterg.
Oficiul poştal virtual scris de mine deocamdată conţine puţine
imagini, dar conform interesului acordat, programului aceasta
poate fi îmbogăţit.
Totuşi dacă suntem mai pretenţioşi compania Riffnet ne oferă
un oficiu poştal virtual foarte bogat în poze, oferind totodată posi-
bilitatea să alegem o limbă, diferită de cea engleză, prin care pro-
gramul să comunice cu noi. Avem posibilitatea să asociem cărții
poştale şi un mic cântecel, o melodie, acesta putând fi ascultată în
cazul în care dispunem de o placă de sunet.
În cazul în care nu ne plac imaginile sau cântecele oferite, putem
să specificăm una proprie. Un alt aspect care merită menţionat este
faptul că putem să căutăm imagini după cuvinte cheie. De exemplu,
dacă dorim poze cu munți, lansăm căutarea specificând cuvântul che-
ie „mountain“, iar programul ne va afişa câteva poze conţinând munți.
Încercaţi să trimiteţi cărţi poştale virtuale unor prieteni, şi veţi
vedea că vor fi plăcutimpresionaţi, însă dacă aveţi posibilitatea, banii
necesari şi timpul, vă recomandă trimiteţi cărți poştale tradiționale.
De acestea putem să ne bucurăm și să le recitim și după 50 de ani,
însă cele virtuale dispar după o lună, în cazul în care nu le salvăm. E
Péter Csaba este student si webmaster la Universitatea „Petru Ma-
ior“ din Tg.Mureş. Poate fi contactat la cpeterQuttgm.ro.
84 BYTE România SEPTEMBRIE 1997
he ăi
ca FLAMINGO computers f'
Cartea poștală virtuală
Web Master
Programul Perl
Să vedem însă cum se poate scrie un program care se comportă ca un
oficiu poștal virtual. După cum probabil aţi ghicit, limbajul cel mai simplu
și ales pentru scrierea programului este deja binecunoscutul Perl.
Partea principală a scriptului CGI este foarte simplă. Primind ca para-
metru comanda care trebuie executată, acesta apelează funcţia cores-
punzătoare comenzii. În cazul în care nu este specificat nici un para-
metru, aceasta înseamnă că programul este apelat pentru prima dată, și
în cazul acesta trebuie să afișăm prima pagină.
if ( defined $regdatal'cmd') )
{
_ = $regdata{'cmd'};
SWITCH: {
if (/*dir/) {
&PrintPostcardHead('Choose a
picture to sent to your friend.');
&PrintDirectoryContent($regdata{'dir'}):
last SWITCH;
)
1feC/Aedit/) 1
&PrintPostcardHead('Make Your
Postcard"):
&PostcardEdit;:
last SWITCH;
}
if (/*preview/) {
&PrintPostcardHead(' Your
Postcard Looks Like"):
&PostcardPreview;
last SWITCH;
)
if (/Asend/) |
&PrintPostcardHead('Your
Postcard has been sent');
&PostcardSend;
last SWITCH;
if (/*get$/) {
&PrintPostcardHead( "Postcard
to $regdatat'to') from $regdatal'from'!”);
&PostcardGet;
last SWITCH;
)
if (/*getform/) |
&PrintPostcardHead("Get your
Postcard”):
&PostcardGetForm;
last SWITCH;
> } za
$nothing = 1;
else
# It was the first request so send the first
age
SprintPoctcavaheser: "Welcome tp our virtual
post office!');
&PrintWelcome;
) 3
După cum am precizat anterior, imaginile pe care le oferă acest servi-
ciu sunt grupate în categorii. Fiecare categorie este de fapt numele unui
director pe care programul îl citește automat de fiecare dată când este
apelat, astfel dacă vrem să introducem o nouă categorie de imagini, nutre-
buie să modificăm programul, fiind necesar doar crearea unui director nou
intr-un anumit loc, cu numele noii categorii. De exemplu:
felix:/var/lib/httpd/PostcardCategories>1s
Beatches
Flowers
Targu_Mures
felix:/var/lib/httpd/PostcardCategories >mkdir Art
Categoriile de imagini existente au fost Beatches, Flowers, Tar-
gu_Mures, însă după crearea directorului numit Art, programul căutând
după categorii va găsi noua categorie numită Art.
opendir(DIR,'/var/lib/httpd/PostcardCategories") ||
die "$0: cannot opendir
/var/lib/httpd/PostcardCategories ($!)\n";
foreach (readdir DIR) {
# $_ contine numele directorului
next fi (ANE;
if (-d /var/lib/httpd/PostcardCategories.$_)
{
print "$_\n";
)
)
closedir DIR;
Structura unui astfel de director este de felul următor: s_numefisier-imagi-
nea micșorată care apare când trebuie să selectăm dintr-o mulțime de ima-
gini, b_numefisier - imaginea care va apare pe cartea poștală, numefisier.bxt
- în acest fișier putem scrie o descriere a imaginii, care va apărea deaupra
acestuia.
felix:/var/lib/httpd/PostcardCategories/Targu_Mures>
Is
b_primaria.jpg
S_primaria.jpg
primaria.txt
Adaugarea unor noi poze intr-o Galaga de imagini nici in acest caz
nu necesita modificarea scriptului existent.
$directory = '/var/lib/httpd/Post
cardCategories/Targu_Mures/':
opendir(DIR, “$directory") || die "$0: cannot
opendir $directory ($!)\n";
foreach (readdir DIR) {
HEX / AN Lf:
# $_ contine numele fişierului
if ((-f $directory.$_) && ( $. =~ /4s_/ )) {
($name = $_) =~ s/\..*$//; # scapadm
de extensia .gif sau .jpg ca să generăm
numele fişierului în care există des
crierea - $name ar arăta astfel s_primaria
$description =
$directory.substr($name,2).'.txt';
$ok = open(F, $description); 4 testăm
dacă avem descriere despre imagine (acesta
putând fi opţională)
if ($ok) |
$description_text = ;
close(F);
} else {
$decription_text = '';
}
1 schimbăm s_ în b_ în variabila $_
- ca URL -ul să arate la imaginea mare
SENSO ED: fe
print "";
s/*b_/s_/; # imaginea pe care-l
arătăm trebuie să fie cea mică
print "
$description_text
";
}
)
closedir DIR;
Celelalte părţi din program necesită mai multe cunoștințe de HTML , însă
dacă nu dispunem de aceste cunoștințe acestea pot fi realizate cu un edi-
tor de HTML, urmând ca apoi să introducem codul HTML în scriptul nostru
de Perl.
SEPTEMBRIE 1997 BYTE România 85
Januageydy
DODGE
ÎMI
ey eneajay
~Nywag apaday
leyy ajeg aiej eulu
Pentru o viata mai bună, mulţi oameni muncesc din greu. Dar, tot pentru O viaţă
mai bună, efortul nostru cotidian trebuie organizat și optimizat. De Mircea Sabău
Algoritmi
upă o vacanță mai mult sau mai puţin însorită, a sosit mo-
mentul să reintrăm în tiparul activităţilor noastre. Şi, cum
orice activitate eficientă presupune un anumit grad de
stereotipie logic organizată, vă invit în lumea algorit-
milor. Colecţia de algoritmi, pe care doresc să o prezint, concentrează
coduri destinate problemelor de optimizare generală şi combina-
torică, a teoriei grafurilor, programării liniare, satisfacerii clauzelor
precum şi problemelor de criptare/decriptare, sortare, căutare rapidă.
În cele ce urmează, voi încerca o grupare tematică a siturilor.
Biblioteci pentru optimizare generală
Serverul NEOS (Network-Enabled Optimization System)
http://www.mcs.anl.gov/home/otc/Server
Serverul NEOS foloseşte resurse de calcul şi algoritmice pentru
rezolvarea automată a problemelor de optimizare pe baza unui set
minim de date furnizate de utilizatori. Aceştia își pot rezolva proble-
mele de optimizare prin Internet, fără să descarce cod. Gama de
te opinie uiduna: adi adi de aletinadici dudiae îe
ere mer cama sony nar perp ren ety
probleme constă din optimizări cu şi fără constrângeri, progra-
mare liniară şi neliniară , programare liniară şi stohastică, progra-
mare semidefinită şi optimizări în reţea.
Biblioteci de programe și algoritmi genetici
Aceste programe sunt scrise în C sau C++ şi oferă interfeţe, tipuri
de date şi structuri orientate obiect, metode de selecție, mutații, scalări
precum şi numeroase exemple demonstrative. Ele sunt accesibile la
adresele: ftp://info.mcs.anl.gov in /pub/pgapack/pgapack.tar.Z (PGA-
Pack), Galib http://lancet.mit.edu/ga/, ftp://lancet.mit.edu/pub/ga/
(Galib) şi ftp://FTP.TECHNION.ACI.IL in /pub/supported/ie/bani
(gp).
Calcul combinatoryic, grafuri Bond si
sisteme cu evenimente discrete
LEDA
ftp://ftp.mpi-sb.mpg.de in /pub/LEDA
Este o bibliotecă de tipuri de date şi algoritmi, destinată calculu-
www.agora.ro/byte/
lui combinatoric, scrisă în C+ +. Oferă specificaţii clare şi precise
pentru fiecare tip de date şi algoritm (mulţimi Fibonacci pentru
cozi cu prioritate, arbori red-black și tabele hash pentru dicționare
etc.). Chiar dacă LEDA nu se află în domeniul public, poate fi uti-
lizată gratuit în scopuri de cercetare şi educaţionale.
SSS
ftp://ftp.technion.ac.il at /pub/supported/ie/bani
Este o biblioteca de coduri C pentru simularea sistemelor cu eveni-
mente discrete. Biblioteca permite construirea unor coduri de simu-
lare voluminoase. Există aici numeroase fişiere demonstrative. De
asemenea, biblioteca mai conţine fişierul DA.EXE, un software
destinat alegerii distribuţiei corespunzătoare pentru simulări.
20-SIM
http://www.rt.el.utwente.nl/2osim/clp.htm
Este un pachet de simulare bazat pe grafuri Bond, dotat cu notații
fără domeniu pentru elemente şi fluxuri de energie, util în domenii
variate. De asemenea, sunt permise şi semnale de control. În
viitoarele versiuni, vor fi suportate şi modele fizice ideale.
Programare liniară generalizată
Programare liniară prin metodele simplex,
dual-simplex şi barierei logaritmice
Implementări eficiente ale acestor metode pot fi găsite la http:
//ecolu-info.unige.ch/~logilab/gondzio/ , sau http://ecolu-
info.unige.ch/~logilab/software/hopdm.html (HOPDM),
ftp://ftp.uu.net sau ftp://ftp.sterling.com, in /usenet/comp
-sources.misc/volume7 (minit) si ftp://orly1.snu.ac.kr/pub
/sal_sw/lpako/ (LPAKO).
EEE oe .
ILPS
http://ford.ieor.berkeley.edu/-ilan/project.htmi
Este un server WWW care permite utilizatorilor să-și rezolve proble-
mele de programare liniară prin metodele simplex şi dual simplex.
SEPTEMBRIE 1997 BYTE România 87
Ce-i nou
Sisteme de operare
Metoda punctului interior
Aceste programe implementează metodele de punct interior (afină
primară, afină duală, afină primară-duală, barierei şi barierei pri-
mară-duală) în limbajul C şi rulează pe staţii IBM, Silicon Graph-
ics, HP, Sun şi platforme Dos sau altele cu compilatoare C. Le
puteţi găsi la adresele: ftp://elib.zib-berlin.de în /pub/opt-net/soft
ware/loqo /1.08 (LOQO) şi ftp://orly1.snu.ac.kr/pub/sal_sw/lpa
bo (PLABO).
Instrumente Matlab
LIPSOL
http://math.umbc.edu/-yzhang/lipsol/
ftp://ftp.math.umbc.edu in /pub/zhang/lipsol/vo.3
lubitorilor de Matlab le pot sugera o colectie de instrumente Mat-
lab, destinată problemelor de programare liniară, şi care oferă
diverse metode de calcul şi algoritmi. Rulează pe platforme DEC
(Ultrix), SGI (IRIX 4.1 şi 5.2) şi Sun Sparc (SunOS 4.1.3).
Programare gener ală cu numere întregi
opbdp
http://www.mpi-sb.mpg.de:/guide/staff/barth/barth.htmi,
ftp://ftp.mpi-sb.mpg.de
Este o implementare in C+ + a unui algoritm de enumerare pen-
tru rezolvarea problemelor de optimizare liniară 0-1. Reprezintă
o generalizare a algoritmului Davis-Putnam pentru rezolvarea
problemelor de satisfacere propozițională în formă clauzală. Există
aici şi un fişier postscript mpii952002.ps care descrie tehnicile uti-
lizate. Programul rulează pe platforme Unix.
Teoria grafurilor
În legătură cu teoria grafurilor, puteți găsi o adevărată colecţie de
programe şi algoritmi despre teoria computaţională a grupurilor,
drumuri Hamiltoniene, enumerare parțială, ponderea maximă în
grafuri neorientate, cardinalitate, trasare înapoi, arbori minimali,
operaţii pe structuri de date arborescente dinamice şi multe altele.
Încercaţi adresele: ftp ://dimacs.rutgers.edu in /pub/gap (GAP),
ftp://netlib.att.com in /netlib/toms (GROW, HC, MSTPAC),
ftp://dimacs.rutgers.edu în /pub/challenge/graph/contributed
/pardalos (pardalos3, pardalos4), ftp://dimacs.rutgers.edu in
/pub/dsj/clique (dfmax, dmclique), ftp://elib.zib-berlin.de in
/pub/mathprog/matching/weighted (wmatch), ftp://elib.zib-
berlin.de in /pub/mathprog/matching/card1 si /pub/mathprog
/matching/card2 (match, cardmp), ftp://dimacs.rutgers.edu in
/pub/netflow/matching/cardinality/solver-2 (cardmatch),
ftp://dimacs.rutgers.edu in /pub/challenge/graph/contributed/mor
genstern/morgenstern3 (color_loop) şi ftp://dimacs.rutgers.edu
in /pub/netflow/program_tools/dynamic_trees (dyn_tree).
88 BYTE Romania SEPTEMBRIE 1997
Probleme de satisfacere
Acesti algoritmi rezolva problemele de decizie pentru testarea satis-
facerii clauzelor şi includ proceduri pentru selecția primului atom
minimal, a unui atom în cele mai scurte clauze pozitive, aunui atom
cu cele mai multe apariţii, a unui atom cu cea mai mare pondere
Jeroslow-Wang şi proceduri de căutare în adâncime Davis-Put-
nam. Implementările acestor algoritmi pot fi accesate la adresele
ftp://dimacs.rutgers.edu în /pub/challenge/sat/contributed/zhang
(sato), ftp.cis.upenn.edu in /pub/freeman/posit-1.0.tar.Z (POSIT)
şi ftp://esda.inesc.pt/pub/users/jpms/soft/nsat/ (NSAT/GRASP).
Probleme de criptare/ decriptare,
codificare, căutare și sortare
Amatorilor de programare în C, le potrecomanda adresa http://www
„dc.ee/Files/Programm.C, unde, pe lângă altele, vor putea găsi coduri
sursă ce implementează algoritmii Uuencode/decode (UUXFER20
„AR]), codificarea s pentru criptarea şi decriptarea fişierelor (SCO
DER.AR)J), sortarea Pigeon (PIGEONS.AR)), criptarea/decriptarea
DES rapidă (CDES.AR]), căutarea extinsă Boyer-Moore (EXTBOY
„AR]) şi alţi algoritmi de manipulare a arborilor binari şi red-black.
Concurs de programare ACM
http://www.cs.pub.ro/acm/
omu |
PL ale 7 98 home page of |
_ Te A Sahat xen ein
=
În final, aş dori să vă semnalez că, în perioada 17-18 octombrie
1997, la Universitatea Politehnică Bucureşti se va desfășura faza
regională a Concursului de Programare ACM, la care vor partici-
pa echipe din țările din zona de sud-est a Europei (Albania, Bul-
garia, Croaţia, Grecia, Moldova, România, Slovenia, Turcia,
Ucraina, şi Iugoslavia). Concursul constă în rezolvarea unui set de
probleme în timp limitat. ACM (Association for Computing
Machinery, http://www.acm.org/), fondată în anul 1947, este o
organizaţie ştiinţifică; şi educațională internaţională ce are ca scop ©
promovarea ingineriei, ştiinţelor, artelor şi aplicaţiilor pentru
tehnologia informației laun înalt nivel etic şi profesional, fiind una
dintre cele mai vechi organizaţii de acest gen. În acest an, prima
rundă a concursului de programare va începe cu întrecerile regionale
în toate colțurile lumii, care se vor desfăşura în perioada septem-
brie-noiembrie 1997. Câştigătorii concursurilor regionale vor
ajunge în faza finală care se va desfăşura în Atlanta, Georgia. Cei
interesaţi de acest concurs pot obţine informaţii de la dl. prof. Nico-
lae Țăpuş (e-mail: ntapus(Qacm.org), coordonatorul principal al
acestei faze regionale sau vizitând pagina Web indicată.
Mircea Sabău este redactor la revista BYTE România. Poate fi contac-
tat la adresa: msabauQagora.ro.
ChemOffice
entru chimistii anilor '90 exist4
un număr din ce in ce mai mare
de pachete de soft dintre care
pot sa aleaga. Cele mai des uti-
lizate programe sunt cele pentru desenarea
structurilor chimice. O altă categorie de
programe este a celor care permit mode-
larea şi vizualizarea dinamicii moleculare,
măsurarea distanțelor atomice, calculul
anumitor informaţii ale atomului.
Un astfel de pachet de programe este şi
ChemOffice de la CambridgeSoft Corpo-
ration.
Acesta include CS ChemDraw, CS
Chem3D, CS ChemFinder și opţional CS
MOPAC.
ChemDraw
Programul există în două variante: Chem-
Draw Pro şi ChemDraw Std. Acestea pot fi
folosite pentru vizualizarea, crearea unor
structuri chimice bidimensionale. Furnizea-
zăunelte specializate pentru desenarea struc-
turilor chimice, a reacţiilor și a mecanisme-
lor de reacţie. Fiind compatibil cu WWW,
poate fi folosit pentru a transmite structuri
şi mecanisme chimice într-un mod mai
comod decât a le afișa într-o pagină Web, se
pot efectua calcule importante obtinandu-
se informaţii chimice ca: formula empirică,
compoziţia elementară, de asemenea mai
conţine un analizator de sintaxă chimică.
Varianta ChemDraw Pro conţine toate fa-
cilitățile variantei standard, permiţând în
plus definirea unor abrevieri de structuri, in-
tegrarea informaţiilor din bazele de date de
tipul: MACCS, CAS, ISIS Base, ISIS Host,
SMILES.
Chem3D Pro
Chem3D Pro ne permite să explorăm natu-
ra tridimensională a moleculelor pentru a
obține o privire asupra comportării acesto-
ra. Putem găsi astfel configurații cu energie
minimă observând totodată dinamica mo-
leculară. Cu o scurtă incursiune pe dome-
niul proteinelor, se pot identifica reziduurile.
Programul are o serie de instrumente
pentru desenarea și rotirea moleculelor. O
ChemOjffice integrează ChemDraw, Chem3D şi ChemFinder pentru a oferi
chimiștilor un instrument puternic de proiectare şi analiză. De Budai Lâszl6
=
seme!
ji NS 01300300
- =
= as
Cu programele incorporate, ChemOffice
este un instrument adecvat cerintelor curente.
moleculă desenată în ChemDraw poate fi
copiată (prin clipboard) în Chem 3D şi
analizată tridimensional.
MOPAC Pro
Este un instrument de calcul semiempiric
care lucrează împreună cu Chem3D Pro. A-
cesta calculează proprietăți ale moleculelor,
optimizează stările de tranzație şi geometria
de echilibru, folosind avantajele funcţiilor
AMI, PM3, MNDO si MINDO/3.
ChemFinder
CS ChemFinder Pro este destinat a organi-
za activitatea de cercetare în chimie sub toate
aspectele: de la studiul structurilor chimice
la informaţii despre diferite substanţe chimi-
ce. Pe lângă faptul că este o bază de date per-
sonală, ChemFinder permite schimbul de
date pe intranet sau Internet, precum si
interogarea unor baze de date externe.
Cu ChemFinder se pot crea baze de
date , formulare, notite de laborator elec-
tronice. Modelele desenate se copiază în
ChemFinder, acesta calculând automat for-
__mula chimică şi masa molară a acestora.
Datele pot fi regăsite în urma unor căutări
după anumite criterii.
Pachetul ChemOffice poate rula pe
următoarele platforme minime:
* Windows: 386 , 8MB RAM, Windows
3.1; 16MB Windows 95 sau NT
* Macintosh: 68020 sau PowerMac, 8MB
* UNIX: SunOS$4.1 cu Motif; Solaris 2.x
cu Motif; SGI IRIX 5.x cu IRIX X11
Alte informaţii despre program se pot
găsi la adresa http://www.camsoft.com
Informaţii despre alte pachete de progra-
me legate de chimie, se pot găsi la următoa-
rea adresă: http://nhse.npac.syr.edu/chem-
istry/. Aici se găseşte o listă, care împarte
programele pe categorii în funcţie de
domeniile de utilizare ale acestora.
Budai Lăszl6 este redactor la Byte România.
Poate fi contactat la adresa lbudaiQagora.ro.
SEPTEMBRIE 1997 BYTE România 89
Îți lipsesc. Ti le-ai dori. Resursele pentru instruire și certificare
Microsoft. Norocul tău, Microsoft Press are soluția; seturile de
resurse și seturile de instruire în ritm propriu care te ajută să înveţi despre
ceea ce ai nevoie, atunci când ai nevoie să știi. Indiferent că dorești să-ţi
per fec ti onezi cunoștințele anterioare sau să-ţi creezi un
program de instruire într-un ritm propriu, vei afla că mai
ai şi timp pentru viaţa ta.
Microsoft? Windows NT 4.0 Microsoft® SOL Server Server Microsoft® Windows NT® Microsoft® Windows NT?
Network Administration Training Training Server 4.0 Resource Kit Workstation 4.0 Resource Kit
1-57231-439-7 1-55615-930-7 1-57231-344-7 1-57231-343-9
Microsofi- Press
ESUPUTER PHESS
Cărţile pot fi răsfoite, comandate și cumpărate de la librăria noastră deschisă la sediul firmei Forte Computers, str. Lipscani nr. 102 precum și de la
următoarele magazine din Bucuresti: Flamingo Computers, Bd.N. Titulescu nr.102, Raffles Computers Shop, Calea Victoriei nr.25; Librăria "Noi, sala Dales;
Librăria Humanitas din Pasajul Cretzulescu (lingă magazinul Muzica); MIVAS: Pasaj Universitate; TIMISOARA: XCOMZ1 SRL Bul. Regele Ferdinand nr. 2
Puteţi comanda orice carte de la: Computer Press Agora s.r.l., C.P 94 0P49, București, fax: 01-3309285
Important: Lista completă de preţuri poate fi obținută via BBS 065-210780 (login: bbs, terminal: ANSI, ...)
Noile tehnologii push aduc în Internet modelul consacrat de televiziune. Aceasta
înseamnă şi publicitate. Dar şi telecomandă. De Peter Csaba
Web Remote Control
eb Remote Control (WCR)
permite utilizatorilor să accese-
ze paginile Web la fel de sim-
plu cum accesează canalele TV:
cu o telecomanda. Utilizatorii pot acum să
schimbe canalele cu telecomanda şi, când
găsesc unul interesant, pot apăsa pe butonul
Play pentru a accesa situl respectiv. Uti-
lizatorii de toate nivelurile, chiar şi copiii,
pot acum să acceseze o valoroasă bibliotecă
pe care o au în faţă: Internetul. WRC face
acest lucru simplu, fără a necesita căutări
complexe pentru a găsi informaţia. Apă-
sând doar un buton poți vedea programul
de la ProTV, apăsând un altul poţi asculta
un post de radio de oriunde din lume, iar
un alt buton apăsat îţi permite să vizitezi
Luvrul sau să te plimbi pe malurile Senei la
Paris. Cu o apăsare de buton, poți să citeşti
ziarul preferat, să afli ultimele informaţii
de pe piaţa financiară.
WRC oferă posibilitatea părinţilor să
defineăscă domeniul de pe Internet pentru
copii lor. Prin simpla selecție a unei baze de
date cuprinzând canalele, părinții potacum
controla informaţiile la care are acces copilul
lor. Marele beneficiu al acestei metode este
că părinții şi nu alţii hotărăsc care canale sunt
valoroase pentru copilul lor.
Internetul a devenit un mediu multime-
TECHIEOC US OBIECTE
Obiectul Web Site
dia cu sunete, animații, imagini şi text. Pro-
gramele de căutare pe Internet nu au fost
concepute pentru un astfel de mediu, ele
având eficienţa doar în căutare de text.
Daca un utilizator vrea să asculte o staţie de
radio aflată pe Internet, acesta va trebui mai
întâi să caute postul de radio respectiv, după
care — urmărind nişte legături — va reuşi să
se conecteze la postul de radio dorit.
Această metodă este ca şi cum am schimba
postul de radio sau canalele TV manual,
însă în ziua de azi fiecare dintre noi foloseşte
o telecomandă. WRC aduce exact acest
model pentru Internet. Dacă doriţi acces
Obiectul „Web Site“ este un obiect asociat unui sit WWW real.
Atributele unui obiect „Web Site":
Nume (Name) - o scurtă descriere; puteţi da nume cu înţeles oricărui obiect, vaga
în felul acesta mult mai ușor de celelalte.
Comentariu (Comment) - puteţi asocia obiectului un comentariu. Puteţi scrie aici orice infor-
matie care poate fi utilă în regăsirea ulterioară a obiectului.
Adresa Web (Web address) - este adresa pe care o are orice sit Web (adică URL-ul); de exem-
plu http://www.sit-intl.com.
Data ultimei incarcari (Last Refresh) - initial este data la care a fost creat situl Web, dupa care
această dată este actualizată la data ultimei reîncărcări.
Obiectul Web Channel
„Obiectul „Web Channel” este un obiect „Web Site” localizat în Web Preset Channel root.
Acest tip de obiect dă posibilitatea asocierii unui „Web Site“ cu un număr de canal.
Numele acestui obiect este chiar numărul canalului căruia îi este asociat.
Acest tip de obiect este foarte ușor de manevrat cu ajutorul telecomenzii.
rapid la o pagină de Web, puteţi asocia
această pagină cu un „canal“ al telecomen-
zii. Câtă vreme fereastră de browser este
activă, apăsați butonul de programare şi
apoi introduceți numărul canalului pe care
vreți să stocați pagina respectivă (procesul
este foarte asemănător cu celal programării
canalelor la televizor). În tot timpul stocării
canalului, veţi fi asistat de mesaje într-o fe-
reastră aflată în partea de jos a aplicaţiei.
Web Remote Control este o aplicaţie
MDI (Multiple Document Interface), care
permite navigarea şi încarcarea simultana
a mai multor pagini de Web. WRC oferă
posibilitatea de a avea mai multe docu-
mente deschise la un moment dat (de exem-
plu situri Web). Cu ajutorul acestui pro-
gram se poate naviga pe Web în două feluri;
folosind browserul Web incorporat sau
folosind un browser extern, cum ar fi
Microsoft Internet Explorer, Mosaic sau
Netscape Navigator. Pentru a beneficia de
toate facilitățile oferite de WRC, aveţi
însă nevoie de Internet Explorer 3.0 - 3.2.
Romanian Web Yellow Pages
WRC include o bază de date cu peste 2000
de adrese Web din România, clasificate pe
domenii de interes general. Aceasta e ţinută
la zi automat, astfel încât adresele noi sau mo-
dificările apărute vă sunt aduse cu prompti-
tudine în față, cu ajutorul tehnologiei „push“.
WRCareo fereastră de ştiri, numită Ban-
SEPTEMBRIE 1997 BYTE România 91
Prezentări
Web Remote Control
deschise in aplicaţie.
ner Bar, unde apar zilnic principalele titluri
selectate pentru dumneavoastră din cele mai
variate domenii.
Nu maie nevoie să cautați la diferite adrese
Web pentru a găsi ştirile politice sau eco-
nomice, cursul valutar sau timpul probabil.
Acestea defilează automat în fața dumnea-
voastră și nu trebuie decât să alegeţi domenii-
le care vă interesează. Atunci când explorați
SIT Web Yellow Pages şi vizitaţi una din
paginile stocate, se va considera automat că
sunteţi interesat de tema căreia pagina res-
pectivă îi aparține. Aici intervine tehnolo-
gia revoluționară „push“: canalele de ştiri
sunt selectate automat în concordanţă cu
interesul nostru (în alte programe acestea tre-
buie configurate manual).
Fereastra Banner Bar este vizibilă mereu,
deci este sigur ca toți utilizatorii primesc me-
sajele din banner. Banner-ele sunt recepțio-
nate de către toți utilizatorii de Web Remote
Control, constituind un foarte interesant
mediu de publicitate. Orice companie sau uti-
lizator poate avea propriul sau banner (puteți
92 BYTE România SEPTEMBRIE 1997
(suprapus).
Oferă informații despre Închide telecomanda. Navighează la obiectul Navighează la toate
poziţia curentă ateleco- 4 pe care este pozitiona- siturile din grupul pe
menziiinbazadedate “© “ 4 tă telecomanda. care este poziționată
(situl, canalul sau grupul). «4, 9 4 telecomanda.
?
Se mută de la un grup la altul, + a
înainte și respectiv înapoi. 47, + + o Se muta dela un sit la
* SS „ce o @ © altul, inainte sirespectiv
Cifre pentru a accesa x A a ” înapoi.
canalele (același lucru ® >
ca la otelecomandă Se mută între teme,
de TV). N dinainte și inapoi.
„
4 o*
Buton pentru a putea 4 9 :
accesa canalelecu « 4 Stochează un Site pe
două cifre. * 4 pn canal anume.
+ A ; >
Această comandă adu- N 9 | | 4 Folosiţiaceastăcoman-
ce pagina la care s-ana- + | S = ¢ dă dacă doriţi să căutaţi
vigat, atunci cânds-a 4, * | | ceva pe Internet.
deschis fereastra curen- 4, ¢ at
_ tadebrowser.Acedsta %& | | i a Cuaceastacomandăse
comandă este disponi- x se „ E poate deschide o nouă
bilă numai dacă aţi navi- + 4 etre | > 5 @#fereastra de browser.
gat in cadrul aceleiasi 4 a 0
ferestre de Web la mai é Folositi aceasta coman-
multe pagini de Web. — m ¢ dă pentru a opri proce-
(e. =e o ” sul de aducere de pe In-
‘Anenets comands acu: 3 2 o ” ternet a paginii curente.
ce pagina de Webpre- > > | a E
GSHoAtA cololcurente: = mm m Aceasta comandă vă aduce
0 pagina de Web la care ati
Cuaceastaputeti === Swe | * ~ navigat dupa pagina curenta.
cataloga instantaneu o
pagină interesantă. 3 oe > «Folosiţi această comandă
= al 4 pentru o fereastra de brow- i
Aduce la suprafață (activează) 4 ser, dacă aţi navigat deja la
fereastra desub ceacurentă. „ = a o pagină și doriţi sa o
3 * 4 4 reincărcaţidepe Internet.
Minimizează fereastra, e? ie 1 Aduce la suprafaţă (activea-
peat a aplicaţiei. -° „ Ascari ie antice 4 ză) fereastra cea mai de jos.
Închide fereastra activă. ~ 4 deschiseinapli- Aranjeazăferestreledeschise in
Maximizează toate ferestrele caţie una pestealta aplicaţie astfel incat să fie vizibile
toate, puse una langă cealălta.
obţine detalii la telefon 401-2232341).
Cu un simplu clic, puteţi vedea pe larg in-
formaţia prezentată succint în fereastra de ştiri.
Navigarea în baza de date
Se poate naviga foarte uşor în baza de date a
WRC, folosind săgețile de pe telecomanda.
Vă puteţi muta de la un sit la altul, înainte
şi înapoi, cu săgețile „stânga“, respectiv
„dreapta“. Vă puteți muta din grup în grup,
înainte şi înapoi, cu butoanele „sus“, respec-
tiv „jos“. Vă puteţi muta între teme, înainte
şi înapoi, cu săgețile de „rapid înainte“,
respectiv „rapid înapoi“.
O temă poate fi asimilată cu un grup de si-
turi Web. A vă muta între teme înseamnă ur-
matorul lucru: dacă sunteţi pe un sit Web
numit „A“, sit ce aparţine unui grup (unei te-
me), mutarea între teme înseamnă mutarea
între grupurile fraţi ale grupului care conţine
situl Web „A“.
Căutarea în paginile vizitate
În timpul navigării pe Web, toate paginile pe
care le-aţi vizitat sunt păstrate pe discul hard
local (printr-un proces numit caching).
Această caracteristică vă permite să navigaţi
„0ff-line“ (fără a fi conectaţi la Internet în
momentul respectiv, economisind în felul
acesta timpul necesar conectării) prin paginile
deja vizitate.
Web Remote Control vă permite să navi-
gaţi off-line, în felul următor: tastați URL-ul
dorit în fereastra de URL, fără să fiţi conec-
taţi la furnizorul dvs. de acces Internet. Dacă
pagina Web specificată există pe discul local,
va fi afişată în fereastra browser din Web
Remote Control. Odată începută navigarea
off-line, nu puteţi reîncarca paginile de pe
Internet. Pentru a începe navigarea on-line,
trebuie să închideţi toate ferestrele din Web
Remote Control, să vă conectaţi la ISP-ul
(Internet Service Provider) dumneavoastră şi
să accesaţi adresele Web dorite. Aceasta
înseamnă că nu puteți naviga simultan în mod
off-line şi on-line (nu se pot aduce pagini de
pe Internet și de pe discul local în același timp).
Caracteristica de căutare în paginile Web
vizitate este foarte utilă. De exemplu, dacă
aţi văzut un text interesant despre castori
într-o pagină Web şi aţi dori să citiţi din nou
acea pagină, dar nu aţi catalogat-o şi nici nu
vă amintiți adresa ei, cum procedaţi ca să o
găsiţi? Soluţia este urmatoarea: selectaţi
comanda „Find in visited Web pages“ din
meniul „Main Panel Search“ sau din meni-
ul „Web Search“ şi introduceţi cuvântul
„castor“ în fereastra de dialog care apare.
Rezultatul va fi o pagină Web (un fişier
HTML) având ca nume textul pe care-l
căutaţi. Pagina Web respectivă va fi locali-
zată în directorul în care este instalat Web
Remote Control. Această pagină (afişată
după terminarea procesului de căutare)
conţine legături către toate paginile Web din
cache, care au fost găsite, împreuna cu pri-
mele câteva fraze din fiecare pagină (aceste
fraze vă ajuta să vedeţi care este conţinutul
respectivelor pagini). Puteţi naviga prin aces-
te pagini cu Web Remote Control şi le puteţi
cataloga pe acelea care vă interesează.
Puteţi întrerupe procesul de căutare,
apăsând pe butonul „Stop“ din fereastra de
dialog; pagina Web cu rezultatele găsite va
conţine legături către acele pagini care au
fost găsite până la momentul respectiv.
Beta gratuit
Versiunea beta a WRC este disponibilă pe si-
tul Webal producătorului (Strategic Informa-
tion Technologies, http://www.sit-intl. com).
Puteţi să instalaţi chiar acum acest revoluţio-
nar produs pentru Internet. Este posibil să vă
schimbe modul în care utilizaţi Internetul. Bă
Péter Csaba (cpeter@uttgm.ro) este student si
webmaster la Univ. „Petru Maior“ din Tg.Mureş.
Modelul obiectelor active,
folosit în programarea
vizuală
Modelul obiectelor active este un model ideal pentru sisteme de simulare, sisteme vizuale,
sisteme de modelare rapide, programare vizuală şi interfeţe grafice utilizator.
De Cătălin Aurel Rusu
nterfețele grafice se bazează pe manipularea directă a
entităţilor prezente în interfață. Modelele grafice trebu-
ie să asigure posibilitatea manipulării entităţilor
abstracte tratate : viteză, timp, evenimente ulte-
rioare, acțiuni paralele, relaţii dintre obiecte active, sincronizarea
comportamentului, etc.
În programarea vizuală, elementele grafice trebuie să Apigice o
reprezentare vizuală pentru a percepe
intuitiv legăturile dintre obiectele
abstracte manipulate în aplicații.
De aceea, traiectoria este o evolu-
ţie spatio-temporală a cărei repre-
zentare poate fi manipulată.
Modelul obiectelor active are
în vedere tratarea următoarelor
probleme :
* descrierea unui model ce per-
mite programarea vizuală,
descrierea comportamentului
obiectelor active;
* stabilirea unui set consistent de
entități care permit o evoluţie
dinamică şi activă;
* descrierea unei structuri con-
sistente, definirea obiectelor
active, aplicaţiilor interac-
tive, evoluţiilor concurente şi
manipularea obiectelor într-un
spațiu abstract;
* descrierea unor entități : comporta-
ment, interactor, agenți;
* descrierea unui model capabil să for-
muleze comportamentul interactiv şi dinamic al unor
entităţi active;
* modalităţi de definire, de modelare a structurii a noţiunilor :
comportament, traiectorie, poziţie, stare, regulă, condiţie,
expresie, acțiune, operaţie, parametrii;
* definirea şi executarea comportamentului spatio-temporal,
folosind noţiunea de traiectorie spațială şi temporală;
* asigurarea unei prezentări grafice şi posibilitatea manipulării
directe a noțiunilor abstracte;
wwwagorato/byte/
* modelarea unui set minimal de acțiuni simple, care să permită
construirea unor comportamente complexe;
* execuţia concurentă într-o manieră pseudo-paralelă, folosind
firele de execuţie (threads);
* sincronizarea executării unei acţiuni cu accesul la resursele par-
tajate (structuri de date, entități model, fire de execuție).
Modelul obiectelor active are la bază un set de entități active şi
entități pasive. Entităţile active pot lua următoarele forme : obiecte,
variabile, flag-uri. Entitățile pasive sunt:
comportament, traiectorie, acţiuni,
condiţii, ş-a.m.d.
Entitatile active au un com-
portament bine definit, carac-
terizat de o evolutie spatiala si
„temporală. Comportamen-
tul obiectelor este sesizabil,
în urma parcurgerii unei
traiectorii caracterizată de
un set de stări. Comporta-
mentul este caracterizat prin-
tr-un set de parametrii, un set
de poziţii şi acţiuni, pe care
obiectul le execută pe măsură
ce se deplasează (în timpul
evoluţiei), în fiecare stare.
Traiectoria asigură posibili-
tatea manipulării directe a en-
tităţilor modelului și a ele-
mentelor acestora.
Prin manipulare directă, este posi-
bilă definirea acţiunilor, a regulilor, a
condiţiilor care definesc fiecare stare de pe
traiectoria entității.
În cadrul modelului obiectelor active, evoluţia modelului este
formată din evoluţia paralelă şi concurentă a entităţilor active.
Fiecare entitate (obiect, flag, obiect complex, comportament) este
supravegheată de un proces thread (fir de execuţie). O mulţime de
fire de execuţie duc la naşterea comportamentului, mişcării şi a
interacțiunii dintre entităţile active. Execuţia unui comportament
este o succesiune de acţiuni ale entității curente sau a entităţilor
delegate. Entitatile din model comunica între ele prin mesaje.
SEPTEMBRIE 1997 BYTE Romania 93
Programare
Obiecte active în programarea vizuală
Interfața modelului
Modelul este o colecţie de obiecte active,
care sunt guvernate de un comportament
asincron. Pentru definirea modelului se
foloseşte manipularea directă asupra
entităţilor componente. În acest mod, sunt
create, sterse si instantiate entitati model si
le este conturat comportamentul. Entitatea
comportament este definita printr-un set
de acţiuni condiţionate. În funcţie de satis-
facerea condiţiilor, în fiecare stare a traiec-
toriei se execută un anumit grup de acțiuni.
Starea în care se află modelul poate fi alter-
ată (modificată) de evoluţia modelului sau
de evenimente exterioare modelului.
Evenimente exterioare modelului reactu-
alizează starea modelului prin interme- diul
interfeței model-utilizator.
Evenimentele legate de interfață sunt
manipulate de către interactori (agenţi).
Interactorii sunt agenţi (obiecte speciale)
care supraveghează comunicaţia spre şi din-
spre modulule externe, având rolul de a
trimite și recepționa mesaje. În acest con-
text, evenimentul este modificarea unei
stări. Interactorii transformă comunicația
asincronă, dintre model şi modulele sale
externe, într-o comunicare de mesaje în
interiorul modelului.
Funcţionalitate. Principii
Funcţionalitatea și structura modelului
obiectelor active se bazează pe următoarele
principii :
* entitățile fundamentale ale modelului
sunt obiectele active ;
* un obiect are atașat un comportament;
* comportamentul, acţiunile şi mişcarea
obiectului sunt executate de fire de exe-
cutie;
* entitățile model sunt obiecte încapsulate
care comunică prin mesaje (asincron);
* entitățile model, precum și atributele,
parametrii, componentele, comporta-
mentul, regulile, poziţiile entității pot fi
modificat dinamic;
* comportamentul obiectelor din model
este ordonat de timp și spaţiu.
Una din proprietățile intrinseci ale mo-
delului este evoluția. Toate obiectele sunt
entități active,,, care au un comportament
bine definit. Comportamentul fiecărei
entități este definit în mod dinamic prin
operare directă asupra scenei de obiecte.
Fiecărui obiect i se poate asocia un anumit
comportament său comportamentul poate
fi moștenit.
Evoluţia modelului constă dintr-o evo-
luţie paralelă şi concurentă a entităților din
care este format, fiind determinată de
starea curentă și de structura comporta-
94 BYTE România SEPTEMBRIE 1997
mentului obiectelor.
Comportamentul obiectelor este format
dintr-o secvență de acţiuni, executate de
către obiect, sau de un obiect delegat în fie-
carestarea traiectoriei. Acţiunile operează
asupra intrărilor, generând elemente de
ieşire. Elementele asupra cărora se acțio-
nează sunt : atribute obiect, comportament
obiect, valoare variabilă, poziţie traiecto-
rie, acțiune asociată unei poziţii, ş-a.m.d.
Comunicaţia între obiecte este realiza-
tă printr-un mecanism de transmitere -
receptionare de mesaje asincron. Dacă un
obiect doreşte să efectueze o acțiune asupra
altui obiect sau entitate, obiectul va delega
un alt obiect să realizeze acest lucru. Pro-
cesul de delegare are la bază mecanismul
de comunicare prin mesaje.
Identificarea unei entităţi se face prin
adresarea unui nume unic, nu prin point-
er. Această soluţie are ca efect o execuţie cu
viteză scăzută. În ciuda acestui dezavan-
taj, avantajele sunt mai numeroase şi mai
semnificative : implementare flexibilă, exe-
cuţie într-un mediu cu resurse distribuite,
portabilitate, reconfigurarea conexiunilor,
uşoară într-un context dinamic. Un alt
avantaj este uşurinţa de referire din cadrul
interfeței utilizator, a definiției comporta-
mentului obiectului. Un obiect poate modi-
fica atributele unui obiect, parametrii com-
portamentului și starea sistemului modelat
în timpul evoluţiei., schimbările fiind
dinamice. Comportamentul este definit
într-un spaţiu abstract în care modelul va
rula. Evoluţia este ghidată de traiectoria
obiectelor în acest spaţiu abstract. Traiec-
toria unui obiect este definită ca un set de
poziţii succesive, fiecărei poziţii fiindu-i
asociată un set de reguli. În momentul în
care un obiect atinge o poziţie, atunci se
execută regulile asociate acelei poziții.
Obiecte grafice
Obiectele unui model grafic sunt entitățile
asupra cărora operează comenzile aplicație.
Aceste obiecte pot fi obiecte simple sau
obiecte complexe, numite agregate.
Obiectele sunt caracterizate prin struc-
tură, caracteristici şi comportament. Pro-
gramarea obiectuală din C+ +, Pascal sau
Smalltalk nu permite definirea interactivă,
prin operare directă a structurii şi com-
portamentului.
Structura conceptuală a obiectelor sim-
ple:
obiect( OBIECT
obiecte_componente,
atribute,
conectare_instantiere,
conectare_agregat,
comportament_obiect
)
Obiectele componente
Elementele grafice fundamentale sunt
primitivele grafice, existente in majoritatea
sistemelor grafice: punct, linie, polilinie,
cerc, elipsa, primitive de tip bitmap (şablon,
arie de celule, etc.), primitivă generalizată,
etc. Obiectele componente ale unui obiect
sunt primitivele grafice. Structura concep-
tuală a unei primitive grafice este:
primitiva_grafica
(PRIMITIVA_GRAFICA
tip,
parametri
)
unde tipul poate fi: PUNCT, LINIE,
CERC, etc.
Atributele obiectelor din model
Atributele obiectelor din model caracteri-
zează aspectul, forma, dimensiunile obiec-
telor. Principalul tip de atribute este :
atributul grafic. Atributele grafice, la rân-
dul lor, pot fi : identificare, aspect, forma,
poziţie. Atributele grafice precizează carac-
teristicile grafice legate de contextul de
prezentare a scenei de obiecte:
* atributele identificare definesc numele
obiectului sau altă entitate utilizată pen-
tru identificarea obiectului;
* atributele aspect definesc prezentarea
grafică specifică a obiectului În contex-
tul de afişare. Astfel de atribute sunt de
exemplu: culoarea, tipul liniei de trasare,
modelul de umplere a unui poligon,
grosimea liniei, fontul textului, tipul
conturului, etc.;
* atributele formă definesc dimensiunea,
orientarea unui obiect în contextul de
afişare. Atributele dimensiune pot fi:
lăţimea, înălțimea, factorul de scalare
relativ la alt obiect sau absolut. Atribute
orientare pot fi: unghiul de rotaţie față
de un alt obiect agregat, rotația faţă de
un sistem absolut, etc.;
* atributele poziţie definesc poziția obiec-
tului, cum ar fi de exemplu: poziţia abso-
lută fată de un sistem de referință al
scenei de obiecte, poziţia relativă fată
depoziţia unui agregat, etc.
Comportamentul
obiectelor
Comportamentul defineşte evoluţia spa-
ţială şi temporală abstractă a obiectelor din
scenă de obiecte. Asocierea unui compor-
tament la un obiect din scenă de obiecte
Eşti pregătit pentru mâine?
GZS RE P PORT
CALCULATOARE PERSONALE
Li VOT [VE LEA / 4000 SI N NN i ie Ai it ate A o cae eee
rama Y
aia!
12iuni ee is oe JeiC 480 OSCE
ean ne
45 000 lei G E Ta re
6 luni
22.500 lei] 15.009 E a
4 epee tT TT Ie ee es reer d bee Se TTI tay
*Elevii si studenții vor trebui să ataseze comenzii o copie după carnetul de elev
Programare
„Obiecte active în programarea vizuală
concretizează comportamentul la un
obiect, poziţie şi evoluţie. Fiecare obiect,
simplu sau complex, din cadrul unui agre-
gat, are o evoluţie dependentă de propria
sa definiţie a comportamentului, dar şi de
evoluţia agregatului din care face parte.
Comportamentul unui obiect poate fi
asimilat cu o constrângere aplicată obiec-
tului . Conectarea unui obiect la un tip
abstract de comportament are următoarele
avantaje:
* permite definirea prin demonstraţii a
comportamentului;
* obiectele pot avea comportamente dife-
rite În diferite momente pe parcursul
execuţiei unei aplicaţii;
* permite moştenirea comportamentului
unui obiect prototip;
* mai multe obiecte pot avea acelaşi com-
portament;
* comportamentul obiectelor este, de
asemenea, modificabil la execuţie, ceea
ce programarea obiectuală din modelul
clasă - instanţiere nu permite. O modifi-
care prezentată în lucrare este prin ope-
rare directă;
* permite schimbarea unui comportament
cu un altul, deja definit;
* permite evoluţia comportamentului, cum
ar fi un proces de perfecţionare prin
învăţare.
Comportamentul depinde de parametri
de evoluţie. Pe parcursul evoluţiei unui obi-
ect, în cadrul comportamentului asociat,
se aplică reguli care pot modifică scena de
obiecte. Aceste modificări se referă atât la
aspect, atribute aplicaţie, componenta
obiecte sau agregate, cât şi la elementele
comportamentului. Deci, comportamen-
tul însuşi are posibilitatea modificării
dinamice. Se pot modifica traiectoria, para-
metrii sau regulile care determină evoluţia
(condiţiile şi acţiunile lansate de acestea).
Structura conceptuală a comportamen-
tului:
comportament ( COMPORTAMENT
traiectorie,
parametri,
conectare_instantiere(
conectare_prototip,
conectare_orizontala,
conectare_verticala),
evolutie
)
Traiectoria defineşte evoluţia spâţiălă
aunui obiect (simplu sau agregat). Evoluţia
Ai putea”
Ești tânăr, dinamic și plin de energie?
Locuiești într-un oraș cu peste 100.000 de locuitori?
În ultimii ani ai urmărit evoluția publicaţiilor noastre și ai regretat că nu faci
și tu parte din colectivul care le realizează?
A sosit timpul!
GAM de noil
Computer Agora ar
repre ant in or
Trimite un curriculum vitae pe adresa: Computer Press Agora
S.R.L., C.P 172 O.P 1, 4300 Tg. Mureș,
sau prin fax la: 065-166290 și te vom contacta.
ie de un
tăul
acela!
96 BYTE România SEPTEMBRIE 1997
este determinată de setul de parametri de e-
voluţie. Aceşti parametri definesc elemente
de evoluţie, considerate pe toată durata
evoluţiei pe traiectorie. De exemplu, inter-
valul de timp între două poziţii succesive pe
traiectorie (viteza), orientarea obiectului,
factorul de scalare, întârzierea obiectului în
fiecare poziţie pe traiectorie etc.
Evoluția defineşte acţiunile care se
execută automat, la îndeplinirea unor
condiţii spaţiale sau temporale pe traiec-
torie. În programarea vizuală, toate ele-
mentele unui comportament se definesc
prin operare directă, deci pot fi reprezen-
tate, selectate şi se pot defini valori pentru
aceste elemente.
Comportamentul unui
obiect sau agregat
Un obiect instantiat mosteneste compor-
tamentul obiectului prototip. Dacă se
doreşte modificarea comportamentului, se
creează un comportament specific prin
instantierea unui comportament prototip
şi se asociază noul comportament la obiec-
tul considerat. La activarea obiectului, aces-
ta va evolua pe traiectoria comportamen-
tului asociat, conform regulilor definite
pentru comportamentul abstract, dar con-
cretizate la obiectul şi scena curentă.
Comportamentul unui obiect simplu
Activarea unui obiect simplu pe traiectorie
poate determina modificarea atributelor,
componentei sau chiar a comportamentu-
lui său. De asemenea, pot fi modificate si
alte obiecte din scena de obiecte. Modi-
ficările obiectului asociat, sau ale compor-
tamentului său, sunt implicite, se precizează
numai atributele sau componentele sale
implicate. De exemplu, dacă la un moment
dat se comandă modificarea atributului
grafic culoare, acesta se referă la culoarea
obiectului asociat comportamentului.
Algoritmul de activare a unui obiect pe
traiectorie este următorul:
* determină poziţia de start a traiectoriei
comportamentului. Poziţia iniţială este
aceeași cu poziţia curentă a obiectului,
instantiază elementele traiectoriei la
obiectul asociat, actualizează și prezintă
obiectul în poziţia curentă, pentru toate
poziţiile traiectoriei
evaluează condiţiile şi execută acţiu-
nile specifice corespunzătoare condi-
ţiilor îndeplinite, actualizează şi pre-
zintă scena de obiecte în starea
curentă, determină poziţia următoare
a obiectului pe traiectorie, actualizează
poziţia curentă.
)
Obiecte active în programarea vizuală
Programare
Comportamentul unui obiect agregat
Un obiect agregat are asociat un compor-
tament asemenea unui obiect simplu. La
activarea unui agregat, poziţia inițială a
comportamentului asociat se determină
funcție de poziţia curentă a agregatului. De
asemenea, poziția obiectelor componente
este funcție de poziția curentă a agregatu-
lui. În continuarea evoluţiei, fiecare obiect
din componenta agregatului, care are un
comportament specific asociat, va evolua
conform comportamentului asociat lui.
Luând în considerare un agregat şi un
obiect din componenta sa, exista urmă-
toarele cazuri:
a. agregat şi obiect fără comportamente
asociate. La activare vor avea o evoluţie
nulă;
b. agregat cu comportament, obiect fără
comportament asociat. La activare agre-
gatul va evolua conform comportamen-
tului asociat. Poziţia absolută a obiectu-
lui se determina relativ la poziţia curentă
a agregatului pe traiectorie;
c. agregat fără comportament asociat,
obiect cu comportament. La activarea
agregatului acesta are o comportare
nulă, iar obiectul din componenta sa va
evolua conform comportamentului său
specific;
d. agregat şi obiect cu comportamente
specifice asociate. La activare se deter-
mină poziţia iniţială pentru agregat şi
obiect. În continuare, fiecare evoluează
conform comportamentului specific. În
general, orice condiție de oprire sau tem-
porizare, referitoare la agregat, deter-
mină evoluţia obiectelor componente.
De exemplu, o oprire a agregatului
determină oprirea obiectelor componente,
sau oabandonare a evoluţiei agregat, deter-
mină abandonarea evoluţiei pentru toate
obiectele componente. Orice parametru,
nespecificat explicit la comportamentul
unui obiect component, se moşteneşte la
execuţie de către comportamentul obiec-
tului de la comportamentul agregatului. De
exemplu, viteza de deplasare sau tempo-
rizarea in poziţiile traiectoriei. Aceste tem-
porizări pot corespunde în experimentele
de simulare cu cuantele de timp ale pasilor
de simulare.
Traiectoria
unui comportament.
Traiectoria defineşte poziţiile unui obiect
pe parcursul evoluţiei specificate de către
comportamentul asociat. Între o poziţie
curentă şi o poziţie următoare, obiectul va
avea o evoluţie î în poziţii intermediare,
obţinute prin interpolare. În fiecare pozi-
ţie, se analizează anumite condiţii şi, cores-
punzător descrierii evoluţiei, se execută
anumite acțiuni.
Utilizarea traiectoriei în programarea
vizuală are următoarele avantaje:
* permite o tehnică de lucru naturală în
programarea vizuală, în care obiectele,
acţiunile şi condiţiile grafice (aspect şi
formă) sunt preponderente fată de struc-
turile abstracte fără prezentare vizuală;
* simplifică editarea prin operare directă a
noțiunilor abstracte, cum sunt compor-
tament abstract, prototip şi instanţiere,
relaţii între obiecte, constrângeri, etc.;
* simplifică editarea condiţiilor care deter-
mină acţiuni:
* permite vizualizarea poziţiilor și con-
diţiilor viitoare,
* permite construirea expresiilor grafice,
* permite construirea condiţionărilor
legate de poziţie, formă şi aspect.
* măreşte viteza de evaluare și determinare
a evoluţiei: sunt verificate numai condi-
ţiile şi acțiunile legate de poziţia curentă;
* permite definirea comportamentului prin
demonstraţie și înregistrarea, codificarea
informaţiilor introduse prin activităţile
de demonstrare.
Tipuri de traiectorie:
* traiectorie mostenită de la agregatul pa-
rinte,
* punct,
* polilinie,
* ciclică,
* cu regulă implicită,
* graf orientat.
Traiectoria moștenită.
Un obiect'cuprins într-un agregat poate să
nu aibă definită o traiectorie sau chiar un
comportament. În acest caz, traiectoria este
moştenită de la nodul părinte din arborele
de agregare. Poziţia curentă a obiectului se
determină relativ la poziţia agregatului,
care poate avea o evoluţie pe o traiectorie
sau, la rândul sau să o moştenească. Mod-
ificările atributelor agregat sunt moşten-
ite dinamic de către obiectele componente.
Deci, acţiunile din cadrul evoluţiei agregat
se referă direct la agregat ,dar au efect indi-
rect asupra obiectele componente.
Acest tip de traiectorie poate fi utilizat
pentru modelarea evoluţiei spaţiale a unei
mulţimi de obiecte care au evoluţie para-
lelă. De exemplu, deplasarea unei scheme
electrice. Schemă electrică este un agregat,
iar elementele de circuit sunt obiectele
componente. Un alt exemplu, în cadrul
unei experienţe de fizică, agregatul poate
fi o mulţime de bule de aer sau picăturile de
dumneavoastră!
EUnef=
eee connecting Europe since 1982 ===
Internet
TCP/IP
Mai ieftin ca fax-ul,
Mai rapid ca DHL-ul!
Cele mai moderne, ieftine
și comode soluţii de
comunicaţii electronice
și conectare la Internet,
de acum și la dispoziția
EUnet Romania SRL
Modem: 410.1162, 8N1, Username: info, login: info,
Tel: 4100100, Fax: 4103883, E-Mail: info@eunet.ro
Bd. Unirii 20, BI. 5C, Et. 2,
Ap. 14, Sect. 4, Bucuresti
SEPTEMBRIE 1997 BYTE Romania 97
Programare
Obiecte active în programarea vizuală
ploaie care evoluează paralel.
Traiectoria punct
Presupune evoluţia în aceeaşi poziție a
obiectului. Structura conceptuală a traiec-
toriei punct este următoarea:
traiectorie( PUNCT
numar_pozitii,
poziţie
)
unde poziţie este poziţia obiectului
- considerată de numar_pozitii ori. Cu
acest tip de traiectorie poate fi modelată
evoluţia unui element de circuit, care în
timp își modifică starea grafică, forma sau
alte atribute aplicație. Evoluţia temporală
poate fi transpusă spaţial printr-o cores-
pondentă biunivocă, între momentele de
timp şi poziţie. Aceasta transpunere per-
mite controlul evoluţiei temporale, atât la
definirea prin operare directă cât şi la exe-
cuție. De exemplu, la a şaptea poziţie (deşi
având aceleaşi coordonate) elementul de
circuit trece în starea deconectat.
Traiectoria polilinie
În acest tip de traiectorie, poziţiile succe-
sive sunt date de un set de puncte P,,
P.--+>P.. Coordonatele unei poziţii P;,,
sunt definite relativ la poziţia P.. Astfel poz-
iţia P.,, va avea coordonatele Xp ket
P.+1.x, iary,,, =y, + P;,,-y- Laasocierea
comportamentului la un obiect, poziția Pg
a traiectoriei va lua valoarea poziţiei
curente a obiectului asociat.
Structura formală a traiectoriei polilinie
este de forma:
traiectorie( POLILINIE
numar_pozitii,
set_pozitii
)
unde set_pozitii reprezinta pozitiile
Po; Po--Piarnumăr_pozitii este n+1.
Acest tip de traiectorie poate modela
comportarea unui obiect într-un proces de
simulare, cum ar fi, de exemplu, deplasarea
unui obiect concret într-o experienţă de fi-
zica, deplasarea braţului unui robot sau
propagarea unei comenzi sau semnal într-o
instalaţie de automatizare, etc.
Traiectoria ciclică.
În cazul în care o traiectorie polilinie se par-
curge repetat, reprezentând un itinerar
Li DesignJet ate
i 23 ee
ye ust, Septembrie, Octombrie
GEMINI —
har Str. Vasile Conta Nr.9 bis Bucu
Tel/Fax: 210.85.65, 210.85.70
98 BYTE România SEPTEMBRIE 1997
poligonal, considerăm tipul de traiectorie
ciclică. Structura formălă este asemănă-
toare traiectoriei polilinie, cu deosebirea
că se parcurge ciclic de un număr nepre-
cizat de ori.
traiectorie( CICLIC
numar_pozitii,
set_pozitii
)
Conditia de oprire este specificata de re-
gulile de evolutie pe traiectorie. Conditiile
de parcurgere sunt specificate de parametri
comportamentului: viteza, stationari, etc.
Tipul de traiectorie ciclică poate mode-
la comportamentele periodice cum ar fi
mişcarea unui pendul, succesiunea de acți-
onare a unor comutatoare la pornirea unei
instalaţii. Succesiunea poate fi precizată, de
exemplu, prin deplasarea unui cursor,
urmată de clipire pe simbolul din schemă
al elementului care trebuie acționat.
Traiectoria cu regulă implicită
Un alt tip de traiectorii sunt cele în care se
defineşte primul punct şi o regula implic-
ită de determinare a poziţiei următoare.
Cele mai simple traiectorii, de acest tip, sunt
traiectoria inerţială şi traiectoria aleatoare.
Traiectoria inerțială.
Spre deosebire de tipurile de traiectorie
prezentate până acum, la care sunt precizate
explicit toate pozițiile, traiectoria inerțială
defineşte poziţii care aparţin unei miscari
inerţiale din fizică. Traiectoria se defineşte
printr-un punct de start şi vectorul viteză:
traiectorie( INERTIAL
pozitie,
viteza
)
Punctul de start coincide cu pozitia
iniţială a obiectului înainte de activare.
Viteza este un vector (modul, direcţie, sens,
punct de aplicaţie) definit prin doua ele-
mente dx și dy, care reprezintă proiecţiile
cu semn ale vectorului, viteză pe axele
rectangulare ale sistemului de referință:
Dacă modulul vectorului este nul, obiectul
are poziţie fixă.
Conform mişcării inerţiale, obiectul își
continuă mișcarea rectilinie şi uniformă,
cât timp asupra lui nu acţionează nici o
forţă, deci o regulă de modificare definită
de un comportament. Acest tip de traiec-
torie poate modela majoritatea mişcărilor
din natură. De asemenea, se pot modela e-
voluţiile cu traiectorii simple liniare, cum
ar fi deplasările, alinierile, rearanjările de
obiecte din editoarele grafice. De exemplu,
Obiecte active în programarea vizuală
Programare
alinierea elementelor de circuit dintr-un
editor de scheme electrice.
Traiectoria aleatoare.
Asemenea traiectoriei inerţiale, poziţia
următoare se determină după o regula
implicită, în acest caz printr-un deplasa-
ment aleator. Definirea formală este:
traiectorie( ALEATOR
poziţie,
deplasare
)
unde poziţie reprezintă poziţia inițială,
care corespunde poziţiei iniţiale a obiectu-
lui asociat. Componenta deplasare este for-
mată din doua elemente, domeniul pen-
tru generatorul de numere aleatoare, care
specifică deplasarea pe axa x, respectiv
domeniul pentru generatorul deplasării pe
axa y, fată de poziţia curentă.
Traiectoria de tip graf orientat.
Tipul de traiectorie graf orientat defineşte
explicit pentru fiecare poziţie curentă un
set de poziţii următoare. Poziţia următoare
a obiectului se va determina funcție de pozi-
ţia curentă și anumite condiţii din scena
de obiecte. Condiţiile sunt evaluate pe par-
cursul evoluţiei comportamentului. Des-
crierea formală a structurii conceptuale a
traiectoriei graf orientat este următoarea:
traiectorie( GRAF
(pozitie curenta, pozi
tii_urmatoare),
(pozitie _curenta, pozi
tii_urmatoare),
(pozitie_curenta, pozi
tii_urmatoare)
)
Traiectoria de tip graf încearcă să trans-
fere o parte din logica progr:.n a scenari-
ului grafic, într-un comportament încap-
sulat la nivel de obiect. Prin aceasta, se
obține o mai bună specializare a compor-
tamentului obiectelor, în avantajul simpli-
ficării programului generat prin progra-
mare vizuală. Specializarea comportamen-
tului poate fi realizată pentru anumite clase
de obiecte dintr-un domeniu de aplicaţii.
De exemplu, prin acest tip de compor-
tament se pot construi comenzile inteligen-
te din cadrul unei interfeţe utilizator gra-
fice, în care comportamentul comenzii
anda obiectul operat, de alte obiecte din
scenă sau de acţiunile precedente ale uti-
lizatorului.
Un exemplu este următoarea comandă
de conectare a unui element de circuit
(obiect), la o schema deja construită (agre-
gat). Sa presupunem că exista comanda de
conectare cu argumentele obiect de conec-
tat şi agregat, la care se conectează obiec-
tul. Exista, de asemenea, o mulțime de
obiecte, dispozitive electice care au 2, 3
sau 4 borne de conectare. Pentru o aceeași
comandă, obiectul selectat se va deplasa din
poziţia meniu în poziţia din schema, acolo
unde există un dispozitiv cu un număr de
borne, poziţie a bornelor de conectare com-
patibile cu ale sale. Aceasta deplasare se
realizează automat, fără o specificare
explicită a utilizatorului a traseului şi des-
tinației dispozitiv.
Modelarea evoluţiei în
cadrul comportamentului.
Evoluţia definește acțiunile realizate în anu-
mite poziţii ale obiectului pe traiectorie,
dacă se îndeplinesc anumite condiţii.
Acţiunile sunt operații realizate automat de
către program asupra modelului grafic.
Condiţiile se referă la starea modelului sau
a prezentării sale pe suprafață de afişare.
Conceptual, în general, în sistemele grafice
sunt posibile următoarele modelări ale
comportării unui obiect:
* cod program, sub forma unor proceduri
fixe sau parametrizate. Orice modificare
de comportament necesita modificarea
codului.
* reguli sub forma cauzală: fapte şi acţiuni.
Regulile din bază de cunostinte (KB
Knowledge Base) pot fi definite astfel:
* de către programatori ca reguli fixe
* decătre dezvoltatorul KB într-un mod
interactiv: prin cadre, tabele, etc.
* operare directă prin demonstraţie cu
exemple sau prin exemple.
* modelare evolutivă, perfecţionabilă prin
învăţare. O posibilitate de modelare este
prin reţele neuronale fuzzy.
Modelarea prin cod program nu reali-
zează separarea interfeței de aplicaţie şi
nu asigură independenta dialogului. Regu-
lile sub formă cauzală, din baza de cunos-
tinte, pot fi definite interactiv de către dez-
voltatorul interfeței utilizator grafice sau
în programarea vizuală de către dezvolta-
torul aplicaţiei.
Definirea formală a evoluţiei unui obiect
sau agregat, în cadrul comportamentului
asociat, se defineşte ca un set de reguli:
evolutie ::= {(conditie, acti
une,..., actiune)}.
La execuţia comportamentului, pentru
fiecare poziţie de pe traiectorie se verifică
îndeplinirea condiţiilor. Pentru condiţia
adevărată se efectuează acțiunea asociată.
În anumite implementări, se pot grupa
regulile funcție de poziţiile de pe traiecto-
rie, astfel încât să nu se verifice decât anu-
Your best
MULTIMEDIA
partner
tel/fax: (01) 230 44 58
nsumabile, Software:
tel: (0%) 21052 64; 211 9042
fax: (01) 211 3943
e-mail: tricorp@radiotel.ro
Be imante
matriciole
SEPTEMBRIE 1997 BYTE Romania 99
Programare | Obiecte active în programarea vizuală
mite condiţii şi, deci, săse aplice numaianu- Aceste entităţi program vor fianalizate în- gram: indicatori sau variabile.
mite reguli. îmbunătățindu-se timpul de tr-un capitol următor. A :
ae ‘ : i : Modelarea actiunilor.
Fiecare condiţie este o afirmaţie logică ::= | Structura conceptuală a acțiunilor.
taxa în notație BNF a condiţiilor din reguli ::> <îndica Acţiunile dintr-un model reprezintă opera-
este : tori statici> | tor conditii date, pe parcursul evolutiei
::= ::= tice> | Definirea formală a structurii concep-
::= Indicatorii statici sau dinamici pot avea
sau nu prezentare grafica. Indicatorii sunt actiune( ACTIUNE
::= entităti cu valori booleene (adevărat, entitati_intrare,
fals). Valoarea unui indicator se obtine prin entitati_iesire,
:= | evaluarea statică sau dinamică a unei expre- operator
| sii. Variabilele statice sau dinamice iau va- )
lori, in domeniul valorilor posibile, pentru
::= ESTE | NU_ESTE anumite entitati model: atribute obiecte, Entitatile_iesire reprezintă ele-
parametri comportament. Indicatorii sau mentele din model, care vor rezulta prin
un poatefiunatributalunui variabilele statice sunt evaluate la un aplicarea operatorului asupra elementelor
obiect (sau agregat), atât grafic câtşi apli- | momentdatprecizat, iarindicatoriigivari- entitati_intrare.
catie, un parametru al unui comportament abilele dinamice sunt evaluate dinamic în Entitatile_iesire potfiurmătoarele:
sau o entitate program. Un pixel, din zona fiecare momental execuţiei aplicaţiei. Va- * elementele unui obiect sau agregat:
de afişare, este considerat un obiect gene- loarea unei variabile se obține prin citirea - obiectele componente,
ric. În acest caz, atribut obiectesteculoarea unui atribut obiect din scenă de obiecte. - atribute grafice sau aplicaţie,
curentă a acestui pixel. Elementul are valori în dome- - comportamentul ataşat obiectului.
Entităţile program sunt indicatori sau niul specific al atributelor obiecte, para- * elementele unui comportament:
variabile, cu sau fără prezentare grafică. metrilor comportament sau entitătilor pro- - traiectoria şi elementele traiectoriei,
a - = AF, = „x Pl ai - * Pa E: 4 Ps i a = A a 17, Pa 2 Pa al ol ră a 4
Prima carte românească de referință în domeniul rețelelor de calculatoare
jeală în retelele de astăzi şi de mâine,
tru a reflecta at le domeniului ii “90 si cei care vor veni,
jos (de la nivelul fizic) si parcurgând treptat calca
abordate includ:
: prin satelit)
PPP)
uri de mare viteză)
a bs 19283)
erformanța retelei)
aiierer este)
apoi de exemple ample luate din
eta mae
ILE aM MAC OA Agee aa
pe Doresc să cumpăr cartea Rețele de calculatoare
Vara ered în contul C.R Agora nr: 31003017110178 deschis la Banca Transilvania, filiala Mureș, 70.000 lei (în care nu sunt incluse taxele poștale),
"cu mandatul peştal/ordinul de plată nr: dindata de [Il Doresc să-mi trimiteţi și factură.
Pentru elevi și eo cartea costă i) 000 lei. Ei vor trebui să atașeze comenzii o copie după carnetul de elev sau student.
“Numele şi pee ; Functia:
“Firma: ; eet Adresa:
Cod See inate: Telefon/Fax: ae
Datos ire eerste Semnătura coco ect a.
100 BYTE România SEPTEMBRIE 1997
Obiecte active în programarea vizuală
Programare
- parametrii.
* entitati program:
- indicatori statici sau dinamici,
- variabile statice sau dinamice.
* culoarea unui pixel.
Entitatile_intrare potfi aceleași cu
entitatile_iesire, la care se adaugă
constante, cum ar fi:
* culorile admise pentru dispozitivul gra-
fic din configuraţia calculatorului;
* valorile logice TRUE și FALSE;
* valoarea NULL;
* numere întregi şi reale.
Setul de operatori este, în general, același
cu setul de operatori disponibili la operarea
directă, la editarea unui scenariu grafic, pro-
totipizare sau o parte din operatorii din pro-
gramarea vizuală. Informaţiile cuprinse în
entitate_iesire şientitate_ intrare
depind de tipul operatorului și natura enti-
tatilor. Aceste informaţii sunt mult mai uşor
de completat în programarea vizuală, decât
în programarea convențională, lingvistică.
De exemplu, în programarea convenţiona-
lă, specificarea unui obiect trebuie realiza-
tă asemenea specificării unui fişier, prin pre-
cizarea numelui şi a căii de subdirectoare în
care se află. În operarea directă se are acces
imediat la obiect, iar completarea infor-
matiilor referitoare la el se face automat.
Construirea actiunilor in operarea directa
se realizează prin selectarea obiectelor, agre-
gatelor, comportamentelor, atributelor, etc.
Structura conceptuală a unui apel acti-
une este de forma:
Într-o implementare, formatul entită-
tilor depinde de particularitătile limbaju-
lui, structurile de date abstracte din limbaj.
Tipurile de operatori
din comportament
Mulțimea operatorilor este formată din
următoarele tipuri :
* creare;
. ştergere;
* atribuire;
* adăugare;
* instantiere;
* rotatie;
* translatie;
* scalare;
* activare;
* dezactivare.
Creare
Crează o entitate obiect, agregat sau com-
portament, la care se pot adăugă apoi alte
elemente. De exemplu:
creaza (obiect(nume),
atribut(pozitie(70, 150)))
creaza (comportament(nume),
traiectorie(polilin
ie,(10,12),(20,23),(100,50)))
Entitatea creată conţine doar identifica-
torul şi elementele de poziţie. Celelalte ele-
mente se vor adaugă prin execuţia altor acți-
uni.
Stergere
Elimină o entitate_iesire: obiect, compor-
tament, atribut obiect, poziţie din traiec-
torie, etc. Dacă se elimină atributul unui
obiect, atribut care există şi pentru agregat,
în continuare se va lua în considerare pen-
tru obiect valoarea atributului moştenită
de la agregat (de exemplu, culoarea).
elimina (obiect(nume), atribut(nu
me) )
la fel ca la operatorul creare, entitatea
SYSTIMAX
Lucent Technologies
Formely the Communications Systems and Technology Units of AT&T
+ Sistem de cablare structurată produs de
Lucent Technologies & Bell Lab Innovations
¢ Transfer de date wireless
¢ 15 ani garantie Lucent Technologies
* 622 Mb/sec pe cupru şi fibră optică
NET BRINEL
COMPUTERS
Cele mai performante cablări
Cu Sistemul de cablare structurată
SYSTIMAX
Solutie completa:
proiect + echipamente + realizare + testare
Cluj-Napoca Str. luliu Maniu 2
Tel: 064-430280 Fax: 064-430285
e-mail: brinel@re.ro
SEPTEMBRIE 1997
101
BYTE Romania
Programare
Obiecte active în programarea vizuală
eliminată poate fi un obiect, agregat, com-
portament sau un element al acestora.
Atribuire
Atribuie entitatii_iesire valoarea
entitatii_intrare. De exemplu:
atribuie (obiect(nume), atri
but(nume)), (obiect(nume),
atribut(nume) )
atribuie (agregat(nume),
but(nume)),
234))
atribuie (comportament(nume) ,
parametru(timp)), 23
atribuie (obiect(nume), comporta
ment), comportament (nume)
atri
pixel (poziţie(100,
Una din posibilităţile care trebuie intro-
dusă, pentru a mari flexibilitatea progra-
mării şi legătura cu aplicaţia, este apelarea
unor funcții aplicație, care să furnizeze valo-
rile necesare în acțiunea de atribuire. De
exemplu, poziţiile unei traiectorii polilinie
să fie calculate conform unui algoritm
aplicaţie. Valoarea unei tensiuni, ca valoarea
unui atribut aplicaţie, să fie obţinuta prin
citirea unei valori din proces sau calculată
pe baza unor formule din aplicaţie.
De exemplu:
atribuie (obiect(nume),
atribut(tensiune)),
(functie(nume),
argumente((obiect(nume) ,
atribut(nume)),
(obiect(nume) ,
atribut(nume) ) ))
O variantă mai simplă, dar mai putin fle-
xibilă, este atribuirea valorii funcţiei apli-
Caţie la o variabilă declarată în programul
construit prin operare directă. Acţiunea de
atribuire atribuie valoarea variabilei. De
exemplu:
atribuie (obiect(nume), atri
but (nume) ), variabila(nume)
sau
atribuie variabila(nume), (obi
ect(nume), atribut(nume))
Adăugare
La un obiect, agregat sau comportament
existente se pot adaugă elemente noi. Dacă
acest element există, se elimină vechiul ele-
ment şi se înlocuieşte cu cel nou. Aceasta
elimină interpretarea erorilor sau verificări
complicate în întregul model.
102 BYTE România SEPTEMBRIE 1997
obiect(obi
(obiect(nu
adaugă (obiect(nume),
ecte_componente)),
me) )
adaugă (comportament(nume),
iectorie(pozitie)),
(20,40)
tra
pozitie
Adăugarea unei poziţii la o traiectorie
este o inserare în definirea traiectoriei unei
poziţii, după poziţia specificată în entitatea
de ieşire sau adăugare la sfârşitul traiecto-
riei, dacă poziţia după care sa se facă inser-
area lipseşte.
De exemplu, adăugarea unui atribut la
un obiect, care nu avea acest atribut, impu-
ne ca prioritară valoarea acestui atribut,
fată de o valoare a aceluiaşi atribut moşten-
ită prin arborele de instantiere sau arborele
de agregare.
Instantiere
Instanţiere realizează un obiect, agregat,
comportament, pe care le conectează în ar-
borele de instantiere. Adăugarea sau agrega-
rea obiectelor trebuie realizate cu alte acțiuni.
De exemplu, instantierea unui obiect:
instantiaza (obiect(nume), atri
but(pozitie)), (obiect(nume) )
Rotatie
Operatia geometrica de rotatie in doua
dimensiuni, in coordonate ecran fizic sau
abstract normalizat. Rotatia se refera exclu-
siv la obiecte sau agregate. De exemplu:
rotatie obiect(nume), ((obiect(nu
me), atribut(pozitie)), unghi)
rotatie agregat(nume), (pixel (po
zitie(30, 40)), unghi)
Rotatia poate fi definita in raport cu un
centru de rotatie fix, un pixel, sau in raport
cu poziţia unui obiect. În caz particular, pozi-
ţia obiectului rotit. Aceasta definire, funcție
de alte obiecte, este deosebit de utilă în ani-
maţia necesară în unele experimente de si-
mulare. Se pot defini dependente între obi-
ecte. Aceste relaţii, păstrate permanent și
automat, sunt de fapt constrângeri. De ase-
menea, este utilă definirea unghiului ca val-
oare a unei variabile sau a unei funcţii. De
exemplu:
rotație obiect(nume), (pixel(pozi
tie(10, 25)), variabila(nume) )
Translatie
Translatia unui obiect sau agregat se defi-
neste in raport cu pozitia sa curenta. Para-
metri de translatie t, si t, pot fi constante,
valori ale unor variabile sau valori ale
atributelor obiecte. De exemplu:
translatie obiect(nume), (t,, t,)
translație obiect(nume), ((obi
ect(nume), atribut(latimea)),
variabila(nume))
Scalare
Scalarea unui obiect poate fi realizată în
raport cu originea sistemului de coordona-
te sau în raport cu un punct. Argumentele
acţiunii scalare sunt obiectul operat, poziţia
de referință şi parametrii de scalare s, şi s,.
Poziţia de referință şi parametrii de scalare
pot ficonstante, valori ale unor variabile sau
valori ale atributelor obiecte. De exemplu:
scalare obiect(nume), (s,, (varia
bila(nume)))
scalare obiect(nume), ((obiect(nu
me), atribut(înaltimea)), s,)
Activare
Dacă un obiect are asociat un comportament
se poate declanşa evoluţia sa ca efect al
evoluţiei altui obiect. La activare, obiectul
evoluează pe traiectoria comportamentului,
conform parametrilor şi regulilor asociate.
Starea de activare sau dezactivare a unui
obiect sau agregat este păstrată în atributul
- numit stare_activare. Pentrustarea activ,
atributul are valoarea TRUE. De exemplu:
activează obiect(nume)
activează agregat(nume)
Dezactivare
Un obiect activat evoluează un timp deter-
minat de tipul, viteza şi traiectoria sa. De
exemplu, în comportamentul inerţial,
oprirea evoluţiei este nedeterminată.
Oprirea explicită a evoluţiei, înainte de ter-
minarea ei, se poate face printr-un opera-
tor numit dezactivare. Operatorul modi-
fica în FALSE valoarea atributului
stare_activare al obiectului sau agre-
gatului referit. De exemplu:
dezactivează obiect(nume)
Din motive de viteză şi limbaj s-au experi-
mentat tipurile de argumente simple, deter-
minate direct din citirea unei valori: atribut
obiect, variabila program, constantă, pozi-
ţie pixel, etc. Într-o variantă îmbunatatită,
aceste valori ar putea fi obţinute ca rezultat
al evaluării unor expresii. Aceste facilități
sunt posibile în unele limbaje ca LISP. În lim-
baje ca C sau Pascal, analiza sintactică,
semantica şi evaluarea expresiilor ar dura
prea mult, chiar în cazul unei preprocesari
şi trecere a expresiilor în forma poloneză. N
Cătălin Aurel Rusu lucrează la Sistec Cluj si poa-
te fi prin contactat la Catalin_RUSUQSsistec.ro.
Maşina Virtuală Java
De Budai Lâszl6
ava este un termen la modă în lumea tehnologiei infor-
matice. Cu toţii ştim că acest limbaj de programare a dat
aripi noi lumii informatice din ultimii ani, în primul rând
prin faptul că un program Java, numit aplet, poate să
ruleze într-o pagină Web, mărind astfel posibilitățile de comunicare
a acestora. Dar limbajul Java nu se rezumă doar la aplicaţii tip
aplet, ci dă cale liberă programatorilor pentru realizarea aplicatii-
lor de sine stătătoare.
O aplicaţie de sine stătătoare, scrisă în Java, este compilată şi
rulează pe o așa numită Mașină Virtuală Java. Acest lucru a făcut
posibilă separarea de platformă a limbajului. Astfel, un program
Java nu este compilat pentru o platformă anume (Sun, MacOS,
Win32) ci este transformat în codul Mașinii Virtuale Java.
Maşina Virtuală Java reprezintă un calculator abstract. Ca şi cal-
culatoarele reale, aceasta dispune de un
set de instrucţiuni, un set de registre
şi utilizează diferite zone de mem-
orie. Acestea sunt componente log-
ice abstracte. Ele nu impun o
implementare anume, acest lucru
înseamnă că Maşina Virtuală Java
se poate implementa ca interpretor
de cod binar, compilator (generează
cod nativ), sau pe Siliciu, dar să se
păstreze funcţionalitatea.
Setul de instrucțiuni
Setul de instrucţiuni Java este echi-
valentul de limbaj de asamblare a u-
nei aplicaţii Java. Ca şi o aplicaţie C,
o aplicaţie Java este compilată dar
rezultatul este un cod binar Java şi
nu un cod binar al unui micropro-
cesor anume.
O instrucţiune Java este formată
dintr-un cod operaţie (opcode) gi
operanzi. Codul operaţie are lun-
gimea de un octet, operandul pu-
tând avea lungime variabilă. Dacă
un operand are lungimea mai mare
decât un octet, atunci se va păstra în memorie, după modelul „big-
endian“, adică octetul mai semnificativ primul. Astfel, o valoare sto-
cată pe 16 biţi se va calcula după cum urmează: primul_oc-
tet*256+al_doilea_octet.
Instrucţiunile binare Java prelucrează operanzii din memoria de
date a Mașinii Virtuale Java, ca aparţinând unui grup redus de tipuri
primitive. Aceste tipuri primitive de date sunt: întreg lung, numere
în virgulă flotantă cu simplă şi dublă precizie, octet, şi întreg scurt.
Toate tipurile numerice sunt cu semn. Întregul scurt fără semn există
doar pentru a folosi la caracterele Unicode. Aceste tipuri primitive
www.agora.ro/byte/
de date sunt tratate de către compilator şi nu de programul Java com-
pilat, sau mediul de execuţie Java. Instrucţiunile Java conţin cod
operaţie diferit pentru diferitele tipuri de date primitive (ex: iadd,
ladd, fadd şi dadd pentru adunarea a două numere).
Registri
Regiștrii Maşinii Virtuale Java păstrează starea acesteia în timpul
operaţiilor, la fel ca şi regiștrii microprocesoarelor. Maşina Virtu-
ală Java are patru regiștrii:
* pc— numărătorul de program
* optop — pointer către vârful stivei de operanzi
* frame — pointer către mediul de execuţie a metodei curente
* vars—pointer către prima variabilă locală a metodei curente (vari-
abila cu indexul 0).
Maşina Virtuală Java defineşte
fiecare registru ca fiind de 32 biți.
Anumite implementări pot să nu
utilizeze toţi regiștrii (ex. Dacă se
generează cod nativ, atunci nu mai
avem nevoie de pc).
Mașina virtuală Java este bazată
pe stivă, adică nu folosește regiștrii
pentru transferuri de parametrii,
aceasta fiind o decizie luată în favoa-
rea simplităţii codului şi, totodată,
permite implementare eficientă pe
diferite procesoare gazdă, care au
un număr redus de regiștrii, cum ar
fi cele din familia x86.
Stiva Java
Maşina virtuală Java foloseşte sti-
va pentru a furniza parametrii pen-
tru operaţii, pentru a prelua rezul-
tatele acestora, pentru a transfera
parametrii metodelor, etc. O fe-
reastră de stiva (stack frame) Java
este echivalentul unei ferestre de
stivă peritru un limbaj de progra-
mare convenţional. O fereastră de
stivă are trei componente:
* variabilele locale
* mediul de execuţie
* stiva de operanzi
Spaţiul alocat variabilelor locale şi mediului de execuţie este fi-
xat la apelul metodei, în timp ce stiva de operanzi se modifică în tim-
pul execuţiei metodei.
Variabilele locale. Variabilele locale sunt stocate într-un vector
şi sunt adresate de către registrul vars. Variabilele locale sunt sto-
cate pe 32 biți. Tipul long si double sunt considerate ca fiind for-
SEPTEMBRIE 1997 BYTE România 103
Programare
Mașina virtuală Java
mate din două variabile locale.
Variabilele locale se încarcă în stiva de
operanzi, iar instrucţiunile vor păstra valo-
rile acestora în spaţiul variabilelor locale.
Mediul de execuţie. Mediul de execuţie
este componenta din fereastra de stivă, care
se foloseşte pentru a păstra operaţiile stivei
Java. Conţine pointeri către fereastra de
stivă precedentă, precum şi către baza şi vâr-
ful stivei de operanzi şi variabile locale. Mai
conţine informaţii suplimentare aparţinând
mediului de execuţie (pentru depanare).
Exceptii. Fiecare metodă Java conţine o
serie de clauze catch. Fiecare clauza catch
descrie domeniul pentru care este activa, ti-
pul excepţiei care va fi tratată şi are un bloc
de tratare a excepţiei. Când se aruncă o ex-
ceptie, aceasta este căutată în lista catcb. O
clauză cath este potrivită (pentru tratarea
excepţiei) dacă instrucțiunea care a aruncat
excepţia se află în domeniul pentru care este
activă clauza catch respectivă şi excepția arun-
cată este derivată din cea pe care o tratează
clauza catch. Dacă se găseşte o clauză catch
potrivită, sistemul va comuta la codul de tra-
tare a excepţiei. Dacă nu se găseşte nici o cla-
uză potrivită, se părăseşte fereastra de stivă
actuală (metoda actuală) şi excepția este arun-
cată mai departe, către un nivel superior ce-
lui în care a apărut.
Ordinea clauzelor catch este importantă,
interpretorul executând codul de tratare a
primei clauze care se potriveşte.
Stiva de operanzi. Este o stivă FIFO pe 32
biţi. Ea foloseşte pentru a stoca argumentele
şi rezultatele mai multor instrucțiuni ale ma-
şinii virtuale Java. De exemplu operaţia î add
adună două numere întregi. Operația citeş-
te două numere întregi (32 biţi) din vârful
stivei, le adună, iar rezultatul este stocat tot
în stiva de operanzi. Operația i add presupu-
ne că o altă instrucțiune a mașinii virtuale a
pus în vârful stivei cele două valori care tre-
buie să fie adunate şi că rezultatul va fi prelu-
at din stiva de operanzi. Pentru fiecare tip de
date, există operaţii specializate pentru acel
tip, este ilegal ca să se depună pe stivă două
numere întregi şi apoi să fie citite ca un întreg
lung (64 biţi).
Rezerva de constante
(Constant pool)
Fiecărei clase Java i se asociază o rezervă de
constante, care va păstra numele tuturor
câmpurilor, metodelor şi a tuturor infor-
matiilor care pot fi utilizate de oricare me-
todă a clasei.
La încărcarea unei clase Java se va citi
lungimea rezervei de constante (con-
stant_pool_count), după care va urma
efectiv spațiul alocat acesteia, începând cu
constant_pool[0] gi pana la con-
stant_pool[constant_pool_count-1].
104 BYTE Romania SEPTEMBRIE 1997
Fiecare element (constant_pool|[i]) are
următoarea structură:
cp_info |
ul tag;
ul infol];
}
Inregistrarile incep cu o eticheta de un _
octet, care indică tipul înregistrării. De exem-
plu, pentru descriptorul unei clase vom avea
valoarea CONSTANT_Class = 7. Formatul
informaţiei care urmează după etichetă
diferă în funcţie de ceea ce reprezintă înregis-
trarea. De exemplu pentru o clasă avem:
CONSTANT_Class_info |
ul tag;
u2 name_index;
unde tag= CONSTANT_Class (7)iarname
_index reprezintă un index în con-
stant_pool care va indica spre o înregis-
Implementarea acestor elemente ale ma-
şinii virtuale Java nu impune nici o restricție
privitoare la tehnica care se foloseşte.
Diferitele implementări ale maşinii virtuale
Java comunică prin intermediul fişierelor
„class. Mașina virtuală recunoaşte aceste
fişiere şi nu limbajul Java. Astfel, se pot real-
iza compilatoare care să genereze cod binar
Java şi pentru alte limbaje, singura condiţie
fiind să se genereze un fişier .class care are
structura celui recunoscut de maşina virtuală.
Structura fișierului .class
Fişierele .class păstrează codul compilat pen-
tru clasele şi interfețele Java. Acest fişier are
structura prezentată în figura „Structura
fişierelor .class“. În această figură u1,u2,u4
reprezintă valori fără semn, având lungimea
de 1, 2 respectiv 4 octeți.
Elementele din structura fişierului .class
sunt:
magic — reprezintă un număr care identifica
formatul fişierului, are valoarea
OxCAFEBABE
Structura fișierelor .class
ClassFile |
u4 magic;
u4 version;
u2 constant_pool_count;
cp_info constant_pool[constant_pool_count - 1];
u2 access_ flags;
u2 this class;
u2 super_class;
u2 interfaces_count;
u2 ; interfacesLinterfaces_count];
u2 fields_count;
field_info fields[fields_count];
u2 methods_count;
method_info methods[methods_count];
u2 attributes_count;
attribute_info attributesl[attribute_count];
)
trare CON STANT_Utf8_i nfo, care va
reprezenta numele clasei.
Colectorul de deșeuri
Maşina virtuală Java mai include un colector
de deşeuri. Acesta este un proces care rulează
în umbră şi el este răspunzător de elibararea
resurselor ocupate de programe. Există mai
multe tehnici pentru realizarea acestuia, dar
nu se impune implementarea uneia dintre a-
cestea, cel care realizează o Maşină virtuală
Java poate săimplementeze propriile tehnici
caresă realizeze acest lucru. În Java nu se per-
mite programatorului să aibă acces direct la
resurse, de ocuparea şi eliberarea propriu zisă
a lor se ocupă mediul de execuţie. De obicei,
când o resursă nu mai este referită de nimeni,
eava fieliberată de către colectorul de deşeuri.
Minor_version, major_version — reprezintă
numerele corespunzătoare versiunii com-
pilatorului care a generat fişierul class.
constant pool _count- reprezintă numărul
înregistrărilor din rezerva de constante.
constant pool count trebuie să fie o va-
loare mai mare decât zero.
constant_pool[] — este un vector care con-
ţine structuri cu lungime variabilă repre-
zentând constante string, nume de clase,
nume de câmpuri, şi alte constante care
sunt referite din fişier. Prima înregistrare
constant_pool[0] este rezervată pentru
uzul intern a maşinii virtuale Java şi nu
este prezentă în fişierul class. În fişier se
găsesc înregistrările constant_pool[1]...
constant pool[constant_ pool _count-1]
access. flags-—sunt o serie de flaguri folosite
Mașina virtuală Java
Programare
clase, metode, sau câmpuri pentru a
descrie diferite proprietăți ale acestora,
cum ar fi accesul metodelor din alte
clase la elementele clasei.
this_class—este un index în constant pool,
care indică o înregistrare de tip CON-
STANT Class _ info, care va reprezenta
clasa sau interfaţa a cărei cod se află în
fişierul class.
super_class — este un index în constat pool
şi va indica spre o înregistrare CON-
STANT_Class_info, care reprezintă su-
perclasa din care s-a derivat clasa curen-
tă. Dacă super_class are valoarea zero,
atunci este vorba despre clasa ja-
va.lang.Object, aceasta fiind singura
clasă, care nu se derivă dintr-o clasă.
interfaces_count-— reprezintă numărul inter-
feţelor implementate
interfaces|] — este o tabelă de indexuri
către constant_pool, înregistrările respec-
tive din constant pool reprezentând
descrieri ale interfeţelor care sunt super- .
interfețele directe
fields_count — reprezintă numărul struc-
turilor field_info din tabela de câmpuri.
Acest tabel include atât variabilele de clasă
cât şi cele de instanță.
fields[]- este un tabel conținând structuri care
descriu complet variabilele din clasă (atât
cele de clasă, cât şi cele de instanță). Include
doar variabilele declarate în această clasă
şi în interfețele acesteia, nu şi cele care au
fost declarate în clase superioare clasei.
methods_count — reprezintă numărul me-
todelor din tabela de metode
methods[]-—este un tabel care conţine struc-
turi care descriu complet metodele îm-
preună cu codul executabil al metodelor
din clasă, sau interfață. În tabel se găsesc
descrierile pentru toate metodele (atât de
instanță cât şi cele de clasă) care au fost
declarate explicit în această clasă.
attributes_count —reprezintă numărul înre-
gistrărilor din tabela de atribute a clasei
attributes[] — conţine structuri de lungime
variabilă, care caracterizează atributele
asociate fişierului class.
Fisierul Hello.class
Pentru exemplificarea structurii unui fişier
class am ales fişierul Hello.class, care se
generează din următorul fişier sursă (Hel-
lo.java):
class Hello!
public static void main(String
args[])|
System.out.printin("Hello
World”);
}
OxCA. FE BA BE
0x00 03 00 2D
0x00 20
constant_pooll ]
[1] 0x08 00 14
[21] 0x07 00 13
[30] 0x01 00 03
magic
version
constant_pool_count
înregistrare tip string, având numele la
constant_poo![0x14]
inregistrare tip calss, avand numele la
constant-_pool[0x13]
înregistrare CONSTANT_Utf8 având 0x0003 caractere
Ox6F 75 74 având valoarea 'out'
[31] 0x01 00 07 înregistrare CONSTANT_Utf8 având 0x0007 caractere
Ox6F 75 74 având valoarea 'printin'
0x00 20 acces_flags
0x00 02 this_class
0x00 04 super_class
0x00 00 interfaces_count
0x00 00 fields_count
0x00 02 methods_count
methodss[ ]
methods[1]
0x00 09 acces_flags
0x00 1D name_index
0x00 OE descriptor_index
0x00 01 attributes_count
Code_attributes[1]
0x00 10 attribute_name_index
0x00 00 00 25 „attribute_length
0x00 02 max_stack
0x00 01 max_locals
0x00 00 00 09 code_length
0xB2 00 07 12 01 B6 00 08 B1 P-Code
0x00 00 exception_table_length
0x00 01 attributes_count
attributes[1]
0x00 16 attribute_name_index
0x00 00 00 0A attribute_length
0x00 02 attribute_count
[1] 0x00 00 start_pc
0x00 03 line_number
[2] 0x00 08 start_pc
0x00 02 line_number
methods[2]
0x00 01 attributes_count
SourceFile_attribute[1]
0x00 19 attribute_name_index
0x00 00 00 02 attribute_length
0x00 15 sourcefile_index
Daca vizualizam continutul fisierului Hel-
lo.class cu un editor, care este capabil si arate
şi în hexazecimal (wpwiev din NC), putem
citi structura din figura „Hello.class“.
Referinţe:
1. PC Magazin DOS, 2/97, pag.166-171
2. http://paro.etri.re.kr/java/doc/beta
/vmspec/vmspec_2.html
3. http://www.javasoft.com/docs/books
/vmspec/html/V MSpecTOC.doc.html
Budai Lâszl6 este redactor la reveista BYTE
România. Poate fi contactat prin e-mail la
adresa lbudaiQagora.ro.
SEPTEMBRIE 1997 BYTE Romania 105
Your Internet Business Solution
/ InterComp București 01 3238255
Electronum București 01 3120440 |
CINOR București 01 3120579
ALGORITMA București 01 2122151
UNICOM București 01 2234359 |
CanadSystems - București 01 3236888 |
CEDRU București 01 6435024
MICROSISTEM Bacău 034 171342
SINTEC Baia Mare 062 436366
Deuro-Consult Brașov 068 319181
RomaniaOnLine Brasov 068 321529
HARD-TEST'94 Brăila 039 639533
DATA NET Constanţa 041 694520
SUD INTERNET Craiova 051 417963
TOPTECH Deva 054 213871
EST COMPUTER Focșani 037 217655 |
HARD-TEST'94 Galaţi 036 467752
KABELKON | Gheorgheni 066 164525 |
REMUS ROMANIA Piatra-Neamţ 033 213333
COMP-ARG Pitești 048 214269
INTER-CONEXION Pitești 048 219267 |
COMPUTER STARS Pitești 048 215099 |
TRANSDATA Ploiești 044 115577 |
IVEX Rm.Vâlcea 050 736077
MIANA Rm.Vâlcea 050 724404
COSYS Sf.Gheorghe 067 323036
LANCOMP Sibiu 069 214103
WARP-NET Suceava 030 226810
ROMWEST Targoviste 045 218343
BIMOS Tg-Jiu 053 210741
SARATOGA Timisoara 056 199780
LHARD-TEST'94 Tulcea
—
Numai prin noi aveţi acces la
Internet din toată „cu viteză
maximă şi costuri minime!
Email: office Ostarnets.ro
http://www.-starnets.ro
Inter @baap.
@ Powered by SPA RC-Solaris
Clasa java.awt.image
De Pelin Nicoleta Corina
și Pelin Cristian Florentin
achetul java.awt.image conţine 3 interfeţe cu funcții
specifice: ImageConsumer, ImageObserver, Image-
Producer. ImageProducer este interfața care produce
date de tip imagine pentru tipul de date Image. Fiecare
imagine conţine o instanţiere a ImageProducer, care este folosită la
reconstrucția imaginii ori de câte ori este solicitat acest lucru.
Interfața ImageConsumer este interesată de datele produse prin
interfața ImageProducer. Când un consumator este asociat unui
producător de imagini, acesta din urmă va trimite toate datele despre
imagine folosind metoda call. ImageObserver este o interfață ce
primeşte informaţii despre o imagine în timp ce este creată.
Cred că este utillă o
ImageFilter este clasa ce implementează un filtru, pentru diferitele
metode ce sunt folosite pentru a transmite date de la un ImagePro-
ducer spre un ImageConsumer. Se poate folosi şi un Null Filter ce
lasă imaginea neafectată în procesul de mai sus. Pentru a produce
versiuni filtrate ale imaginii, această clasă se va folosi în conjuncţie
cu un obiect de tip FilteredimageSource.
CroplmageFilter este o clasă ce extinde clasa de mai sus şi este
folosită pentru a extrage o regiune dreptunghiulară, dată dintr-un
obiect de tip Image şi pentru a furniza sursa pentru un nou obiect
de tip Image, ce va conţine doar regiunea decupată. Va fi folosită în
conjunctie cu un
(rosu, verde, albastru).
Filter
sumară trecere în revistă obiect de tip Filtered-
a claselor ce alcătuiesc ImageSource pentru
clasa java.awt.image. Memory Filtered a crea versiuni decu-
Prezentarea este facuta ImageSource TE es ImageSource pate ale imaginii exis-
la nivel de introducere, (1.P.) (ae (1.P.) tente.
“urmând ca cei interesați
să încerce să imple- FilteredImage-
menteze facilităţile Source este o imple-
oferite de fiecare clasă în mentare a interfeţei
parte. ImageProducer.
Această clasă preia o
ColorModel este ColorModel ImageFilter imagine şi un obiect,
clasa ce încapsulează de tip filtru, şi le
metode pentru descom- foloseşte pentru a
punerea unui pixel în RGB produce o versiune
componentele sale RGB Juli filtrată a imaginii
originale. De exem-
Constructorul poate fi
plu, codul pentru
aplelat, specificând un schimbarea compo-
număr de biţi alocaţi nentelor roșu şi albas-
pentru un pixel. Este o tru dintr-o imagine
clasă utilă în prelucrarea este:
digitală a imaginilor color.
IndexColorModel este o clasă ce descompune pixelii în compo-
nentele RGB pentru pixelii care deţin informaţia de culoare, ca
indecși într-o hartă a culorilor. De notat că majoritatea metodelor
acestei clase sunt finale (adică nu mai pot fi schimbate prin redefinirea
într-o clasă ce extinde clasa IndexColorModel)
DirectColorModel este o clasă ce descompune pixelii în com-
ponentele RGB pentru pixelii care au componentele de culoare
incapsulate direct în biții pixelului însuşi. Acest model este similar
cu modelul X11 TrueColor.
www.agora.ro/byte/
Image src = getImage("doc: ///demo/ images
/duke/T1.gif”);
ImageFilter colorfilter = new RedBlueSwapFilter();
Image img = createImage(new FilteredImageSource(src
.getSource(),colorfilter));
MemorylmageSource este o implementare a clasei ImagePro-
ducer, care foloseşte un vector pentru a determina valorile pixelilor
pentru o imagine dată. Un exemplu de creare a unei imagini cu un
efect de degrade, de la negru la albastru pe axa Ox şi de la negru la
roşu pe axa Oy:
SEPTEMBRIE 1997 BYTE România 107
Programare
Clasa java.awt.image
import java.applet.*;
import java.awt.*;
import java.awt.image.*;
public class ImageGrabber extends
Applet implements Runnable{
Image img,imgl;
Thread timer>=null;
int-w hetvelx-cly,c2x, 62y; cx ey:
intl] pixels=new int[100000];
MediaTracker mt=new
MediaTracker(this);
ImageConsumer ic;
Memory ImageSource mis;
ColorModel como;
public void init(){
resize(700,700);
// se citeste într-un string nume
le fisierului ce contine îmag
inea
String simg=getParameter ("po
za:
if (simg==null)simg="Colos
seum. jpg";
img=getImage(getCodeBase(),
simg);
//Definirea butonului
Button b2=new Button("init”);
add(b2);
Button bl=new Button("crop");
add(bl);
Button b3=new Button("nou");
add(b3);
//Incarcarea imaginilor in memo
rie
mt .addlmage(îmg,l);
try {mt.waitForID(1);}
catch(InterruptedException
ie)t}
}
public boolean action(Event e,
Object o){
//Captarea actiunii asupra
butonului
if(e.target instanceof Button) {
if ("crop".equals((String) o))t
System.out.printIn( "crop");
t=:
.
if ("init".equals((String) 0)){
System.out.printin("init");
t=":
repaint();
}
if ("nou".equals((String)o)){
System.out.printin("nou”);
if(t=2){
repaint():;
}
else{System.out.printIn("e
roare");}
}
Codul sursa al aplicatiei
return(true);
|
public void start()t
if (timer==null){
timer=new Thread(this);
timer.start();
)
)
public void stop()t
timer=nul 1;
)
public void run(){
t=-1;
while (timer !=nul1)
RUE 2
//se construieste un obiect de
tip ImageProducer care folos
este
//un vector de intregi in modul
implicit RGB pentru a produce
date
//pentru un obiect de tip Image.
mi s= new Memory ImageSource(w,h,
pixels,0,w);
//se adauga un ImageConsumer la
lista de consumatori intere
sati
//de datele acestei imagini.
mi s.addConsumer(ic);
handlePixels(img,clx,cly.w,
h);
imgl=createlmage(mis);
mt .addlmage(imgl,1);
try {mt.waitForID(1);} catch
(InterruptedException ie){}
)
public boolean mouseDown(Event e,
int x, int y){
if(t=1)t
if((x>c1x)&&(y>cly)){
w=x-clx;
h=y-cly;
t=2;
System.out.printin("t"+t+
By Mee ees y"t+y+" wertwe” h"+h):
}
else{t=-1;
System.out.printIn("selectie
incorecta");
)
)
if (t=0){
clx=x;
cly=y;
t=1;
System.out.printIn("t"+t+"x".
+elxt" y"tely):
)
return true;
)
// Functia handlePixels transforma o
suprafata dreptunghiulara
dintr-o
/limagine intr-un vector. Parametrii
reprezinta:
// - x, y: coltul din-stanga sus de un
de începe "decuparea” imaginii
// - w, h: cat anume din imagine va fi
copiata.
//imgl este imaginea care va fi crea
ta din acest vector.
public void handlePixels(Image
img,int x,int y,int w,int h){
//implementeaza un ImageConsumer
care poate fi atasat la un
//obiect de tip Image sau Image
Producer pentru a prelua o
submul time
//a pixelilor din acea imagine.
PixelGrabber pg=new Pixel Grabber
(îmg,x,y,w,h,pixels,0,w);
tryl
//cerere din partea Image sau
ImageProducer de a incepe
//trimiterea pixelilor si
asteptarea incheierii trimi
terii
//tuturor pixelilor.Metoda va in
toarce true in caz de reusita.
pg.grabPixels();
}catch(InterruptedException
e) |
System.err.printin("inter
rupted waiting for pixels");
return;
)
if ((pg.status() & ImageObserv
er. ABORT) !=0){
System.err.printIn("image
fetch aborted or errored”);
return;
}
//metoda setPixels este o parte
din ImageConsumer API pe care
//clasa PixelGrabber trebuie sa o
implementeze pentru a prelua
pixelii
)
public void paint(Graphics g){
if(t=-1 ){ g.drawlmage(img,10,
30,this);}
if (t==2 ){g.drawIlmage(img1,10,
30,this); i
)
108 BYTE România SEPTEMBRIE 1997
Clasa java.awt.image
Programare
int w = 100;
int h = 100:
int pixL] = new int[w*h];
int index = 0;
for (int y=0; y < h; y#+4) {
int red =:Cy:*°255) / -(h = 1):
fopcint x. = 0 x Comix)
int blue = (x * 255) / (w -
1)
pixLindex++] = (255 << 24) |
(red << 16) | blue;
)
)
Image img = createImage(new Mem-
oryImageSource(w, h, pix, 0,
w));
PixelGrabber este o clasă ce imple-
mentează un obiect de tip ImageConsumer,
care poate fi ataşat de către un ImagePro-
ducer sau de Image, pentru a trimite un set
de pixeli în acea imagine. De exemplu:
int[] pixels = new întlw * h];
PixelGrabber pg = new PixelGrab-
ber(img, x, y, w, h, pixels, 0,
w);
try:
pg.grabPixels();
} catch (InterruptedException e)
{
System.err.printIn("interrupt-
ed waiting for pixels!");
return;
}
if ((pg.status() & ImageObserv-
er.ABORT) !=0) {
System.err.printIn("image
fetch aborted or errored”);
return;
}
forcGintj.— 0) “she js)
for (int i =0; 7 < w; i++) {
handlesinglepixel(x+i, y+j,
pixels[j *wt+i]);
}
}
}
RGBlmageFilter furnizează un mod uşor
de a crea un ImageFilter, care modifică
pixeli unei imagini în modul implicit RGB
ColorModel. Se utilizează în conjuncţie cu
FilteredimageSource, pentru a produce ver-
siuni filtrate ale imaginilor existente. Exem-
plu:
class RedBlueSwapFilter extends
RGBImageFilter {
public RedBlueSwapFilter() {
// The filter's operation does
www.agora.r6/byte/
imgse
Codul sursă pentru ImageGrabber.html