i:iO informatica 1 YU ISSN 0350-5596 1 Ill I I .ZLnixxxxxnnNK>:CTTTxxxxxxxxxi.Z*((. «IIMllIXXXXXyNNNLLLTTHHClCNNLLL. —/Ill I «11 II HCCCCCNNLLNKIKIHNNNMMOKOOOOHHIlNHdHI-NKn ((TTCCCCCCCAAkCZZZrsjnnN(|...XXXXXXXXXXXXXXXXXXXXX/ .zr.nnn k *«*a** / / I LLNM^MN N HS I I /// AA C KfPPP aaaxxxxaaaaaa/// kxl a.nnnn xxxxxxx/ aai/ clcaaaaaaannnnhusn// NNi a aa 1 XX LLL XAAAA AAA PPPXXXXXXXXXXI PPNNZ X AAA X XXX//AAALLNNNN NNNN < A AAA A A It / CC AAANNAflNCCCCCNL AAAAH / AA /AAPPPCCCNNNNN//UPLLL XXXXX IH A AAAA A A . AAAAAANNNllI///PAAAXXXXXX A/ A A A A AA / // PFPPAANNNNNSS(/t(//PCCCXN>«HNNN A A I..L /AAA A AANAAtAAAAAAPPPNXXXXXX 1 A A A CCCAA NN NNCCPPPPXXXXAAAAAAAAANN II «nnHN / L'. A A NNN AAAAAAAAAAANNNNNNNNNh AAAAAAA A CC L //P AAA//AAAXXXXXXXXXXAAAAACCCCNNN CCCCCCCCP A CCL XXXXXXXXXXAXXXXXXXXXXXAAODUCCNN'X/ A A PPPPeb«///A x xx xxxaaaaannnnnaaaxxxxxxxxxxxxxxxxxnnn. I / ccc/aaa* aaz ««ihkhh I CCItll aaa* / xx uk . ^i^xxxxxxxxxx x a xxxax i i a *• xaxxxa a xx x •aaxxpxx xx..caa xxxxx xxxxx aa a aaa a aaaa AA AAA PPP / XXX AAAAACCCCCCCCNMNNNNNNNNAAAAAAAAAAAAA/ // .// /////CCCPPPPPXXXXXXXXXXCCCIAAAAAAAAPA XAAA XX AAAA/NLULlAAtANKnKXXXXXXXAAXXXXXXXXXXXX NNXXXAA XXX P IKAA AA A A NXXX XXXX X XNN XX XXXX XXNNNK AA PPCCCCCCAAAAAXNNSNNXXXAAXXAXXAXXAAAA A PPPPPPAAAAAALLAAAAAAAANNNKKSXXXXXXXA A XXX CCCNNSNNSNALLAANNXXXXXXXXXXXXXNNNA XX A A N IIKIIIALLLLLLLLLAAAAAXXXXAAAAA i K / I I X / x xx x xxx D H A *2N.9yrYYAAAA via x/l i n/l i n/p CAN caaaaa ..aaaaaaa xxx a x a //l/cxx xxvanapppp aaaa ..AACLLLLIA nCCCC appppp pcpp anna ahaxxxxx "NNNNNMLLlLCCCXXXXXI IXXXXCXXXXXAAAAAAAA MXXXXNNNNXXXXXXNNI CXXXXNNNNNNNXXXP/ PXXXXAXXXXXAAAAOl XXXXXPPPSNSNXXXA" axxxxxxxxpppnnha/ .MNNNSXXXXXXXXXXI CCNNNNNLLLXLXXX2 aaa/ xxxx pppp naaCACA nn a t. tAA A A IXXXC A AAA X.A NNNCCC/ . AAAA C XXC C A A ACCCCCCCPPPP/X . A ANNNNA AAANNNINN NNSS. C.AAA AA AAAA PNtN//AHUChHWiXX// .NNNPP / PNIKA/CCCCCCCCCCC C X NN ACCC AIIII/PP I A AAAA//t|AA/ lAAAACCAAAX //A AAAAAACCPPAA /AA A PP A AAAA I AAA.IIA/ I Ml-** rn'^i"/ n^nxxxxx A ixxxxxxxxxx A AAAA^^At A(A « I i'/////H I I »1//////» 1À I • nwi' I .1 A A N N—.. AA A A AXAAC Al*l . CCCPPAA AA- NNN CPPPCCA / PPNXX CC CCACAANNXXX nCPP PCC AAANNNNNSnn A AAA AAA//////XXXXXAAAAAA AAA A nnnsn/ AA A AAAA X A AAA NNNPXXAC A HNKNNNNNAAAAAAtt/ X/ P AA A INSNCCCCiAAAAAAA. XXX AAAAAA IANHHnKXXXXHHnn><, xx x nnnh- (anaccccaaaxxxxxi /XX zn ANAXXXXXXXCCCXX/ nx, p ..IXXXXXAXXXXXXXXXXXXX X//C lt*«N«XXXX>lKKNMN»'«f XXXXC IK« I IZ/....KHXXXXPMxnXXXXXXNNLLI. NNNNNPPpppppppppAAAXAAAAAAAAAA A PCCCCPPPNMXXXXXLLLLXNNNNNNNNN/ XX AAAAAAAAA/NXAAAAAAAXXNnf^ir.nKnl CPPhNNNAPPNNN pretvornik JUL univa S časovnim mul-tipleksom JliL d/a pretvornik 1 jU. MODEM JUL TBfmmL \TEmmL\ IJUL I JUL Jii J VOi \ l-MHeiNt POVBZOVALHIK R- Sl^f^ALNl Re^ENEß/{rOA rfÄMIWAt JUL LiUüA S CA-50\^NIM MULti PIEK Sm JUL JUL 0 ■0 JUL JI. možnosti za razvoj in raziskave zares raznovrstna. Združevanje obdelave podatkov in telekomunikacij je tako očitno zlasti na inovativnih področjih, kot so komunikacijski sateliti, optični prenos podatkov, mikroprocesorji, magnetni mehurčki in tehnologija velikega zgoščevanja elementov v integriranih vezjih. Nove aplikacije v okviru združevanja računalništva in telekomunikacij se kažejo v prihodnosti na področjih, kot so potovalne rezervacije, elektronsko bančništvo, prodajne in nabavne transakcije, računalniške konference, shranjevanje in razdeljevanje zvočnih sporočil, razdeljevanje faksimilov in obdelava slik, interaktivna grafika, procesiranje tekstov in razdeljevanje dokumentov ter v t.i. televizijskih informacijskih uslugah. Tu so velike nove možnpsti za združeno domačo računalniško in komunikacijsko industrijo. S sistemskega stališča je računalniška aH podatkovna mreža eden osrednjih prihodnjih problemov računalništva, telekomunikacij in informatike, kot združenih in medsebojno odvisnih dejavnosti. Pojem podatkovne mreže je več kot dve desetletji prisoten v razmišljanju in pri sistemski gradnji, ni pa vselej razjasnjeno vprašanje njegove konceptualne, funkcijske in materialne zapletenosti. Na planetu bo letos obratovalo■že okoli 30 javnih podatkovnih mrež (11). V petdesetih letih so bile telefonske analogne linije prvič uporabljene za prenos računalniških podatkov. Shema prenosa podatkov po linijah v analogni obliki je prikazana na sliki 2(a), v sodobnejši digitalni obliki pa na sliki 2(b). Prednost digitalnega v primerjavi z analognim prenosom je v relativno enostavni regeneraciji izvirnih digitalnih signalov vzdolž in povprek v podatkovni mreži. Zaradi te značilnosti, tj. možnosti regeneracije, imamo v digitalnih mrežah le en napačen bit v desetih milijonih bitov, v analognih mrežah pa v stotisoč bitih. Tudi povezovalne enote terminala na mrežo so v digitalni mreži glede na modem v analogni mreži enostavnejše in cenejše. Prve javne digitalne mreže so bile oblikovane že leta 1973 (Dataroute in Infodat v Kanadi, Dataphone v ZDA, Transdata v Braziliji, Digital Data Circuit na Japonskem). Splošna problematika podatkovnih mrež in protokolov je bila objavljena tudi v domači literaturi (12, 13, 14) . Na sliki 3 imamo še t.i. paketno podatkovno mrežo, iz katere je razvidno paketno pošiljanje podatkov s časovno delitvlDO prenosnih poti med paketi v eni in v drugi smeri. Dobro znana računalniška mreža je tudi DECNET, ki uporablja t.i. parno interakcijo (peer) (15). Mreža DECNET ni bila oblikovana le za miniračunalnike iz proizvodnje podjetja DEC (kot sta PDP-8 in PDP-11), marveč tudi za večje sisteme (kot je DECsystem-lO). Namen te mreže je povezava računalnikov v pentljasto obliko na sliki 4 (a) ali v hierarhično strukturo na sliki 4(b) ali v druge mrežne konfiguracije. Razvoj mreže DECNET je bil v zasnovi tipično navzgornji, tj. od uporabnika miniračunalnika do drugih uporabnikov z računalniki približno enakih moči, ki so se naprej povezovali medsebojno in kasneje v enoten veliki gostiteljski sistem. Nasproten navzgornjemu je navzdolnji razvoj mreže, ki ga je oblikovalo podjetje IBM pri zasnovi svojih hierarhično organiziranih računalniških mrež. 5. Mikroračunalniški sistemi Doslej smo izčrpno opisali visoki in srednji nivo računalniških sistemov, nismo pa se posebej ozrli na nižji računalniški nivo, ki ga predstavljajo mikroračunalniški sistemi. V podatkovnih mrežah, v porazdeljeni obdelavi podatkov in sploh pri smiselno grajenih velikih SLIKA 3. Gibanje podatkovnih paketov in delitev prenosnih poti med paketi v paketni podatkovni mreži ^ PAXEr IZ v «. označujejo računalniške arhitekture, ko imamo velike (mega-) mini- in mikroračunalniške sisteme. Pri tem je značilno, da moramo danes razlikovati velike, srednje in male informacijske sisteme, ki se na določen način povezujejo v širši (prostorski) informacijski sistem. Poslovni IS so tipični za uporabo v delovnih organizacijah (tudi bankah), kjer se obdelujejo podatki, povezani s poslovanjem podjetja. Upravljavski IS so posebej usposobljeni poslovni sistemi in njihov namen Je določanje strategijskih informacij, kot so poslovne, tehnološke in družbene odločitve, analiza stanja, strategija razvoja, planiranja, investicijske alternative itn. Procesni IS so porazdeljeni sistemi v proizvodnji (ali drugih procesih), povezani s poslovnimi in upravljavskimi IS. Ti sistemi so lastnost 1955 1980 1990 josephson človeški možgani volumska gostota (vezja/ kub. cm) 10-^ 10 10= lo' močnostne izgube (W/vrata) 10-1 3.10-^ 10-^ 10-' hitrost ^ (takti/s) 6 10 lo' lo' 10^ preklaplanje/ kub.cm/s lo' lo" lo' preklaplanje/ joule 7 10 10^= lo" pomnilniška gostota (biti/kub.cm) 5.10^ 5.10 5.10^ lo" totalno število elemento\ v enoti (vezij/nevronc )v) 10= 10= lo" računalniška (preklopi/s) lo" 10» TABELA 1. Primerjava zmogljivosti računalnikov v letih 1956, 1980 in 1990 in človeških možgano»^ SLIKA 7. Uporabniška delitev informacijskih sistemov s področji njihove uporabe in z uporabo računalniških arhitektur (M, m, INFORMACIOSI^I SISTeMI S s: POSÙVMI (ÙEL. 0«RUŽB£NI, i^iDEorexsr) M-me^a, m-mini, ^'^nlkro Domači VAiiMosr) kONSTROl^CIJSM (v kroNsrRUK- CIDSKIH birojih) JkJ. OSEBNI (PISANJE, R^Čutjomsrvo, Pošta, MOVICI. uCewüe, , VIDEO TEkSr) posebej osposobljeni za delovanje v realnem času in njihove informacije so tudi signalne in ne samo podatkovne. Posebno novo področje uporabe računalniških sistemov so infrastrukturni IS, ki so povezani s terminali na javnih in zasebnih mestih ter so pod konceptualnim, vsebinskim in funkcionalnim nadzorom in usmerjanjem javnih in družbenih dejavnikov. Tu gre za široko podatkovno mrežo, ki nudi svoje usluge prek različnih komunikacijskig sredstev (telefon, televizija, brezžični prenos), masovno in različnim uporabnikom (podjetja, pošta, informativne službe, posamezniki). Uradniški IS predstavljajo sisteme za avtomatizacijo vrste uradniških opravil, od procesiranja tekstov, razpošiljanja pošte, shranjevanja aktov do razdeljevanja dokumentov in slik. Vsi veliki svetovni proizvajalci računalniških sistemov računajo z znatnim plasmanom svoje proizvodnje na področje naprav in postopkov t.i. integriranega urada. Konstrukcijski IS so namenjeni inženirski in projektantski dejavnosti, kjer se izdeluje projektna in tehnična dokumentacija (tudi razvojna), so narejeni za generiranje tekstov, risb, izračunov itn. Posebno novo področje so domači in osebni IS, kjer je predvidena uporaba mikroračunalniških sistemov. Domači IS naj bi predvsem skrbeli za vzdrževanje in delovanje doma, s posebnim poudarkom na smotrni porabi energije in zagotovitvi varnosti bivanja. Osebni IS se izredno hitro razvijajo za različne osebne usluge, kot je pisanje tekstov, osebno računovodstvo, poštne in bančne usluge ter novice prek posebnih javnih podatkovnih in uslužnostnih mrež. Osebni IS postajajo potreba in zahteva za različne osebne rabe in nagnenja, s ciljem, da zvišujejo osebno evidenco nad podatki in stanji ter produktivnost osebnega dela doma in na delovnem mestu. 9. Sklep Pregled razvoja računalniških in informacijskih sistemov v tem članku obravnava le globalna izhodišča in lastnosti sistemov in njihove uporabe. Kot bistveni prihodnji sistem poudarja in razlaga podatkovno mrežo, ki naj bi postala cilj in možnost povezovanja izoliranih računalniških sistemov, terminalov in osebnih računalnikov. Vlrtualnost, multiprooesiranje in porazdeljena obdelava podatkov so tudi posebni pristopi prihodnjih, sodobno organiziranih računalniških in podatkovnih mrež. Pregleda razvoja računalniških sistemov ne bi bilo moč sestaviti brez pomoči Strokovne knjižnice IBM, DO Intertrade v Ljubljani, ki se ji avtor iskreno zahvaljuje za pomoč. Slovstvo (1) W.D.Strecker: VAX-ll/780i A Virtual Address Extension to the DEC PDP-11 Family, Computer Engineering, Digital Press, 1978. (3) (4) (6) (7) (8) (9) (10) (XI) (12) (13) (14) (15) (16) (17) (18) (19) L.H.Seawright, R.A.MacKinnon: VM370 - A Study of Multiplicity and Usefulness, IBM Systems Jour. 18 (1979), Nr.l, 4-17. G.G.Henry: Introduction to IBM Systera/38 Architecture, IBM S/38 Tech Dev, 1978. J.G.Maisonrouge: The Information Industry, La Hulpe, Jan 30, 1979. E.W.Dijkstra: Co-operating Sequential Processes, Programming Languages, Ed. F.Genuys, Academic Press, 1968. C.A.R.Hoare: Monitors: An Operating System Structuring Concept, Comm. ACM 17 (1974) , 549-557. N.Wirth: MODULA: A Language for Modular Multiprogramming, Software Practice and Experience 7 (1977), 3-35. A.L.Scherr: Distributed Data Processing, IBM Systems Jour. 17 (1978), Nr.4, 324-343. S.C.Kiely: An Operating System for Distributed Processing - DPPX, IBM Systems Jour. 18 (1979), Nr.4, 507-525. L.M.Branscomb: Computing and Communications - A Perspective of the Evolving Environment, IBM Systems Jour. 18 (1979) , Nr.2, 189-201. J.R.Halsey, L.E.Hardy, L.F.Powning: Public Data Networks: Their Evolution, Interfaces, and Status, IBM Systems Jour. 18 (1979) , Nr.2, 223-243, D.L.A.Barber: Vloga računalniških mrež se spreminja, Informatica 3 <1979), §t,3, 28-35. D.L.A.Barber, T.Kalint A Scenario for Computer Network. Research, Informatica 3 (1979), St.2, 29-33. M.Kapus, A.P.Železnikar: Komunikacijski protokoli. Informatica 3 (1979), St.2, 50-57. P.E.Green: An Introduction to Network Architecture and Protocols, IBM Systems Jour. 18 (1979), Nr.2, 202-222. J.G.Maisonrouge: Die Herausforderung, IBM Nachrichten 29 (1979), Nr.246, 13-19, A.P.iSeleznikar, D.Novak: Mikroračunalnik IKE-1 s procesorjem 18086, Informatica 3 (1979), št.2, 3-13. E.Lerner: Superconducting Super Computers are on the Way, High Technology 2 (1980), Nr.3, 67-73. A.P.Železnikar, Sodobni tokovi razvoja računalništva, Delta informator 2 (1980), St.3, 6-11. INFORMATICA 1/1980 EVROPA IN NOVA INFORMACIJSKA TEHNOLOG I JA UDK: 007:681.3(4) EUROPE AND THE NEW INFOBMATION TEHNOLOGY March 1980, Commision of the European Communities, Directorate-General for Information, Rue de la Loi 200-B-10^^9 Brussels. Telematika in informacijska tehnologija bo besede, ki jih danes redko uporabljamo, jutri pa bodo tako pogoste, kot so telefon, televizija, obdelava podatkov ali satelit. Kot vse kaže, bo povezovanje teh različnih tehnologij v novo dinamično tehnologijo - telemati-ko - povzročilo globoke spremembe v človeški druSbi. Predvsem bo vsakodnevno življenje lažje. Elektronski denar se že danes uporablja in ob uporabi računalniških terminalov na ulicah, bi se gotovina lahko umaknila iz bančnih računov. Z uporabo telefona ali televizije s posebno testaturo, lahko že sedaj pregledujemo trgovske kataloge in celo naročamo ali pa dobivamo informacije o družbenih dejavnostih, lokalnih aktivnostih itd. Tudi pošto že lahko hitro prenašamo preko telekopirnih aparatov. Z medsebojnim povezovanjem sistemov za obdelavo teksta lahko tipkamo tekst na enem mestu (na primer doma), ga popravljamo brez ponovnega pretipkavanja ter istočasno prenašamo na drugo lokacijo. Končno nam bo uporaba mikroprocesorjev - resničnih mini-računalnikov - ki združujejo tisoče elektronskih vezij v enem paketu manjšem od glave vžigalice in se že masovno proizvajajo, omogočila širok spekter specializirane opreme, potrebne za telesno prizadete osebe, uporabo računalnikov doma, v avtomobilu itd. V jutrišnjem svetu bomo lahko avtomatično kontrolirali porabo goriva, varnostno razdaljo med avtomobili in podobnp. Širše vzeto bo dostop do informacij v vseh oblikah (pisani, sluSnovidni itd.) mnogo enostavnejši, kar bo koristilo posameznikom, gospodarskim organizacijam in javnim službam, ki so pogosto obremenjene z goro podatkov. Učinkovito odločanje zahteva hiter in enostaven dostop do vseh informacij, ki se nanašajo na določeno področje ter njihovo sintezo. Odločanje zahteva tudi hitro komuniciranje s partnerji, strankami, itd. Upravljanje z informacijami in njihova uporaba je ključni problem družbe. V določenem trenutku bodo najbolj razvite dežele prešle iz industrijske v informacijsko ekonomijo. Telematika je skupen izraz za vse informacijske tehnologije, potrebne za tako spremembo : banke podatkov, računalniška oprema in še posebno prej omenjeni mikroprocesorji ter končno nova tehnologija prenosa infonnacij preko kablov iz optičnih vlaken in satelitov, ki bodo izrinili tradicionalna komunikacijska omrežja. Taka tehnološka revolucija seveda ne more ostati brez resnih posledic: Na ekonomskem področju: Informacijska tehnologija še vedno predstavlja omejeno področje, ki pa naglo raste : okoli 13 % letno. Potrebe svetovnega trga so zelo velike in pogosto zelo elementarne. V ZDA Je od leta 19^0 do danes razmerje med zaposlenimi, ki so vključeni v razne oblike obdelave podatkov ( za razliko od direktne proizvodnje) naraslo od 25 % na t-J %. Poleg samega razraščanja industrije, ki proizvaja komponente za novo informacijsko tehnologijo, prinaša ta industrija že sama po sebi globoke spremembe tudi na dniga Industrijska področja. Uporaba mikroprocesorjev bo postala običajna v avtomobilih, doma in v pisarnah, obdelovalnih strojih itd. Poleg tega bo naglo zniževanj« cen že pripravljenih in programiranih sistemov pospešilo avtomatizacijske procese, kjerkoli bo to možno. Kot gonilna sila industrijskega prestrukturiranja bo telematika omogočala tudi geografsko decentralizacijo določenih industrijskih aktivnosti (tekstilna industrija, elektronika, strojna industrija itd.) in celo redno delo doma ( na primer določena pisarniška opravila). Na družbenem področju: Končna posledica naraščanja avtomatizacije bo zmanjšanje potreb za določenimi delovnimi mesti. Toda pod pogojem, da bo primerno usmerjena, bo ta revolucija prinesla tudi veliko število povsem novih opravil: načrtovanje, proizvodnja in vzdrževanje novih načinov avtomatiziranja, široka uporaba mikroprocesorjev v raznih napravah, v izobraževanju itd. Pokazala se bo potreba po ustvarjanju novih uslužnostnih dejavnosti za industrijo in za uporabnike te opreme. S spodbujanjem rasti manjših proizvodnih enot bo telematika odprla povsem nove možnosti industrijski iniciativi. Na političnem in kulturnem področju: Lažje in popolnejše zbiranje podatkov predstavlja problem za zavarovanje osebnih pravic v odnosu do javnih in privatnih organizacij. Vendar lahko avtomatizacija osebno svobodo tudi poveča. Da bi dosegli vse postavljene cilje, bo potrebno kvalitetno dvigniti tudi tehnično izobrazbo. Telematika bo ravno tako omogočila širši in direkt-nejši pristop do najrazličnejših virov informacij, vezanih na kulturne dejavnosti. THEHUTEN POLOŽAJ: AKCIJA EVROPSKIH DRŽAV Svetovno tržišče telematike zelo hitro raster evropsko tržišče pa predstavlja njegov precejšen delež. Svetovno tržišče v letu 1978 je bilo tole: Telekomunikacijska oprema: Okoli 27 miljard EUA (Europen units of account) ( 1 EUA = okoli 0,65 £-menjalni tečaj z dne '(■.o2.198o), od katerih odpade na Evropo 29 %i letna rast tega tržišča bo do leta 1987 nekje med 5 % do 8 Sistemi za obdelavo podatkov (računalniki, periferija in servis): Okoli 55 miljard EUA, od katerih odpade 26 % na Evropo; letna rast na tem področju pa bo okoli 17 %. Integrirana vezja: Okoli 5 miljard EUA, na Evropo odpade 19 % » v letu 1985 bo doseženo 11 miljard EUA. Ocenjuje se, da je tržna vrednost računalniških sistemov na svetli, ki se uporabljajo v administraciji in gospodarstvu, okoli 40 do 50 miljard EUA ; Evropski delež je okoli 25 vendar samo 17 % glede na dobavljeno opremo. čeprav je Evropa veliko tržišče, je njen delež v proizvodnji nezadovoljiv in je v nevarnem položaju, da bi se stanje poslabšalo. ZDA so glavni dobavitelj te opreme na svetovnem tržišču. To je v glavnem poseldica množičnih naročil zvezne vlade in NASA. Napredna ameriška polprevodniška in mikroprocesorska tehnologija se bo še nadalje ojačala z 200 milJoni U v 6 letnem programu, ki ga je razpisalo obrambno ministrstvo za razvoj in produkcijo zelo hitrih integriranih vezij (VHSI). Japonska je presenetila s spektakularno potjo od leta 1967, ko je objavila "Nđčrt infonna-cijske družbe", ki jè združeval vso podporo in spremljajoče ukrepe, ki so se v začel.ku ka-kazali predvsem v protekcionizmu. Ta politika je bila pred kratkim okrepljena z načrtom o produkciji izredno zgoščenih integriranih vezij. Z združevanjem tehnične kvalitete in konkurenčnih cen se Japonska industrija pripravlja na zavzetje svetovnega trga. Poglavitne slabosti Evrope so: - V proizvodnji računalnikov je največja evropska firma na 8.mestu, vendar Je kljub temu le 1/12 velikosti IM. Evropa je že izgubila bitko za trg zelo velikih računalnikov. - V produkciji periferije (terminalov itd.) so obeti Evrope boljši, vendar je tudi tu opaženo nazadovanje zaradi napredka ameriških miniračunalnikov. - Pri ključnih komponentah, posebno mikroprocesorjih, je stanje zelo vznemirjajoče, saj evropska industrija oskrbuje le 10 % svojega trga, kl pa se zelo naglo širi. Pri bankah podatkov Je situacija komaj kaj boljša. Poleg IRS banke podatkov,^ki Jo podpira evropska vesoljska agencija (ESA) in DIANE-EÜRONET omrežja, ki Je usmerjeno na znanstveno in tehnično dokumentacijo (evropska komisija in nacionalni PTT tesno sodelujejo, da bi omrežje čimprej zaživelo), Je komaj kaj bank podatkov na nivoju EGS. Nasprotno pa Je Evropa v mnogo boljšem položaju pri obdelavi podatkov in izdelavi programske opreme (software), kjer Je njena industrija v polni ekspanziji ter pri telekomunikacijah, kjer oskrbujejo 50 % svetovnega trga ( z dvema tretjinama firm evropskega porekla). Toda rast zelo obstoječega "telematičnega omrežja" bo ustavljena, če bo Evropa še nadalje zaostajala v razvoju celotne verige proizvodov. Stanje na poglavitnih področjih obdelave podatkov se v bližnji prihodnosti ne more bistveno spremeniti. Ni več niti zanesljivo, da bo samo napor vlad omogočil deveterici položaj, ki Ji bo zagotovil trdne osnove na hitro se razvijajočih področjih, ko so periferija, mini-računainiki, ključne komponente, banke podatkov itd. Dominacija ZDA in Japonske na področju telematike, Je za Evropo nevarna, ker lahko pomeni : Dokončno zapravljeno možnost aktivnega sodelovanja na trgu prihodnosti,- Zmanjšanje konkurenčne sposobnosti doma in v svetu ; Izgubo velikega števila delovnih mest in nevarne poseldice za svobodo in demokracijo, fie Evropa ne bo razvila svoje proizvodne kapacitete za telematične materiale, ki Jih bo morala v vsakem primeru prej ali slej uporabljati, ne bo sposobna ponovno pridobiti delovnih mest, ki Jih bo izgubila z napredkom avtomatizacije; Naraščanje njene politične, tehnološke in kulturne odvisnosti. Evropa se Je še vedno sposobna boriti. Še vedno lahko najde prostor v revoluciji, ki bo ločevala družbe 21. stoletja. Potre= ben pa Je enoten cilj: doseči eno tretjino svetovnega trga leta 1990. Da bi to dosegla, ima Evropa tri adute, ki pa Jih lahko izigra samo v okviru skupne strategije deveterice. P^i faktor Je obstoj domačega trga, velikega kot v ZDA, ki bo omogočal razvoj industrije, dokler se ne ukinejo nacionalne in tehnične ovire ter nacionalna urejanja in monopoli na področju telekomunikacij (kjer niso prav posebno pripravljeni na sodelovanje in pove-zvoanje). Drugi faktor so vladna naročila deveterici, ü bi omogočila temu trgu, da bi imel koristi od evropskih uporabnikov in dala prednost evropskim proizvajalcem pri velikih projektih, novi. proizvodnji in servisu. To se bo sicer razvilo v določeno diskriminacijo proti tujim proizvajalcev, vendar bo v korist in v okviru prave evropske strategije; Tretji faktor Je povečanje učinkovitosti nacionalnih razvojnih programov s sistematično koordinacijo, ki bo preprečevala nasprotja, in podvajanje naporov ter nepotrebno konkurenco, " rezultati raziskav pa bi morali biti dostopni vsem, da bi se kar največ povečal industrijski razvoj na evropskem nivoju: - Nemčija ima pripravljena sredstva v višini 196 miljonov EUA za 4-letni program telematike, združenega s programi na prodročju računalniških komponent in tehnologije ter njenega vpliva na družbo ter končno projekt za direktno satelitsko televizijo; - Francija je pripravila načrt računaliSke družbe (592 miljonov EUA v petih letih), povezanega z odločitvijo o izstrelitvi telekomunikacijskih in televizijskih satelitov; - Italija šele razvija program razvoja elek-.' -tronike v okviru svojega zakona o industrijski oživitvi in prestrukturiranju; - Anglija pripravlja akcijo za podporo industriji mikroelektronskih komponent. NAČRTOVANJE EVROPSKE STRATEGIJE Evropska strategija na področju telematike, ki Jo je predlagala evropska komisija, ni podprta s posebno centralizirano politiko, ki bi zahtevala velike finančne vire ter konventracijo kadrov. Njen namen je predvsem v spodbujanju dinamičnega dola in v povezo- vanju rasllönlh aktivnosti prek nacionalnih vlad, posameznih družb ter institucij deveterice. Kl.jugne tožke evfopske strategi.le so: Telekomunikacije : - narodno usklajevanje, osnovano na skupni poziciji deveterice, osnovnih karakteristik sistema bo omogočalo uvajanje integriranih digitalnih omrežij na evropskem nivoju, ki bodo omogoSale prenos informacij (klasične oblike, kot so na primer telefoni, hkrati a tudi popolnoma nov nivo uslug) v numerični obliki, ki se bodo lahko obdelovali hitreje in v večjih količinah; opremo, da bi zagotovila enostavno izmenjavo informacij po letu 1983. Evropski program ravno tako zahteva podporo pri razvoju aplikativnih programov, podpiranje naporov uporabnikov pri koordinaciji na nivoju deveterice in odpiranju trga, ki bi ga lahko obvladovala evropska industrija. Periferija (terminali itd.)i Deveterica bi morala omogočiti specializacijo manjših firm, če je potrebno s finančno podporo in koordinirano družbeno pomočjo ali s širšim evropskim sodelovanjem. Odpiranje svetovnega trga evropskim proizvodom: -prvi evropski informacijski sistem, ki bo povezoval institucije deveterice z vladami posameznih članic, bo olajšal prenos podatkov med javnimi institucijami in stimuliral razvoj norve opreme in servisa z industrijskimi in nacionalnimi telekomunikacijskimi omrežji ; Sateliti: TV programe bodo usmerjali direktno na hišne antene preko cele Evrope, hkrati pa bodo služili kot releji za prenos podatkov med organizacijami, njihovimi dislociranimi enotami ali partnerji. Ravno tako se bodo uporabljali za nadzor okolja ter sledili naravnim virom na kopnem in morju. Tudi akcijo evropske vesoljske agencije, ki ji dolgujemo uspeSno izstrelitev evropske rakete Ariane ob koncu leta 1979, bo zaradi narave teh načrtov in obsega njihovega vpliva, zahtevala koordinacijo vseh evropskih naporov ter skupen pristop k njenemu vodenju. Zagotoviti si moramo predvsem standardizacijo in kompantibilnost osnovnih terminalov, razviti učinkovito uporabo daljinskih nadzornih programov itd. Obdelava podatkov; Program deveterice s pripravljenimi sredstvi v višini 25miljonov EUA za obdobje 1979 do 1985 zahteva splošno akcijo (standardizacija, skupen trg, sodelovanje med razvojnimi centri, študij tehnologije in njenega vpliva na zaposlovanje, zaSčita osebnih pravic in varovanje podatkov, zakonska zaščita računalniških programov). Deveterica bi morala vskladiti splošne standarde za vso Našemu izvozu se odpirata dve možnosti: trg industrializiranih in mediteranskih dežel Afrike, Karibov in Pacifika, združenih seveda z evropskim trgom. Na področju uporabe satelitov in bank podatkov je potrebno posebno upoštevati potencial afriških uporabnikov. Vendar pa ni dovolj začeti z raziskavami, industrijskim razvojem ali širjenjem tržišča. Tudi družbeno okolje moramo pripravljati na informacijsko tehnologijo, da bi zagotovili rezultate, ki Jih tehnika omogoča ter zmanjšali tveganje v prehodnem obdobju. Zaposlovanje: Da bi preprečili težave in hkrati ustvarili ozračje zaupanja v inovacije, bo potrebno zelo previdno in kontrolirano uvajati novo tehnologijo: - z dogovarjanjem; ' - s periodičnim ugotavljanjem vpliva novih tehnik ; - z evropskim povezovanjem ter združevanjem študija in razvoja; Izobraževanje: Priučevanje delavćev, uporabnikov in širše javnosti na novo tehnologijo, bi morali olajšati s : - sistematičnim študijem bodočih potreb glede na področje in kvalifikacije (prvo poročilo bo izdelano leta 1981) t - uporabo evropskih socialnih fondov za izobraževanje in preusmeritev projektov na elektronske tehnike ! - podpiranjem izmenjave izkušenj pri izobraževanju in uporabi nove tehnike v šolah; - podpiranjem izmenjave izkušenj in organiziranje specializiranih seminarjev za vodstvene kadre v gospodarstvu in sindikatih Zavarovanje svobode: Zahodnoevi-opske države poskušajo usklajevati evoje zakone z njihovim prilagajanjem konvencij o zaščiti posameznikov pred računalniško obdelavo osebnih podatkov. če se telesa, ki trenutno presegajo meje deveterice, ne bodo zedinila o tekstu, okoli katerega se trenutno pogajajo, bo potrebna ločena akcija deveterice. Informacijska tehnološka revolucija Je v teku in Je ni mogoče več ustaviti. Kot vsak tehnološki skok, Je tudi ta poln možnosti in tudi tveganja. Evropa bo prenesla ta tve-; ganj® in izkoristila priložnost, ki se Ji ponuja le, 5e bo na tem področju tesno sodelovala. Še vedno ni prepozno, vendar pa časa že primanjkuje. INFORMATICA 1/1980 JEDNA METODA EMULACIJE MEMORIJE MlKRORAČUNALA SMINI RAČUNALOM N. BOGUNOVIČ I. MARIC UDK: 681.3:519.685.8 INSTITUT „RUDJEB BOŠKOVIĆ", ZAGREB Opisana je metoda koja povećava efikasnost razvoja programa za mikroračunala na miriiračunalu. Povezivanjem "host" i "target" sistema u logičku i funkcionalnu cjelinu, metoda omogućuje sklopovsku emulaciju PROM dijela memorije mikroračunala. Osnovna prednost ove metode pred drugim uobičajenim postupcima testiranja programa, očituje se mogućnostima verifikacije konačne i readresirane verzije mikroračunskog programa pomoću sistemskih resursa miniračunala. A METHOD FOH THE MICROCOMPUTER MEMORY EMULATION BY A MINICOMPUTER: A method which offers the increased efficiency of the microcomputer program developing process by a minicomputer is described. Interconnecting the host and the target system into a logical and functional integral unit, the method enables in-circuit emulation of the PROM part of the microcomputer memoiy. The main advantage of this' method over the other more conventional program debugging techniques, lies in the possibility to verify the final and readdressed microcomputer program version with minicomputer system resources. UVOD Efikasan razvoj programa za mikroračunala zahtijeva poseban sistem za razvoj jer je mikroprocesor u osnovi poluvodička komponenta bez sklopovsko-programske podrške koju u pravilu uvijek nalazimo uz mini 1 veća računala. Sistem za razvoj je kompleksan Instrument čije se funkcije mogu implementirati u si)ecijalnom mikroprocesorskom sistemu uz rezidentne sistematske programe ili se može koristiti računalo opće namjene i programski tnedjuprodukti. Oba ova opća pristupa Imaju svoje pozitivne strane kao i nedostatke. Većina sfiecijalnih sistema za razvoj mikroračunala nanijenjenl su isključivo jodnoj niikroprocesorskoj familiji, budući da ih na tržište stavljaju proizvodjači poluvodičkih komponenata, integriranih krugova 1 mikroprocesora za potrebe razvoja njihovih familija mikroračunala /1/. Implementacija viših jezika je u tim sistemima nedovoljno razvijena. Primjena specijalnih sistema zu razvoj, u uvjetima dinamičnog razvoja ove tehnologije, opravdana je samo u organizacijama koje mikroračunala uključuju u visokoserljske proizvode. S druge strane, razvoj programa za mikroračunala na računarskim sistemima opće namjene, u osnovi pruža korisniku veću fleksibilnost. Na takvim sistemima moguće Je u načelu, koristeći programske medjuproduk-te, razvijati programe za više različitih mikroprocesorskih familija. Nedostaci se očituju u potrebi za detaljnim poznavanjem dva ili više sistema ("host" 1 "target") umjesto Jednog, programski medjuprodukti su kompleksni i često se moraju razvijati na licu mjesta, a kao najvažnije, ne postoji nužna "on-line" veza do mlkroračunarskog prototipa preko koje bi se mogla verificirati integracija programsko-sklopovskih rješenja. U ovom radu opisat će se metoda koja povezivanjem mini računarskog sistema ža razvoj i mikroračimars-kog prototipa, emulacljom dijela memorije mikroračunala, omogućuje testiranje programa za mikroračunala koristeći pri tom sistemske resurse miniračunala. Time se otklanjaju neki nedostaci razvoja programa za mikroračunala preko medjuprodukata. Emulacija je proc:es medjusobne Interakcije sistema za razvoj 1 mikroračunarskog prototipa u kojem se pojedini resursi oba sistema medjusobno zamjenjuju. CPU, memorljskl sklopovi i ulazno-izlazni sklopovi prototipa te programske rutine, u početku su razvoja fizički pri-djeljeni sistemu za razvoj. Kako napreduje implementiranje pojedinih programskih rutina ti se resursi postepeno vraćaju u mikroračunarski prototip. U završnoj fazi svi se sklopovski i programski resursi nalaze i fizički u prototipu, a sistem za razvoj samo prati odvijanje programa uz neke osnovne kontrolne funkcije. Komercijalni sistemi, koji imaju mogućnost emulacije, dozvoljavaju samo takvo pridjeljivanje u kojem se CPU Jedinica zadnja vraća prototipu tj. nema emulacije ma-morljsklh sklopova 111 ulazno-izlaznlh sklopova ako se Istovremeno ne emullra i mikroračunarska CPU jedinica. Smatramo da Je to ozbiljan nedostatak komercijalnih razvojnih sistema Jer je CPU Jedinica Jedan od naj-kompleksnijlh sklopova koji se moraju provjeriti u realnom okolišu prototipa u najranijoj fazi razvoja. Pored toga, bitno je da se komunikacija CPU Jedinice s ulazno-izlaznim sklopovimo odvija u realnom vremenu zbog kritičnih vremenskih odnosa pri zahtjevima za prekid, direktnim pristupom u memoriju (DMA) ili zaustavljajiju (HLT), Ako se CPU prototipa fizički ne nalazi u sistemu za razvoj, spojni putevi navedenih signala nisu realni pa su i vremenski odnosi neadekvatni stvarnom radu, a javljaju se i potèskoce pri korištenju osnovnog takt oscilatora iz prototipa. Ti se nedostaci djelomično otklanjaju smještanjem CPU prototipa za vrijeme emulacije vrlo blizu njegovom stvarnom mjestu u prototipu /2/. Metoda emulacije memorije, koja je dana u ovom radu, dozvoljava pridjeljivanje ROM memorijskih sklopova prototipa s pripadnim sadržajem sistemu za razvoj uz fizičku prisutnost CPU jedinice u prototipu. Opisani sistem izveden je s miniračunarskim razvojnim sistemom baziranim oko miniračunala PDP-8 tvrtke "DEC" i mikroračunarskim prototipom na bazi mikroprocesora 8080 A tvrtke "Intel" /3/. Iako je opisan specifičan mini-mikro par iz razmatranja će se uočiti da metoda ima opću primjenu. KONCEPCIJA EMULACIJE PROMA U velikoj većini sistema s mikroprocesorom konačne verzije programskih rutina su trajno smještene u ROM dijelu memorije. Sukladno ranijim razmatranjima vrlo korisna odlika sistema za razvoj sastoji se u mogućnosti emulacije pojedinih PROM sklopova s pripadnim sadržajem uz zadržavanje svih ostalih resursa u prototipu. Realizacija ove ideje olakšana je činjenicom da-postoji jedna opće prihvaćena familija EPROM sklopova koja se gotovo bez iznimke koristi u realizaciji prototipa ili sistema manjih serija. To je familija EPROM sklopova tipa 1702, 2708, (2758), 2716, 2732, tj, kapaciteta od 256 do 4 K byte-a. Zamišljeno je da sistem za razvoj generira, kao rezultat operacije kros-asembliranja mašinski kod mikroračunala u jedinstvenom modulu čija je veličina 256 do 4 K byte-a, odnosno odgovara EPROM-u u koji će se konačno i upisati taj dio programa. Tako dobiveni modularni, dio programa ostaje u radnoj memoriji miniračunarskog sistema za razvoj. Pristup do tog dijela programa, mikroraču-narski prototip može ostvariti preko posebne interface jedinice koja s jedne strane ima priključak do ptototi-pa preko podnožja predvidjenog za pripadni PROM, a s druge strane do miniračunala. Bilo bi poželjno kad bi se komunikacija'izmedju prototipa i emuliranog dijela memorije mogla ostvariti u realnom vremenu. Najkraće vrijeme do pristupa sadržaju memorije mini-' računala ostvarilo bi se direktnim pristupom (DMA) u kojem vanjska logika kontrolira prijenos podataka. Mi-niračunalu se mora specificirati lokacija memorije iz koje želimo pročitati podatak, zatim osigurati vanjski registar za prihvat podatka te logičke signale koje od-redjuju smjer prijenosa, tip prijenosa (jednociklusnl ili multiciklusni) i signal zahtjeva za prijenos. Po prijemu signala zahtjeva za DMA u času t , miniračunalo završi tekuću instrukciju u času t , istovremeno daje signal o prihvaćanju adrese te prelazi u DMA ciklus trajanja 1,5/is tokom kojega tj. najranije 450^s nakon početka, vanjska jedinica može pročitati podatke. Ova analiza pokazuje da miniračunalo nije u stanju generirati željene podatke u realnom vremenu rada mikroračunala jer se podaci pojavljuju nakon t vremena gdje je: t^(/js) = (t^ - t^) + 0,45 U najgorem slučaju to je trenutak početka najduže instrukcije te prvi član iznosi prema podacima iz /4/: tc - V = 4,5 ^s odnosno: t = 5 /IS. max Na temelju iznesenoga odlučeno je da se s miniračunar-ske strane koristi uobičajeni uvjetno programirani prijenos podataka koristeći signal za presKoic (skip).-Programirani prijenos podataka ujedno omogućuje korisniku intervencije u tok dijela mikroračunarskog programa koji koristi emulirani PROM. SI. 1. Sklopovska blok shema sistema za emulaciju SKLOPOVSKO-PROGHAMSKA STRUKTURA IZVD'.DENE EMULACIJE ■ U daljem razmatranju ograničit ćemo se na implementaciju sistema za emulaciju EPROM memorije tipa 2716 i 2732 jer se moguće izvedbe emulacije za ostale EPROM-ove iz spomenute familije razlikuju gotovo neznatno. Na slici 1 prikazana je sklopovska blok shema cjelokupnog sistema. Pretpostavimo da je mikroračunalo implementirano s mikroprocesorom tipa 8080 iako se navedeni EPROM sklopovi mogu koristiti i s većinom ostalih mikroprocesora. Neka na početku nekog instrukcijskog ciklusa mikroprocesor zahtijeva sadržaj emuliranog EPROM-a. Za vrijeme prvog elementarnog stanja T mašinskog ciklusa, preko logike za selekciju PROM slüopa odabere se signalom CE odabrani PKOM. Tokom drugog stanja T. mašinskog ciklusa, generira se signal STSH koji preko bi-stabila B generira signal RDY. Signal RDY zahtijeva čekanje i mikroprocesor u trećem stanju mašinskog ciklusa ulazi u stanje čekanja T . Istovremeno bistabil B generira i signal PLAGx koji miniračunalu daje znak da se traži prijenos. Adresa traženog podatka upiše se u miniračunalo, a odgovarajući 8 bitni podatak iz miniračunala upiše se u registar medjusklopa. Bistabil se vraća u početno stanje signalom IOTX4 te nestaje zahtjev RDY pa mikroračunalo izlazi iz stanja čekanja. U slijedećem stanju T , generira _se signal čitanja MEMR koji preko EPROM podnožja (OE i CS 1) omogućuje izlaz podataka iz registra medjusklopa na sabirnice mikroračunala. Time je jedan ciklus emulacije završen. Prije prijelaza na rutinu za emulaciju u memoriji miniračunala postavlja se polje 8 bitnih podataka koji odgovaraju sadržaju PROM-a. Emulacija EPROM-a 2716 I 2732 traži 2 K odnosno 4 K byte-a te je za tu namjenu rezervirano cijelo polje miniračunala PDP-8. Podaci koji se u to polje upisuju iz sistemske memorije, predstavljaju rezultat krosasembliranja dijela izvornog programa. Posebni dijelovi sistemskih programa miniračunala, koji se ovdje neće posebno navoditi, omogućuju automatsko odredjivanje veličine i formiranje polja podataka u skladu s emuliranim PROM-om /5/. Programska rutina za emulaciju izradjena je vrlo Jednostavno s jednom petljom, koristeći minimalan broj instrukcija kako bi se traženi podaci prezentirali mikroračunalu u najkraćem mogućem vremenu. Dijagram toka te rutine je dan na slici 2. Posebnu pažnju treba obratiti na opcije skokova na subrutine TSTl 1 TST2 za vrijeme ciklusa emulacije. Naime, na taj način je moguće dinamički ispitivati tok mikroračunarskog programa I eventualno preko drpgih dijelova sistema za razvoj /3/ utjecati na njegovo odvijanje. Razumljivo je da se može organizirati i samo pasivno praćenje toka mikroračunarskog programa uz prikaz relevantnih podataka na terminalu miniračunala. Trenutak prikaza može biti odabran sasvim proizvoljno, npr, nakon n-tog pristupa m-toj adresi. Bez skokova na subrutinu TSTl i TST2, rutina emulacije iraje 20 do 25 ^s te je toliko produžen i mnšinski ciklus prijenosa podatka iz emulirane memorije. Jasno je da su ostali vremenski odnosi, a posebno intornkcija CPU jedinice s ulazno-izlaznim sklopovima, realni. ZAKLJUČAK Prikazana je metoda koja u okviru integralnog sistema za razvoj programa za mikroračunala, emulacijom srAKT i RES BT FLAG — NcX X T DA PR OČITAJ A DRESU r.-L. I TESTIRAJ i 1 ADRESU 1 PROMIJENI poirn. POLJA \ PRO Cl TAJ PODA THE 1 VRATI POINT. POUA ! TESTIRAJ 1 5 PODATKE 1 PRENESI PODA TKE 1 (JHS rt TI) SI. 2 Dijagram toka emulacije PROM dijela memorije omogućuje jednostavnu verifikaciju programa. Metoda je implementirana u sistem za razvoj baziran na miniračunalu, te se odlikuje svim prednostima kako razvojnog sistema univerzalne namjene tako i "on-line" razvoja. Nasuprot komercijalnim sistemima, koji mogu emulirati memoriju prototipa samo ako se emulira i CPU, ova metoda ne pretpostavlja takve i slične uvjete. Odabrana familija EPROM skloixsva, omogućuje vrlo široku primjenu prikazane metode emulacije jer se navedeni sklopovi mogu koristiti uz većinu 8 1 16 bitnih mikroprocesora. Sklopovska rješenja 1 struktura pripadnlh sistemskih programskih rutina emulacije, pokazuju jednostavnost Izvedbe i primjene. Priključak na mikrora-čunarski prototip ostvaruje se preko podnožja za emuli-rani EPROM i s dvije dodätne linije kontrolnih signala (u slučaju rada s mikroprocesorom 8080 to su ROY i STSB). Time se na prototipu izvrše minimalne Izmjene. Navedene prednosti ove metode emulacije povoljno utječu na efikasnost razvoja mikroračunarskih programa zadržavajući istovremeno fleksibilnost tj. mogućnost rada s raznim mikroprocesorskim familijama. Nedostatak metode je izražen u usporavanju mašinskog ciklusa mikroprocesora za vrijeme čitanja podataka iz emulirane memorije. To je usporavanje vezano uz rad sistema za razvoj, u ovom slučaju miniračunala PDP-8 starije generacije. Smatramo da bi se s računalom modernijih izvedbi sistem mogao koncipirati tako da se rad mikroračunala za vrijeme emulacije približi realnom vremenu. REFERENCE : 1. Microprocessor Development Systems, Product Focus, Electronic Engineering, Mart, 1980, str. 110-149. 2. M.Y. Ven: Fast Emulator Deljugs 8085 - based Computers in Real Time, Electronics, July 21, 1977, str. 108-112. 3. N. Bogunović, M. Jelavić: Miniračunarski sistem za "on-line" razvoj mikroračunarskih programa. Zbornik del, Informatica 79, Bled, oktobar 1979, str. 1-210. 4. Digital Equipment Corp., Small Computer Handbook, PDP-8/1 edition, 1971. 5. N. Bogunović, L. Cucančić: Sistem za čitanje, upis i prikaz procesa upisa u PROM, Zbornik radova. Informatica 78, Bled, oktobar 1978, str; 2-206. RIGHT-TO-LEFT CODE GENERATION FOR ARITHMETIC EXPRESSIONS DUŠAN M. VELASEVIC UDK: 681.3:512 ELEKTROTEHNIČKI FAKULTET, BEOGRAD ABSTRACT The paper presente a method of vight-to-left code generation for arithnetio expressiona given in postfix notation. The number of generated inatruatiqn lines is equal to that obtained from the binary tree structure, However, the right-to-left code generator is faster and requires less memori/ with respect to the generator from the binary tree. Suah results were obtained by introduoing a vector, called veator-generatrice, assigned to évery postfix string. A translation grammar which generates the postfix string and its associated veator-generatrice is defined. An experiment has been performed over a set of arithmetic expressions to compare certain characteristics of the right-to-left code generator to those of the generator from the bimvy tree, GENERISANJE KODA S LEVA U DESNO ZA ARITMETIČKE IZRAZE. - U radu je izložena jedna metoda za qenerisanje simboliCko--maäinskog koda s leva u desno za aritmetičke izraze predstavljene u postfiksnoj notaciji. Broj aenerisanih linija instrukcija isti je kao (i slučaju binarnog stabla. Medjutim, prikazani generator je brži od cieneratora koda iz binarno? stabla i zahteva manje memorijskog prostora. To je postignuto uvodjenjem posebnog vektora, nazvanog vektor-generatrisa, i njegovim pridruživanjem svakom postfiksnom nizu. Definisana je translaciona gramatika koja generiše postfiksni niz i vektor-generatrisu. Obavljen je eksperiment nad skupom aritmetičkih izraza radi uporedjenja nekih karakteristika predloženog generatora 1 generatora koda iz binarnog stabla. INTRODUCTION There are various methods of code generation for arithmetic expressions'but two of them are mostly discussed: 1) generation from the binary tree, and 2) generation from the postfix string. The binary tree structure makes possible generation of shortest code (excluding any optimization) and minimizes the number of used temporary variables, The price paid for it is the lower speed of the code generator. On the other hand, the transformation of arithmetic expressions to postfix strings and the code generation are very simple. However, the code generated from postfix strinqs is inferior to the code obtained from the binary tree with respect to the number of instruction lines and the used temporary variables.. An experiment has been performed over a set of postfix strings and corresponding binary trees to examine the difference in length of generated code according to Eq. (1): ■-PS ' ^bt Lbt (1) where '■ps " generated from postfix string, '"bt ' generated from binary tree, - relative difference in length of generated code. It was found that has brought about 0 - 0,4. This fact becomes significant in highly repetitive loops with a great amount of calculations. The code obtained from the binary tree structure is shorter because the whole arithmetic expression is in such a form which provides the alternatives in particular points during the code generation®, There are no such alternatives in postfix string which Is scanned strictly sequentially thus eliminating any possibility of economizing in code generation. The second comparison is made to investigate the difference In time necessary to perform the syntax analysis simùltaneously with transformation to postfix string, according to Eq. (2): jS . jS PS PS (2) where Tpj - time necessary to perform syntax analysis and transformation to postfix string, T^^ - time necessary to perform syntax analysis and transformation to binary tree, - relative difference in time spent to syntax analy-' sis and transformation. is found by dividing the set of arithmetic expressions in subsets each comprising arithmetic expressions of the same length and then evaluating the average D^. for each subset. The results obtained have shown that such Dj is independent of length and brings about 0.15. The next comparison is made to investigate the difference in time necessary to realize the code generation, according to Eq. (3): ps (3) where ^bt ' necessary to perform code generation from binary tree, Tpj - time necessary to perform code generation from postfix string. Applying the same procedure as to d|, it was found that Dj is also independent of length of arithmetic expressions and brings about 0,33, A total relative difference in time domain is given by Eq. (4): w Because D® and D^ are independent of length of arithmetic expressions, the results obtained for Dj possess ttie same property. The value of brings about 0.24. The memory requirement for the transformation to binary tree was 50 % higher and approximately the same for the phase of code neneration when compared to the implementation with the nostfix string. The basic idea introduced here is to reduce the code aeneration time for arithmetic expressions achieved for the binary tree but retaining the same lenoth of the code. This idea was motivated by the results of the investigation of distribution of executable statemets . It was found that the assinnraent and IF statements have together over 60 % of static distribution^®. VECTOR-GENERATRICE As the first step toward the goal, we associate with every postfix string a vector, called vector-generatrice (VP), obtained from the following simplified translation grarmar for the arithmetic expressions; < start expression > - { INIT1} {INIT2} < expression> 2 (2) {INC3} < expression > < expression > + < terji > {+) {INC1} < expression > < expression > - < term > {-} {INC1} < expression > + - < term > (4+) {INCD < expression >->■ + < term > < term > -»■ < term > * < primary. > {*} {INC.1,} < term > -<• < term > / < nrimary > {/} {INCD < term > < primary > < primary > -> < variable > {1} {COMP} {INC2) < primary > < unsianed number > {N) {COMP) {INC2} < primary >-«■(< expression >) The f^jnction designator and the operation 1-are not included in the grammar only for the sake of clear and concise presentation of the alnorithm. They do not influence in any case the final conclusion on the characteristics of the algorithm. The activity sequence Generated by this grammar consists generally of the following elements: - input symbols: I, N, +, -, *, /, (,), 2 - output symbols: I, N, +, -, 4+ (unary minus), *, /,? - action routines: INIT1, INIT2, INC1,■ INC2, INC3, COMP The action routines do the following: IMITI The routine initializes to zero the space allocated to VR, INIT2 The routine initializes a pointer K pointing to the first component of VR: K = 1 , (5) and sets VG(K + 2) = 1. INC1 The routine performs the operation VG{K + 1) = VP(K + 1) + 1 (6) after outputting one of symbols: +, -, 44. *• /• INC2 The routine performs the operation VP(K) = VP(K) +1 (7) after outputting the symbols I or N. INC3 The routine terminates the activity seouence by performino the following operations: K = K + 3 VR(K) =1 VR(K + 1) = 0 (8) Vr,(K + 2) = VP{K - 1) + Vfi{K - 2) + VR(K - 3) after outputting the symbol 2, COMP Thè routine compares the class of the previously outputted symbol to the current one, I or N, for K 1. If they differ in class, the routine does the following:' VG(K + 5) = VG(K) + VG(K + 1) + VG(K + 2) K = K + 3 (9) Otherwise, no action is performed. As a result of the applied translation grammar, 0ne;0btains a standard postfix strinq with an associated vector VG. There is a very simple practical explanation of VG. Let be given an arithmetic expression E^ in infix notation which is transformed to postfix string Ep: Ep = a,a2a3 ... a^b,b2 ... ■•• "j+k ®m+n®m+n+1 ••• ®n+M''j+l^j+l+1 ••■ (10) where à^a^s^ ^m '■®P''®sent the operands (or their addresses) and b^b^b^...bj...b^^j the operators (or their indices in the delimiter table). The dollar sign % denotes the end of the string, i.e. "j+J % (11) Using Eq. (10), we can generate VG in the following way. Firstly, we define the substrings of E^. A substring is the sequence of all successive operands or operators. If the number of operand substrings Is N^ the number of operator substrings Nj must be N2 = N, (12) The total number of substrings Nj (including the end-marker as an operand substring) is nj = 2n, + 1 (13) By assigning to each substring of operands a successor string of operators, one obtains a pair of connected substrings CS^, where Z is Its ordinal number. The number of pairs is n(.s = n3/2 = n, (14) For each pair of connected substrings we create a 3-tuple ('n°, Nj, Pj), where N° - number of operands in CS^, i.e., VG(K) = ■ (Eq. (7)) N® - number of operators in CS^, i.e., VG(K + 1) = N®; (Eq. (6)) P^ - pointer to start of CSj in Ep, i.e., VG(K + 2) = = Pj; (Eq. (9)) VG is formed now by associating all 3 - tuples of connected substrings by.their ordinal numbers into a vector of (Nj,^ + 1) x 3 dimension. The endmarker is considered as an operand substring connected to a dummy operator substring. RIGHT-TO-LEFT FENERATION The term vight-to-left code generation designates the code generation from the right end of Ep. One of the key points in introducina the vector--generatrice is just to enable the right-to-left code generation. The algorithm is based on the following principles: - The elementary unit for code aeneration is the pair of connected substrings CSj. " The code generation from an elementary unit is the same as for any standard postfix string. - The code is generated until N^ = 1 v N^ = 0. - When the current CS^becomes temporary inactive, i.e., N° = 1 V N® = 0, the next CS^ Js taken, where I' = I \ y I' = I - \ respectively. - The separate stack for operands is not needed. Instead, the space for Ep itself is used for Nj-j stacks, each preset already with the operand substring in the phase of transformation to Ep. - The transition from one CS^ to another CS^-is performed by means of P^ . given by 3-tuple for CSj Before we proceed to detailed presentation of algorithm, we shall explain the procedure for code aeneration from an elementary unit, CS^. Let CS^ be given by The space occupied by the operand substring a^a^aj ... has to be considered as a stack preset with a^a^a^ ... a^. Starting from the top element of the stack, T.OPD(a„), and the first operator in the connec- 1 ted operator substring (b^), we generate the following assembly code; LDA T.OPD NEG if bj Is the unary operator (44=),or LDA BT.OPD OPT T.OPD tf b] is a binary operator (+, -, *, /), where BT.OPD - designates generally the below-the-top element of the stack. OPT symbolic representation of operators (ADD, SUB, MUL, DIV. NEG). If any of succeeding operators is unary, an NEG is generated. Otherwise, the operator is checked for commutativity. If it is a conmutative one,an instruction line OPT T.OPD is generated. The noncommutative operator requires the generation of the code line STA T with T.OPD - 'T and then LOA BT.OPD OPT T.OPD where T 1s a temporary variable. The code generation Is continued in this way until = 1 v N® = 0. Then, the next CS^^^ ^ is taken. procedure code_generator (EP, VG, IL) aamefit: The procedure oode-generator generates the assembly code for arithmetic expressions starting from the right end of the postfix string with an associated vector-generatrice. EP - postfix string, VG - vector-generatrice IL - generated instruction line, NCS - number of elementary units, NIO - number of operands in the current elementary unit, NIB - number of operators in the current elementary unit, CSI - current elementary unit, CSZPLUSONE - elementary unit right to the current one, CSIMINUSONE - elementary unit left to the current one, I - pointer to the beginning of a 3-tuple in VG. Zc - pointer to the leftmost 3-tuple currently handled. OPT - symbolic representation,of operators (ADD, SUB, MUL, DIV. NEG), OPTI - standard representation of operators (+. -, *i /, 44=) the operator substring, T.OPD - top element of the.stack for CSi. BT.OPD - below-the-top element of the stack for CSZ, T - symbolic representation of temporary variable; begin Zc:={NCS-1)*3+1; NlO:=VG[lc]: NZB:=VG[Zc+I]; if NZB=0 then begin generate_code_line_LOA_T.OPD ; goto exit; end elee LI: Z: = Zc; if OPTI = 'fj- 'then begin generate_code_lines_ LDA_ T.OPD_and_NEG; goto L5; end elee if HIO = 1 then L2: begin comment: terminate code generation from an elementary unit CSZ and access the next one CSZMINUSONE: Zc:=lc-3; NZO:=, =VG[Zc3 NZB:= • =VR[lc+l]: goto LI ; end '..'•eZee ; . y . ^ ' L3 '.begin ■ generate_code_l1ne_LDA_BT.OPD; L4:generate_cpdej i ne_OPT_T .OPD; NZ0:=NZ0.1; L5:NZB:=NZB-1; end-, if NZB = 0 then goto L6; else if OPTI = ^\\'then begin generate_code line_NEG; goto L5; end else if NZO = 1 then begin generate_code_l 1ne_STA_T; T.OPD=-T'; gobo L2; end elee if OPTI = '+'M'*'then goto L4; elee begin generate_codeJ1ne_STA_T; T.OPD= 'T ' ; goto L3; end; L6; begin comnent; terminate code generation from an elpmentary unit CSZ and access the next one CSZPLUSONE; Z-Zt-3; N7.0:=. . =VG[Z]; NZB:=VG[Z+1]; if NZB i 0 then begin generate_codeJine_ _OPT_T.OPD; goto L5; end else if T.OPD = "%' then goto exit; elBe goto L6; end', exit: end code_generator; Theorem: A binary tree structure and a poBtfix airing with an aegooiated vector-generatrice give the codea of the eame length. Proof: Let CS^ be given by Eq.(15). It is evident that CS^ can be represented generally as a partial subtree. The partial subtrees are those subtrees which have not all their nodes resolved. This uncompleteness is the consequence of the fact that the relation . N° = N® + 1 (16) is not always satisfied. Bearing in mind the procedure for the binary tree derivation, the graph representation 26 of CS^ must form a partial subtree in the binary tree structure. Thus, the code generated from CS^ is of. the same length as that obtained from the corresponding partial subtree belonging to the binary tree. If the following relation for CS^ (17) n; _< NB is valid, then, according to the given algorithm, CSj_j will be taken, causing an instruction line STA T to be generated. When we generate the code from the binary tree structure, we examine each node to verify whether it contains a commutative operator. If it is so, the left or right subtree of the node can be chosen. If not, then only the right subtree must be chosen. Upon the generation of the code from the chosen subtree, the alternative subtree is taken with an instruction line STA T being generated. We can conclude that the choice of the left or right subtree for commutative operators does not influence the length of code obtained for that node Thus, the fact that the given algorithm chooses always i.e. the nearest (smallest number of nodes to be passed) right partial subtree if Eq. (17) is satisfied, will not influence the number of STA and LDA instructions to be generated.■Now, we can state the following: - number of inatvuction lines generated for each CS.^ ìb equal to that obtained from the aorx'eaponding partial subtree, and - the number of STA and LDA inatruation linea generated due'to transition from CS^ to transition from one to another oorreepon-ding partial aubtree, ... etc., are equal aa long aa Eq. (17) ia aatiafied. To close the proof, we shall prove that for (18) we obtained the same length of code as with the binary tree moving to the right in VG space until N^^ = 1 A It is clear that when a CS^ satisfying Eq. (18) is encountered, one or several partial subtrees satisfying Eq. (17) are already handled. Moving to the right in VG space will not cause any paired instructions STA and LOA to be generated because the first operand (as a result of same previous operation) sUl always reside in the accumulator. CS^ which satisfies Eq.(18) corresponds to a left subtree in the binary tree structure. Bearing in mind the fact that the code generation from a partial subtree satisfying Eq.{17) has reduced it to a leef, the code generation for a node having as its left side a subtree, and as its right side a leef, will not cause any paired instructions STA and LOA to be generated. Thus, the code nenerated from a CS.^ satisfying Eq.(18) will be of the same length as the code generated from the correspond ino partial left subtree and the leef. This closes the proof. In fact, the code generator based on the vector generatrice simulates the code generation from the corresponding binary tree with only one exception that at each node always the right subtree is firstly handled independently from the commutativity of operator. This could have for consequence only the different generated codes. EXPERIMENTAL RESULTS An experiment has been performed over a set of postfix strings with associated vector-generatrices to examine the characteristics of the algorithm and compare them to those of the binary tree. The results are presented in the following table: "L DT "M 0 0.03 0.21 0.13 -0.12 0.12 aio <^0.06 0.024 d|, Dj and D^ are defined analogously to Eqs.(1). (2), (3). and (4); 1-1 T® - T® T*^ - T*^ n _ Ibt_S nS _ 'bt 'vg qC . V_vg --[--"^T Ti--"^T .c ^bt 'bt (Tbt ^ ^bt) - ^ ^vg) 'bt T® + T*^ 'bt ^ 'bt D^, Dj^, D,^,. Dj, Dj and Oj are defined as follows: s _ "bf "vg _c . "bt ' "Sg •^M ■ —;;;š— • °M--;;;Č— • "bt "bt 0 ■ <"bt " "bt) - ("vg ^ "vg) " mS .. MC "bt "bt iS . tS iC . ,C 'bt 'bt • "I " ,s ,c 'bt 'bt where: M^^ - memory space necessary for syntax analysis and transformation to binary tree, "vg " space necessary for syntax analysis and transformation to postfix string with associated vector-generatrice, M^^ - memory space necessary for code generation from binary tree, M^^ - memory space necessary for code generation from vector-aeneratrice. vg vg - number of instruction lines of syntax analyser (binary tree), - number of instruction lines of syntax analyser (vector-generatrice), 'bt " '"J'''''®'' instruction lines of code generator (binary tree), - number of instruction lines of code generator (vector-generatrice). The experimental results obtained have shown a significant time decrease for the code generation (21 %) by applying the yector-generatrice. The overall improvement in time domain is decreased to 13 % when the syntax analysis is taken into account. Other overall improvements in performances expressed through parameters D^ and Dj are practically negligible. The code obtained from a vector-generatrice has used one up to tro temporaries more than the code obtained from a binary tree even for very long expressions (in the case when the left subtrees are chosen for commutative operators). The programming of the right-to-left code generator has been performed in such a way that after its execution, VG space is cleared (with exception of VG(K + 2). Thus, the action routine INIT1 can be ommitted from the given translation grammar, Eq.(5) reduced only to K = 1, and VG cleared only once. CONCLUSION The right-to-left generator has demonstrated better characteristics than that obtained from a binary tree. The length of code generated from a vector-generatrice fe equal to that obtained from a binary tree. The compilation time for arithmetic expressions (syntax analysis + code generation) is appreciably shorter. This advantage is more significant for the stand-alone code generator. The total memory space (syntax analyser + code generator) was approximately thè same. The memory space required by the syntax analyser based on the vector-generatrice was greater but it has been balanced by the decrease of the memory requirement of the corresponding code generator. With respect to programming, the code generator based on the vector-generatri-ce was programmed with smaller number of instruction lines but not significantly. It would be of interest to extend the investigations in this domain to the application of the vector-generatrice in all operator precedence grammars and code optimization. REFERENCES 1. Sheridan, P.B.; The arithmetic translator-compiler of the IBM FORTRAN automatic coding system, CACM, February 1959. 2. Hawkins, E.N., Huxtable, D.R.: A multi-pass translation scheme for ALGOL 60, Annual Review in Automatic Programming, 3, 1963. 3. Kanner, H., Kosinski, P., Robinson, C.L.: The structure of yet another ALGOL compiler, CACM, July 1965. Randell, B., Russel, L.J.: ALGOL 60 implementation, Academic Press, 1964. 5. Graham, R.H.: Bounded context translation, SJCC, 17, 1964. 6. Anderson, J.P.: A note on some compi ing algorithms, CACM, March 1964. 7. Nakata, I.: On compiling algorithms for arithmetic expressions, CACM, August 1967. 8. Redziejowski, R.R.: On arithmetic expression and trees. CACM, February 1969. 9. Gries, D.; Compiler construction for digital computers, John Wiley & Sons, New York, 1971. 10, Tanenbaum, A.S.: Implications of structured prog-ramrainq for machine architecture, CACM, March 1978. 28 PC Fl lue TT i NP 1, TI ; 211 i 310 m 2on « too Flg. 1. Flg. 2. IIC a u u c n >- *j trt w 1 2 3 l) 5 6 7 8 9 10 II 12 1 ■"u ".3 Ss ^12 2 "22 ''23 ^25 I I 'u. <^12 * • n "02 "03 ^05 1,12 a) PC b) PC MM p ni? "l' HO ; HH PA Ar U- i Flg. Flg. 3. Dodatak k članku D ,M .Volašević-a : AN ASSEMHLEU CONSTRUCTION FOR HIE INTERACTIVE PROGRAM DEVEI,01'MEirT -Informatica broj 4/1979,ujedno se izvìnjavamo čitaocima i autoru zbog ovog propusta 1 molimo za razumevanje. a) b) '00 I ^ I 0 I 0 WÀ mmmm COPY —T" Flg. 5. MULTIPROGRAMIRANJE IN MULTIPROCESI RANJE NA VELIKIH RAČUNALNIŠKIH SISTEMIH BURROUGHS KONRAD STEBLOVNIK UDK: 681.3:519.682.6 TGO GORENJE. VELENJE Članek na kratko opisuje izvedbo posla in osnovno podatkovno zgradbo na velikem Burroughsovem računalniku B6700. Opisani so tudi multiprogramski pripomočki, ki jih lahko uporabljamo v okviru sistemske programske opreme na tem računalniku. MULTIPROGRAMMING AND MULTIPROCESSING ON LARGE SCALE BURROUGHS'S COMPUTERS.The paper describes the concept of the job and basic data structure for Burroughs's large scale computer B6700. Multiprogramming facilities, wich can be used in the environment of sistem software of this computer, are described also. OVOD V letu 1961 je združenje Burroughs priželo proizvajati vrsto obseìnih računalniških sistemov, katerih organizacija se je radikalno razlikovala od konvencionalnih von Neumanovih strojev. Razvoj ee jo pričel s eistemotn imenovanim B50OO. Njegova modifikacija je bil B5500. V letu I969 je ta sistem doživel veliko novosti pod imenom B6500. Še kasneje sta ta dva sistema preimenovana v B67OO. Današnja izvedba velikih Burroughsovlh računalniških sistemov je B6800. Našteta generacija računalnikov Burroughs se bistveno razlikuje od ostalih tako po organizaciji kot programski strojni opremi. Isti sistemi bo bili med prvimi, ki so nudili učinkovito multlprograml-ranje in multlproceslranje - cilj današnjih velikih računalniških slf.temov in tudi večine manjših. Načrtovalci teh'sistemov so uporabili za algoritme opsratlvnega sistema blokovno zgradbo. Te algoritme so zapisali v razširjenem programskem jeziku Algol 60. ki lahko opisuje takšno blokovno zgradbo. Cep-rav ni namen tega zapisa opis strojne arhitekture Blateoa B6700, naj le omenimo najzanimivejšo poseb-noat - vhodno izhodni podsistem ter njegova povezava, po kateri se pretakajo informacije (V/I crossbar matrika) med statifnimi moduli (pomnilnik) In aktivnimi enotami (procesorji). Članek opisuje in navaja multiprogramske pripomočke, ki jih lahko uporabljano v okviru sistemske programske opreme na računalniku B6700, kakor tudi na vseh ostalih računalnikih Burroughs, kl spadajo k tej družini. HazSirjenl programski jezik Algol 60, [ij ga navaja tudi pod Imenom Burroughsov Algol, vsebuje naslednje multiprogramske pripomočkei dogodki (event), procesi (proce^is', task), pridevki procesov (task attribute), programske prekinitve (software interrupt) in kritičen del (procure .... liberate). Z uporabo teh elementov multlprograml-ranja (multitasking) lahko sočasno Izvajamo na enem ali več dejanskih procesorjih, ki so vgrajeni v aparaturno opreuio, več sočasnih procesov (taskov). Sistem, ki ga bomo opisali, ima zelo svojsko Izvedbo posla (job) in prl]^adajočo podatkovno zgradbo. Ne kratko bomo prikazali poleg omenjenih multipro-gramskih pripomočkov, tudi posel tega računalnika, ki se lahko Izvaja na enem ali več procesorjih, ter pripadajočo podatkovno zgradbo. 1. rOSEL V RAČUNALNIKU B6700 Posel tega računalnlk.-i sestavljata časovno nespremenljivi algoritem in časovno spremenljiva podatkovna zgradba, ki je zapis izvajanja tega algoritma. Algoritem sestavlja skupek nespremnijivih zakodira-nih segmentov, ki so neposredno naslovljlvl. Zapis Izvajanja Je mnogonamenska podatkovna zgradba^ ki v kateremkoli trenutku podaja: ■) stanje izvajanja posla vključno z vrednostmi sa vse spremenljivke; b) naslovijlvo okolje, ki ga stvarni procesor lahko dosega, ko Izvaja posel. Moino je doseganje vai okoli J i o) nadzor nad preteklim sodelovanjem med bloki, po-;>topkl in procesi (tasks). Dejanski procesor Izvaja posel s pomočjo ukaznega kazalca (ip) In kazalca na okolje (ep), ki definirata stanje izvajanja. Slika 1 prikazuje posel v trenutku, ko procesor Izvaja ukas P na katerega kaže ukazni kazalec. Kaza» ' lec na okolje EP (prikazovalnik) deluje kot vektor kazalcev, ki kaže na področja zapisa C, B' A', B', C so podatkovna obmoJšja, ki se dodeljujejo blokom A, B, C ob vsakokratnem pozivu (izvajanju) bloka. Takšna zgradba odgovarja visokim programskim jezikom (ALGOL 60, PL/1) z blokovno zgradbo. Dostopno okolje za procesor deluje kot unija dostopnih področij C', b' in A'.Onezdenje teh področij odgovarja gnezdenju program.'^klh blokov A, B in C, kateri vsak definira območje dosega programske llsw te imen. ip EPCpVlkaiovalnlk ) Slika 1. Skica posla v računalniku B6700. 30 Lep primer programa,napisanega v programskem jeziku Algol in odgovarjajoè» skice agradhe, je na filiki 2. Takšna skica zgradbe odgovarja tako algoritmu, kot zapisu izvajanja. Posamezna področja E', D*, C',B'in A' vsebujejo celice, z ustrezno listo imen (npr. področje C vsebuje listo c, d). Te celice so dostopne po imenu. Line No. 0 A: 1 10 B: 11 • 25 C: 26 29 Ul « 52 D: 53 H 72 E: 91 « 99 begin integer a, bj : 1 the real ; J procedure, rnd begin integer b, er begin integer c, d; U Uh « end • ' * begin integor b, c; A (AO end a begin integer c, d; en'd end Algolski tekst Struktura vgnezdenja Slika 2. Program zapisan v programskem jeziku Algol in odgovarjajoča skica zgradbe. Za primer, kako deluje takšna zgradba, ai oglejmo trenutek, ko se izvaja ukaz P in zahteva dostop do celice z imenom a. Izvedo se pregledovanje zapisnih področij C', B'in A' in sicer sr smeri od C proti A' (to pregledovanje seveda ne Vključuje področij D'in EO. Takoj, ke se najde celica z imenom a, ao pregledovanje zaključi. Podobno pregledovanje se izvede za celico b v področju B'e tem, da so v trenutku iavajanja ukaza P celici b v področju A'in področju D'"nevidni" za procesor. To pregledovanje ae izvršuje prek statičnih povezav med posameznimi podroČJi. V primeru, da postopke (procedure) izvajamo kot procese, ne pa kot podprograme, doseže program t.i. drugi nivo aktivnosti (site of activity). V računalnik B6700 je lahko vgrajenih tudi dva ali več procesorjev. Slika 3 prikazuje koncept izvajan* ja procesa; prikazan Je shematično. Slika kaže, kako si dva procesorja razpodelita isto kodo in isti zapis izvajanja (pravzaprav del zapisa). Ker ja področje A skupno okolju obeh procesorjev, je potrebno izvesti nekatere konstrukte za dosego vznjem-«s izključenosti (mutual exclusion). Program, ki ga lahko izvajata dva ali več procesorjev, ae imenuje algoritem z večkratno aktivnostjo (multiple activity algorithm). Programu, ki ga lahko izvaja več procesorjev, ni potrebno za učinkovito'izvajanje dodeliti več procesorjev. Enojen prooeaor je lahko razdeljen na več nivojev aktivnosti. V tem priraoru lahko en procesor upoštevamo kot virtualen ali psevdoprocesor in Je potrebna za izvajanje posla le učinkovita politika razvrščanja (scheduling). V B67OO lahko virtualni procesor zamenjamo z dejanskim procesorjem (in seveda obratno) z enostavnim ukazom. Nespremenljivi algoritem ^ Zapis lEvajanja A' / \ ■ l" i B» C m jf _ ip EP^ ip EP Slika 5. Skica posla v računalniku B67OO, ki ga izvajata dva procesorja. Skica na sliki 3 prikazuje posel ▼ trenutku, ko so izvajata dva procesa na B5700. Glavni proces Izvaja ukaz P z dostopnim okoljem C', B' in A', medtem, ko njegov potomec, ki Je bii klican v neki prejšnji točki izvajanja glavnega procesa, izvaja ukaz Q z dostopnim okoljem D'in A'. 2. OSNOVNA PODATKOVNA ZORADBA ZA ALaORITEH B67OO V tem poglavju bomo na kratko opisali podatkovno zgradbo za B6700, ki temelji na principu sklada. Nekatere osnovne pojme ai bomo razjasnili ob si. 'f, ki prikazuje algoritem in odgovarjajoči zapis izvajanja iz slike 2. Sestoji se iz dveh skladov, besednjaka segmentov in glavnega nklada. Prikazovalna vektorja za oba procesorja kazeta na naslovno okolje (tudi skladovn« zgradba), katerih vrh sta zapisa- za C in D'na nivojih if oz. 3. Koda za B6?C0 algoritem je razdeljena na bloke in koda za vsak blok je shranjena kot fizično ločen segment. Vsak vstop v besednjak segmentov se izved« s pomočjo fiegmentneea kazalca. V fizično naslovlji-vera pomnilniku morajo biti prisotni samo segmenti, ki so dejansko potrebni aktivnemu procesorju. Prisotnost segmenta definira bit prisotnosti. Besednjaku segmentov pripada se odgovarjajoči osnovni naslov. Ukazni kazalec je dvojen: prva komponenta (v tem primeru-3) Je odmik znotraj besednjaka segmentov in druga komponenta (j) je odmik znotraj segmenta. Ukazni kazalec ima lahko tudi tri komponente, kar bomo epoanali pozneje. Osnovni naslov besednjaka segmentov se določi prek kazalca, ki je del prikazovalne povezave. Kadarkoli izvajanje programa zahteva nov blok, se dodeli negroentnemu skla-. du nov aktivirani zapis, ki se doda vrhu sklada. Na predhodni zapis se naveže s pomočjo povezovalne bea«-de na dva načina: statično in dinamično. Statična povezava definira gnezdenje okolja, dinamična pa je v tem trenutku navezovanja kar enaka statični. Dinamične povezave zagotavljajo procesorju vse potrebna informacije za pravilno dodeljevanje in opuščanje aktiviranih zapisov. Področje z imenom glavni sklad opisuje delovanje aistem-ikega nadzornega programa in med drugim vsebuje zapis za vse kode nadzornih segmentov in aio-temske tabele. Segmenti tega sklada so tudi dostopni prek prikazovalnega kazalca na nivoju O. VCoda in podalkovni (jiavnv segmenti twdzortiega sklad programa 2apì5 iivajanja 2 ža glavni procea Vrh sklada Zapis iivajanja za potomca. Slika ^t. Podatkovna zgradba zn raäunalnik B6700. - neodvisne procese - paralelne procese - komunicirajoče ali odvisne procese. Nas zanimajo predvsem odvisni procesi, ki lahko V' spreminjajo informacije, ki r.o jim skupne in ao dalje razdeljeni v medlo odvisne procese in sodelujoč Se procese.Odvisni procesi si morajo deliti različne računalniške vire in jih je potrebno zaradi tega sinhronizirati ter onemogočiti sočasno uporabo teh virov (vzajemna izključenost). S tem v zvezi se pojavi problem kritičneRa dela procesa. Ta.dol procesa je kritičen zaradi tega, ker se znotraj njega, , ob uporabi določenega vira spreminja ali dosega informacija, ki je skupna več procesom. V literatu-, ri zasledimo voi načinov reševanja problemov, ki nastopijo ob takšni medprocesni komunikaciji. Najbolj znani pobudniki za reševanje teh problemov so , Dljkstra, Hoare in Hansen, ki bo uvedli metode ; strukturiranega programiranja na tem področju in 8 ■ tem v zvezi naslednje pojme: - binarni in nplošni semafor - pogojno kritičen del procesa - monitor ali t.ijnik in - hierarhija sekvenčriih procesov In monitorjev. Omenimo naj še multiprogramckl jezik Modula [aj,ki ga je definiral Wirth in je namenjen za programiranje sprotnih Bii.temov ter krmilnih programov za vhodne/izhodne naprave. Ha te sploäne ugotovitve lahko navežemo teorijo o sestavljanju družine procesov na velikih Burroughs-ovlh sistemili. Ta teorija sloni na razširjenem Bur-' roughsovem programskem jeziku Algol. 3. 1. Klicanje in vsklajevanje procesov Procesor potrebuje seveda še nekaj dodatnega začasnega pomnilnika za začasno pomnenje vmesnih rezultatov npr. pri razvijanju ukazov. V ta namen uporabi poseben operativni sklad za vsak virtualni procesor. t Program na sliki 2 vsebuje tudi postopek z imenom "rnd". Ko procesor priine izvajati ta postopek, se prek dinamične povezave naveže na zapis izvajanja nov aktivirani zaplo, ki odgovarja postopku "rnd". Ta zapis vsebuje poleg imen začasnih spremenljivk Se povratno informacijo. Ukazni kazalec se v tem primeru sestoji iz treh komponent (I, 1, u). Prvi element vodi do tabele, ki vsebuje opis segmenta ukazov (1 pomeni besednjak segmentov)! naslednja dva elementa pa pomenita odmik znotraj besednjaka segmentov (1) in znotraj samega segmenta (u). Aktivirani zapis za "rnd" je dinamično povezan na blok C in statično povezan na blok A, ker je postopek "rnd" definiran v bloku A. . Predpostavimo, da je ••^edaj "rnd" ali pa katerikoli drugi del programa definiran kot sistemska operacija) opis segmenta, ki vsebuje njegovo kodo, pa je del glavnega dela sklada. V zapisu izvajanja so v trenutku vstopa v ta segment tvori odgovarjajoči aktivirani zapis, ki se dinamično naveže na blok C in je statično povezan z glavnim skladom. Ukazni kazalec se sestoji tudi iz treh komponent (0,t,u)j O - pomeni glavni sklad, t odmik znotraj sklada in u odmik znotraj segmenta. V primeru klica procedure (rnd) prvi element v uka-. znem kazalcu pove, ali Je ta procedura definirana ' na nivoju našega algoritma ali na nivoju sistemskega nadzornega programa. B6700 vključuje tudi prekinitve, ki se obravnavajo kot nepričakovani podprogramski klici (postopki). 3. komunikacija HKD SEKVENĆNIMI 1'ROCESI Na računalnlšken sistemu s« izvajajo razni procesi, ki 00 lahko stalni ali pa začasni. Hod njimi obstajajo določene zveze v času in prostoru. Glede na to Jih razdelimo v tri vrste: V tem poglavju bomo opisali, kako program doseže takolmenovanl drugi /livo aktivnosti; to pomeni, da program v določeni točki kliče proces, ki lahko prevzame del njegovega opravila ter ga izvaja do določenega trenutka asinhrono in neodvisno, vendar sočasno. Algoritem za program, kjer glavni procea sproži svojega potomca (offspring task), je napisna na sliki 5. Line No. 0 begin 1 integer J, n: real resulti, re6ult2! 2 array num 0:99 ! 3 event evi, null: comment deklaracija ^ dogodkovnih spremenljivki 1* procedure sumitZ (a, q, 1, sum, done);' 5 value s, 1; integer .a, 1» real sum; array at*!; event done; 6 begin 7 Integer 1 ; 8 sum »0; 9 for 1*8 step 1 until 1 £0 sum»8um+sqrt (a[l]) ; 10 cause (done); comment sistemska operacija) 11 end 8umit2 13 [input value for n 50 and {num), for JcOstep I until 2x n - 1)J 1*» process 6umit2 (num, n, 2 x n - 1, result2, v evi); comment glavni proces sproži svojega potomca; 15 euralt2 (num, O, n - 1, resulti, null); comment glavni proces kliče proceduro aumitZ; 16 wait (evi); comment sistemska operacija; 17 print CresulH" + resultZ)) comment sistemska operacija; 18 end Slika 5. Algoritem za program v. Burroughsovem Algo-' lu, kjer določeno opravilo izvajata dva istočasna procesa.. Na sliki 5 je v vrsticah J, 5, 10, I»», In 16 večina novih sintaktičnih «not, ki omogočajo enostavno vsklajevanje med procesi. V vrstici J je deklarira»; na nprenenljlvk« "ev I" tipa ovant (dogodek) kot oenova ea vaklajovanje otiroma ainhronielranje. V vrntloi 5 Je deklariran prilagoditvoni formalni parameter B loenom "done" sa postopek sumit2. Burrou-ghaov Algol uvaja tudi klJuSno beoedo proaeen. da . razlikuje kilo pioceaa (vrstica ll») od obliajnega klica poatopka (vrstica IS). Klic procesa posreduje postopku auinltZ dejanski parameter, da lahko poto-oec preko njega signalizira slavnemu procesu, da je Bakljužil svoje opravilo. To opravi prek sistemske operacije cause (vrstica 10). Potem , ko je glavni program sproiil proces v vrstici 1%, kot svojega potomca, iavode obižajni kilo postopka sumltS, ki posreduje referenco null kot sintaktižnega statista ca formalni parameter done. Po izvedbi postopka po-kliže sistemoko operacijo wait, ki se izvaja toliko Saša, dokler dejanski parameter evi ne doseže vrednosti, ki se lahko interpretira kot: "dogodek se je zgodil" (N-not happend, H-happend). Po zaključku sistemske operacije wait algoritem pokllfe operacijo print Za izpis vsote dveh vrednosti resulti in results. Slika 6 prikazuje podatkovno zgradbo za algoritem Iz slike 5 v trenutku, ko glavni program Izvaja klic postopka sumlt2 v vrstici 15, njegov potomec pa vrstico 6. iJr- Besednjak Segmehiov , Sklad aa "2 9iavr>l proces I »liiti Ti I-cSulU »«sulU autji •umiU Sklad Ed lom Slika 6. Podatkovna zgradba za algoritem iz slike 5 . Spremenljivke tipa event so strukturirane in eno polje v tej zpirndbl je binarno stikalo, ki se imenuje dogodkovnl bit. Začetna vrednost tega bita Je: "dogodek se ni zgodil" (H) in operacija cause ga postavi na vrednost: "dogodek ae Ja zgodil" (H). Slika 7 prikazuje dejansko vključitev naéih procesov v sistem e5700 In v njegov,nadzorni program. Sklad za I jlftvni proces i«3iiaai(D rstvUl r«»uUl. evi Sklad Ea Ijolomea , . iQwillPodr«?)« I op is». procosa Slika 7. Dejanska vključitev algoritma iz slike 5 v sistem računalnika B67OO. Sklad za vsnk nov proces se prične s področjem opisa procesa (task description area), ki ima stalno širino. Temu sledi prvi zapis aktiviranja. Kombinacija aparaturne opreme in sistemnkih programov zagotovi, da je to področje dostopno samo nadzornemu programu. Eden od ključnih delov informacije tega posebnega področja Je nit (thread - Q),s pomočjo katere se proces lahko naveže na glavni seznam (list head), ki definira stanje razvrstitve (queue state) procesa. Če je proces pripravljen (ready),je nit Q navezana (črta označeno z 1 na sliki 7) na vrh (head - R) v glavnem skladu. Z uporabo takSne povezave, lahko sistemski nadzorni program izbira procese, ki se naj izvajajo. Povratni naslov za vsak proces je na sliki 6 označen z null. To bi pomenilo, da preide vsak proces ob svojem zaključku na izvajanje stavka null. Dejansko Je na sistemu b67oo podana namesto vrednosti null vstopna točka v sistemsko nadzorno proceduro. Zapis aktiviranja za sistemsko proceduro, ki zaklju-ii proces, se doda glavnemu skladu. 3. 2. Pridevki procesov Da dosežemo večji nadzor in/ ali možnost sodelovanja znotraj družine procesov, so vsakemu procesu dodeljene strukturirane spremenljivke, katere elementi definirajo različne lastnosti procesov. V času sprožitve procesa morn biti deklarirana spremenljivka tipa task. Zaradi tega Je algoritem na sliki 5 sintaktično nepravilno zapisan. Pravilen zapis vrstice tega algoritma bi bil v Burroughs-ovem Algolu tale: process sumit 2 (nun, n, 2 x n-1, results, evi) [charlie] ; če je Charlie ime tega procesa. Predhodno pa Je potrebno deklarirati èe spremenljivko Charlie tipa task; task oharlie Spremenljivka tipa task ima stalno zgradbo in je dodeljena v informacijsko področje procesa kot del Bklada procesa v 6asu, ko ae prooea kliža. V iaou, ko J® procao kJican, dobijo njegovi prldsv» ki neko inčetno vrednost. Ta zaŽstna vrednost lahko ikasnej« v času, ko je proces aktiven, ostmne nespre^ nenjenn, lahko jo epremoni proces s«ni ali pa doloSet ni drugi prooesi iE družine, navadno prooesi, ki ga kličejo. Ko je sprožen proces, oe lahko nanj predhodno navežejo razliéni pridevki. V primeru procesa Charlie, bi lahko «apinali takšne pridevka na tale naJin: ' 12.1 Charlie. priority 5 i 12.2 Charlie. maxprootime •^-20} comment in saoondsj 12.3 Charlie, etaoksize 2 } Skupek pridevkov procesa, ki so itapisani v vrsticah 12.1, 12.2 in 12.3, razpozna sistem, zaäetne vrednosti pa postavi proces, ki ga je sprof.il« To vrednosti upošteva aistemnki algoritem za razvršSevanje ali drugi moduli za upravljanje z viri sistema. Posebne medsebojne odnose med razližnimi procesi do» oežemo z nekaterimi ključnimi pridevki procesov. Opisali bomo ètiri različne pridevke tega tipa J ata» tuB, exeptlontask, exeptlonevent in partner. Pridevek status opisuje trenutna stanje izvedbo do- , loSeneKa procesa. Proces je lahko razvrSčen, aktiven, začasno ustavljen, zaključen. Ta pridevek ja dostopen kateremukoli procesu v družini, za katerega je i»e procesa (Charlie) vidno, to je procesu, ki ga je sprožil ali kateremukoli nasledniku, za ka» terega je Charlie globalen. Takšni procesi lahko prek spremenljivke status vsilijo določeno stanje procesu Charlie: lahko ga začasno ustavijo, zaključijo itd. Npr. myself, status suspended Proces, ki je sprožil proces (npr. Charlie ali katerikoli drug proces, ki lahko "vidi" spromenljivke procesa Charlie), lahko deluje kot Charliejev nadzornik ali "starejai brat", ker takšen proces (razen Charlieja samega) lahko spreminja ali čita njegove pridevke. Če je npr. proces Pete sprožil Charlieja, ga lahko aktivira, začar.no uatnvi ali pa za-kl.luči in tako lahko nadzoruje njpcroT.i »tanje prak pridevka Charlie, statua. S pomočjo pridevka excap-tiontaak pa lahko knnneje prenesemo funkcijo nadzora nad procesom Charlie, ki ga je od začetka imel Pete in sam Charlie, na drug proces z naslednjim stavkom: myself, exceptiontaskbrothsi-tom ; Na ta način se lahko dva procesa povežetn v zaključeno verigo. S pomočjo pridevka partner lahko omogočimo, da dvR procesa delujeta sinhrono kot soslednji operaciji. Procesa A in B lahko delujeta kot soslednji operaciji potem, ko priredimo: A. partner <= B in B.partner ■> a. Če sedaj proces A Izivede stavek continue; ea proces A ustavi in proces ß se prične izvajati tam, kjer ae jo untavil ob nastopu continue Bt«vka. Trije ali več procesov lahko delujejo kot soslednje operacije tako, da npr. tvorijo otjroS : A.partner-»-B, B.partner ••>•■ C ) C, partner A. Kadar ue zahteva kakri?nakòli oporacija nad temi pri® devki, aistemnki razvržčevalnik odloči, kdaj oe bo to izvršilo. Kasneje lahko saino prcoeai, ki so obve» Sčeni o tej operaciji, izvršijo nasprotno akcijo, 3. 3. Primer V prejiinjem poglavju smo i.odeli setaantiko tipremen-Ijlvk procesov in pridevkov procesov in sedaj z nji. hovo pomočjo reiimo naslednji probloo'.. Predpostavimo, da imamo tri identično krmilnike (con. troller) pretoka, ki lahko sodelujejo med sabo in i,, vplivajo drug na drugega. Vsak krmilnik lahko nadzoruje pretok, ki ni gn zamislimo kot pretok olja, vode ali zrnatega materiala ali pa kot pretok števil. , Vsak krmilnik dovoljuje nadzorovani pretok v zbiral-, nik ter pozna nakopičeno vrednost v zbiralniku, ker lahko stalno meri vrednost; pretoka. Naloga vsakega krmilnika je, da nnj v sodelovanju z ostalimi dovo- . ljuje približno enako velikost pretoka, kot se trenutno prevaja preko ostalih. Za zapis računalniškega programa, ki ustreza takšni situaciji, prodpoetavimo da se pretaka zaporedje celih spremenljivk, ki se ia. vhodno datoteka čitajo kot konstantne vrednosti. Z« ' poenostavitev predpostavimo, da krmilni program A mori pretok enostavno tako, da generira vsoto celih , vhodnih spremenljivk. To vnoto imenujemo SA. Krmilni, program A pozna nakopičeno vrednost v ostalih dveh zbiralnikih, ker ima dostop do generiranih vsot SB in fiC ostalih dveh krmilnikov. Prav tako lahko A periodično nadzoruje pogoj: SA > 3B and SA > SB o true in če jo pogoj izpolnjen, lahko prekine pretok v svoj zbiralnik. Predpostavimo, da lahko krmilni program A učinkovito sporoči najmanj enemu od osta-, lih dveh to, da je začasno ustavljen. Če pa pogoj ni izpolnjen, pa A nadaljuje s pretokom v svoj zbiralnik. Ko krmilni program A ugotovi, da je pogoj SA > IHMAX izpolnjen, lahko zaključi z izvajanjem in preneha obstajati. Ta opis velja seveda za vsak krmilnik A, B in C. Možnih je več rešitev. Vsakemu krmilniku priredimo , lasten proces in ti prooesi sodelujejo med sabo. Lahko bi jih tudi izvedli kot soslednje operacije. Na sliki 8 je algoritem, ki uporablja procesna pridevka statuo in exeptlontask. Ko dani krmilnik ugotovi, da prehiteva ostala dva krmilnika, ju obvesti o tem vedno po round robin algoritmu: A»- B, B«»-C in C — A. Proces, ki je «ačatmo ustavil samega sebe (vrstica 12) lahko ponovno sproži Ramo drug proces, ki je iijegov izjemni proces (exeptlontask), to je na slik^ S v vrstici 11. Opisane spremenljivke procesov in njihovi pridevki za ncdzor in kornuniciranje med procesi niso vse. ' Literatura [li navaja, da obstaja Se več drugih pri« devkov pj-oooGov npr. pridevok locked tipa Boolean ' oli pridevek taskvalue tipa real.Ta kratek pregled -nao lahko prepriča, da ima programer močno orodje z.a tvorbo kompleksnih podsistemov v obliki družine prooeeov. Sintaktične konstrukte, ki smo jih spoznali t tem poglavju, lahko na kratko primerjamo z rešitvami, ki oo jih navedli drugi avtorji na področju multlprogroy, miran ja. Pripomoček imenovan proces, je podan tudi v'', programskom jeziku-Modula [2] in je podobe» procedur ram, s tem da se izvaja sočasno s programom (ozironni procesom), ki ga je klical. Prooesi so v Moduli lah^ ko iniciallzirani samo v glavnem procesu in ne morei jo hiti vgiitjzdeni. Sinhronizacijo med procesi lahko v haàeo primeru dosežemo s spremenljivkami tipa event kot argument® operacij "wait" in "oauee" (čakaj na dogodek, povzro* :či dogodek). V programskem jeziku Modula lahko primerjamo s tema dvema operacijama opei-aciji "wait" in "aend" (čakaj na signal, pošlji signal), medtem ko bi dogodku odgovarjala spremenljivka tipa signal. Signalu pa pri Hoarju [1(1 odgovarja pojem pogoja, pri IlaEsenu pa pojem vrste. Pri Moduli je vpliv na potek procesov dosežen z upo-j rabo signalov in skupnih oziroma deljenih spremenljivk. Na ur,700 lahko v Burroughsovem Algolu dosežemo takšen vpliv z dogortkovniffli spremenljivkami in pridevki procesov. Kritični deli procesov^ delujejo nad skupnimi »premenijivkami, ho v Moduli de- Line No. 1 2 3 1» 5 6 7 8 9 10 11 12 1? 14 15 16 17 18 19 20 21 22 23 2k 25 26 27 28 29 30 beRin integer SA,SB,SC, INMAX; task A, B, C; event doneABC ; procedure controllcrl (b1, s2, bJ, n,dono)! value ni integer si, a2, sj, ni event done; be^in integer VAL i label Lj L: If al > b2 and el > 83 then begin [print values of al, e2, and 03 in appropriate oolunns of a table, based on the value of nj; (myeelf•exeptiontask). status M- "wakeup"; myeelf.status-o- "suspended"; go to Lj end else begin [input a value of VAL from input file n]; b1 B2 + VAL i if sKINMAX then go to L else causB(done); end end controlleri ; A.exeptiontask B; B.exeptiontask »-0; C.exeptiontask "»-Ai [input a value for INMAXJi SA-i- SB ->• SC->-Oi process controllerl(SA,Sn,SC,1 ,donoABC)[a] i process controllorl(sb,SA,sc,2,doneABC)[b]| procesa controllerKSC,SA,SB,3,doneABC)[Cl[ «ait(doneABC)i end Slika 8. Program za krmiljenje pretoka števil v tri zbiralnike. klarirani kot vmesniške procedure in so zbrani v vmosniakih modulih (monitor pri Hoaru in Hanaenu). V našem primeru se take operacije izvajajo pod kontrolo sistemskega nadzornega programa, ki poskrbi, da ne pride do konfliktnih situacij. S pridevki procesov lahko torej v nasprotju z Modulo kontroliramo potek procesov. Kasneje bomo spoznali še eno možnost vpliva na potek procesov, to je s programskimi prekinitvami. TO-sklad rn^ rn.a.b Tn.a.c Slika 9. Drevesna zgradba družine procesov. V nasprotju ?, Modulo lahko v Burroughsovem Algolu tvorimo družino procesov, ki imajo drevesno zgradbcv Takšen, zelo poenostavljen primer je prikazan no sliki 9. Na tej sliki Je na lovi strani drevesna '-■truktura, na desni pa poenontavljena povezava posameznih zapisov izvajanja, ki imajo skladovno zgradbo in jih sestavljajo posnmeKni zapisi aktiviranja, Iti so statično povezani. Prav tako so statično povezani posamezni procesi in sicer tako, da je npr. proces m.a.a. statično ;nave/.an na m.a. sklad na zapise aktiviranja ^,3,2 in 1 ne pa na 5,6 in 7. Zapis aktiviranja ali blok s številko k v m.a. skladu ee imenuje kritičen blok za ra.a.o. sklad. Ko se proces Tn.a. konča ali se kako drugače neha izvajati, njegov naslednik ne more več eksistirati, ker nima več dostopa do okolja svojega predhodnika. Zaradi toga mora proces, Vi konča, končati tudi vse svoje potomce. Programske prekinitve Programska prekinitev ima nekatere podobnosti z ožičeno prekinitvijo. Izvor programske prekinitve se nahaja v nekem drugem procesu iz družine proco-Bov in proces, kateremu je prekinitev namonjens, preide, ko prejme prekinitev, na izvajanj» neko v- 1 naprej definirane procedure (prekinitvene procedurel Prejemnik prekinitve jò lahko ignorira taVco, da začasno onemogoči programsko prekinitev. Če se pa proces, kateremu je namenjena prekinitev, trenutno ne izvaja, sistemski nadzorni program poskrbi, da se prekinitveni signal postavi v vrsto in se obravnava v trenutku, ko sf odgovarjajoči proces prične ponovno izvajati. PrekinitoT deklariramo v B67OO Algolu z naslednjim stavkom: interrupt (name of interrupt procedure) i (statement Če zapišemo! Interrupt il; begin . , . end ; pomeni, da je to prekinitvona procedura z imimom il Preklnitvena procedura se Inhko naveže na dogodkov-no spremonljivko s stavkom: attach (name of interrupt procedure) to (event vari« able)i Primer: 1 event evi 2 interrupt il; begin . 3 attach il; ^ ev; k enable il; end; V vrstici 1 je deklarirano dogodkovna cprnmenljivka, ev; vrstica 2 deklarira preklnitveno procenuro z imenom il; vrstica 3 naveže prekinitvono proceduro il na dogodkovno spremenljivko ev; vrr?1.ica '( pa omogoči prekinitev, ki se povzroči preko spr.men!jivke ev. Prekinitev lahko onemogočimo s stavkom: disable il; Na začetku se privzame, če ne vključimo stavka enable, da je prekinitev omogočena. Dogodkovna spremenljivka se lohko onemogoči s stavkom: detach il; nakar lahko navežemo na prekinitev il katerikoli drug dogodek. 3.5. Doseganje virov- Kot smo že na kratko omenili, si morajo procesi, ki ae odvijajo na nokem računalniškem sistemu, učinkovito razpodeliti uporabo računalniških virov. V času, ko proces zahteva določen vir, se mora izvesti kritičen del programa, ki ga uvaja Dijkstra [3] . Predhodno smo dogodke opisovali kot dvostanjske s stanji: "dogodek se je zgodil" in "dogodek se ni zgodil". Ha Bistemu B6700 lahko dogodke interpretiramo še na naslednji način: " dogodek je na razpolago" ali "dogodek ni na razpolago". ProcsB, kl izvaja stavek: procure(ev); ja začasno uetavljen, dogodek ev ni na razpolago, v nasprotnem pa izvede nasljedoji stavek zaporedja, ki sledi. Kritičen del ae v Burroughsovem Algolu zapiše na nasljednji naiin: prooure(ov); liberate(ev); Operaciji "procure" in "liberato" torej lahko primerjamo z operacijama "P" in "V", ki se izvajajo nad semaforjem in jih je uvedel Dijkstra. ® LITERATURA [ll Elliot J. Organički Computer System Organisation, Academic Press 1973, New York and London. [2] H. Wirth: Modula: a Language for Modular Multiprogramming, Software-Practice and £xporience, vol. 7, 335 (1977). [3] Dijkstra E. W.: Cooperating Sequential processes, in Programming languages, ed. Qenuys, Academic Press i968. [4] C. A. R. Hoare: Honitors-an Operating System Structuring Concept, Com. of the ACM, vol. 17, no. 10 (Oct. 1974). SKLEP Iz tega zapisa in nekaterih opisanih primerov vidimo, da so načrtovalci programske opreme Burroughs-ovih računalnikov že zelo zgodaj razvili učinkovite pripomočke za multiprogramiranje na računalnikih, ki ao tudi multiprocesorski. Čeprav so verjetno svojo opremo razvijali ločeno od ostalih teoretikov multiprogramiranja, lahko napravimo primerjavo med posameznimi rešitvami, „ PODAT KOVNA BAZA PROGRAMSKEGA PAKETA ZA AVTOMATSKO PROJEKTIRANJE M. MARUSIC B.VILFAN M. TONh UDK: 681.3:519.685 FAKULTETA ZA ELEKTROTEHNIKO, UNIVERZA EDVARDA KARDELJA V LJUBLJANI •INŠTITUT JOŽEF STEFAN, ODSEK ZA UPORABNO MATEMATIKO V sestavku Jp opisana podatkovna ba-a za računalniški p rodran,ski paket za avtomatsko projektiranje in avtomatsko izdelavo projektne dokumentacije. Trenutno se ta paket uporablja za projektiranje zavarovanja cestno - selezniskih prehodov. Zaradi popolnejseäa presieda Je naJpreJ podan kratek opis celgtneSa paketar nato pa se opis enotne podatkovne baze. DATA llASh: Oh' A SOI'IWAKK l'A( K ACih; l'( )ll COMl'UTiat AIDKI) DIOSIC.N In these section a description is stiven of unified data base for the software package for the automation of desiSn activities and the automatic production of desian documentation. The package is currently beinä used by a consulting oräanisation in the desiän of railway - hishwaw intersection safety eouiPment. 1. uvnn Projektiranje Je dejavnost? visokokvalificirane in izkuäene ter veliko predelovanja informaci delu se projektanti velikokrat rutinskiriii dobro uteeenimi deli p njihova ustvarjalnost na prece fllede na sposobnosti in znanJei k ImaJo. Prav zato Je vsak p postopek» ki zmanJäuJe obseg tak zašel Jen. projektant dobi tako veeino svojih sil usmeri v krea tako tudi dvigne svoJo p ki zahteva strokovnjake J. Pri svojem sreKuJeJo z ri katerih Je J niski ravni i ga ti 1 JudJe ripomofiek ali esa dela» zelo moänost» da tivno delo in roduktivnost. Skupina računalniških strokovnjakov iz Fakultete za elektrotehniko Univerze Edvarda Kardelja v Ljubljani < B. Vilfan» V. Mahnie» M. Haruäie > in iz Instituta 'Josef Stefan' Odseka ZR uporabrio niatematiko ( M» Toni» R. Kolar» J. Parle) Je izdelala za potrebe organizacije ISKRA Avtomatika TOZD InSeniringi računalniški programski paket z namenom» da osvobodi projektanta rutinskih opravil in obenem tudi skraJSa eas projektiranja. Konkretna aplikacija se nanaša na izdelavo projekta za zavarovanje cestno - selezniBkih prehodov. SPLOSNO O PAKETU Preden smo pristopili k izdelavi programskega paketa smo se morali spoznati z vsemi deli» ki Jih mora opraviti projektant pri projektiranju zavarovanja cestno - Selezniäkih prehodov. Pod gavarovanjem cestno ■ aelezniskih prehodov razumemo nabor naprav in povezav med tem» napravami» ki so nameseene na äelezniski progi in ob nJeJ. NJihova naloga Je zagotoviti varnost prometa pri kriäanju »elezniske proge s cesto v istem nivoJu. Osnovne naprave» ki spadajo v ta sistem zavarovanja» sot cestni svetlobni signali» zapornice» magnetni tirni kontakti» relejne naprave za krmiljenje signalov in zapornic ter kabli in druge pomoäne naprave. Konfiguracija zavarovalnega sistema Je odvisna od karakteristik proge in prometa na nJeJ ter od ceste in cestnega prometa. Naloga projektanta Je analizirati vse značilnosti» ki vplivajo na konfiguracijo zavarovalnega sistema. Na podlagi te analize projektant izbere ustrezne naprave» naprave geografsko locira in predvidi njihive povezave. Končni projektantov izdelek Je 'projekt'» ki vsebuje; besedni OPis celotnega zavarovalnega sistema in njegovih elementarnih delov različni naCrti specifikacija vseh naprav in del» KI so potrebna za realizacijo zavarovanja podrobna navodila in predpisi za postavljanje in povezavo naprav. Kaj se spremeni v delu projektanta z uPorabo na5ega paketa? Programi izpisejo besedilo» ki Je sprejemljivo za končnega naročnika projekta» izdelajo nacrte ustrezne kvalitete» izdelajo tabele s specifikacijo opreme in del» tabele kabelskih povezav ter %e tahele za vrsto drugih podatkov. Projektant sedaj nadzoruje računalniške rfzultate in v primerih» ko z rezultati ni zadovoljen ali pa Je prehod nestandarden» lahko sam Posega v vmesne faze avtomatskega projektiranja. MoSriost ima spreminjati in popravljati vhodne podatke in tako prilagajati' rezultate posameznih obdelav. Za vnascnje veČine podatkov sedaj skrbijo koderJi» projektant pa vnaSa le zahtevnejše podatke. OPIS F-ROpRAHSKEGA PAKETA Proäramski paket za avtomatisaci Jo ProJeR-tiranJa Je sestavljen iz treh delov. - proarami za zaJemanJe podatkov in vzdr-aevanJe podatkovne baze - protrami za oblikovanje besedil m naertov - aplikacijski proSrami namenjeni Konkretno projektiranju zavarovanja cestno -äelezniäkih prehodov. Iz slike 1 Je razvidno, da imaJo vsi prosramski deli dostop do skupne podatkovne baze iz katere lahko erpaJo podatke. Samo ProSramski podr-aket UPDAT, ki ima za naloso vzdraevati podatkovno bazo, lahko . podatke v bazo vstavUar Jih popravlja ali bri^e. PoäleJn.o vlođe posameznih podpaketov! Prvo Je primerno za izPis na vrstičnem tiskalniku. druäo pa na elektritnen. pisalne«. stroJu. 3.2. Izdelava naCrtov Frvi korak pri izdelavi . naftrtov Je bila standardizacija osnovnih likov in simbolov. ki Jih pri naertih projekta uPorablJamo. S pomoCJO obstoJeeeäa đrafiSneSa paketa na CIiC Caber. ki Je sestavljen iz nabora rutin za posamezne elementarne operacije pri risanju . smo sestavili standardne objekte risb. od katerih ima vsak svoJo Šifro. Nekateri naftrti se izdeluJeJo avtomatično. na podlaai podatkov o prosi. druäi pa se moraJo rocno zakodirati preko ustreznega fornularJa v katerem se naäteJe vse äifre elementov, ki nastopajo na-nacrtu, in se poda njihova leđa. velikost ... Usi ti podatki so v podatkovni bazi. Proäram za izdelavo načrtov kreira datoteko z direktivami za ploter. ki nato izrise nacrt. 3.1. Obdelava besedila Uaotovili smo. da so besedila za oPis celotneaa sistema zavarovanja in nJeäovih posameznih delov sestavljena iz standardnih delov, ki se PonavlJaJo iz Projekta v proJekt. Naredili smo nekakšen kataloä vseh standardnih tej-^stov in äa shranili v podatkovno bazo. V podatkovno bazo se preko vprašalnikov in Proärama UPDAI vnesejo tudi vse zahteve projektanta iz katerih standardnih besedil naJ bo končni tekst sestavljen. Obdelava poteka v dveh korakih. NaJpreJ se zlepijo vsi standardni deli besedil, se vstavijo v tekst spremenljivke, ki Jih poda projektant preko istih vprašalnikov kot Je podal oznake standardnih besedil. in tiste spremenljivke, katere proäram sam avtomatično Poisee v podatkovni bazi. V naslednjem koraku + =. tekst obdelf» doka.i moBan text procesor, ki oblikuje strani. določa dolžino in Sirino strani, deli besede, podcrtuje. razmika, izdela kazalo vsebine, stvarno kazalo ... l^^riCni rezultat teäa preoblikovanja sta dve besedili. 3.3. Aplikacijski protrami Ti proärami se zavarovanje cestno so izračuni različnih časih zadrSevanJa, naprav, povezave kabl in del s cenami in k JemlJeJo podatke predelujejo in izpi pre^.o F-roslrama UF't'AI v podatk.ovno bazo. proaramom paketa. nanaSaJo konkretno na - železniških prehodov. To tabel o vklopnih točkah, napajanje zavarovalnih ov, specifikacije opreme onCno ceno ... Ti proaratin iz podatkovne baze. Jih suJeJo na OUTPUT ali -a spet predelane shranJuJeJc kjer so navolJo ostali'"' 3.4. Proärami za zajemanje podatkov in vzdrževanje podatkovne baze Ta proaramski podpaket Je razdelan v nas 1 edr,Jili poalavJih. Slika 1. podatkovni pretok med deli paketa 4, ZAJEMANJE FODATKOV Pri načrtovanju zajemanja podatkov smo se zavedali» da are danes razvoj v smeri uporabe terminalov in izločevanja kartic kot osovneäa nosilca vhodnih inforniaciJr vendar zaradi omejitve stroJne opreme < delamo na računalniku CnC Cyber 171' in naročnik projekta nima svoJeaa terminala ) smo morali sprejeti kartice kot vhodni nediJ. Osnova za zajemanje podatkov so vprašalniki in formularJi (primer vprašalnika iia zaJemanJe sploSnih podatkov o projektu in vprašalnika o vzdolanem profilu proae vidimo v priloäi). Nekatera polJa so Se izpolnjena z oznakami značilnimi za vsak vprašalnik! prvih 6 mest Je šifra vprašalnika < za osnovne podatke o projektu Je to CPFR02 ). eno znakovno mesto za tip zapisai ki nam älede na spremenljivke t ki sestavljajo ta zapisr pove kateri zapisi iniajo enako sestavo. To omoaoCa enako kontrolo teh podatkov, V nasen primeru vprašalnika o osnovnih podatkih o projektu so to številke Or It.l» Ir 1» 1» 2» 3 kar pomeni? da imaJo zapisi z oztiako 1 vsi enako kontrolo. zapisi z oznako 1 vsi enako kontrolo), dvomestna zaporedna Številka karice na vprašalniku. V riaSem primeru so to številke od 01» 02 ... do zadnje r ki Je vedno 99. Vse te oznake so 5e predtiskane na vprašalnikih > tako da za projektanta nimaJo pomena, Pomembne so le, za prodram UPDAT» ki vprašalnike obdela in shrani podatke v bazo, Naloäa projektanta oziroma koderJa Je» da izpolni samo prazna POlJa, Ko so ti vprašalniki izpolnjeni Jih zluknjamo na kartice ( pod tekstom so številke» ki povedo v katero kolono naJ se liik.-ija >. Te podatke kartic obdela poseben proäram za vzdrjsevanJe podatkovne baze» proäram UPDAT. vprašalniki so tako sestavljeni» da se Podatki zaJemaJo le enkrat in so v bazi dostopni vsem proäramom paketa. OPIS PODATKOVNE BAZE Nas paket ses v PASCALu i obseaaJo 30 Oper i ra Jo. nad od 600.000 do bi ti proflram bi morale bit operaciJskeäa ločene dato menti rano da nam sedaj eri erio izmed Pot tavlJaJo välavnem proärami pisani n le nekaJ v FORTRANu, Skupaj 000 kartic. Vsi ti proäranii skupno Podatkovno bazo» ki obseđa 700,000 znakov. Uäotovili smo» da i potrebovali 70 do 80 datotek» ki i vse dostopne paketu. S stalistla sistema Jih ni usodno hraniti kot teke . OdloČili smo se setì -toteko v smislu PASCALa . Tako sesment te datoteke predstavlja rebriih datotek.. Vsak seament, ima ime doläine 6 znakov» ki Je del vsake?jia zapisa . v se^nieritu. Zaradi rai-.licneäa pomena podatkov v posameznih seSmeritih smo se odloČili» da podatke hranimo kar v obliki kartiCnih slik. KlJuCni seament v nasi podatkovni bazi se imenuJe AAAAAA in predstavlja seznam vseh trenutrio prisotnih sesmentov v bazi. VsakiC» ko kakšen proflram potrebuje nek seament' iz baze» se v tem sesnientu» naSem kazalu» poisfte naslov iskane;aa segmenta. Zalisi v vsakem seämentu so ureJeni po sortirnih klJuCih» ki pripadajo temu seämentu. V'^ak segment ima lahko eneäa ali.veC sortirnih klJuCev» ki so lahko pri različnih seamentih na različnih delih zapisa. Podatki o sortirnem klJuCu seamentov so shranjeni v posebnem seamentu z imenom SORTKL. Seamenti se razlikujejo tudi po tem» dB zahtevajo različne kontrolne postopke za verifikacijo podatkov. Vse informacije» kako naJ se kontrolirajo spremenljivke v zapisih v vsakem seämentu» so shranjene v segmentu KONTRL. Pri vnašanju podatkov v podatkovno bazo se nam včasih zaodi» da se nekatera pol Ja na zaporednih karticah ponavlJaJo. Da bi se izoänili odvečnemu pisanju in luknjanju» nam zapisi v seamentu PREPIS definirajo katera polJa na kartici se bodo izpolnila z vsebino predhodne kartice» Ce Jih pustimo prazna. Včasih Selimo ispisati na listina kaksen vprašalnik za katereSa imamo podatke iSe v bazi» v ta namen nam sluai seament IZPISI» kJer Je zakodirana oblika izpisa za vse vprašalnike. V Podatkovni bazi morajo biti tudi seamenti» ki predstavljajo Šifrante. Naprimer CPSIFl Šifrant elementov vzdoläneaa profila» CPSFPR -Šifrant prod. Sledijo seamenti v katere vnasa podatka projektant oziroma koder s pomoCJo vprašalnikov in formul arJev. To so naprimer seamenti! CPPR02 •• osnovni podatki o projektu» CPVZDl - podatki o elementih vzdoläneaa profila proae. Obstajajo Se seämehti» katere SeneriraJo aplikacijski proarami in sluäiJo za nadalJne obdelave v druaih. proarsmih. Primer takeSa seamenta Je CPTABP v katerem so shranjeni vsi podatki o vklopnih tpckah» Casu zadräevanJa vlaka ... Za vzdrsevar.vit» take podatkovne strukture sao naredili projfram s katerim Je moaoSe podatkovno bazo aüurirati» izvajati kontrolo nad novimi podatki» vsebino baze izpisati... Ta proaram se imenuje UPliAT in on lahko spreminja vsebino podatkovne ba;:e. Vsi ostali proärami iz paketa pa imaJo SöPiri dostop do podatkov» ne morejo Jih pa spreminjati. Na ta naCin smo se obvarovali pred vnašanjem nap-ak v naso podatkovno bazo, V Pri losi Je podana slika dela podatkovne bazo in sicer seament za kontrolo vhodnih podatkov. 6. PROGRAM UPDAT Proaram UPDAT Je pisan v PASCALU <3.000 kartic). Namenjen Je vzdrsevan-j.j podatkovne baze. Vhodne datoteke so i podatkovna baza RUD datotek.3 novih podatkov » k; Jih Selimo vstaviti in direi'tiv za brisanje SPU datoteka posebnih .jkazov za izpis Izhodne datoteke; spremenjena baza podatkov OUTPUT izpis opozoril o morebitnih napakah v vhodnih podatkih. A. OÜNOVNl PODATKI O PROJEK'IU 1. £t. projekta: .C P.P.R 0.2:.O.QM. 2. fit. vpražalnikn: Da t'JI : '». Naziv projekta: 5. ledajatelj projektne naloge (i ^ »J i? u 6. Izdajatelj projektne naloge (Z) eo u 7. Izdajatelj projektne naloge (5) .C.P.PXp.Li.OH.'' w t3 Q. Isdajatelj projektne naloge ta 9. Izdajatelj projektne naloge (er) w PODATKI O PROGI Propa: ro C.P .P I? ^X I 0.7. ' I '1 Žifra proge: VT Odsek:........... «I 50 Šifra odseka: . ■ ■ . 'I u ■C.P.P.g g.ì S .9 9 * . ' lütronti vlakov (km/h) t;;ijveć,ie nožno lìtcvilo oni: __ t; ir Največja moJ.nn dolžina vlaka (m); i ■<;:ivorn.i razdaJ,;T (rn): l naknimnlnn; c. inininulna : •I 1« QVS^o.) "V i''tevilo vožrnj v 3 urah največ,iena prometa; 10. Pospešek ____^ 54 11. Številka pogodbe za projektiranje 12. Število prehodov ▼ projektu 15. Začetni kilometer projekta I*», Končni kilometer projekta 15. Oznnkn prvega razdelilen v projektu' u ì-> il. Si- s.' k ' SPL PODAT. OUTPUT SUka 2. Vhodi In Izhodi procroina UTDAT FToaraiii UPDAT omoäoCa kontrolo in vstavljanje novih podatkov ter popravljanje in brisanje starih podatkov. Preko datoteke SPL lahko zahtevamo tudi izpise äelenih vprašalnikov. Eden najpomembnejših delov proärama UPDAT Je kontrola vhodnih podatkov. Pri tem se proaram naslanja na sesment KONTRLt kJer dobi informacijo kako naJ kontrolira posamezne podatke. Zahteve za kontrolo vsebine zapisov podaJamo älede na sedment v katerem Je zapis in älede na tip zapisa v tem seđmentu. Vsaki spremenljivki iz vprašalnika» ki Jo kontroliramo» pripada vsaJ en kontrolni ::ì9pìs. Sestava kontrolneäa 1 11 17 18 20 22 , . 10 , . 16 .IV - .. 21 - zapisa Je naslednja! standardna oznaka seamenta < K0NTR099 ) Šifra seamenta v katereaa spada spemenlJivka » ki Jo üelimo kon -troli rati tip zapisa v aeamentu začetek polJs spremenljivke na kartici nad katero Selimo izvajati kontrolo dolüina spremenlJi v ke v znakih tip kontrole» ki Jo Selimo izvršiti nad spremenljivko. MoSne imamo stiri kontrole! 1 - intervalna kontrola 1 na mestih od 23 do 32 podamo sPodnJo meJo■intervala » od 33 do 42 pa zaornJo meJo intervala. S tem Selimo ugotoviti» ee Je podano Število v dopustnih meJah . Naprimer maksimalna hitrost vlaka Je od O do 90 km/uro. 2 - znakovna kontrola ! trenutno imamo 12 razlienih podmnoSic znakov . Kontroliramo lahko» fte Je znak v doloKeni .pod -mnosici ( zakodirano od 23 do 32 mesta >. ' Primer te kontrole Je preverjanje > «e Je znak Številka» številka» znak iz posebne podmnoS ict?. . 3 - kontrola pripadnosti mnosici Nb mestih od 23 do 32 imamn Šifro datoteke» seamenta ir katereaa proaram pobpre sortirne klJufie in uaotavlJa ali Je dana spremen I Ji vi-a enaka kaksneemu izmed izbranih klJueev . S to kontrolo naprimer pri vstavljanju osnovnih podatkov o posameznem prehodu lahko uđotovimo » Ce Je ta prehod sploh vklJueen v kakem projektu ali Ce Je Šifra za nek element vzdol -Sneaa profila prava - Je v Šifrantu vzdolsneaa profila. 4 - posebne kontrole ! trenutno imamo A take kontrole» ki so proaramsko realizirane ( so del UFTiATa >. Na mestih od 23 do 32 navedemo številko poseh-p kontrolne procedure. Tftko oblikovan proaram za kontrolo vhodnih podatkov nam dopuSCa zelo enostavno dodajanje ali spreminjanje kontrole nad posameznimi spremenljivkami. Pri dodajanju novih kontrol moramo poseaati sam.o v podatkovno bazo» v kontrolni seament. Proaram sam ostane nespremenjen. proaram UPDAT iz vsebine podatkovne baze uaotovi kako mora kontrolirati vhodne podatke. Ce proaram uaotovi na vhodni kartici napako» to kartico izloili» izPiSe na OUTPUT in oznaei mesto napake ter poda njen tip. Na koncu poda tudi statistiko o Številu in tipih napak. Pravilni podatki se vstavijo v podatkovno bazo. Tak pristop k zasnovi kontrole smo izbrali zaradi oaromne količine podatkov» ki zahtevajo različne kontrole» in zaradi Se nejasnih zahtev po konkretnih kontrolah pri snovanju proarama. Druäs naloäa prodrama UPDAT Je vstavljanje., hrisariJe iri ropravlJariJe F-odatKov v seđmentlh. V ta nameri uporabljamo za direktive 79 in BO stolpec na kartici. Ce sta stolpca prazna pomeni» da selimo sapis vstavljati. Ce Je na 79 mestu zvezdica (») pomenir da bo 00 mesto povedalo ali đre za brisanje enesa podatka (B) ali celeäa intervala < D ) . Popravljamo tako. da ponovno zluknJamo vprašalnik. ki sa spet obdela UPDAT. Ko proäram uäotovi. da ima ta vprašalnik iSè v podatkovni bazi < älede na sortirne klJuee ). äa zamenJa z novim. UPDAT zaaotavlJa. da pri brisanju ne pride do teda, da bi v podatkovni bazi ostali nepopolni podatki. 7. ZAKLJUČEK Celotni programski paket Je paketno orientiran» k.aJti zaradi pomanJkanJa strojne opreme pri naročniku proJekta nismo moäli uresničiti idejo o interaktivnem delu» ki Je veliko prikladnejSe za tako vrsto obdelav. NadalJni razvoj projekte pa äre prav v to smer» paket prilaaoditi interaktivnemu delu» kaJti naročnik Je dobil svoJo strojno opren.o» ki tako delo omoSoCa. Uvedba interaktivnega dela bo nekoliko vplivala na podatkovno bazo in zahtevala manJSe spremembe Proärama UPDAT» ki to bazo vzdräuJe. <0 bO +> CJ OJ 3 Ö M (U 1 f-l u O) C3 H) rt >1 rt »o N O >tg »o >N O .-H o i) ci3 rt o Ol 11 H J.; ^^ rH ^^ P -P iH UÌ fH o. 0) ■p a> ■P a 4> o >o 0-3 >N -H rt t> 0] <0} M N W M W w « H iS 0. s: v bO o u m p. Is ni ^^ O w M W H *71l W « ■S O N O C P A?,<,0,9,9 C P.VZ^i 0^9,9 C p y ZjbJ P.99 C r,vz,6 f.o99 CP.».t|0.<,0,9,9 C?.v l.D.'I.O«,^ C P V.r,t).1,0,9,9 l—t--.J.-.l- I , . ! . . ___L ... .1 I .-L-. J_ .-La,. L. . 1 t ... ..i.i ? .i ^ „I.... 1 ,7 f-JU. , i t . I 1 , J_L. -LJ., .»-J., J J i -f.l , .i.i .. -J.l., 1 i .U..,i ..-J J. ..X.i-.i.-.i. J-..1..J. -l-.l 1..U. J-l_4_,l .1 -L- I . .4—1. X- L I I ..L.l. , . .i 1 .... ...1..1..... . I.J..U- 1 f ..L,?.. --L-t. j_L « H « u w »j W .L_...... .1 . J.......... I « n I* P® /T/, i ! r\ Tfj n n nix...... '^is © /i/o/) usmernika ■ ® /zpod enosmerne napetosti ®kf>od 220 V PSHX HL PSHX DE PSHX BC PSHX PSW SP HL STHL STACK LAI 377 STA NSCT OUT ENUST HLT Slika 3. / /y sklad shranimo vrednosti akumulatorja, delovnih registrov in statusnega registra. /V pomnilnik shranimo zadnjo vrednost kazalca sklada. /Zaznamujemo uspešno izvajanje programa. /Ukaz, s katerim se kratko sklenejo izhodi napajalnih napeto-^ sti. Organizacija pomnilniškega sklada po izvršenem prekinit-venem programu je prikazana na sliki 1b. Pri tem moramo poudariti, da se obravnavani podprogram ne more izvršiti v primeru, če Je v usmerniškem delu^R prišlo do kratkega stika, to je do izpada katerekoli napajalne napetosti. V takšnem primeru kontrolno vezje kar najhitreje sklene izhode usmernika in tako prepreči preobremenitve čipov. S tem pa se trenutna vsebina akumulatorja, delovnih registrov in statusnih registrov izgubi, ohrani se le vsebina pomnilnika RAM. Kontrolno vezje detektira tudi ponovno prisotnost napajalnih napetosti. V. taksnem primeru da ukaz za reset mikro procesorja. RazličnifuR imajo različno organiziran RESET, odnosno RESTART mehanizem. Pri nekaterih (UR se RESET ukaz izvaja tako dolgo, dokler je na vhodu RESET prisoten ustrezen logični nivo; pri drugih pa oblikuje RESET stanje prehod iz enega v drug logični nivo. Kakorkoli že, aktiven RESET vhod povzroči, da se v programskem števniku oblikuje adresa posebne lokacije v (E)ROM pomnilniku, kjer se nahaja prva ukazna beseda sledečega programu: RESET, DI /V'času izvajanja tega programa ne dopuščamo servisiranje programskih prekinitev. LDA NSCT CPI 377 (2) JFZ INICr LDHL STÄCK /Nastavimo vrednost kazalca vrha sklada SP HL POPX PSW POPX BC POPX DE POPX HL EI RET /Od programa, ki vsebuje potrebne programske ukaze za inicializacijo kontrolerja programske prekinitve (INTEL 8259) in za določitev stanj uporabnikov kontrolerja. /Omogočimo servisiranje prekinitev s strani ^uR. /Vrnemo se v sistemski program. ^ SlSTEtlA J INICiAUZACHA —1 FAIL-^ O f>AO<}M/f 1 Ln'-m L BC DE [il-€i 1 HU rsf-21 r £sp3 L h) 1 FAIL-- FAIL* t T FMdHAH i X T FAIL-^ FAH. *i I PROt ISKRA RAČUNALNIKI, LJUBLJANA Članek podaja osnovne lastnosti zgradbe, delovanja in uporabe 16-bitnega procesorja nove generacije Motorola MC 68000. Procesor ima vrsto novosti v arhitekturi in v ukazni zalogi. 16 BI'I MICHOPROCpUSOR MOTOROLA MG 680U0- This article describes the basic concepts of architecture, operation and use of the new generation 16 bit processor MOTOROIA MC 68000. The described processor has some novelties in architecture and in instruction set. 1. U V 0 D Generacija 8 bitnih mikroprocesorjev razliSnih proiz-'vajalcev že nekaj let uspešno izpopolnjuje pričakovanja načrtovalcev in služi kot osnova raznim sistemom na razvojnem, procesnem, hobistiSnem in poslovnem področju. Vendar pa nam hitri razvoj mikroprocesorske tehnologije ponuja že naslednjo, 16 bitno generacijo, katere tipični predstavniki" so Intel 8086, Zilog 8000 in Motorola MC 68000. Uporabniki mikroračunalnikov težko sledijo novostim, saj je ustrezne, dostopne literature malo in je nepopolna, zato naj pričujoči članek pripomore k boljSemu poznavanju novinca, mikroprocesorja Motorola MC 68000. Opis lastnosti procesorja MC 68000 naj uporabniku - poznavalcu mikroračunalnikov služi kot pomoč pri primerjavi z lastnostmi procesorjev Intel 8086 in Z 8000, opisanih v prejS -njih številkah časopisa INPOBMATICA. 2. OSNOVHE LASTNOSTI MC 68000 Je prvi MotoroHn procesor zgrajen v sodobni VLSI HMOS (high density, short channel MOS) teh -nologiji in v novi arhitekturi, ki omogoča vsaj za en razred bolJSe karakteristike od predhodnikov. Zgradba in osnovni ukazi so prilagojeni prevajalnikom za visoke programske Jezike, omogočajo gradnjo multi-mlkroprocesorekih sistemov z nadzorom in dodeljevanjem vodila ter pomnilnika in visoko prepustnost do dva milijona ukazov in prenosov podatkovnih besed na sekundo. Mikroprocesor MO 68000 karakterizirajos - 32 bitni podatkovni in naslovni registri - 16 M bytno neposredno naslovno področje - 56 osnovnih ukazov - 14 naslovnih načinov - pet glavnih podatkovnih tipov, ki vsebujejo: - bit - BCD znak - 4 bite , - zlog - 8 bitov - besedo -16 bitov - dolgo besedo - 32 bitov - sistemski takt 8 MHz - napajalna napetost V-j. = 5V - poraba, moči (pri 8 MHz) P^ = 1,2 W - programska kompatibilnost s procesorjem HC 6800 preko prevajanja programov - enostavna priključitev perifernih enot procesorja MC 6800 (kot 80 MC 6854 ADLC, MC 68408 GPIA, MC 6821 PIA, MC 6843 MC, idr), ki jo omogočajo sig -nali E, TOC in VPA procesorja MC 68000. Konsistentnost (ortogonalnost) strukture procesorja omogoča majhno število ukazov. Mnemoniku' za vsak tip operacije določi programer velikost podatka, izvirni in končni naslovni način in s tem definira operacijo. Lastnosti zgradbe procesorja omogočajo povratno ^Reentrant) modilarno programiranje. Osnova temu je vektorska prednostna predklnitvena struktura, ki ima sedem maskiranih prednostnih nivojev z 192 vektorji in 7 avtovektorji (vsega skupaj Je na voljo 255 vektorjev za prekinitve, strojne in programske pasti). Več vgrajenih strojnih pasti odkriva naslednja nenormalna stanja t dostop k besedi z lihim naslovom, napačen ukaz, neznan ukaz, napaka vodila, deljenje z ničlo. Ipd, Programske pasti uporablja programer poljubno glede na aplikacijo. Dodatna možnost testiranja je sledilni način (Trace Mode) z Izvajanjem ukaza za ukazom. 3. ZGRADBA PROCESORJA MC 68000 3. IRegistri Procesorko vezje Je vsebovano v 64 množičnem ohiSju, ki ga prikazuje slika 1. Uporabniku je dostopnih 17 32- bitnih registrov, 32-bitni programski Števec in 16 -bitni statusni regi .. ster (slika 2). Prvih osem registrov so podatkovni registri (Do - D?) za zlog (8 bitov), besedo (16 bitov) in dolgo besedo (32 bitov). Naslednjih sedem registrov (Ao - A6) in sistemski skladovni kazalec (A7) so uparabljanl kot osnovni naslovni registri, programski skladovni kazalci in za naslovne operacije pri besedah in dolgih besedah. Vseh sedemnajst registrov služi tudi kot indeksni registri. 16- bitni statusni register (slika 3) prikazuje pre-kinitveno masko (3 biti" - 8 nivojev), status izvajanja (5 bitov) in status procesorja (2 bita - sledilni in nadzorni način). podatki asinhr. nadzor vodila dodelj. vodila s i st. nadzor 6800 nadzor prekini1ve| statusa naslovi 04- 1 64 - 05 03- 2 63 - 06 D2- 3 62 - 07 01- 4 61 - 08 D0< 5 60 - 09 AS* 6 59 - 010 UDS» 7 58 • 011 LOS* e 57 - 012 R W* 9 56 - 013 DTACK-« 10 55 -014 B6* 11 54 -015 BGACK« 12 53 -vss BR4 13 52 - A23 Vdd- 14 51 - A22 CLK- 15 O 50 - A21 Vss- 16 o ^ 49 - Vdd HALT- 17 w O) 48 "A20 RESET- 18 IO 47 - A19 VMA- 19 46 -A18 E- 20 45 -A17 VPA- 21 u 44 -A16 BERRt 22 Z 43 -A15 iPL?-« 23 42 -A 14 IPL1 24 41 - A13 IPLO-» 25 40 - A12 FC 2* 26 39 . Ali FC 1 * 27 38 - AIO FCO« 28 37 - A9 A1- 29 36 - A 8 A2- 30 35 - A7 A3. 31 34 - A6 A4- 32 33 - A5 SLIKA 1 15 7 0 podatki ^naslovi sistemski uporabniški 15 13 10 8 iTl |S| |l2llN 1x|n|7 v|c| sledilni način nadzorno silanje prekinitve pogojno kodni biti naslovi razširjeni -negativni -n»č prekopa? Itev-prenos SLIKA 15 E~ üporabmslä sRläa. TazSlec ~ ~ j __ nadzorni _ ___J A7 sklad, kazalca MSB beseda 000000 zlog 000000 , zlog 000001 beseda 000002 zlog 000002_^ zlog 000003 MSB beseda 000004 LSB MSB dolga beseda LSB MSB naslov MSO BCDO BCD 4 BCD1 LSD BCD5 BCD2 BCD6 BCD3 BCD? programski števec beseda FFFFFF É sist. ; upor. ]! status SLIKA 4 SLIKA Podatkovni registri so 32- bitni in vsebujejo operande dolžine 1,' 8, 16 ali 32 bitov v spodnjem delu registra (odbita b o navzgor). Pri operacijah nad podatkovnimi registri se ustrezno spremeni le spodnji del registra, zgornji ni uporabljen. Naslovni registri podpirajo le 32- bitne naslovne operande in v operacijah nastopajo v celoti. Organizacija podatkov v pomnilniku upošteva zloge na viäjem raeatu v besedi s sodim naslovom, ki je enak ustrezni besedi v kateri se zlog nahaja. Ukazi in več zložni podatki so dostopni le na sodih naslovih. Uporabljeni podatkovni tipi so 1 bit, BCD, zlog, beseda in dolga beseda (slika 4). 3. 2 Sponke Procesor MC 68000 povezuje z zunanjostjo več skupin linij, ki jih prikazuje slika 1. Naslovno vodilo (Al - A 23) ima 23 enosmernih, tro -stanskih linij, ki lahko naslovijo 16 M zlogov (natančneje 16.777,216 zlogov), kar daje skupaj s krmilnikom pomnilnika dobro osnovo za neposredno izvajanje večjih modularnih programov. V prekinitvenem ciklu prikazujejo linije Al, A2 in A3 nivo prekinitve. Podatkovno vodilo (Do - D 15) prenaša besede ali zloge. V prekiilitvenem potredilnem ciklu vsebujejo linije D o - D 7 številko prekinitvenega vektorja. Asinhroni nadzor vodila omogoča 5 linij. Naslovni signal A3 (Address Strobe) določa veljavnost naslova na naslovnem vodilu. H/w določa smer podatkov - či-tanje/pioanje in vpliva na izbiro podatkov skupaj z linijama ÜB? in STO. Zgornji in spodnji podatkovni signal, UD3 in IdST (Upper and Lov/er Data Strobe) nadzira podatke na podatkovnem vodilu in izbira spodnji zlog, zgornji zlog ali oba zloga v besedi. Potrditev prenosa - DTACK (Data transfer Acknowledge) označuje konec prenosa podatkov. Dodeljevanje vodila (Bus Arbitration) rezličnim enotam na vodilu opravljajo tri linije. Zahteva vodila - In (Bua Request) sporoča procesorju, da želi neka druga enota na vodilu uporabljati vodilo za sebe. Potrditev vodila BG (Bus Grant) naznačuje sprostitev vodila ob koncu tekočega procesorjevega oikla. Potrditev prevzema vodila - BGACK (Bus Grant Acknowledge) označuje, da je neka druga enota na vodilu prevzela nadzor nad vodilom. Nadzor prekinitev (iPL o, IPL 1, IPL 2) so linije, ki označujejo zakodirani prednostni nivo enote, ki zahteva prekinitev. Prekinitvenih prednostnih nivojev je 8. NlSti ne predstavlja zahteve, sedmi je najvišji. Nadzor sistema so tri linije, ki procesor reaetirajo, ustavijo ali označijo napako na vodilu. Napaka na vodilu - BERR (Bus Error) je vhodni signal, ki prooe -aorju označuje napako v izvajanu trenutnega oikla, katere vzrok je lahko ; neaktivna enota na vodilu, ne-prečitan prekinitveni vektor, nepravilna zaliteva za dostop k pomnilniku ali druge napaJce odvisna od programa. Po sprejemu BERH signala procesor Izbira med prekinltveno rutino in ponovitvijo ciklusa na vodilu. Pri zaznavi dveh hkratnih napalt na vodilu se procesor postavi v Halt stanje. Reset - RESKT linija je dvo -smerna in resetira procesor, če je to vhod oziroma /reaetira zunanjo enote na vodilu, če je to izhod kot 'posledica ukaza RESET. Popolno resetiranje sistema se doseže s sočasnim zunanjim reset in halt signalom. Ustavitveni - HAM signal sproži uatavitev procesorja ob zaključku tekočega ciklusa in postavi tristanjske linije v stanje visoko impedence. Nadzor nad slnhronimi perifernimi enotami družine ĆB00 opravljajo tri linije. To so signal za aktiviranje E (Enable ),veljavni periferni naslov - VPA (Valid Peripheral Address), ki označuje enote družine 6800 in veljaven pomnil-nlški naslov - VMA (Valid Memory Address), kl označuje slnhronizirnnost procesorja. Status procesorja označujejo linije PC o, PC 1 in PC 2. Možna stanja so: uporabniSki podatki, uporabniški program, nadzorni podatki, nadzorni program in potrditev prekinitve. 4. STRUKTURA UKAZOV, NAČINI NASLAVLJANJA IN UKAZI 4. 1 Struktura ukazov Pred samo razlago načinov naslavljanja je potrebno podati tudi vsebino in format ukazov. Ukazi vsebujejo iiodatke o izvajanih funkcijah in o lokacijah oDuraiidov» Le te so podane na tri načine: ■ ■ . "H S podajanjem registra (Register Specification) kjer je številka registra podana v registrskem polju ukaza, z efektivnitii naslavljanjem (Effective-Address ) in implicitno (Xmplicid Reference) kjer že definicija ukaza določa uporabo registra. Pomnilniške operacije so deljene na programske kjer so izvajani programi in na podatkovne kjer so podatki - operandi. Ukazi so dolgi od ene do pet besed. Prva beseda -operacijska - definira operacijo in dolžino ukaza. Naslednje besede vsebujejo operande, ki so ali takojšnji (immediate) operandi ali pa odmiki od efektivnega naslova definiranega v operacijski besedi. Operacijska beseda vsebuje efektivni naslov sestavljen" iz treh bitov, ki definirajo način in iz treh bitov, ki definirajo register. 4. 2 Načini naslavljanja Štirinajst fleksibilnih načinov naslavljanja vsebuje šest osnovnih tipov, kot prikazuje slika 5. Mode Generation RcKr&lcr Direct Addressing Data RcKister Direct Address RtM^istiìr Uirect EA = Dn EA = An .:■ Absolute Data Addressing Alisolute Siluri Absolute l.un^'^ EA = (N'cxl Word) EA = (Next Two Words) Pro)-,rani Counter Rotative Addressing Relative Witti Olfset y (■(iri.'itive wilti intion anil Offset EA = (PC) t die EA = IPCI » (Xn) <■ dfl Register Indirect Addressing rteijister Indirect Poiiliiicmnionl He^islor Indirect t^riKleoOfiient fieyisti.'r Indtrecl Ui llistcl liKliiect Willi Olfset lliili'xeil Keijisti'i liulirect Willi Offset EA » (An) EA .'An). An—An ♦ N An- An - N, EA = (An). EA = (An)«di6 EA = (An) . (Xn) « dfl tniincdiale Data Addressing linniediale Ouit:k Immediate DATA = Next Word(s) Inherent Data Implied Addressing liiiplind Rei'.ister EA = SR. USP, SP. PC NOTES: tA = IiHf!Ctivo Atldii;^.s An ' Addie^s Rpjltslur Do = Outa Hcgistcir Xn = Addrebb or Dilla Register used as Index Roaisler SH = Status ReHisler PC = Program Counter de = Eietii hit Olfset (displacement) d)6 = Sixteen bit Offset (displacement) N = 1 for Byte. 2 for Words and 4 for Loiiß Wciids ( ) = Contents of - = Replaces SLIKA 5 Načini naslavljanja so razdeljeni na tri skupnine: 4. 2. 1 Registrsko neposredno naslavljanje, ki vključuje: ^ - podatkovne registre neposredno (Data Regi- ster Direct), kjer je operand v podatkovnem registru podanim z efektivnim naslovom.. - naslovne registre neposredno (Address Register Direct), kjer Je operand v naslovnem registru podanem z efektivnim naslovom^ 4, 2. 2 Pomnilniäko naslavljanje, ki vključuje: - naslovno posredno (Addreas Register Indirect) kjer je naslov operanda v naslovnem registru podanem v registrskem polju operacijske besede - naslovno posredno s postinkrementora (Add. Register Indirect With Postincrement), ki je enako prejšnjemu, le da se naslov operanda po uporabi poveča za ena, dva ali štiri glede na dolžino operanda - naslovno posredno s predekrementom (Add, Register Indirect With Predecrement), ki je enako prejšnjemu, le da se naslov operanda pred uporabo zmanjša za ena, dva ali štiri - naslovno posredno s premikom (Address Register Indirect V/ith displacement), ki potrebuje eno besedo razširitve - premik, katera ae prišteje k vrednosti naslova v naslovnem registru - naslovno posredno indeksno (Address Register Indirect With Indeks), ki potrebuje eno besedo razširitve, katera se prišteje k vsoti vrednosti naslovnega registra in indeksnoga registra. Vsota vseh treh je naslov operanda. 4. 2. 3 Pooobno naslavljanje, ki vključuje: - kratek naslov (Absolute Short Address), kjer je naslov operanda v razširitveni besedi - dolg naslov (Absolute Long Address), kjer je naslov operanda podan v dveh razširitvenih besedah - programski števec s premikom (Program Counter V/ith Displacement), kjer je naslov operanda vsota vrednosti v programskem števcu (to je naslov razširitvene besede) in vrednosti razširitvene besede - programski števec z indeksom (Program Counter With Indeks), kjer je naslov operanda vsota vrednosti v programskem števcu, razširitvene besede in indeksnega registra - Takojšnje (immediate Data), kjer je operand v eni ali dveh razširitvenih besedah za operacijsko besedo - pogojno kodno ali statusno (Conditin codes or Status Register), kjer vrsta ukazov vpliva na pogojno kodni in statusni register 4. 3 U k a z i Nabor ukazov procesorja MG 68000 (slika 6) je sestavljen iz množico osnovnih ukazov in podmnožice izpeljank iz teh. Večina ukazov, ki so bili načrtovani za delo z visokimi strukturiranimi programskimi jeziki, operira nad zlogi, besedami in dolgimi besedami in uporablja omenjene načine naslavljanja. Hjihova simetrična, mi-krokodirana struktura nudi pleksibilno osnovo za bodoči razvoj. Ukaze lahko glede na njihov pomen delimo na več skupin: - ukazi za premik podatkov (Data Movement) so osnova za premikanje (moVE) podatkov med pomnilnimi celicami, pomnilnikom in registri in za izpeljane, posebne ukaze (mOVEM, MOVEP, KXG, LEA, PEA, LIHG, UNLK, MOVEQ) - ukazi z celoštevilčno aritmetiko (integer Arithmetic Operations) vključuje osnovne operacije (ADD, sra, MUL, DIV, CMP, CLR in NEG) in Izpeljane ukaze za multipreoizljsko aritmetiko (ADDX, SUBX, EXT, NEGX) - logični ukazi (Logical Operations) vključujejo AHD, OH, EOR, NOT za vse velikosti operandov, tudi v takojšnjem (immediate) načinu - ukazi za pomike in rotiranja (Shift and Rotate Operations) so aritmetični (ASR, ASL) in logični (L3R, LSL) oziroma z razširitvijo (ROXR, ROXL) ali brez (ror, hol) - ukazi nad biti (Bit Manipulation Operations) so BTST, BSET, BCLR in DOHG - BCD operacije Omogočajo multiprecizjsko aritmetiko z ukazi ABCD, SBCD in NBCD - programski nadzor (Program Control Operations) je ustvarjen z vrsto pogojnih in nepogojnih skočnih ulcazov (BCC, DBCC, SCC, BRA, BSR, JMP, JSR, RT3, rtr) - sistemski nadzor (System Control Operations) je ustvarjen s perđnostnimi (Privileged) ukazi, zančniml (Trap) ukazi in statusnimi ukazi. To so RESET, RTE, STOP, ORI to SR, MOVE USP, AKDI to SR, EORI to SR, MOVE EA to SE, TRAP, TKAPV, C!DC. Mfiomonic Duscription AOCD Alki Decimili «villi Extend ADD Add ANO Logical And ASI. Arithmetic Shilt Left ASR Arithmetic Sliilt Riglit Ber, Bfaiicli Conditionally BCIIG Bit Test and Change BCLR Bit Test and Clear BKA Brandl Always ßSF.T Hit Test and Set BSR Branch to Subroutine BIST Git Test CHK Check Retiisler Af^aiiist Bounds CLR Clear Operand CMP Compare Dn,:c Tost Conti., Decrement and Branch DIVS SitinoO Divide DIVU Unsiiined Divide EOR Exclusive Or EXG E) (večji ali enak). Zapiši izraze: a0 do beg j.,P. i f Qdcl(n) then s i= s ♦ U n n d i v 2 endi 3 = 0 1 IFii3±va 2, Vzemimo naslednji program: program VERIGA(tnput)I var- k I i : i ntagar I TI array XI..1003 al 0..1001 biaii Lac. I 1= 1 La. lOO đa. readCTCtl)» raacKk)! whllB TCkDOO đfl. k I- TCk3 anä- PROGRAM VERIGA INTEGER K INTEGER TdOO) skupini čenih tekmovalci C 1 2 3 REA0<2il) T F0RMAT<20I3) READ(2i2) K F0RMAT(I3) IF SO TO 4 K » T STOP - END , Naptšt program, ki prebere podatke zgornjega programa VEBICA (vrednosti elementov tabele T, ki. so med O in 100 in začetni indeks). Program naj izpiše, ali se program VERIGA za prebrane podatke konča ali ne. PO PRVEM LETU POUKA RAČUNALNIŠTVA mesto št točk tekmovalec, šola Marjan SELJAK, I. gimnazija Ljubljana BeSigrad Ivan PEPELNJAK, I, gimnazija Ljubljana BeSigrad Dušan PONIKVAR, Elektrotehniška erednja Sola Ljubljana Nevenka PVSTAVRH, Gimnazija B, Ziherl Skofja Loka Igor Stems ERGER, Elektrotehniška srednja šola Ljubljana Branko DERNAČ, Šolski oenter - gimnazija BreSice Marjan MILI3, Gimnazija Koper Damjan ŠTRUCL, Gimnazija Ljubljana Šentvid Niko MOLE, I, gimnazija Ljubljana BeSigrad MatJaS KALUŽA, Gimnaaija M. ZidanSka Maribor PO DRUGEM LETU -.POUKA RAČUNALNIŠTVA mesto št točk tekmovalec, šola 1 97 Bojan CESTNIK, I. gimnazija Ljubljana BeSigrad 2 9 3 Uroš KUllAVER, I. gimnazija. Ljubljana BeSigrad 3 87 Andrej BRODNIK, I. gimnazija LJubljana BeSigrad 1 93 3 81 ! BS 4 93 6 82 e 80 ? 78 7 78 8 74 9 74 64 Anton VEiaOVSEK, I. gimnaaija Ljubljana Beiigrad Leon MATOH, Gimnazija Novo meato Marjan HORVATlC, Gimnattija Novo meato Govazd PLANINSie, I. gimnaaija Ljubljana BeSigrad Jana PADEÌNIK, Gimnaaija M. ZiđanSka Maribor Tomi DOLENC, I. gimnazija Ljubljana Beiigrad ..",0pouka raSunainiStva 4 86 4 as 4 as ? 75 8 72 9 70 program del i t e I j H var i I j < n id taai loiai 11 integerl begin readln(n)t mai01 mai 101 f or i I = 1 io. r» do begin d:= 21 Lsr, j«» 2 io I div 2 đfi. il <( mod J) = O then dl- d+tl il d > mai then begin ma« d» maiio i end end! wri t eln<'St evi to z najvefi ('fmaii3< ' > delitelj i je'iinaii>3) end . 1. a) Z enostavnim sledenjem algoritma ugotovimo, da dobi k Vrednost 4, ^ b) Algoritem se konSa, 5a je n oblike p (p na k), kajti le tedaj dobimo po nekaj aaporednih deljenjih nap kvoaient I, o) Očitno je k = log n = ln(n)/ln(p). P 2, Poatopek aapiSimo v pasoalu program v Iak1(out put)< vac. t idt I real? v : real) funct ion casi real» eiternall function vagoni booleani eiternaU begin {vlakl> repeat repeat unt i I vagon» t != casi repeat unt i I not vagon t v!= lQ/(oas-t)i repeat il vagon then faggi" repeat unt i I not. vagoni t : c as end unt i I cas-t > 601 ur ilelnCVlak je peljal s hitrostjo'. v:3:2. ' m/s') until false end (vlaki). 4. HeSitve ao na dlani a = b (a > b) and (b > a) a It b a > b a < b a i b not (b > a) or not (a > b) not (b > a) not (a > b) b > a 5, Program Ste je eniae i» dvojiSkem aapisu Števila n. NajmanjSi n a 10 enioami je oblike! n = - 1 = 1023 VI, ReSitve nalog aa uSenoe po. drMßM^laliLSJOMka. rsöMnalniAiva 1, program t est ver i ga(inputiout put)t const raai = 1001 var i I k i integer I ti array Cl..ma»3 of O. .nm t videl! array Cl.,mai3 al booleani begin 0) ajid nal v1dtlCk3 da. begin videlCk3:= truel ki» tCk3 endt il tCk3 = 0 then wri t e In('program VERIGA si kontfa*) else. wri t e In(■program VERIGA se nt konK«*) end (t est ver iga>. 3. Zapù3imo najonoetavnajSo reSitev (ki seveda nü dela prav učinkovito). Z bolj učinkovitimi fe Si tvarni je preoej več dela. C program delitelj i INTEGER I. J.NÌ0.MAXiMAXI,l2 READ <2il) N 1 F0RMAT(I3) MAX = O MAXI = Q DO it 1 » 1,N 0 = 2 12 = 1/2 DO 2 J = 2iI2 IF (1/J«J .Ea. 1) D = D+1 2 CONTINUE IF (D .LE. MAX) 60 TO 3 MAX = O MAXI = I 3 CONTINUE « CONTINUE URITE (3i5) MAXfMAXI 3 FORMATC STEVILO Z NAJVEB ('il3i • ) DELITELJl JE'iI^i) STOP ENO 6 7 S 9 program testverig» INTEGER T<100).IiK LOGICAL VIDEL(IOO) REAO (2il) T FORMAT (2013) READ (2<2) K FORMAT (13) 00 3 I = litOO VIOELCI) - .FALSE. CONTINUE IF ((T(K) .ES. Q) .OR. VIDEL(K)) GO TO 5 VIDEL(K) = .TRUE. K = T(K) • GO TO A CONTINUE IF (T repeat repe at until vagoni n:=a!l:=casi re£e_3l. i f vagon then begin n:= n + 1 ! repeat until not vagoni t ! = cđs end! dt := cas-t! il dt <0 then dt := dt + 2^,.0*3600.0 unt il dt > 60! ur i t e('Vlak ob 's'i trunoCl/60) mod 60 writelnCje imel'i n!3i ' until f alse end . truno(t/3600) : 2i i2) ! vagonov' t: o " 51 stkozarcev = nI type kozarec = 1.. s t k oz arcev ! problem = array Ckozarec3 of record volumeni polnosti real end i procedure, prelij (var kozarci» problem! t•j' kozarec) I var. razi ika! real ! beg i n razlikai» kozaro i C j 3.volumen - . , , ., ^ , KozarciCj].polnost i il razlika >= koz arci U 3.po I nos t then bealo. - kozarcirj3.polnost:=. koz arc i C j 3 .po I nost + •«ozarc iC i D.polnost I kozare iC13.polnost 1= O end else begin kozarciCi3.polnost 1= kozare i C i 3.po Inost -. razlika» kozarci C j 3.polnost:= k oz arci C i 3.voI umen end end! 3. viator! program max = 1980! v^ ti array Cl..raa«3 oX integer! nikiisinteger! begin r e ad I n ( n ) ! f or i : = 1 t.o n do rBadln0 do begi n writeln(k)! i != k ! k := tCk3i tCi3 := O end end . C program viator INTEGER T( 1980) ,N.KiI READ (2.1) N 1 FOiiMATd'.) READ (2.2) (K.T(K)i I = liN) 2 F0nMATC21'») K = 1 3 IF (TPOLN(n) SUBROUTINE PREL1J(VOL■POLN.11J) prelijemo vsebino kozarca i v REAL RAZ RAZ = VOL(J) - POLN POLEMIKA O R ACUNALN ISTVU IN INFORMATI KI ČEMU TOLIKŠNA BIROKRATIZACIJA? P. Žerdin, Ljubljana Upravičeno, pa tudi neupravičeno se Jezimo nad vedno večjo birokratizacijo naše družbe. Razvoj medsebojnih odnosov postaja vedno bolj kompleksen, zato Je povečanje birokracije do neke mere povsem smotrno, vendar ne kakršnekoli. Potrebujemo bolj šolano in bolje opremljeno birokracijo, ki bo zmogla današnje ini jutrišnje zahteve naše samoupravne družbe. V zadnjem času se vse več ljudi spotika nad naraščanjem birokracije v naši družbi. To postaja tema dneva. Neki karikaturist si predstavlja našega Guliverja kot lepo rejenega in mogočnega birokrata, ki leži na soncu, od daleč ga pa hodijo gledat pridni delavci. Meni se zdi resnica malo drugačna. Odkar smo izredno pomembne odločitve v gospodarstvu prenesli spet na birokracijo, se po raznih SIS in še kje kakšen birokrat (ali birokratinja) trudi, da bi po svojih najboljših močeh rešil izredno eapleteno probleme. Dostikrat mu (Ji) namreč neprofesionalni predsednik ustrezne komisije po dolgem sestanku le površno naroči, kaj Je treba storiti glede na sprejete sklepe. Čez kakšen dan, ko Je delo v polnem teku, pride za to področje odgovorni profesionalni delavec in zahteva povsem drugo smer obdelave problema, ker da so se na ponovnem sestanku dokončno drugače sporazumeli. Dokler Je šlo pri takem "dogovarjanju" le za kakšna gradbena dovoljenja individualnih graditeljev, družbe kot celote ni dosti prizadelo. Toda trenutno gre za veliko več. Takorekoč čez noč zahtevamo od istih ljudi povsem drugačen in veliko bolj učinkovit način dela, čeprav Jih ni nihče na to pripravil. Pri tem nam sploh ne bi zadoščalo, četudi bi postali ti delavci 10 ali 20% produktivnejši,ker problemi, ki naj bi Jih reševali, rastejo tako hitro, da njihovo rast lahko merimo le s faktorji. Problem Je torej veliko hujši. Naša samoupravna demokracija omogoča, da smo netolerantni eden do drugega, da vidimo le svoje probleme, namesto da bi se poglabljali tudi v probleme drugih in tako skušali priti do najustreznejše rešitve. Mi pa skušamo drug drugega prepričati o svojem prav, ker smo bolj pametni kot nasprotna stran ali bolj ugledni ali zastopamo to in to nerazvito področje itn. Neracionalnim utemeljitvam ni ne konca ne kraja. Ali se potem še lahko čudimo neučinkovitosti naše administracije. Prav poučen primer se Je zgodil pred kratkim, ko Je zvezna skupščina pokarala zvezni izvršni svet, ker ni pripravil ocene koliko deviz smo prihranili, odkM se dva dni v tednu ne vozimo. Toda predstavnik zveznega izvršnega sveta ne more nič drugega storiti kot prositi za podatke predstavnike republiških in pokrajinskih izvršnih svetov, ti pa morajo spet prositi ali zahtevati podatke od nekoga drugega. Možnosti Je več kot preveč, da se tokokrog pri iskanju podatkov, ki praviloma niso eksaktni, nekje pretrga, četudi zahtevamo take podatke predčasno,.ne pa vkonkretnem primeru, ko Je že sama zahteva bila poslana prepozno. Če bi se nam kaj takega zgodilo v šolstvu, bi gotovo zahtevali Se eno reformo, četudi bi prejšnjo komaj končali. Pri administraciji se zadovoljimo z Javnimi opomini. Toda to Je premalo. Potrebno Je dejansko spremeniti način dela in način miselnosti. Take spremembe niso možne čez noč, še zlasti, ker moramo vpeljati nova orodja - računalnike. Dosedanje izkušnje kažejo, da ob uvajanju računalništva iz raznoraznih razlogov zsnemarjamo predvsem področje izobraževanja širokega kroga tako neposrednih kot tudi posrednih uporabnikov. Če bomo hoteli torej izboljšati učinkovitost administracije na vseh nivojih, bo potrebno šolati poleg tistih delavcev, ki bodo neposredno pripravljali podatke za računalnike, tudi vse voljene in druge funkcionarje in to od občine preko republike do federacije. Sicer ne bo izobraženih uporabnikov rezultatov, pa tudi nihče ne bo vedel naročiti kaj dejansko rabi. Bliža se čas, ko bomo morali dojeti, da je ažui'na, adekvatna in popolna informacija toliko vredna kot kakršenkoli drugi vir, n.pr. denar, strojne kapacitete ali delavci. Življenje pričakuje od nas takšno spoznanje že danes. Zaradi pomanjkljivih informacij poteka samoupravno dogovarjanje pri nas, vključno z dogovarjanjem na nivoju federacije, prepočasi. To pa nas vrača nazaj v kremplje birokracije. Začeti bo treba z vsem tistim delom tudi v upravi, ki ga že bolj ali manj uspešno izvaja združeno delo na področju uvajanja računalništva. Nič več le globokih in lepih misli o računalniško podprtih informacijskih sistemih v,upravi, ampak trdo in načrtno delo, ki bo začelo čimprej dajati prve sadove, v začetku zelo skromne, nato pa vedno večje. Večina republik in pokrajin se je prikopala do kakšne strokovne institucije na področju informatike, saj je celo nam v Sloveniji uspelo ustanoviti Center za informacijski sistem v upravi, ki smo ga dolgo in željno pričakovali. Se nekaj krepkih dogovorov na nivoju federacije, kako si izmenjavati informacije med seboj, kakšnim standardnim proceduram bo morala zadoščati informacija, da bo izmenljiva v vertikalni in horizontalni smeri in delo lahko steče. Zanimivo bi bilo izvedeti koliko smo mi investirali v obdelovalce podatkov, ki jih ponavadi zmerjamo z birokrati. V razvitih deželah ugotavljajo, da je višina naložb v gospodarstvo okrog 25-krat večja na posameznega delavca kot v negospodarstvo. Pri nas to razmerje ne more biti tako drastično veliko zaradi znatnega vlaganja v negospodarstvo, vendar še vedno dovolj veliko. Potrebno bo načrtno vlaganje v delovne pripomočke obdelovalcev podatkov, da bomo lahko • upravičeno pričakovali znatni dvig produktivnosti. Sem ne sodijo samo majhni, srednji, veliki in zelo veliki računalniki kot jih pogosto poimenujejo. Sem sodijo tudi tekstovni procesorji, sem sodi avtomatizacija pisarn, predvsem pa sodi sem možnost medsebojnega povezovanja vseh teh naprav. Ta povezava je tehnološko že izvedljiva, saj imamo že tudi pri nas več načrtovanih računalniških mrež. Hujši problem predstavlja ustrezno vsebinsko povezovanje. Če imamo na voljo računalnik, bi si želeli, da bi pri pisanju tekstov poklicali le določen program, ki bi izdelal na razpoložljivem računalniku določene kvantifikatorje in jih vgradil v tekst. Tako bi si zagotovili pravo, enkratno in popolno informacijo. Podobno naj bi imel pisarniški avtomat pri poslovodnem odboru doseg do zgoščenih in ažurnih informacij, ki bi jih lahko sproti posredoval članom odbora. Tak pisarniški avtomat bo imel še kopico drugih nalog kot je zbiranje telefonskih pogovorov, zbiranje poročil iz drugih sektorjev ali delavcev, pripravljanje terminskih planov, vključevanje in sodelovanje pri telekonferencah, če naštejemo nekatere. Če si kritiki zelè takšne "birokracije", ki bo zmogla zadostiti tem skiciranim današnjim in jutrišnjim potrebam, je kritika upravičena. Nesposobne in premalo izobražene birokracije imamo res preveč, čeprav bi morali kje in kdaj tudi premisliti, zakaj je do tega prišlo. Zavedati se moramo, da se bomo z razvojem birokratizirali, ker bomo potrebovali vedno več ustreznih informacij. V razvitih družbah se približuje število obdelovalcev podatkov in informacij že polovici vseh zaposlenih. Pri nas se bližamo nekako 40^ vseh zaposlenih. Spoznati pa moramo, da lahko na tem področju dvignemo produktivnost dela le, če začnemo intenzivno vključevati računalnike in znanje, sicer bomo kmalu imeli procentualno več birokracije kot kjerkoli drugje, vendar bo vseeno povsem neučinkovita. Torej postavimo racionalne in sodobne zahteve po modernizaciji vsega našega negospodarstva tudi v srednjeročni plan. Začnimo z modernizacijo danes, ne jutri. Ne pozabimo, da nam nesposobna birokracija povzroča ogromno škodo, ki jo le stežka nadoknadimo. Slovensko društvo Informatika .jubljana Ljubljana, 16.5.1980 Zapisnik seje 10 SDL z dne 9.5.1980 Prisotni: S.Divjak, R.Faleskini, J.Grad, B.Horvat, A.Jerman-Blažič, F.Mandelc, M.Mekinda, M.špegel, A.P.Železnikar in F.Žerdin. Dnevni red: 1) Potrditev in pregled zapisnika zadnje seje (28.3.1980) 2) Predlog organizacije simpozija Informatica 80 3) Razno Ad 1) Sklepi iz zapisnika zadnje seje (28.3.1980) so bili izvršeni z izjemo sklica Založniškega sveta časopisa Informatica-. IO sdì je potrdil zapisnik. Ad 2) Institut Jožef Stefan je predložil pogodbo za organizacijo simpozija Informatica 80. Pripombe na pogodbo je pripravil predsednik 10 SDI, tov. M.špegel pa je obrazložil pogodbo s strani predlagatelja (IJS). V izčrpni razpravi so sodelovali vsi prisotni. 10 SDI je izglasoval tale sklep: Simpozij Informatica 80 ne bo organiziran. SDI objavi ta sklep v republiških in pokrajinskih dnevnih časopisih s pojasnilom, da se SDI pridružuje ustalitvenim ukrepom, vendar bo simpozij Informatica 81 organiziran na Bledu. Potencialni avtorji lahko pošljejo svoje prispevke za objavo v časopisu Informatica, ki bo v te namene posebej razširjen. Ad 3) Za pridobitev prostorov GDI in nastavitev tajnice je imenovana komisija v sestavi R.Faleskini, A.Jerman-Blažič, A.P.železnikar in F.Žerdin. Naloga komisije je, da predloži do naslednje seje 10 SDI konkretno obliko pridobitve prostorov in pripravi razpis za tajnico SDI, takoj ko bodo zagotovljeni osnovni pogoji za njeno delo. Tov. A.Jerman-Blažič je zagotovil, da bo pridobil mlajšega sodelavca za opravljanje naloge sekretarja SDI. Zapisnikar: A.P.Železnikar OBVESTILO NAROČNIKOM Cenjene naročnike olivesčamo, cl.-i se je z letnikom 1980 povišal,i naročninn (delovne organizacije 35o,oo din, posamezniki 12o,oodin) UREDNIŠTVO Iskra ZA VEČJO PRODUKTIVNOST ISKRADATA računalnik C 18 ISKRADATA mikroračunalnik 1680 Področje uporabe: avtomatska obdelava podatkov spremljanje proizvodnje vnos podatkov prenos podatkov kmniljenje procesov grafične aplikacije meritve raziskave izobraževanje spremljanje rezultatov športnih tekmovanj novice in zanimivosti RADIO SHACK V LETU 1979 ************************* ******************************* STROKOVNI SESTANEK: MIKROPROCESORSKI RAČUNALNIKI ******************************* Zavod za elektroniko Elektrotehnične fakultete v Zagrebu naj bi organiziral ta strokovni sestanek 24. in 25. septembra 1980, Se bo zanj dovolj veliko zanimanje. Teme zasedanj tega sestanka pa naj bi bile: arhitektura in organizacija mikroprocesorjev, zbirni sistem in periferija, sistemska programska oprema ter aplikativna programska oprema. Pojasnila daje mr. B. Kette, Elektrotehnički fakultet, Unska ulica 17/XI, 41000 Zagreb. Kotizacija 2500.- din. A.P.Železnikar *********************************** PREČNA PROGRAMSKA OPREMA ZA Z8000 *********************************** Programsko opremo za 16-bitnl mikroprocesor Z8000 lahko razvijamo z domačim miniračunalnikom Delta, če uporabimo prečno programsko opremo, ki vsebuje prevajalnik za programirni jezik C, kodni optimizator za ta prevajalnik, zbirnik za Z8000, povezovalnik in nalagalnik. Naslov proizvajalca te programske opreme je: Zilog (UK) Ltd, Babbage House, King St, Maidenhead, Berks SL6 IDU, England. A.P.Železnikar ISKRA NA HANNOVERSKE,^ SEJMU Med drugim je Iskra na hannoverskem prikazala tudi dva svoja nova m sistema, in sicer iskradata ____ Entry System ter Iskra Microcomputer Development System. Oba navedena sistema sta plod domačega razvoja, oblikovanja in proizvodnje. radata 1680-, sejmu ška a ********************** RAZLIČNE ZANIMIVOSTI ********************** Shugarf napoveduje proizvodnjo novih minigibklh diskov za 500K zlogov, z oznako SA450. Pri tem uporablja glavi podjetja Tandom Magnetics Corp, ... Dataland iz Danske uvaja računalniški sistem, ki pretvori skladateljevo glazbo v tiskano partituro. Uporablja posebno tastaturo, ki omogoča, da se vneSeni zvoki pretvarjajo v note. Računalnik obdela vhod in poälje izhod na digitalni risalnik, ki izplSe partituro. ... Intel proizvaja l6-bltne mikroprocesorje 8086, ki imajo taktno hitrost 8 MHz. PrejSnja največja hitrost teh procesorjev' je bila le 5 MHz. ... Ameriško ministrstvo za obrambo napoveduje povečanje stroškov Izdelave programske opreme iz sedanjih. 40 dolarjev na vrstico na 65 dolarjev na vrstico v letu 1984. Tako bo Izdelava programske opreme zajela že 8% celotnega proračuna v vojne nameone ZDA in se bo. povzpela iz 6,6 milijard dolarjev v letu 1979 na 10,5 milijard dolarjev v letu 1984. .. Motorola je uvedla optolzolatorje za 7,5 kV. Radio Shack je v preteklem letu prodal v svojih trgovinah za 100 milijonov dolarjev mikroračunalnikov. Od tega je bilo 150.000 računalnikov TRS-80. Izvedenci ocenjujejo, da ,ima Radio Shack 30% tržišča osebnih računalnikov, vendar se je pri modelu TRS-80 že pokazalo določeno zasičenje tržišča. V preteklem letu je začel Radio Shack dobavljati TRS-80 Model II in je prodal 1000 teh sistemov. V letu 1980 se bo to število povzpelo na 15.000. Radio Shack bo uvedel tudi barvni prikazovalnik za sisteme TRS-00 in tako povečal tržno zanimivost masovnega izdelka TRS-80. A.P.Železnikar ******************** EPROM ZA 64K BITOV ******************** Motorola je začela deliti vzorce za EPROMe za 64K bitov, ki imajo organizacijo 8K zlogov. Prodaja naj bi stekla v začetku drugega polletja. Vezje ima 24 nožic. Intel in TI bosta izdelovala podobno vezje z 28 nožicami. Medtem je padla cena za klasične EPROMe 2708 že Povpraševanje po EPROMih izredno in njihova cena še ($ 20 do 24). TI je proizvajalec EPROMov ter Intel 29%, Fujitsu in tudi pod 6 dolarjev. 2716 je še vedno vedno dokaj visoka trenutno največji pokriva 38% tržišča, Hitachi pa'vsak po 8%. A.P.Železnikar *********************** VELIKA POMNILNA VEZJA *********************** Japonski proizvajalci napovedujejo nova velika polprevodniška pomnilna vezja, ki so vzbudila pozornost tudi ' pri ameriških inženirjih. Američani očitajo Japoncem, da so 64k-bitna vezja pravzaprav njihova» to naj bi veljalo za dinamične pomnilnike tipa RAM. Matsushita pa je napovedala 64k statični RAM in NTT Musashino 256k dinamični RAM, NEC-Toshiba 256k dinamični RAM, ki se prilega v podnožji za 16k in 64k dinamični RAM s 16 nožicami, Hitachi napoveduje 5V 64k dinamični in 16k statični RAM 2 uporabo HCMOS tehnologije. Če se bodo te napovedi uresničile, bodo Japonci zares postali pomnllniška velesila ter bodo vsaj za nekaj časa prehiteli Američane. A.P.železnikar *********************** PAKETNO PREKLAPLJANJE *********************** Western Digital dobavlja nov krmilnik za paketno preklapljanje, z oznako 2501, ki je namenjen za HDLC (High-level Data Link Control) paketno preklapljanje v računalniških In podatkovnih mrežah. Vezje ima 48 nožic in zmore celoten CCITT X.25 protokol in povezavo z navadnim B-bitnim mikroprocesorjem. Vezje realizira celotno HDLC mehaniko. Po ukazu iz gostiteljskega mikroprocesorja generira podatkovne zastavice, naslovna polja in krmilna polja. Ima tudi direkten dostop do podatkov v pomnilniku ter pošilja podatke z DMA načinom. Končno generira Se korekcijski, 16-bitni preizkusni karakter ter ga pripne k oddanemu podatkovnemu toku in konča paket. Prenosne hitrosti so 1 Mbit/s ali več» cena za OEM koliSine (vsaj 100 kosov) je g Vezje 2511 pa bo podpiralo izravnalnem načinu. 200 ali manj. HDLC protokol v A.P.železnikar ******************************** MIKRORAČUNALNIKI V PRIHODNOSTI ******************************** Tržišče ■ mikroračunalnikov in mikroprocesorjev bo iz 1 milijarde dolarjev letos naraslo na 6 milijard dolarjev v letu 1985. Tehnologija in uporaba napredujeta na tem področju še vedno prehitro, da bi bilo moč razviti smiselne ocene. Mikroračunalniki postajajo vsebolj računalniki v enem integriranem vezju. V ZDA imamo več kot 25 proizvajalcev mikroprocesorjev, 15 izmed njih proizvaja mikroračunalnike v enem vezju. Najenostavnejši mikroračunalniki imajo ceno pod 3 dolarji in se uporabljajo kot krmilniki v mikrovalovnih pečeh, v igrah, v avtomobilih in drygje. Večji in sposobnejši procesorji se uporabljajo v blagajnah, procesni Instrumentaciji, pri zbiranju podatkov itn. 8-bitni procesorji so v terminalih, v napravah za procesiranje 'tekstov, obračunavanje, v osebnih računalnikih in v majhnih poslovnih sistemih. 16-bitni mikroprocesorji predstavljajo višjo stopnjo in najdemo jih v inteligenčnih terminalih in v miniračunalnikih. Kmalu se bodo pojavili še mikroračunalniki za krmiljenje vodil, ki bodo dovolj hitri. Tem se bodo pridružili t.i. vodilnousmerjeni mikroračunalniki, kj. bodo lahko specializirali vsebovano arhitekturo . tudi v centralnem procesorju. To bodo dodatki k obstoječim 16-bitnim mikroprocesorjem. Pojavili se bodo tudi analogni mikroračunalniki za procese v realnem času. Posebni mikroračunalniki bodo t.i. sistemi v enem vezju za potrebe krmiljenja okolice, v telekomunikacijah in v osebnih računalnikih. Od 11 milijonov naprav letos bo proizvodnja narasla na 118 kosov v letu 1985. Povečala se bo znatno ■ tudi hitrost mikroprocesorjev itn. itn. A.P.Železnikar ********************** LISP ZA Z-80 SISTEME ********************** LISP Company je napovedala različico ježika LISP za Z-80. Ta različica z oznako TLC-LISP omogoča manipulacijo funkcij kot podatkovnih objektov, objektno usmerjeni programirni stil, definira funkcije s spremenljivim številom parametrov, vsebuje mehanizme za strukturirano iteracijo in nestrukturirane izstope, vsebuje procesiranje nizov in karakterjev ter fiksno in plavajočo aritmetiko. Jezikovni sistem vsebuje še tabelnoupravljani razpoznavnik, krmiljenje pri napakah in samodejno nalaganje, ki "virtualizira" redko uporabljane funkcije in konstante k diskovnim zbirkam in tako sprošča programirni pomnilnik. TLC-LISP je prirejen za Z-80 CP/M sistem, cena je 150 dolarjev. Naslov proizvajalca: LISP Co.,POB 487, Radwood Estates, CA 95044. A.P.Železnikar ****************************** GIBKI DISK ZA ČIŠČENJE GLAVE ****************************** Na tržišču se je pojavil bistveni element za sisteme z gibkimi diski, in sicer disk, ki očisti glavo. Uporaba takega diska ne povzroči obrabe glave in ji zagotavlja čistost v okviru industrijskih standardov za magnetne medije. Disk vstavimo v pogon ter pritisnemo nanj v obratovanju glavo za 30 sekund. Praviloma opravimo ta postopek vsak dan kot zaščito proti oksidaciji glave. Čistilni diski so 5-1/4 in 8 eolski in cena posamičnega diska je 20 dolarjev ali 45 dolarjev za tri diske. Pri vsakodnevnem čiščenju je disk uporaben tri mesece. Na.slov proizvajalca; Lifeboat Associates, 2248 Broadway, New York, NY 10024. A.P.Železnikar ***************************** MICROSYSTEMS - NOVI ČASOPIS ***************************** ************************* RAČUNALNIŠKO STAVLJENJE ************************* Donald Knuth, avtor znane zbirke The Art of Computer Programming, je napisal delo TEX and METAFONT, New Directions in Typesetting, ki opisuje novo metodo stavljenja tekstov. Knuth pojasnjuje, kako jé moč TEX, ki je bil prvotno razvit za stavljenje matematičnih in tehniških tekstov, uporabiti za računalniško stavljenje. METAFONT pa je sistem za oblikovanje abeced, ki je primeren za realizacijo na napravah s sistemom rasterja, ki tekst tiskajo ali prikazujejo. S tem sistemom lahko računalniki oblikujejo nove oblike karakterjev praktično takoj. TEX in METAFONT predstavljata izboljšavo stavljenja, ki bo lahko bistvena za stavljenja znanstvenih in tehniških tekstov. Knjiga je sestavljena iz treh' delov. Prvi del opisuje matematično tipografijo. Ostala dva dela opisujeta TEX in METAFONT. Cena knjige je 12 dolarjev in jo je moč naročiti pri Dept TM:X, Digital Press, Educational Services, Digital Equipment Corp., 12-A Esquire Rd., N. Billerica, MA 01862. A.P.Železnikar S-100 Microsystems je nov časopis za uporabnike mikroračunalniških sistemov z vodilom S-100. Vsebina tega časopisa naj bi obravnavala problematiko povezave na vodilo S-100, operacijski sistem CP/M, jezik Pascal, programsko opremo v zvezi z zbirniki ter v jezikih FORTRAN, BASIC itn. Časopis bo pokrival tudi problematiko 16-bitnih mikroprocesorjev, multiprocesorjev, paralelnega procesiranja, časovnega razdeljevanja, procesiranja tekstov, razvoja sistemov, upravljanja podatkovnih baz ter , uporabe v znanosti in drugje. Problematika časopisa bo vezana na S-100 sisteme, kot so npr. Cromemco, North Star, Intersystems, IMSAI, Poly Morphics, Processor Technology (Sol), Xitan in drugi. Urednik časopisa S-100 Microsystems je Sol Libes, ki je napisal 13 knjig in vrsto člankov v različnih časopisih. Je predsednik največje organizacije za osebne računalnike, to je Amateur Computer Group v New Jerseyu. Prva številka S-100 Microsystems prinaša celoten S-100 standard (IEEE), uvod v sistem CP/M, modifikacijo videoplošče za pascalske urejevalne funkcije, inverzni zbirnik za 8080A itn. Časopis bo izhajal šestkrat letno, cena posamezne številke pa je 2 dolarja. Naslov časopisa; S-100 Microsystems, POB 1192, Mountainside, NJ 07092. A.P. Železni]^r OASIS, OPERACIJSKI SISTEM ZA 2-80 **************************** OASIS (Online Application System Interactive Software) je operacijski sistem, ki je za razliko od sistema CP/M napisan za procesor z-80 (sistem CP/M je napisan za procesor 8080A). Ta operacijski sistem omogača uporabo zbirk tipa ISAM, neizmenljivih in gibkih diskov, prevajalnika za jezik BASIC itn. ter naredi iz mikroračunalnika napravo, ki se lahko meri z miniračunalnikom. OASIS je integriran z drugimi programskimi proizvodi do večuporabniškega sistema. Njegove glavne lastnosti so: sistem za enega ali več uporabnikov, obračunavanje uporabnikov, multiprocesiranje, varnost zbirk in zapisov, gesla in dodatna zaščita, tipkane (ISAM), direktne in zaporedna zbirke, izčrpna dokumentacija za prilagoditev itn. Cena sistema OASIS za enega uporabnika je 150 dolarjev in za prevajalnik jezika BASIC 100 dolarjev. Za sistem z več uporabniki sta ti dve ceni 250 in 145 dolarjev. Sestavni deli sistema OASIS pa so tile: makrojski premeščevalni zbirnik, iskalnik napak, povezovalnik, urejevalnik, izhodni oblikovalnik teksta, paralelno izvajanja uporabniškega programa in tiskanje izhoda (spooler), komunikacijski paket, sortiranje, diagnostika in vzdrževanje, interaktivni jezik EXEC tar prevajalnik BASIC s ponovnim vstopom. K temu ]e moč dodati še prevajalnika za FORTRAN in COBOL (74 ANSI). Naslov proizvajalca: Phase One Systems, Inc., 7700 Edgewater Dr., Suite 710, Oakland, CA 94621. fnOGRAMM£ftS;uS£RS A B C D Emm INTI AS5I0NUTTACM KVOflD PROCESSOR SENOIRECEIVE ERA&EIRENAME BASIC COMPILER < —... J A.P.Železnikar OPE RATINO SYSTEM NUCLEUS HOOT KEVBOAHO DEVICE HANDLERS | INITIALISE DISKS FILE MANAGEMENT 4 PARALLEL t SERIAL I/O MACRO ASSEMBLER LINKINO LOADER PRINT SPOOLER REPORT GENERATOR EKECLANGUAGE USER APPLICATION PROGRAMS A B C D OPERATORS ************************************* INFORMATICA V REFERATIVNIH ŽURNALIH ************************************* Inštitut za znastvene informacije Akademije znanosti ZSSR (VINITI) izdaja 25 serij Referativnih žurnalov z osnovnih področij znanosti in tehnike. Za te prikaze sprejema 25000 znanstvenih in strokovnih časopisov iz 130 držav in njegov namen je polna in ažurna informacija o novejših dosežkih -znanosti in tehnike. V zvezi s tem svojim poslanstvom se je sovjetski inštitut obrnil na uredništvo našega časopisa Informatica, da redno pošilja po en izvod časopisa v Moskvo. Uredništvo se je z veseljem odzvalo tej prošnji, saj bodo avtorji člankov našega časopisa deležni odslej tudi te mednarodne pozornosti, seveda le, če bodo njihovi prispevki dovolj kvalitetni in zanimivi. Na ta način bo Informatica dosegla tudi določeno popularnost v mednarodnih strokovnih krogih. A.P.Železnikar ********************************* MEDNARODNA KONFERENCA ZA UMETNO INTELIGENCO IN ROBOTIKO ********************************* Mednarodna konferenca Artificial Intelligence and Information - Control Sysytems of Robots se je odvijala na gradu Smolenice blizu Bratislave od 30.6.' do 4.7.1980. V mednarodnem programskem odboru je sodeloval tudi A.P.Železnikar, vrsta jugoslovanskih avtorjev pa je prikazala svoje referate. V okviru sekcije za teoretične probleme umetne inteligence je naš prispevek prikazal V.P.Masnikosa: Proof of Realizability of Artificial Intelligence (Beograd), M. Kantardžić: The Protection of Data Bases from the User"s Generating of Forbidden Information (Sarajevo) v sekciji za komuniciranje z računalniki v naravnih jezikih, ostali referati pa so bili še J.Lenarčič, P.Oblak, V.Stanič: Optimization of Nominal Robot Trajectories (Ljubljana), V.Potkonjak, M.Vukobratovid: Contribution to the Computer-Aided Design of Industriai Manipulators (Beograd), M.Špegel, F.Dacar: Model-Based Programming of Arc Welding Robots (Ljubljana) in P.Tancig: A LISP Data Base Management System for AI Projects (Ljubljana). A.P.Železnikar **************************** KRITIČNA PRENOSNIŠKA VEZJA **************************** Oktalno prenosniško integrirano vezje 74LS245 postaja vsled svojega pomanjkanja na tržišču vse dražje. To vezje je uporabno tam, kjer je potrebno priključiti več digitalnih naprav na eno vodilo. Vsaka taka naprava ima svoj naslov in zahteva svoj prenosnik. Vezje 74LS245 zmore seveda tri stanja - nič, ena in plavajoče stanje. . Poraba teh vezij je velika zlasti v procesnem krmiljenju in v podatkovnih sistemih z več terminali. Proizvajalci tega vezja ga prodajajo za 1,50 dolarja, toda zaradi pomanjkanja vezja, dosega njegova cena tudi vrednost 9 dolarjev. Največji proizvajalec teh vezij je Texas Instruments, za njim pa so National Semiconductors, Motorola, Fairchlld in drugi. Namesto tega vezja se vgrajuje kombinacija oddajnega in sprejemnega vezja, da se tako nadomesti prenosnik. ************************ IZPOPOLNJENI TERMINALI ************************ Predelava starih terminalov v izpopolnjene lahko pomeni znatno novo tržišče, saj je samo v ZDA milijon starih terminalov in 350 tisoč teleprinterjev. Nekatera podjetja v ZDA so poslala na tržišče izboljševalne sestavljenke, ki omogočajo urejevanje tekstov in njihovo shranjevanje. Te sestavljenke imajo pomnilniške vmesnike za 16k zlogov in lahko pošiljajo snope podatkov v komunikacijski kanal s hitrostjo 1200 zlogov na sekundo ali desetkrat hitreje kot normalni' terminali. S tem se zmanjšajo pristojbine za uporabo linije. Majhne mikroprocesorske sestavljenke se vgrajujejo v obstoječe terminale in pod okrove teleprinterjev, sprejemajo enozložne krmilne ukaze, njihova cena pa je do 300 dolarjev. A.P.Železnikar ********************* PREVAJALNIK PL/I-80 ********************* Podjetje Digital Research je začelo dobavljati prevajalnik PL/I-80 in podporno programsko opremo, ki ju je razvijalo dve leti. Jezik PL/I-80 je podjezik jezika PL/I in ustreza priporočilu ANSI za podjezik G, ki je definiran za mikroračunalniške sisteme. Ta prevajalnik se - izvaja pod operacijskima sistemoma CP/M ali MP/M, ki sta standardna operacijska sistema za mikroračunalnike s procesorji 8080A, 8085 in Z80. PL/I-80 uporablja standardne podatkovne tipe: osem- in šestnajstbitna cela števila s predznakom, decimalna števila s 15 številkami za poslovne izračune, nize karakterjev za procesiranje tekstov, binarna števila s plavajočo vejico za znastveno uporabo, nadalje nize bitov, kazalčne spremenljivke ter vstopne in zbirčne podatkovne tipe. Nad temi tipi se uporabljajo matematični, nizni in krmilni operatorji, zbirčni sistem omogoča aparaturno neodvisen dostop do zbirk v sekvenčnl ali naključni obliki (v povezavi s CP/M). Programski paket PL/I-80 je zaokrožen sistem, ki vsebuje prevajalnik, premeščevalni makrózbirnik RMAC, povezovalni urejevalnik LINK-80, knjižnjičarja LIB-80 in subrutinsko knjižnjico. Vključeni so tudi nekateri PL/I programi v izvirni obliki, ki rabijo kot pomoč pri zagonu sistema. Ti programi segajo od enostavnega kopirnega programa za kopiranje zbirk do zapletenega šahovskega programa. Dokumentacijo sestavljajo: PL/I-80 Reference Manual, PL/I-80 Applications Guide, LINK-80 Operators Manual. ■ Prevajalnik za PL/I-80 je triprehoden, z optimizacijo koda in potrebuje 38k zlogov pomnilnika za izvajanje, deluje pa lagodno pri 48k CP/M ali 64k MP/M. Programi se prevedejo neposredno v premestljivi strojni kod, se povežejo s subrutinami ali drugimi moduli z uporabo paketa link-80. Ta paket piše tudi simbolno tabelo, ki je uporabna v povezavi s SID (že opisano v prejšnji številki Informatice) ali s simboličnim popravijalnikom napak. Dobljeni programi so v razponu od 800 zlogov do polnega obsega konkretnega računalniškega sistema. Cena prevajalnika je 500 dolarjev in dobava je na 8" disketi. ****************** JOSEPHSONOV SPOJ ****************** Supraprevodnost je lastnost nekaterih snpvi, da zgubijo upornost za električni tok pri ekstremno nizkih temperaturah in je bila odkrita že leta 1911. Josephsonov efekt je pojav supraprevodnosti, ki ga je odkril Brian Jošephson leta 1962 na univerzi v Cambridgu. Josephsonovi spoji so naprave, ki uporabljajo ta efekt. Josephson je na osnovi kvantne teorije napovedal, da bodo elektroni prehajali iz enega supraprevodnika v drugega kot skozi tunel, če bosta ta dva supraprevodnika ločena z izjemno tanko plastjo izolacijske snovi. Tok skozi spoj lahko krmilimo z magnetnim poljem, tako da namestimo krmilni vodnik v bližino vhodnega supraprevodnika. Na ta način lahko oblikujemo tudi digitalna vrata in z ustreznimi kombinacijami tudi Josephsonove bistabilne elemente. Z Josephsonovimi spoji dobimo tako poljubno zapletena kombinatoma in bistabilna vezja. Izboljšani Josephsonov. spoj se imenuje Josephsonov interferometer. Njegova lastnost je zmanjšanje kapacitivnosti in krmilnega toka, tako da se lahko dosežejo ekstremno visoke preklopne hitrosti, in sicer od 30 ps navzgor. Josephsonovi spoji so tako do 100-krat hitrejši od navadnih preklopnih vezij. Podjetje IBM je zaradi nizke porabe energije in visoke hitrosti že uporabilo Josephsonov spoj pri razvoju pomnilnika, kjer je bil dosežen čas dostopa pod 7 ns ter preizkusilo prototipni računalnik s temi spoji, ki ima taktno periodo 2,5 ns, kar je osemkrat hitreje od sistema 370/168. Ta računalnik se nahaja v kocki s stranico 4" in obsega CPU, prikriti in glavni pomnilnik za 16M zlogov (128 milijonov bitov) ter zmore 70 milijonov operacij (ukazov) v sekundi. Manj konzervativna različica tega računalnika pa bo imela 128M zložni pomnilnik in bo zmogla . milijardo ukazov na sekundo. Največji IBMov računalnik danes ima 6M-zložni pomnilnik, taktno periodo 50 do 80 ns in zmore le 3,5 milijonov ukazov na sekundo. Seveda nastane ob vsem tem vprašanje smisla takega superračunalnika. Oglejmo si primerjavo, ki jo je pred 25 leti naredil John von Neumann med računalniki in človeškimi možgani. V te namene je uvedel razmerje kvalitete, da je lahko primerjal tedanjo računalniško tehnologijo z biološko zmogljivostjo. Eno teh razmerij je bilo računanje na volumen ali produkt hitrosti vsake osnovne enote (vezja ali nevrona) na njihovo prostorsko gostoto. Drugo razmerje, je bila energija na računanje. Za oba primera je ugotovil, da ostajajo možgani superiorni nad računalniki za faktor 10000. Z izboljšanimi lastnostmi računalnikov pa postajajo ti primerljivi z zmogljivostjo možganov. Josephsonovi računalniki bodo prve mehanične naprave, ki bodo presegle zmogljivost možganov, in sicer za faktor 10000 pri računanju na enoto volumna, za 1000 pri računanju na enoto energije in za 100 v celotni računalni moči. Le v obsegu pomnilnikov bodo superračunalnlki še vedno pod pomnilno močjo človeških možganov. A.P.Železnikar ****************** CDC 205 Z 800 MILIJONI OPERACIJ V SEKUNDI ************************** *»*i,t*i,t,*t******* V svetu superračunalnikov, kjer bo na voljo 16M zlogov glavnega pomnilnika in ko se govori o več sto milijonih operacij na sekundo (Mop/s), je podjetje Control Data Corp. 74 TV"! I U|I I I.vio' / l^o I r I V VEKTORS«/ PROCESOfi. 5-12 K POMN. ob^EK. B V v/l o O O POMNìLNt-ŠKt vmesnik ■Q 0 S12K POMN. OÙSEK q \ SKALARNI pRocesoR v < ^ < w ^ S ------ , V/r ^EHToHSk! ÙBL ODSEK N VEKTORSKI TOK IN NIZ ObSEk P CYBER 205 V-oVs ■ V T V \ najavilo Cyber 205, ki naj bi v svoji največji konfiguraciji zmogel 800 Mop/s. Cyber 205 je drugi član družine Cyber 200 in je podobno kot njegov predhodnik 203 zgrajen z uporabo visokointegriranih bipolarnih vezij. Cyber 205 je sestavljen iz skalarne in vektorske enote, kot kaže slika. Skalama (serijska) enota, opravi eno samo operacijo ali ukaz do največ 50 Mop/s in deluje s 64-besednim ukaznim skladom in z 256-besedno registrsko ^ (paralelna) enota opravlja poljih ali tokovih podatkov in dopušča 32- ali 64-bitne operande k in iz centralnega pomnilnika vsakih 20 ns K sprejme 4 milijone 64-bitnih besed in podatki med pomnilnikom in centralnim procesorjem se prenašajo s hitrostjo sekundo pri miliDonbesednih inkrementih centralnega pomnilnika. ^ Osnovni sistem Cyber 205 ima 8 do 16 V/I vrat s prenosno hitrostjo 200 milijonov bitov na sekundo. Dva trilijona besed virtualnega pomnilnika sta na razpolago uporabniku. Sistem deluje z operacijskim sistemom 200-OS, ki omogoča dostop k sistemu preko paketnih in interaktivnih terminalov ali preko lokalnih naprav v okviru končnih procesorjev. Cena sistema Cyber 205 je od 7,9 do 16,5 milijonov dolarjev za t.i tipično konfiguracijo, dobavljati pa ga bodo začeli v januarju 1981. Pred leti lo se največji računalniki uporabljali v nuklearni in visokoenergijski fiziki, danes pa bodo našli , alterLtivnlh v?rov energije, pri dolgoročnih vremenskih napovedih ter pri oblikovanju in proizvodnji letal. Naftna industrija•potrebuje velike računalnike za obdelavo potresnih podatkov In ^^ Simulacijo, žal ni nikjer nakazanf^oLba ?ega superračunalnlka v administrativne namene. *************************** NOV IBMOV MIKRORAČUNALNIK *************************** Podjetje IBM ne stoji ob strani v mikroračunalniški revoluciji, čeprav večina uporabnikov velikih sistemov to misli. Zapleteni veliki sistemi in predvsem računalniške mreže predvidevajo na svojem t.i. spodnjem koncu sistema izdatno uporabo mikroračunalnikov. V prihodnje naj bi bil vsak računalnik vključen v mrežo, tudi osebni in mali poslovni računalniki. IBM uvaja nov namizni računalnik, tj. model 5120, ki ga prodaja za 13500 dolarjev ter ima 16k zlogov programirljivega pomnilnika in BASIC ali APL v pomnilniku tipa ROM. Mikroračunalnik IBM 5105 pa se bo pradajal za 4500 dolarjev in bo proizvajan na Japonskem. Ta mikroračunalnik bo uporabljal vodilo S-100 in bo v tem smislu tudi razširijiv. Imel bo 16k zlogov pomnilnika, hitri magnetni trak in toplotni tiskalnik. Večterminalna različica tega mikroračunalnika bo imela oznako 5130. A.P;Železnikar *********************** DISKI TIPA WINCHESTER *********************** Večkrat govorimo o diskih tipa Winchester ali winchestersklh diskih, brez da bi točno vedeli, za kakšno vrsto diskovnih naprav pri tem gre. Bistvo diskovne Winchesterske tehnologije je v majhnih, lahkih glavah, ki mehko pristanejo na plošči in v zapečateni in proti onesnaženju varni komori, v kateri so nameščeni pogon in glave. Razvoj takšne diskovne tehnologije je bil povzročen zaradi zahtev po večji gostoti podatkov na disku, ko naj bi se znižala cena na bit in dosegla hkrati še večja zanesljivost. Za povečanje gostote brez povečanja zapisne površine sta pomembna dva parametra. Najprej povečamo število stez (sledi) na površinsko enoto, potem pa povečamo še število bitov na vsaki stezi. Izboljšanje v določenosti signala in povečanje zapisne gostote se doseže z zmanjšanjem razdalje med glavo in ploščo. Dodatno se zahteva večja natančnost položaja stez, da se tako doseže večja čitalna zanesljivost. Položajna odstopanja stez se pri navadnih diskih pojavljajo zaradi toleranc pri zamenljivih diskih, v sami vrtavki in v nameščevalnem mehanizmu. Te razlike se pojavljajo že med posameznimi diskovnimi pogoni, pa tudi med nameščanjem ploče v pogon. Tako sta dve nadaljni metodi za povečanje gostote zapisa na ploščo, da je plošča nezamenljiva in da tečejo glave bližje površine plošče. Bližje gibanje glave pa zahteva odstranitev vsakega prahu, torej komoro, v kateri kroži zrak, ki je bil predhodno filtriran. Važno je tudi gibanje glave pri zagonu in ustavitvi diska. Pri navadnih diskih se glave približajo in odmaknejo, ko je disk še ali že v gibanju. Ta postopek je nestabilen in večkrat pride do dotika glave in diska, kar povzroči oksidacijo in obrabo glave. V winchesterskem disku to ni dopustno in glava pristane na disku šele tedaj, ko se je ta že ustavil. Ta način pa zahteva minimalen pritisk glave na površino diska in posebno prevleko diska, ki zmanjša možnost oksidnega prenosa. Tako je pritisk winchesterske glave le 8 do 10 gm, pri navadnih glavah pa 40 do 60 gm. Majhna glava zmanjšuje tudi zračno upornost, tako da je pri majhni razdalji položaj glave stabilen. Glave pristajajo ob ustavitvi v posebni coni in ne na površini zapisne steze, pri zagonu vrtavke pa se dvignejo že po eni tretjini ali polovici obrata plošče. Druge, dodatne lastnosti Winchesterskih diskov so še stezam sledeči servomehanizmi, dvojne glave na površino, enosmerni motorji vrtavk in odstranitev vsakega mehanizma od zapečatene komore. Te naprave dosežejo m.t.b.f. nad 20000 ur, dočim je m.t.b.f. usmernika, dodatne elektronike in motorja med 5000 in 10000 urami. Srednja cena teh diskovnih naprav je 3000 dolarjev, maksimalno število zlogov pa znaša 160M (Ampex). Nekoliko višje so tudi cene evropskih proizvajalcev, ki dosežejo vrednosti 4000 funtov. A.P.Železnikar ******-k ********i(*1i*1<-kifkifit*****ifk**-k***ic**-*i PREIZKUŠANJE MIKRORAČUNALNIŠKIH SISTEMOV ****************************************** Mikroračunalniške sisteme na terenu lahko preizkušamo s posebno programsko opremo ali ročno, kot bomo opisali. Taki preizkusni postopki so priporočljivi tudi tedaj, ko nimamo na razpolago videoterminala. Vzemimo, da imamo mikroračunalniško konfiguracijo, ki je sestavljena iz CPE, nekaj RAMa in EPROMa, iz piskalnika (vmesnik, zvočni generator, zvočnik), serijskih in paralelnih vrat, programirljivega časovnika, analognih senzorjev itn. Za takšen sistem lahko izdelamo posebno avtodiagnostlčno programsko opremo. Ta programska oprema (v obliki firmwara) ocenjuje do določene stopnje vse sistemske sestavne dele, in sicer z začasnim samopreizkusom, avtomatičnim samopreizkusom In z ročno avtodiagnostiko. Ta preizkus je omogočen z uporabo mikroprocesorja v sistemu in izboljšuje pogoje terenskega servisiranja. Začasni preizkus se opravi na minimalnem številu delujočih sestavnih delov. Npr. piskalnik se priključi direktno na vodilo mikroprocesorja in preizkušajo se signali k posameznim komponentam. Tako se preiskusi delovanje vseh naslovnih vodov in podatkovnih linij pa tudi generiranje vseh naslovov in podatkovnih kombinacij, ko slišimo pravilne Signa]ne vzorce. Nepravilni piskalni vzorci kažejo na konkretne napake v sistemu, ki jih lahko identificiramo. RAM preizkusimo tako, da uvedemo dva programska števnika, ki štejeta naprej od O do 65535 in nazaj in.opažujemo, ali sta istočasno dosegla ničlo ' z uporabo posebnega podprogramskega poziva (ukaz CALL). To je t.i. stabilnostni preizkus. Z ostalimi testi preizkušamo delovanje različnih sestavnih delov, in sicer najprej tiste z manjšim številom delovnih delov. Avtomatični samopreizkus opravi bolj izčrpno vrednotenje posebno RAMa in EPROMa. S t.i. drsečim vzorcem (posebnim algoritmom) preizkusimo RAM, EPROM pa s posebno preizkusno vsoto za vsako integrirano vezje, tako da ugotovimo napačno delujoče vezje. Nekateri EPROMi zgubljajo- bitne informacije po nekaj urah njihovega oblikovanja (zapisa). Tako lahko ugotovimo te napake že v fazi izdelovanja, kar nam prihrani obilo kasnejšega časa pri iskanju napake. Seveda lahko preizkušamo tudi analogne aktuatorje, ki so priključeni na mikroračunalniški sistem. Ročna diagnostika laliko temelji na uporabi telefonske linije s servisnim centrom ali na testiranju, ki ga opravi servisni tehnik na terenu. Samopreizkusne funkcije obsegajo tele operacije: vključitev vseh LEDov, korakanje skozi lokacije RAMa, prikaz koda za pritisk na določeno tipko, pošiljanje abecede skozi RS-232 kanal itd. A.P.Železnikar *************************** * PASCAL ZA MIKRORAČUNALNIKI-; **************************** PASCAL/M za mikroračunalnike na operacijskem sistemu CP/M 2.2 je pravkar prišel v prodajo za ceno 175 dolarjev. Ta PASCAL obsega celotno Wirthovo realizacijo in potrebuje 56K pomnilnik tipa RAM. Značilnost te različice jezika PASCAL je v tem, da ga je mogoče posebej modificirati glede na uporabljane mikroprocesorje. Čeprav je CP/M pisan za procesor 8080A in s tem tudi za Z80, je mogoče kompilator posebej modificirati za procesor 8080A ali Z80 ali Z80 in aritmetični procesor 9511. To modifikacijo opravi globalno že proizvajalec, uporabnik pa vstavi še svoje konkretne pogoje. Naslov proizvajalca jei Sorcim, 2273 Calle De Luna, Santa Clara, CA 95050. • PASCAL/M ima tele osnovne lastnostii zaznava napake, teče na operacijskih sistemih CP/M 1.4 in 2.2, njegove razširitve so usklajene z drugimi znanimi različicami pascalskih kompilatorjev, uporablja naključne zbirke in daljša cela števila (32 bitov, 9 številk), V/I je v celoti prilagojen na zgradbo zbirk v CP/M, uporablja lahko prednosti procesorjev Z80 in 9511 itn. Proizvajalec dobavlja tudi samo priročnik na 90 straneh in Jensenovo in Wirthovo knjigo (10 +7.90 dolarjev). MIKRORAČUNALNIŠKI RAZVOJI'lI SISTEM Podjetje Tektronix je dalo v prodajo univerzalni mikroprocesorski razvojni sistem MDA 8002A.Osnovni sistem vsebuje naslednje enote:Procesor sistema(2650),modul za čiščenje,pomnilnik sistema(32-K zlogov), modul sistera-komunikacija,disketno enoto z dvema pogonoma in procesor za zbirnik (Z-80). Za opremo razvojnega mesta so na voljo naslednje možnosti: - pogonski'sistem za izbran mikroprocesor z urejevalnikom,zbirnike MacroAssembler) ,časovnik,komunikacij ska programska oprema,programi za PROM progra-mator,čistilnik(debuE)in prototipni analizator v realnem času. - emulatoi-ski modul za izbrani mikro procesor za izvajanje uporabniških programov. - prototipni krmilnik(Control Probe) za izbrani mikroprocesor. Na voljo so še naslednje dopolnitve: - px'ogramska razširitev pomnilnika na 6^1- K zlogov(kot 16K ali 52K modul). - PROM programator(za 1702A,270V08). - prototipni analizator v realnem času(adrese podatki,krmilna vodila in 8 perifernih signalov). - sistemski terminal CO? 8100(Video) in CT 8101(Pisalni terminal) ter 402'4-A025 računalniški terminal. - vrstični pisalnik LP 8200. Podjetje Tektronix omogoča interesentom eno tedenske tečaje za spoznavanje sistema s praktičnimi vajami. R.M. NOVO INTliGRIHANO VKZJE ZA «ETJiKCIJO NAPAK V zadnjem času so proizvajalci pol-prevodniških elementov obogatili tržišče z nekaterimi novimi enotami za posebne namene.Tako je podjetje American Micro Devices Inc. izdelalo integrirano vezje za detekcijo in korekcijo napak,alasti primerno za diagnostiko diskovnih pomnilnikov. Uporabno pa je tudi za različne druge namene . Nov N MOS AmZ 8065 procesor lahko dete- ktira in popravlja 12-bitov dolge skupinske napake v serijskih nizih podatkov s pogostostjo prenosa do 20 miljonov bitov na sek. Dstekcijski postopek je osnovan na deljenju z izbranim genoratorskim polinomom,kot pri znani CRC metodi.Preizkuševalni kod dolžine 52 bitov lahko detektira 11 bitno skupino (burst)napak v 42987 bitnem sektorju diska. 56 bitni kod lahko detektira in popravi 11 bitno skupino napak v 585'l-'^2 bitnem sektorju, Cipi bodo dosegljivi na tržišču tekom letošnje jeseni.Čip AmZ 8065 je prilagojen zo delo z mikro računalnikom Z 8000(16 bit.), dočim je splošno uporabljen čip z oznako Am 9520. R.M. NOV NEC-OV MIKRORAČUNALNIK Znano japonsko podjetje NEC je izdelalo nov 8-bitni mikro računalnik v enem čipu z oznako uCOM-87.Računalnik združuje 4K zlo-govni ROM pomnilnik,128 zlogovni RAM pomnilnik ,časovnik,serij ski vmesnik,vhodno-izhodna vrata itd.v enem čipu.Omogoča pa tudi neposredno naslovlanje zunanjih pomnilnikov do ö'fK zlogov.Izredno hiter serijski • vmesnik omogoča enostavno multiprocesorsko uporabo ob podpori 140 instrukcij.Računalnik vsebuje dvojni akumulator in podvojeni sestav splošnih registrov,kar omogoča deijot-krat- hitrejšo prekinitveno opravilo. Povečana pomnilni.ška zmogljivost in sistemska razširijivost omogočata uporabo računalniškega sistema za najrazličnejša poslovna opravila ter v procesni tehniki.V ta namen planira podjetje DEC širok spekter programske opreme.(Npr. PDA-8Ü/800 in INTE-LLEC SERIES-II).Omenjeni mikro računalnik po zmoglivosti daleč presega že znane 8-bi-tne mikro računalnike istega podjetja,kot so: uCOM-80,uCOM-85,uGOM-82 in uCOH-84. Predvidevajo,da bo nov proizvod uCOM-87 (uPD 7801G)na tržišču že v letošnjem maju, SREČANJA 2- 4 .iulij, Ahardp.en, Velil'a BritaniM Intamational Confc.rvnoe on Patabnnea Organizator: Uniw.vsi tu of Mtnrrhon ,Bt"'t-t nh Conr^utar Sooiotu Infornaci iie : O, h'. Denn, Pt>pt. o f Cormuter rini.enae, University of Aberdeen,Aberdeen A B9 ZUB, r^notland 7-11 julij, Stanford, ZDA Tutorial Conference on Practical Optimisation Organizator: Stanford IMiverpituSi/Bten/i Optimization Labora tory Informaoi.je:Philip E, C,ill,S]iatems Optimization fiahoratorti Dept. of Operations Feeearah, Stanford Univrnity , Stanford, CA 01305, VSA juli.'', FJoorth^ijì^erhout, Uiy.ozemnl'a Seventh International Colloquium on Automata,Fionpuanen, and ^rnnmmiiK! Ornaniantor :Europetm Anpooiation for Theoretical Computer Scicnce Informaci j n:,lim I'nn Leeui.ien,Dept. of CS, University of Utrecht, Box 80012, 3S08 TA Utrecht, The Netherlands 21-23 julij, Durban, Jui^noafri^ka Pepublika Sixth South /Ifr-T'ciw St/mpociim on numerical Mathematica Or(ianisator:University of Natal Informaci je: Chairman, Computer Science Dept.,University of natal,Kinn Oeoroe Avenue,Durban 40ni,Pepuhlic of South A frica 8-11 juli.T, Les Arc,Savoie, Francija 5th Conference on Automated Deduction Organizator:Institut de Recheroha D'In formatiquo et D"Automatique Informacije: IRIA,SF,rvice des Relations Extcrieurea Domaine de Voluoeau,?8150 le Chesnay , France 14-10 julij, Hndison,Wis., ZDA Nonlinear Programing Symposium Organizator:Mathematical Progranming Society . In formaci je: nonlinear Prograrming Symposium 4, Computer Science Dept. l/nivernity of Hieoonin,1210 W. Dayton St. Madison,VI S3?npj;e08 2e2-lSP4, USA 14-W julij, BudimpeHa, Madžarska ■ Logic Programming Workshop Organizator:von Neuman Computer Science Society Informacija:Sten-Ake Tamhmd,Dept. of Computer Science University of Stockholm, 106 91, Stockholm,Steeden 14-18 julij, Seattle, ZDA SIC,GRAPH 80, Seventh Annual Conference on Computer Graphics and Interactive Techniques, 1 Organisator:ACfi, SIGGPAPU Informaci je: SIGGRAPII 80, Box 88203,Seattle,l.'A 98 188, ZDA 17-21 avgust, Toronto, Kanada 1980 Urban and Regional Information Systems Association Con''erence Organisator:UPISA Infomacije: UPISA,180 North t-Hchigan Ave., Suite 800, Chicago,II COPOl, USA 18-22 avgust, Edinburgh, Velika Britanija 4th Sìmposiun on Computational Statistici Organizator:International Association for Statistical Computing Informaoije:CO>'PSTAT 19 80, Di'rector. Program Library Unit,Edinburgh University, 18 nuccleuch Place,Edinburgh EU8 9LN,Scotland 18-20 avgust, "ontrcal, Kanada 3rd TPAC Symposium on Automation in- ^fining Mineral and fetal Processing Organinator: IFAC Informacije:IFTP Sec.,3 rue du Marche,CH-1B04 Geneva, Soi.txerland 19-21 avgust, Palo Alio, 7,DA National Artificial Intelligence Conference Organizator:American Association for Artificial Intelligence Infornici jn:J. "arty Tenenbaum, Sffl Intemational,333 Pavenri,Calrfom-iaj?.Pfl Bth SnnjLA Vr.c.vn Cnnfepencc Ovgani::atov:Ar,:iociation of nrt.'HLA Vnarr., rnfaiinaci:ie:F.iU:en "ohminer, Howanian Cnnputina renter, P.O.Ii 23!>,LiUnrhm Oalo 3, Uonvvi 2ft-27 avnuaty ntmfnrd, ZPA 1980 [JSP Conforcncfi Ofnarn Katar: Stan forti Vnivarm' tu Tnforrnaai.ip.:John Allr.n, Stanford Am'^-'cTal Tntelli'amen Ì.cì'oì'atory, Stanford l'm'vcrni t!i,CA S^'l^nn 21-29 avpii.it, San Prancinao, 7.PA Sirnq^or-iurri on Suporcor'putcrn in Chcm'ntrij Oraanir.ator:ACS,Piviliion on Cocputarn in Cham'ntrti lnfonriaaiJc:rcter L}ikon,Tltinoi.'ì Tnotitutc of Tfìtuio loay, Chicago, TL OOfUfl 2'1-Xl avgunt, Haen-.-.oif, Pol.inka Data Pi'Ooenning in Chamintrti 80 Organi Corr'i ttce of Chcn^ical Sci.enae^,Poti.nh Acadrrn'f o-^ Siricnae.i Tn/^oi'n^aai.ic: J .fiii^'a!'"' p.ni on Tao^mioal lini verni t;', Inntut-c oT Charriaal '!'(>a>ntologii,35-950,P"a.i:-.on,P.O.Box 85, Poland 25-27 avgur.t, Scattln,?.PA 1930 Slamar Conputc.r Simulation Con''crnnon Organici tor :SCS,Af'S, TSA,Anil,ATAA,B'rS, Tl'ACS ,ATChr, fKKf: Infonraoija: üavirl P.S. t'aCall,Hoeing Aorcnvaca Co., fail Stop 8ć-h.!,< \r. /,.1.1.1, >!i"!JiSA 20-29 ai>giint,no:pie Highlands Conw.tion Center,ZDA 1980 Intaiiiational Conferanac on Parallel Prnnnnning Organinator:l'righb State thvivernitu, I!:p:p:-CS Infoìi-aci/e: Kau r,ari--'ngf:r,D<:rt;. of Coraruitcr Scianca, Wt'ight S.tatn li>iivent: tu,Pauton, nil .>5-J35 USA 2/-38 avgiir.t, AnH.onar, ' Cali l'orni a,7,PA Scaond Wor^.'iihop on Piatnre Data Pr.norintion and ^'ana'iencn ' Tn''orr.acd.'i' ; Harr]! lla}irian,Box t'39,Si Ivcr Spring,!'D 20901,USA 1-5 ncrtenhi'.r, Pi/dsrinn, Poljnka 9th International Siirjponiim on ".athr.matical Foundation o^ Corrr'ul.cr Saic.nac nrgoniy.ator:Polinh AoadcmioC Scicnca, inatitute of Cotrouter Soienae Tnfojvac' ;jc. : '.al-unr.ynnki, JKntitutc of Cor'nutar Sai ance Polinh Acorlrni/ of Soicnmn,Hot 22, 00-991 l/arnaii PKiH,Poland 2-Ci ni't'ti'.nher,r.inhon, Portugal ^'ods'lling and Sirntlati on of hlnvi rornental S!Jntr;r:r, T^i ih Inndoquotn Dota Orgitniantor: TPIP Wn V. 1 Infomaoi.ie: TPTP Sea.,Z nie du ''arche,C.'I-120'Ì Genova, tzcrland 3-5 nept:erp.}jer*, Cenava, ^-ìyi.aa Eurographicn 80 OPgani.i'.ator:Kuropea.n Annociation for Computer Graphicn Tn formaci.ieKìirographi.on,Chìr .ntian Pellegrini, ihiivernitc da Geneve, Centre Ihirverni taire d' Info mali que,"4 rue General Pnfour,1211 Geneva 4, Smtf.crland 3-5 neptenher, I,on Angalen, 7,DA 19th .Annual f,akr Arrorhead l.'orknhop on OfHce Inforviation Sit.n t(ir:in Organisator: TFEE-CS Inf oma ci.i a: Clarence F.llin and Gam Nutt, Xerox PARC,3233 Coyote Hill Road, Palo Alto, CA 94 304, USA i-8 (se.ptp.mììcr, Dubrovnik, Jugonlavi.ia Int WC on Global Hödel ling Organi:-.atov: ÌFTP, "WG. 7.1 Informaci:!e: TF.l'^ SF.n., rue du llarcha ,CH-1204 Genova, Sr.^i t;'.erla>ui 8-1" nertrnber, l-'onhingtqn, 7,DA Pntegrated Svnterin 80 Organinatoy: 'lational ^'i.arograoh.icn Annociation [nfomaci .ic : 'lational ''i ci-ogravhion Annoaiation, 8719 Colen'^ille Pd., Silver .yri.ng, rn 20910, USA nr.usiizator: IF.KK-CS 9-10 neptemUer, Montreal, Kanada First TASTED International Si/mposiian and Exhibition on Office Automation 17-19 noptember, Denver , ÌDA Inte(iratied Proaramn ^or Aeronpaoc Vehicle Deairm National f^umvoftiun Organizator:Canadian Section of TASTED InformaciJe:The Searetapii, O^Hoe Automation, Box 25, Station n, Calgary Alberta, Canada T2F1 I'll 9-10 September,Montreal, Kanada 13th International Siimponiun and Exhibition on fi.ni and htiaro Confuterà Applications Organisator :ISMM InformacijeH. Hamsa, Dept. of EE,Vniversit]i oF Calgarii Calgarij, Alberta, Canada T2N 1N4 9-12 september, Bologna , Italija Europhysics Conference on Computing in High Energij and nuclear Phi/sics Organizator:European Vkijsical Society Italian National Institute of Nuclear Phjmica, University o^ Bollogna Informacije: Frederic James, EPS/CPC, Bologna Conferanne, C.E.R.N,, Division DD, CH 1211 Geneva ,Si.yi.t3erland 15-20 september, BudirpeiSta, MadJ^araka . WC on Stochastic Differential -.Sijatems Organisator; IFIP WG 7,1, TC 7 Informaci.je:IFIP SEc., rue du Marche 3, CH 12-40, Geneva Switzerland ' 16-18 september ,London, Velika Britanija . EVPOMTCW 80, 6th Symposium on 'Hcroproceasing and Micronroaramminn Organizator :Eui'ovean Association for fi.aroprocessing I.'»:' nroprogratming Tnfornr:cije:tjionel Thomvson, U.S. D.E. ,Hatfield A[, 109 IP, .England 17-19 september, Palo Alto, ZDA Joint ACH 5IGSmLL/SIGPc''sympost}on on Small Systems Organizator: ACM SIGSMALL^SIGSP In formacije : Philippe Lehot, Ford Aerospace ,3939 Fabian ■ Way, Palo Alto, CA 91303, VSA Organizator: NASA' Tn''orr'aci.-ie:TPAD Project O^Fice, Mail Stop2tontrcal, Quebec, Canada H3C 3,1? 1-3 oktober, Kyoto, Japonnka Tenth International Symponium on Fault Tolerant Computing Organi?.ator:TKKE-CS, Tech.Comm. on Fault-Tolerant ConvHiting of Japan Tech. Croiipn on Elentronic Cornimtara and on Peliability hiformcije:Shuso Yapima, Dept. on Tnfnrmation Science, Kyoto Uni verni ty, Kyoto ßOf>, Japan a —1 oktober, Tokyo, Japonnka Working Confarenca on fan-'^'achine Comuniontion in CAD/CAM i'>vgani.:-.ator:rFJr WC, S.2,W0 5.3 In formaci je:T. Sata,Dept. of Preci.ni.on I'achine Eng. Facul-ty of Eng.,University of Tokyo, 4 7-3 ììongo, Uunkyo-ku, Tokyo 113, Javari ■1-6 oktober, Tokyo, Japonnka International Conference on Automated thiltiphanin Health Tenting and Services Organir.ator: IHEA, Japan Society of AHHTS Informaci je: Searetari.at of ICAfVITS, c/o P.I. Medical Data Center, P.O.Pox-l, Tondahayanhi, Oaaka S8400, Japan 5-10 oktober ,Anaheim, ZDA Annual "eotinn of the American Society for Information S ci. enee Ornmi.nntor: A5TS Informacije:Alan Benen^eld, llnivernity of California, 8251 Boeltnr Hall,Loa Angeles, CA 90024, USA e-9 oktober, Tokyo, Janonaka,14-17 oktober, Melbourne, Avstralija TF.IP Congress 80 Organizator:IFIP,In formation Procesaing Society of Japan, Australian Computer Society In formaci, je :8th World Computer Congress, c/o AFIPS,1815 11.Lynn St., Suite 805, Arlington, VA 22209, USA 7-10 oktober, Berlin, ZR NemHja International Congress for Data Processing Organi-Bator: Gesellschaft fUr Informatik, ACME .Conference on European Computer Users Association Informacije: Robert Parsloi,\0 Ormond Ave.,' Hampton, Middlesex, England 8-10 oktober, Cambridge, ZDA 1980 International Conference on Cybernetics and Society Orgmiiaator: lEKE Systems,Man and Cybernetics Society In formaci je : Ri chard Viđale, Dept. of Systems and Computer Engineering, Boston University, Boston, MA 02215,USA 8-10 oktober,Allerton House, ZDA 18th Annual Allerton Conference on Communication, Control and Comuting Organisator: University of Illinois at Urbana. Champaign Informac-fje: P.V.SariMte, Coordinate Science Laboratoni University of Illinoin, Urbana, IL P1801 8-11 oktober,Kìjoto, Japonska Seventh International CODA'fA Conference Omaniiiator: International Council of Science VniOns Cor-m. on Data .for Science and Tecimology In "ormaci je: CODATA :'Ecretariat,Rl Boulevard de "ontrorency, 75010 Paris, France ìi-ì 7, oktober, Tnunh.onhi, c'aponr.'a h'il'th Tntp.mationnl Con'"efnnaa on Conrut-'^rr, nn Chcn-i'cnl Rcnearah nnd Education Organi".ator:Tntcimationnl Cmmcil of nc^'enb: Vnioìtn Comm. on Data for Catenae and Tcaìmologu Tnfo.-ni n'.J.-S.CaaaH^ School of I'atem'al noic.nco, Toyohanhi Vnivennty of Teolinolog;i, Tp.m>aku,'Toiiohahi, .Japwi 20 ok tolitir. Washing ton, ZDA National information Stistema Organi:iator:Comnuter Dai.' Aanoniation in formacije Vozirnka.i,:??^ K r,t. , H.Ì-J., Washington.PC ZOOOBJiCA 21-?.<1,oktober,,'aknrta, Tndone.-.iina SEAnce 80 ' . Orgroìt:intor:South Fant Anta Ragionai Cor"nuter SocieUi Infomaai,ie:SEARCC 80 Conference Implementation Committee, P.O.Box 4487, ^Jakarta, Indoneftin Haan tave in Sejmi S2-28,avgunt, JJUnneldorf, ZRNemHja International HiFi-Aunntnlhmg Festival 7,7 avgunt - 1 neptemher, Zürich, i^'Vica Sahii^eir,eriftchc Pemneh, Fadio und !h'Fi Aus'ritellimg / 29 avgnr.t. -7 neptemher, Arnnterdam, llolandija y FIRATO -Internationale Funkannntellung XI avgunt rS neptember, Frankfurt, ZR llemi'i.ia HcdnaroiMi Frankfurtnki Sejem 32 avgunt -7 september, Deipiiig, UR lìemì^ija f'echavoibìi pejem elektronike •/-.9 neptember ,1-ta'land, Italija y.ednarodni nejem HiFi opreme rt -it ner tcnher ,riunaj, Avrt trija f'ednarodni Punnjrl-i Sejem aa Elektroniko in HiFi 7-P neptember, Panel, i'.w'àa WTERFF.REX 10-14 neptemi>er, Stuttgard,ZR flem^ija Razntava opreme sa HobbyElektroniko im I'ikrora^imalnike Ifi-m neptember,Ennen, ZR Hem^ija "etrti mednarodni Sejem, Security 80 ÌG-in, neptember, Anaheim, California, ZDA Wei^tem Etactronio Sho\,i and Convention lP-1.0 neptemher, Helnink"', Finnka !*ednarodni Tehnični Sejem 17-26 aeptemì>er,Parin, Francija STCOB,Mednarodni sejem sa opremo sa obdelavo podatkov in pinamii^ko opreme 20-24 neptember, London, Velika Britanija Internationale Broadcananting Convetion 26-neptember -5 oktober, Buđi.mpe!^ta, Mad'iarnku Mednarodni tehnii^ni nejem 27 neptember.S oktober, Oraa, Avntrija Orn^ki itetene jem 27 neptember -S oktober, Barcelona, Španija f'ednaì^dni nalon Elektronike Seminarji ' ?.7.-2r> julij,fmnohen, ZR Uem'^ija Bit-Slice Scm'-nar fi me A"P julir, Cannen,Fradici ja Programirwt:h-: A'' 7, SOnn n Pnncalom in Annemblerjem ^ZISKOVAL \ B JAVLJEWE WÄ RSS LETU LOGE, v lej rubriki objnvljurno kratke povzetke raziskovalnih nalog,ki jili financira Področna raziskovalna skupnost za avtomatiko,računalništvo in informatiko,ki so s področja računalništva in informatike. Naslov na loge: Zasnova interaktivne računalniške grafike Projekt : Računalniško projektiranje Nosilec naloge:Milan Kac,Visoka tehniška šola,Maribor Protjram raziskave: - Študij realiziranih modelov interaktivne računalniške grafike pri nas in na tujem. - študij obstoječih standardov s področja i-ačunalniške grafiko. - Priinorjnva grafične periferije raznih proizvajalcev in primerjava računalniških sistemov glede na interaktivno grafiko. - Organizacija in porazdelitev obdelav med centralnim in grafičnim procesorjem. - Zasnova prikazovalnih datotek. - Vprašanja implementacije pogonskih programov za grafično periferijo. Naslov naloge: Računalniško omrežje. Projekt: Informacijski sistemi. Nosilec naloge: Tomaž Kalin,Institut J .Stefan,Ljubljana Program raziskavo: - Zasledovanje razvoja na področju omrežij za preklapljanje paketov in s tem povezavo dela v strokovnih telesih projekta COST II bis, - Na(lalj<;vanje dola na vmesnem mrežnem Jeziku z vključitvijo interaktivnega načina dela. - Nadaljevanje dola na projektni študiji za načrtovanje hierarhijo protokolov v niotoorološko-ekološki mieži s poudarkom na radijsko paketno mrežo. - študij zasnove lokalnih mrež in njihove povezave preko javnih omrežij. Naslov naloge: Prenos vernih in gospodarnih informacij IV. Projekt: Informacijski sistemi. Nosilec naloge: fJogomir Horvat,Visoka teimiška šola,Maribor . Program raziskave: - Naloga predstavlja četrto fazo raziskave.V tej fazi bi fizikalno realizirali predprocosorski komunikacijski modulski sestav.Ta modulski sestav bi bil na eni strani povezan s telekomunikacijskim kanalom,na drugih izhodih bi pa imeli možnost dostopa do vseh perifernih enot mikroračunalnika. - Zmogljivost,zanesljivost in funkcionalnost preveriti ob realizaciji. Naslov naloge: Večnivojski sistemi upravljanja z mini in mikro računalniki. Projekt: Hačunalniška avlomali/.acija industrijskih procesov. Nosilec naloge: Jurij Tasič, Institut J .Stefan,Ljubljana. Proc)ram raziskave: -Teoretski aspekti vt^cnivojsKega upravi j.luja s stali.-»(-a optimizacije velikih sistemov (meti,nj,i koordinacije ciljev z upoštevanjem omejitev,hierarhična povratno-zančna regulacija), - Programska oprga paketa na osnovi stikov z uporabniki. - Razširjanje dokumentacije in priročnikov. - Poročanje na domačih in tujih kongresih in seminarjih. AVTORJI IN SODELAVCI Hodžić Miodat( 1952). Elektrotehnički fakultet završio u Banja luci,na odsjeku za automatiku i računarsku tehniku 1975 godine.Od tada radi u preduzeću "Rudi Čajavec" OOUR Radarsko-računarska tehnika .Problematika kojom se bavi je iz domena optimalnog upravljanja determinističkim i stohastičkim sistemima,te iz domena real-time implementacije odgovarajučih algoritama .Na Elektrotehničkom fakultetu u Beogradu,odsjek Upravljanje sistemima,dovršava magistarsku tezu na temu implementacije u realnom vremenu filtara za praćenje ciljeva koji mane-vriSu. Dušan M.Velašević (1939) .Diplomirao je na Elekroteh-nrčTorTfakultiru u'Beogradu 1963 godine.Od 1963 do 1974 gcKline radio je u Laboratoriji za elektroniku Instituta za nuklearne nauke "Boris Kidrič"u Vinci .Od 1974 godine radi na Elektrotehničkom fakultetu u Beogradu kao docent u oblasti računarske tehnike i informatike .Trenutno,njegov istraživački interes uključuje programske prevtxlioce, ojierativne sisteme,zaštitu podataka i sisteme direktne obrade. Velimir Otović .Diplomirao 1975 godine na George Washington Üniversity-Dept .of Electrical Engineering and Computer Science, Washington D.C SA D .Trenutno radi u "Hudi Čajavec-u" u OOUR Računarsko radarske tehnike,na poslovima sistem analize i simulaci je.Oblasti koje ga interesuju su operativni sistemi za multiprocesorske ra-čunaro i digitalne simulacije.Radi magistarski rad iz oblasti simulacije računara. D.B.Popovski (1951). Diplomirao g.1975 i magistrirao g. 1977 na termotehničkoj grupi Mašinskog fakulteta u Beogradu .Asistent je Tehničkog fakulteta u Bitolju.Bavi se numeričkom analizom i primenoin numeričkih metoda u toplotnoj tehnici.Ima objavljeno više radova u domačim i stranim časopisima iz pomenutih oblasti. Davor Miljan ( 1955) .Diplomiral je leta 1978 na Fakulteti za Elektrotehniko v Ljubljani,smer računalništvo in informatika,Po diplomi se je zaposlil na odseku za računalništvo in informatiko na Institutu Jožef Stefan v Ljubljani.. Ukvarja se z načrtovanjem digitalnih vezij in mikroraču-nalniškimi aplikacijami. . CENIK OGLASOV Ovitek - notranja stran ( za letnik 1980 ) 2 stran---------------------------- 24.000 din 3 stran............................ 18.000 din Vmesne strani ( za letnik 1980 ) 1/1 stran -t........................ 11,000 din 1/2 strani....................—— 7.000 din Vmesno strani za posamezno številko 1/1 stran-------------------------- 4.300 din 1/2 strani------------------------- 2.900 din Oglasi o potrebah po kadrih ( za posamezno številko ) 1.500 din Razen oglasov v klasični obliki so zaželjene tudi krajše poslovno,strokovne in propagandne informacije in članki. Cene objave tovrstnega materiala se bodo določale spora-zu m no. ADVERTIZING RATES Cover pago ( for all issues of 1980 ) 2nd page-------------------------- 1100 3 3rd page------------r-------------- 1000 2 Inside pages ( for all issues of 1980 ) 1/1 page...........-.............. 790 2 1/2 page.......................... 520 ? Inside pages ( individual issues ) 1/1 page -------------------------- 260$ 1/2 page.......................... 200 2 Rates for classified advertizing: each ad —-------------------------- 66 $ In addition to ndvertisment,we wellcome short business or product news,notes and articles .The related charges are negotiable. D I LO S 1 PRAVO ČLANKA Avtorje prosimo, da pošljejo uredništvu naslov in kratek povzetek članka ter navedejo približen obseg članka (število strani A 4 formata) . Uredništvo bo nato poslalo avtorjem ustrezno število formularjev z navodilom. Članek tipkajte na priložene dvokolonske formularje. Če potrebujete dodatne formularje, lahko uporabite bel papir istih dimenzij. Pri tem pa se morate držati predpisanega formata, vendar pa ga ne vrišite na papir. Bodite natančni pri tipkanju in temeljiti pri korigiranju. Vaš članek bo s foto postopkom pomanjšan in pripravljen za tisk brez kakršnihkoli dodatnik korektur. Uporabljajte kvaliteten pisalni stroj. Če le tekst dopušča uporabljajte enojni presledek. Črni trak je obvezen. Članek tipkajte v prostor obrobljen z modrimi črtami. Tipkajte do črt - ne preko njih. C)dst?ä'vek ločite z dvojnim presledkom i n brez zamikanja prve vrstice novega odstavka . Prva stran članka : a) v sredino zgornjega okvira na prvi strani napišite naslov članka z velikimi črkami; b) v sredino pod naslov članka napišite Imena avtorjev, ime podjetja, mesto, državo; c) na označenem mestu čez oba stolpca napišite povzetek članka v jeziku, v katerem je napisan članek. Povzetek naj ne bo daljši od 10 vrst. d) če članek nI v angleščini, ampak v katerem od jugoslovanskih jezikov Izpustite 2 cm in napišite povzetek tudi v angleščini. Pred povzetkom napišite angleški naslov članka z velikimi črkami. Povzetek naj ne bo daljši od 10 vrst. Če je članek v tujem jeziku napišite povzetek tudi v enem od jugoslovanskih jezikov; e) izpustite 2 cm in pričnite v levo kolono pisati članek. Druga in naslednje strani članka: Kot je označeno na formularju začnite tipkati tekst druge in naslednjih strani v zgornjem levem kotu. Naslovi poglavij: naslove ločuje od ostalega teksta dvojni presledek. Če nekaterih znakov ne morete vpisati s strojem jih čitljivo vpišite s črnim črnilom ali svinčnikom. Ne uporabljajte modrega črnila, ker se.z njim napisani znaki ne bodo preslikali. Ilustracije morajo biti ostre, jasne in črno bele. Če jih vključite v tekst, se morajo skladati s predpisanim formatom. Lahko pa jih vstavite tudi na konec članka, vendar morajo v tem primeru ostati v mejah skupnega dvo-kolonskega formata. Vse ilustracije morate ( nalepiti) vstaviti sami na ustrezno mesto. Napake pri tipkanju se lahko popravljajo s korekcijsko folijo ali belim tušem. Napačne besede, stavke ali odstavke pa lahko ponovno natipkate na neprozoren [lapir in ga pazljivo nalepite na mesto napake. V zgornjem desnem kotu izven modro označenega roba oštevilčite strani članka s svinčnikom, tako da jih je mogoče zbrisati. Časopis informatica Uredništvo, Institut Jožef Stefan, Jamovg 39, Ljubljana Naročam se na časopis INFORMATICA. Predplačilo bom izvršil po prejemu vaše položnice. Cenik: letna naročnina za delovne organizacije 350,00 din, za posameznika 120,00 din. Časopis mi pošiljajte na naslov Q stanovanja | [ delovne organizacije. Priimek................................................o... Ime............................................... Naslov stanovanja Ulica.............................................. Poštna številka_Kraj....................... Naslov delovne organizacije Delovna organizacija................................ Ulica.............................................. Poštna številka_Kraj....................... Datum...................... Podpis: INSTRUCTIONS FOR PREPARATION OF A MANUSCRIPT Authors are invited to send in the address and short summary of their articles and indicate the opproximate size of their contributions ( in terms of A 4 paper ) . Subsequently they will receive the outor's kits. Type your manuscript on the enclosed two-colunin-format manuscript paper. If you require additional manuscript paper you can use similarrsize white paper and keep the proposed format but in that case please do not draw the format limits on the paper. lie accurate in your typing and through in your proof reading. This manuscript will be photographically reduced for reproduction without any proof reading or corrections before printing. Časopis INFORMATICA ■Uredništvo, Institut Jožef Stefan, Jamova 39, Ljubljana ("lease enter my subscription to INFORMATICA and send me the bill. Annual subscription price: companies 350,00 din (for abroad US J! 22), individuals 120,00 din (for abroad US 2 7,5). Send journal to myQ home address Q company's address. Surname........................................... Name.............................................. Mome address Street............................................. Postal code __C ity......................... Company address Company...................................... Street............................................. Postal code_City......................... Rate.......................... Signature Use a good typewriter. If the text allows it, use single spacing. Use a black ribbon only. Keep your copy within the blue margin lines on the (saper, typing to the lines, but not beyond them. Double space between paragraphs. First page manuscript: a) Give title of the paper in the upper box on the first page. Use block letters. b) Under the title give author's names, company name, city and state - all centered. c) As it is marked, begin the abstract of the paper. Type over both the columns. The abstract should be written in the language of the paper and should not excesed 10 lines. d) If the paper is not in English, drop 2 cm after having written the abstract in the language of the paper and write the abstract in English as well. In front of the abstract put the English title of the paper. Use block letters for the title. The lenght of the abstract should not be greater.than 10 lines. e) Drop 2 cm and begin the text of the pai^er in the left column. Second and succeeding pages of the manuscript: As it is marked on the papei; begin the text of the second and succeeding pages in the left upper corner. Format of the subject headings : Headings are separated from text by double spacing. If some characters are not available on your typwriter write them legibly in black ink or with a pencil. Do not use blue ink, because it shows poorly. Illustrations must be black and white, sharp and clear. If you incorporate your illustrations into the text keep the proposed format. Illustration can also be placed at the end of all text material provided, however, that they are kept within the margin lines of the full size two-column formati All illustrations must be placed into appropriate positons in the text by the author, Typing errors may be corrected by using white correction paint or by retyping the-word, sentence or paragraph on a piece of Opaque , white paper and pasting it nearly over errors Use pencil to number each page on the upper-right-hand corner of the manuscript, outside the blue margin lines so that the numbers may be erased. DELTA/TOTAL je vsestransko uporaben upravljalni sistem podatkovnih baz, katerega lahko nudimo uporabnikom računalniških sistemov DELTA. Sistem DELTA/TOTAL je učinkovit, preprost za uporabo in preizkušen programski proizvod. Pojem baza podatkov ni nov. Baze podatkov so v naših delovnih organizacijah obstajale že od prvih začetkov dalje, in to v kartotekah in imenskih seznamih. Z uvajanjem računalniške opreme so te baze podatkov prenesli v datoteke podatkov. Ti elektronsko shranjeni podatki so bili ponavadi urejeni in vzdrževani v okviru funkcionalnih in oddelčnih možnosti, dosegljivi pa so bili na osnovi med seboj neodvisnih aplikacij. Kot rezultat takega pristopa so se pojavljali trije različni problemi: — nepovezanost podatkov — preveč odvečnih podatkov — nepopolnost podatkov Tako zasnovani sistemi niso bili primerni za spremembe, bodisi neznatne ali večje. V večini primerov je cena spremembe preprečevala kakršnokoli spremembo sploh. Vse to pa je danes preteklost. DELTA/TOTAL je resnični upravljalni sistem podatkovnih baz. Lahko upravlja neomejen izbor podatkov na integrirani in enoviti osnovi, ki omogoča dostop in zvezo z vsemi ostalimi podatki v bazi podatkov. To poveča vrednost osnovnih podatkov, ki pri nadaljnjem delu zagotavljajo kvalitetne informacije. TOTAL je upravljalni sistem podatkovnih baz, katerega uporaba je v svetu najbolj razširjena. Dejstvo je, da je več uporabnikov sistema TOTAL, kot pa uporabnikov katerihkoli drugih baz podatkov skupaj. Sedaj je dosegljiv tudi uporabnikom računalniških sistemov DELTA. Naš cilj je, da zagotovimo programsko pomoč in ustrezno programsko opremo najvišje možne kvalitete. Zavedamo se namreč, kaj izražamo z mislijo: USTVARJAMO UČINKOVITOSTI 'K / T OPTIMALNO DELOVANJE IN UČINKOVITOST sta za uporabnike računalniških sistemov DELTA največji prednosti pri uporabi sistema DELTA/TOTAL. Tradicionalno sta si ta dva, za uspeh vsakega sistema življenjsko važna faktorja, nasprotovala drug drugemu. Pri sistemu DELTA/TOTAL temu ni tako. MODULARNOST IN PRILAGODLJIVOST V NAČRTOVANJU IN UPORABI sta prednosti sistema DELTA/TOTAL v zvezi z znižanjem stroškov sprememb, bodisi večjih ali neznatnih. Tako je rešen problem zastojev z analizo, ki je očitna v načrtovanju sistemov. NEODVISNOST PODATKOV — aplikacijski programi operirajo le s podatkovnimi elementi (polji), ne pa z zapisi. To preprečuje ponovno prevajanje starih programov zaradi fizičnih sprememb zapisov, datotek, povezav, itd. ENKRATNOST PODATKOV — onemogoč0 tako imenovane številne inačice resnice. Za vzdrževanje baze podatkov potrebujemo zato manj diskovnega prostora. To občutno zmanjšuje stroške vzdrževanja in zmanjšuje možnosti netočnih podatkov. POVEZANOST PODATKOV — omogoča bazi podatkov, da ima prav tako strukturo, kot jo ima način poslovanja delovne organizacije. To daje ustreznim informacijam realno osnovo. CELOVITOST IN VARNOST PODATKOV — sta zelo važni za bazo podatkov. Baza podatkov postane tako ena najbolj dragocenih pridobitev OZD. Preprečuje uničenje datotek in zapisov z nedovoljenimi posegi aplikacijskih programov v bazo in iz baze podatkov. OPREMA, PROGRAMSKI JEZIK IN OKOLJE SO NEODVISNI — to daje visoko stopnjo neodvisnosti na tako važnih področjih, kot so operacijski sistemi, računalniški sistemi, diskovne enote, uporabljeni programski jeziki in pristop k obdelavi, npr. paketni ali interaktivni. Zato je možnost različnih konverzij v bodočem razvoju avtomatske obdelave podatkov bistveno manjša. VEČNAMENSKA ZMOGLJIVOST — eno kopijo sistema DELTA/TOTAL, ki je stalno v računalniku, lahko uporablja neomejeno število uporabnikovih programov, ki se izvajajo pod nadzorom operacijskega sistema. TOTAL DATOTEKE Za učinkovito vzdrževanje in uporabo veliko različnih kategorij podatkov, daje . DELTA/TOTAL dve vrsti datotek: glavne datoteke (z enojnim vhodom) in variabilne datoteke (z različnim-številom vhodov). GLAVNE DATOTEKE so organizirane in vzdrževane z ozirom na uporabnikova prvotno izbrana kontrolna polja. Ta polja so dolžine 1 do 256 bytov, s kakršnokoli vsebino. V vsakem datotečnem zapisu je število podatkovnih elementov in velikost njihovih polj omejeno samo z velikostjo samega logičnega zapisa.. Če je potrebno, je lahko vsak zapis v datoteki neposredno-povezan z največ 2500 drugimi datotekami. Pri normalni uporabi se glavne datoteke sistema DELTA/TOTAL optimizirajo same in jih je treba le včasih preurediti. Če je zapis izbrisan, je prostor takoj dosegljiv za ponovno uporabo. Če želi uporabnik spremeniti razsežnost osnovnega zapisa, ali če so prekoračene fizične dimenzije, moramo samo prizadete podatke prepisati iz baze in nazaj v bazo podatkov. Vse ostale datoteke ne zahtevajo sprememb, preureditev ali dodatnih obdelav. VARIABILNE DATOTEKE so lahko dostopne preko različnega števila kontrolnih polj. Vsebujejo različno (in morda tudi spremenljivo) število podatkovnih zapisov. Te datoteke in podatkovni zapisi imajo lahko edinstvene povezave, odvisno od uporabnikovih zahtev. Variabilne datoteke sistema DELTA/TOTAL, ki odražajo poslovne funkcije tako, kot se te izvajajo, so vedno povezane z glavnimi datotekami. V eni variabilni datoteki je lahko.do 2500 različnih vrst zapisov. Zopet ni nobenih omejitev glede na velikost, število, vsebino ali medsebojni odnos podatkovnih elementov, kot le tiste, katere določa računalniški sistem Delta in njegov operacijski sistem. Tako kot pri glavnih datotekah, je tud| tukaj upravljanje diskovnih površin optimizirano zato, da se zmanjša zahtevani pomnilni prostor in poveča učinkovitost delovanja. Z uporabo pripomočkov, kot so jezik za definiranje baze podatkov in jezik upravljanja s podatki, zagotavlja DELTA/TOTAL v celoti integrirano bazo podatkov, ki je dosegljiva aplikativnemu programerju. F TOTAL jezik za definiranje baze podatkov se uporablja za opisovanje in določevanje sistema baze podatkov. Definicijo opravimo v posebnem modulu jezika za definiranje baze podatkov. Po definiranju baze podatkov je modul opisa baze podatkov preveden in katalogiziran. Programerje in analitike računalniških sistemov Delta lahko v kratkem času naučimo, da definirajo in razvijajo bazo podatkov določene težavnostne stopnje. Spremembe in dopolnitve, bodisi določenega podsistema baze podatkov ali celotne baze podatkov, so vprašanje le nekaj minut računalniškega časa. ODPRTA NAROČILA IN SPREJETA VPLAČILA VPLAČILA KUPCEV GLAVNA DATOTEKA KUPCEV NAROČILA KUPCEV Primer uporabe TOTAL jezika za definiranje baze podatkov: Glavna datoteka kupcev (KUPC) in vse druge datoteke, ki so vključene v to bazo podatkov, bodo opisane v TOTAL jeziku takole: PODATKOVNI ELEMENT šifra kupca ime kupca naslov kupca mesto poštna številka posebni kreditni pogoji drugi potrebni elementi kreditna omejitev kupca sprejeta vplačila neplačani računi 15 dni neplačani računi 60 dni IME KUPCCTRL KUPCNAZI KUPCNASL KUPCMEST KUPCPOST KUPCKRPO KUPCKMEJ KUPCVPLA KUPCRA15 KUPCRA60 DOLŽINA 6 30 30 20 5 6 4 4 4 4 Podatkovne elemente, imena podatkov in dolžine nadzoruje uporabnik. Dolžine elementov, njihovo število in mešanice alfanumeričnih ali posebnih znakov, nimajo nobenih omejitev. STRUKTURA TOTAL BAZE PODATKOV Bistvenih prednosti upravljalnega sistema podatkovnih baz DELTA/TOTAL ni potrebno več poudarjati. To je sposobnost odstraniti kakršnokoli fizično odvisnost podatkov od aplikativnih programov. S komuniciranjem na nivoju podatkovnega elementa (polje v logičnem zapisu), doseže DELTA/TOTAL največjo možno stopnjo podatkovne neodvisnosti, ki omogoča uporabnikom računalniških sistemov Delta visoko stopnjo modularnosti in prilagodljivosti ob rasti in spremenibah. Ta prilagodljiv kocept sistema DELTA/TOTAL omogoča enostavno dodajanje novih podatkov v zapise, dodajanje novih datotek in povezav podatkov, ne da bi škodili že obstoječim sistemom. Prikazana baza podatkov bi se sčasoma lahko povečala in vsebovala stotine novih datotek in povezav, ob le majhnem posegu v delovne programe. "N" povezav Skica prikazuje, da se nekatere datoteke pojavljajo v več kot le v eni bazi podatkov in da se datoteka "H" pojavlja v vseh bazah podatkov. Vsi podatki, ki jih je katerikoli program ažuriral v datoteki "H", bodo avtomatično dosegljivi v vseh nadaljnjih obdelavah vsem programom, ki uporabljajo te skupne podatke. DELTA/TOTAL daje vedno le eno verzijo resnice I y UPRAVLJANJA S PODATK TOTAL jezik upravljanja s podatki uporablja programer za komunikacijo med svojim programom in bazo podatkov. To ni popolen jezik sam po sebi, ampak deluje v okviru programskega jezika gostitelja. Na nivoju klicnega ukaza CALL omogoča prenašanje podatkov v bazo in iz baze podatkov. Uporabljamo ga lahko v kombinaciji s programskimi jeziki kot so MACRO-11, FORTRAN IV, FORTRAN IV PLUS, BASIC PLUS 2 in COBOL Izredno učinkovit in razumljiv seznam klicnih ukazov CALL za upravljanje z bazo podatkov omogoča programerju, da z izjemno lahkoto poišče, dodaja ali briše podatke ali povezave med njimi. PODAT Sledeči seznami parametrov morajo biti dani stavku CALL upoštevajoč pravila programskega jezika. Parametri v narekovaju morajo biti predstavljeni klicnemu ukazu CALL kot literalne vrednosti, ostali parametri pa morajo biti definirani kot pomnilna področja, ki jih uporabljata uporabnikov program in DELTA/TOTAL. CALL "DATBAS" USING uporabnikovo področje, kjer je nameščen označeva ec operacije ITATOS "CCOFC S5 Željena operacija (čitanje glavne datoteke) ključ želje-nega zapisa I tCOMTlR S datoteka, ki jo čitamo lU področje v uporabnikovem programu kamor namestimo vrednosti elementov flT elementi, ki jih zahteva uporabnik 30' konec navodila Po izvršitvi tega stavka so določeni elementi zapisa zahtevani za Kupca št. 123 (predpostavljamo, da je bil Kupec št. 123 željeni ključ v kontrolnem polju), nameščeni v uporabnikova pomnilna področja natančno tako, kot jih želi programer aplikacije. Ni mu potrebno izvajati nobenih izločevanj ali premikanj. Področje STATUS bo vsebovalo****, kar označuje uspešno opravljen potek operacije. Kontrola se vrne v program in uporabnik lahko zatem izvaja katerokoli naslednjo operacijo želi. MREŽNA STRUKTURA Relativni VARIABILNA DATOTEKA Pf'offj zapisa i 1 A b 2 PODATKI 2 A 1 3 PODATKI 3 A 2 4 PODATKI 4 A 3 b PODATKI (n) pozicij vse povezave so dvosmerne povezave zapisov: brez indexa, tabel, itd. PODATKI . Kljuc GLAVNA DATOTEKA FLEKSIBILNOST SISTEMA DELTA/TOTAL Uporabniki sistema TOTAL so vodilni v proizvodnji, izobraževanju, zavarovalništvu in bančništvu, če naštejemo le nekatere. Njihov skupni imenovalec je, da so uspešni. Predstavljajo široko razvejano področje različnili dejavnosti in so po vsem svetu. Odkrito smemo reči, da so vodilni tudi v tehnologiji upravljalno-infor'macijskih sistemov. Zanje ta upravljalno-informacijski sistem niso nemogoče sanje: to je resničnost, ki se jim obrestuje ! V svojih zahtevah DELTA/TOTAL ne obremenjuje preveč centralnega pomnilnika (približno 50K Byte, odvisno od števila in velikosti vključenih modulov), je preprost za uporabo, fleksibilen in ima visoko stopnjo učinkovitosti delovanja. Precej lahko poveča produktivnost instalacije, ne da bi se pri tem bistveno povečali režijski stroški. DELTA/TOTAL upravljalni sistem podatkovnih ,baz je neodvisen od aplikacij, zato ga lahko vpeljemo na kakršnokoli področje poslovnega življenja. Sledeče sheme baz podatkov opisujejo zato le nekatere možne aplikacije sistema DELTA/TOTAL v poslovanju uporabnikov računalniških sistemov DELTA. PROIZVODNJA sestavni deli ODPRTA NAROČILA NABAVE PROIZVODI MATERIALI KOSOVNICE . ODPRTA NAROČILA KUPCEV kje se uporablja TEHNOLOŠKI POSTOPKI bELOVNA MESTA UNIVERZE ZDRAVSTVO — BOLNICE osebni rodato opravueni l2Pm Študentje profesorji p^i predav^ =■ predavalnice zdravstvene skupnosti " racuni bolniki vrste zdravuenja potek bolezni diagnoze in zdravuenje zdravniki ZAVAROVALNIŠTVO BANČNIŠTVO premoženjsko zavarovanje avtomobiu otoankp Številke zavarovalni polic agenti osebni vplačila podato premue datumi struktura ozd ozd kontni plan raCuni stanja inokorespon-denti povezava ozd in p.o. banke enote poslovne banke struictuha poslovnih enot K9B deha računalnishi sistemi SOZD ELEKTROTEHNA, o. o., DO DELTA, proizvodnja računalniških sistemov in inženiring, p. o. 61000 Ljubljana, Linhartova 62 a Telefon: 061/323-585, 326-661 Telex: 31 578 YU ELDEC — SLUŽBA ZA PROGRAMSKO OPREMO IN IZOBRAŽEVALNI CENTER DELTA TITOVA 51, 61000 LJUBLJANA, Telefon: 061/320-241, int. 482 — PRODAJNA SLUŽBA TITOVA 51, 61000 LJUBLJANA Telefon: 061/320-241, int. 397, 420 — SLUŽBA ZA RAZVOJ STROJNE OPREME Telefon: 061/23-251, 21-874 — SLUŽBA ZA RAZVOJ PROGRAMSKE OPREME Telefon: 061/28-216 POSLOVNA ENOTA ZAGREB ZAGREBAČKI VELESAJAM, II. UPRAVNA ZGRADA ALEJA BORISA KIDRIČA 2, 41000 ZAGREB Telefon: 041/520-003, 516-690 POSLOVNA ENOTA BEOGRAD — VZDRŽEVALNA SLUŽBA KARAĐORDEV TRG 13, 11080 ZEMUN Telefon: 011/694-537, 695-604 — PRODAJNA SLUŽBA, »SAVA CENTAR« MILENTIJE POPOVIĆA 9, 11070 NOVI BEOGRAD Telefon: 011/453-885 — SLUŽBA ZA PROGRAMSKO OPREMO »SAVA CENTAR« Telefon: 011/356-591 (K v I v PRODAJNA SLUŽBA, SLUŽBA ZA PROGRAMSKO OPREMO SERVISNI CENTRI LJUBLJANA, MARIBOR, CELJE, ZAGREB, RIJEKA, SPLIT, SARAJEVO, BEOGRAD, SKOPJE