w nformaliča 1 prosir eno upravljan je memo ri jo m za racùnar delta 340 UDK: 681.3:181.4 milovan v. je f ic ISKRA DELTA, LJUBLJANA Prošireno uF>ravlJanJ[e oBnorkJatn'J« invadano kao poaubna cal InaKo ja aa prlrinduja (lu-Btnjafiim lnstalaoljama OKLTA 340 (CUP n/34), ta ue tako povaćavu portrućja ndroBlra-r>jH as 266 KB na 4 HB. Na takav nuSlii ■■aSlruna inanurljet pov«£a apu^ubnoatl oulugu aUtema sa ob/lrom na o«rerhead; koji ae Ja*lJ« ahpp đeaton komuniciranja aa diiskoni. EXTENDED HPNÜHY MANAGEMENT (EHM) la an upHrada whtÈh insy 69 fitted to an Daltà 340 procooaor to Incrsaaa Its aditraaslnfi raiiHB fro« 2fitì KB to .4 MB. Thls; unhanomaent greatly Increasaa ayatain afflclèucy aa uiure ruaniqcy may bo fittaU to raduce tlia over-htìail of Job »wHiipln« to dUò and allow tì*tra »aiiiory realdont routines. ; ' 1. (ivim . BtanUurUnl IIEI.TA 340 (POP 11/34) prooaaor l«M» tfi bltnM . reS, hqja outoguCava dtraktno adrualratkja ^4 KU memorija. U koliko želimo udrealraU Bira podrui4e, moramo uvsatt pojam rtilokacljti, t.J. a a dodavanjem ralokaclakn konac anta ouio^uiujaiiio 16 bitnoj adraal ad ra a I ran Ja Hlrega uiIramiOK proutora. atai>L)ardiil ĐEL'l'A 34Ü procauor Uia ralokaolaku konstantu (lerunlfaiiu na I?- bltova'ua Slm ae omoguCuva IS bltno-ad^ : raali'unje. Ako aada dodarnu Joä 4 Lita ralokaclakom faktoru, moìemu Honarlaatl 3?, bitnu adreau aa kujom pokrl-^vaiiia 4 MU adreHiil proator. < To Ja uiinovnl prliiulp projilranog upravljanja memori Jo)».. U koliko Salloio omogućiti atandardnom 16 bltriou adraal-ranju doalup do dodatne manorlje, potrahiio Ja iKvrSltl I odguvarajufu konti-olu reglatara (al. 1). ' 2. VlIt'fUALNO ADIlKdlHAHJB Pruđlrnoo upravljanja inamarìJum (KHM) aa awi|tu£uva ako u' raftintru MMHO aktlviramo'i»iltl-lttt, tuda normalna IG bitna Bdraaa nlj« Intarpratlrana kuo direktna flKlänu nd-raau, nego kuo virtualna adraaa, kojii andrll liilormiiclJu . aa koiiatruhul Ju nova ID 111 ?.2 bitni« fix I fina adraaa, Akt. pa 0 raKlatru «MM «ktlvlran«. bit 4 na KM« Ja omoKu-Ćenu ?? ljitno roloclranja. .Infortnui;!Ja koju aadrll virtualnu adicua >iq hoiiiUliitrn aa reloUiic:lakom I uplniiom Infur-luaoljom, koja Ja aaili'Kanu u Active i'nKo ra«!ati'lmfi (APH) ta Ho itiiblja Ifi/aa Ultiia adraiiti nii uiitili nlol, V.lrliiiilnl-nilreMiil praalur Ja puUolJeit na atranlca vallit-na 52 do 40ntrublJen, vidi aa l-is aktlvnoaLl 14 ) IG bita u proCäHoi'ukoJ refi uliinja (PSW), PSW bit 15 0 ■ 0 1 i 14 0 'Kamel način ^^ , MavaÜBSa atanja 1 , ' Uaar naSln 4. ACTIVE PAQE HKÜialHI (APH) UE f,T A 340 Idia dva eeta po H APH-ov, Svaki APH aadrìl pHgo Aitdreaa Heglater (PAH) I Page Uaacrlptor KuHlatar (Pild). Ovl raglatrl aa uvjek upotrebljavaju u paru I aadrie avu Inforuiuclju potrebnu na lociranja 1 oula tekuća aktlvfio atranloa za avakl naStn rada. Koja grupa PAR/PDH regia- . tara'Je aalaktlrana, odrađuju bitovi 13. 14 1 lü BeaneJaÜ bitna virtualna adreaa. 0.5 I,^ ptoöjeöna dužina reda DISK 3 f a DISKOVA i na kanal DISK i, /8 DISKOVA \ [ NA KANAL I DISK 7 f 6 DISKOVA i NA KANAL 1,5 1 Lq jjroaječna dužina reda DISK 0,6 I 6 OISKOÄ ] I NA KANALU I disk t. 16 DISKOVA \ I NA KAhJALU I BAKU UČ AK Huzulcčti dobiveni modaloni oiiioguduju prouöava-iije važnih svojstava 1 pojava u (J/I podiäiateinu jedinica aa direktnim đostupoin. U modelu se nije išlo za postizanjem potpune teoretske toč-noüti već se u prvi plan stavila funkcionalnost modela, uostalom, potpuna teoretska toSnost nije postignuta niti jednim analitičkim modelom kojim se rježavala ova klasa problema i to zboy nesavršenosti matematičkog aparata b jedne strane i zbog komplekanasti aistema i pojava kada se problem pokušava rjeStti bez aprok-siiiiacija na dovoljno velikom nivou detalja, a obzirom na dobivene rezultate i svrhu modela (procjena efikasnosti rada neke konfiguracije i proučavanje inedjusobne ovisnosti važnih para--Hietara) model u potpunosti zadovoljava postavljene ciljeve i znatno je precizniji od Boftver-skib monitora prisutnih u läiBtemu. u principu model je poyodaii i za konercijalnu upotrebu i daje dovoljno precizne podatke za procjenu jtórf'oniiatisi i planiranje kapaciteta U/I podsistema. l'Jal jnji rad na modelu može omocjuclti poboljšanja za: - iapitivanjti ponašanja (J/I podala tena sa višestrukim piiteviiiia - upravljanje sinjulatora sä pođacijiia dobivenim direktno iz softverskih monitora koji zapisuju svaki doijadjaj u sistemu (za sad Be to radi za operativni sistem MVS) - koristenje rezultata Iz ovog modela za konstrukciju modela koji bi na višem nivou dao odgovore na pitanja vezana ui rad cjelokupnog puta zahtjeva na obradom Iniciranog od teriiäinala ili kao "batoli" posla. LITERATURA 1. Bard Y.,t "A Model of shared DASD and Multipathing", CACM, no.10, vol.23,19d0, Btr. 564-572. . 2. IBMi"0S/VS2 MVS Resource Measurement facility (BMP) Reference and User's Guide", form no. SC 28-0922, 198Ü. 3. IBM: "0S/VS2 SPL: InLtiallaation and Tuning Guide", form no. CC 2B-1029, 1979. 4. IBM: "ÜS/VS2 SPLi Service Aide", form no., GC28-0674, la79. 5. IBM i "Reference Manual for IBM 30 30 Storage Control Model 2", form no. GA2t)-161/, 1977. 6. IBM: "Reference Manual for lUM 33SU Direct Access storage", form. no. GA2fa-16 3B, 1977. 7. Knežević P.,: "Prilog infondaci jskoJ analisi sustava za automatsko projektiranje procesorski upravljanih komutacija", doktorska disertacija, Zagreb, 19B2. 8. Wilhelm N.C.,: "A General Model for the Performance of Disk Systems", JACM, no.l, vol. 24, 1977, str. 14-31. 9. Ziegler K.,: "DAÜD Configuration and Sharing Considerations", inM Complex Syatemu, form no. OG22-9052, 1978. BfiOJ ZAHTJEVA % BASPOD. mA ČEKAHJA ■ I 2 3 4 + 90% % KAUaBCE DISK 1 . 1322 93.2 6.6 0.2 0.0 0.0 0.070 + 0.012 8.45 31.63 3 : 10 4 8 DISK 2 1358 89.4 ,9.6 1.0 0.0 0.0 0.117 + 0.016 11.55 43.11 3 20 4 8 DISK 3 2702 76.5 19.2 3.4 0.9 0.0 0.289 + 0.018 25.60 53.93 6 .20 8 e DISK 4 2652 84.6 13.3 1.8. 0.3 Ò.0 0.178 + 0.014 18.81 37.47, 6 10 8 8 DISK 5 1321 93.1 6.4 0.5 0.1 0.0 0.075 + 0.013 8.40 31.57 3 10 4 8 DISK 5 1316 87.3 11.4 1,3 0.0 0.0 0.140 + 0.Ö17 11.53 44,66 3 20 4 8 DISK 7 2706 78.5 17.5 3.3 0.6 0.1 0.263 + 0.018 25.29 52.34 6 : 20 8 8 DISK 8 2623 85.1 13.5 1.4 0.1 0.0 0.165 + 0.011 18.79 37.98 6 10 8 8 KAHAL 36.2 38.6 18.3 5.7 1.2 ■ 0.97 + 0.011 27.58 DISK I 1322 89.0 10.2 0.8 0.0 0.0 0.117 + 0.017 12.33 35.79 4 10 4 8 DISK 2 .1358 85.2 13.0 1.5 0.2 0.0 0.168 + 0.019 16.37 47.80 4 20 3 DISK 3 27Ü2 65.4 24.6 7.2 2.2 0.6 0.479 + 0.025 36.29 65.01 8 20 8 8 DISK 4 2652 76.4 19.2 3.6 0.7 0.1 0.288 ? 0.019 26.80 43.87 8 10 8 DISK 5 1321 89.0 10.2 0.8 0.0 0.0 0.117 + 0.015 12.44 36.77. 4 10 4 8 DISK 6 1316 82.2 15.4 2.1 0.3 0.0 0.204 + 0.021 15.99 48.66 4 20 4 8 DISK 7 2706 68.8 22.4 6.8 1.8 0.1 0.420 + 0.022 35.50 61.44 8 20 8 8 DISK a 2623 77.6 18.3 ' 3.5 0.5 0.0 0.271 + 0.018 26.95 44.38 e 10 8 8 KANAi;. 21.8 36.2 25.6 Ì2.0 4.4 1.42 + 0.014" 36.79 DISK I 1322 78.1 17.2 3.6 0.9 0.2 . 0.278 + 0.026 23.47 52.18 6 10 4 . 8 DISK 2 1359 70.3 22.6 5.-9 1.1 0.1 0.383 + 0.029 29.81 67.36 6 20 4 8 DISK 3 2701 38.9 26.0 14.9 7.8 12.3 1.421 + 0;054 62.65 122.90 12 20 8 8 DISK 4 2652 54.7 26.4 11.3 4.8 2.8 0.757 + 0.034 49.44 73 .58 12 10 8 8 DISK 5 1321 77.9 17.6 3.6 0.8 0.2 0.278 + 0.024 23.35 51.31 6 10 '4 8 DISK 6 1316 69.2 21.0 7.9 1.4 0.5 0.429 + 0.034 29.69 72.67 ' 6 20 • 4 8 DISK 7 2706 40.8 28.5 15.8 8.0 6.9 1.152 Ö.041 62.31 107.44 12 20 8 8 DISK 8 2623 55.7 28.1 10.2 3.9 2.1 0.691 + 0.031 48.01 68.77 12 10 8 8 KANAr. 4,7 15.9 25.8 25.7 27.9 2.69 + 0.018 55.23. DISK 1 1322 67.3 22.6 6.6 2.0 1.5 0.483 + 0.038 33.17 73.31 7 10 4 8 DISK 2 1359 59.2 25.8 9.9 3.2 1.9 0.634 + 0.041 40.28 90.93 7 20 4 8 DISK 3 2703 19.9 17.1 14.2 12.7 36.1 3.075 + 0.088 80.11 226.15 14 . 20 8 8 DISK 4 2651 39.2 26.7 14.6 8.7 . 10,8 1.373 + 0.053 63.84 108.24 14 , 10 8 8 DISK 5 1321 66.2 22,0 8.3 2.1 1:4 0.512 + 0.041 31.Ö2 70.63 7 10 4 8 DISK 6 1316 59.9 25.9 10.1 2.1 2.1 0.622 + 0.04 3 37.98 87.70 7 20 4 8 DISK 7 2705 22.0 19.1 15.5 11.6 31.8 2.870 O.OBS 79.77 215,01 14 20 8' 8 DISK a 2623 38.6 28.6 15.3 8.8 8.7 1.284 + 0.048. 63.70 105.09 14 . 10 8 8 KANAI, 1.2 5.9 15.5 24 . 3 53.0 3.60 + 0.018 64.36 K» ÜO so 7ll eù 50 iù 'i(J 20 IO rteiJuktip liripacileta diaka Tabela 4, 70 6S- 60 bS SO AO 35 3U 25 20 OISK 1 {4 DISKA NA KANALU! 01SK1 leOlSKOVA NA KANALU) lü 70 -JU tü 50 ÖIJ 70 au 9Ü 100 10 16 20 25 30 35 'i lićiLizeća kanala -H———I---- to CS 50 55 31.7 r w Ol OODODOOĐ WMMWWM.MM mmcocoojcoojoj MUh-K'KJKK-'l-' tooh-totne5UiM wwai^wweow H ^ fiSN>-JA.CI>tOU1U CT, Ol-'OOO^^OO OOOOĐĐOO O^O^Mh^OO o oooooooo u oooooooo o oooosooo ui o I-o » o o o VC 1+ l+(+(+l+l+t+f+t+ o oooooooo o oooooooo o M l-" I- (- h" t-M o ^ owwooto^« f h- MM a> f Oi-J VI t-f: ^ ut esbulsmvimo oooooeoo C9 CD 4Đ DOODDODO MMl-IMHl-li-IM 0) tfl 03 03 m'Oi tfi « t^OMtoLnotnto M o o o o o Q o o ■-J h-UOI^MOiMM -» o K> tO ■J 1 + O b o OD ts Kf OOOOOOOO oooooooo OOOOOOOO ««■»«•«I OOOOOOOO oooooooo oooooooo i.mujt-'O.-jtoM MDIO^Ch^UlOl-J l+!+l+(+l+l+l+l+ oooooooo oooooooo oooooooo OlBOOOlOllO-Jffi m-JUJOLTl-JWtO ^WCDUJUiLn-JCI: leouiuiODOuiA oooooooo ►3 ü> z So o o D D H M (-i M (-1 oj O) CI3 « cn cn 5! W Ä « 5S ><; ^ UJ ro h- I-' t- to IO f- tA, vc> IC »i U1 ^ Uä vj OD M O OS - Ol to MM CD -J J", ui CD Ln o Ol M -J W -J fl> M -J w M OB M W M O U1 m o IO M M W W O O M 00 M O IC l/l ^ M W O O M U O O U1 ^ W ^ ijl LJ LTl -O CO C7\ 03 UJ W A -«I 1 + O i + i + i + i+i + i + O O O O O O o o o o M o o M u W tO U tO »I » OD U> Ol VB đ> U Ol 00 U U O o UJ ^ UJ VĐ M M ® M fr ON a. Ol Ul Ol tO W O Ol O to Ol Ul oa M Ol VO to W VP 00 03 OD CO ov vs eo CO Ol kj o o IO Wto B o W V£l co M M co W M. O O O O O O a, a. OB Q> .B» ^^^ ^^ ^^ > f D o o a o o M H <1 IH M s CQ cn m cn tß CD 5e X Ol Ul fr w co M M M tO (O M M » UliĐ ^ tn Ol Oivc -J 0E> M vo -O a> A O IO VC Ol ^ Uì u Ol -oj • ol u o m -o ol LR Ov Ol O VC M io M tO tO CO lo M a> u to Ol Ol to vo ov Ib B\ VC B » iM u to Ol ^ u M ve VO IC » OB C eo O tn O M O VI Ul VC> vo u VD ^ ■J o o». o O ĆB JO U O» O Ol -o m u ib u low Ul co » Ul o u ON Ul to Ol co oo Vi> Ü Ol U> M u Ol Ol M Ol Ib to a m a. M to LP M t-n VS Cl M iS> o --J co o M M <3 CD O O CS ( co M M C» CO M OOOOOO ib ib SB (9 ^ (33 ^ ^ 0 O O t3 O D Hi M W H M H m cn (n cn CO la Ä Ä X s? W Ä 01 Ul ^ U» to M t-- M »o ro M (-1 A Ul VO VD & Ul CTI 0> VD -J CD VD SB ib O Co CO .o O) Ol ut -o OB U> -O tO Ol UJ -O CJ Ol M M Vp Ul o Ol U MMCOtO MM OD OBUI U-J a> U! & VC » ^ Ol hj CO DO Ul to (Ji to a M Ul Ul Ol M to M VC O o M & O O M Ul IO O * & M tO O O O tO O O o M o M e VC ut PO M M A ON M co Ol Ol M M M M DO M OO OO OO i!^ C9 Gt ^^ Ö5 So ^ft ^^^ 1+ o o M M C D O D o o M 1-1 M M M cn W cn (O CO n X !>! X i« ON Ul & u IO H M M CO W M M Ul ve U] & Ul CN Ol VC -a (B M VO «J 0> A O tO O Ot -O ^ 00 IC J. OV U9 U>M Ul M PO to to ON to Ul Ul (o M M fO M B IO V0 Ol M tO OD ■•J W Ol Ol -O B M M A M M CO Ul M O U O VC Ol Ul w co o o o M o o UN M M OB M M o O OOOOOO u o o M <]» o o 0 OOOOOO * *.*«., •J M M (O to M O 01 Ul tO Ul ^ Ol 00 •»i M M VC tO 00 l + t+l + t+)+l + OOOOOO OOOOOO t-- f-- M po K- H* ■O Ul ON O B U ve g po M M EU co M M to <9- M u M & o U -J -J Vj Ul o ^ UN OB VC o VI A io Ul Ul äb co M M A Ul IS Ol Ul M M Ù UJ -J W (S -O tO tO Ch 00 OD & ib CO M M CJ (O M OOOOOO cil CD CD A O ^ GS €3 « RflSPOD, REDA ČfSKANJA yAHTJÜWA 0 1 2 3 4 + 90% . UUZEfe SifnöJ li/2(ins/ DISK 1 1343 98.1 1.9 0.0 0.0 0.0 0.019 + 0,006 2.35 23.71 1 10 4 3 DISK 2 1340 96.6 3.4 0.1 0.0 0.0 0.036 + 0.008 3.38 23.81 1 20 4 8 DISK 3 2661 94.0 , 5.8 0.2 0.0 0.0 0.062 + 0,008 7.45 39.41 2 20 S 8 DISK 4 2656 96.0 3.8 0.2 0.0 0.0 0.041 + 0.007 S. 4.9 28.51 2 10 a e KANAL 89.1 10.3 0.5 0.0 0.0 0.11 + 0.006. 4.61 DISK 1 1342 95.8 4.1 Ò.1 0.0 0.0 0.044 + 0.009 4.89 25.63 . 2 10 4 e DISK 2 1340 93.1 6.6 0.3 0.0. 0.0 0.072 0.012 7.06 37.77 2 20 4 8 - DISK 3 2662 86.7 12.1 1,1 0.1 0.0 0.145 0.012 15.17 4 3.18 4 20 8 8 DISK 4 2656 91.6 7.6 0.7 0.0 0.0 0.091 + 0.010 11.29 3r.04 4 10 8 .8 KANAL 78.4 20.0 1.6 0.0 0.0 0.23 + 0.008 9.23 DISK 1 1342 91.4 ■ 8.2 0.4 0.0, 0.0 0.089 + 0.014 10.23 28.38 4 10 4 8 DISK 2 1340 85.4 12.9 l.S 0.1 0.0 0.163 + 0.019 14.57 42.38 4 20 4 8 DISK 3 2662 72.4 21.4 5.2 0.8 0.2 0.350 + 0.020 31.36 51.46 8 20 e 8 DISK 4 2656 01.3 15.1 3.1 0.4 0.1 0.228 + 0.016 23.39 35,9 a 8 10 8 8 KANAL 58.6 34,3 6.6 0.5 0.0 0.49 + O.Oil 18.42 DISK 1 1343 85.3 13.2 1.6 0.0 0.0 0.163 + 0.015 16.37 32.48 6 10 4 8 DISK 2 1340 76.0 19.7 3.3 1.0 0.0 0.294 + 0.025 23.15 49,23 6 20 4 a DISK 3 . 2661 55.7 27.7 11.2 3.5 1.9 0.689 + 0.031 49.04 67.Ó0 12 20 a 8 DISK 4 2656 69.8 21.6 6.4 1.6 0.7 0.421 + 0,024 36.68 43.25 12 10 8 8 KANAL 38.5 44.2 15.2 2.1' 0.0 0.81 + 0.014 27,7 3 DISK I 1342 76.6 20,0 2.9 0.4 0.0 0.272 + 0.024 23.89 38,01 8 10 4 8 DISK 2 1340 65.9 24.5 7.3 1.9 0.4 0.465 + 0.034 33.01 57.89 8 20 4 8. DISK 3 2662 37,5 27.0 16.2 9.0 10.3 1.367 + 0.05Ó 67.21 95.91 16 20 8 8 DISK 4 2656 54,8 26.8 11.2 4,9 2,3 0.744 + 0.034 51.22 55.45 16 10 8 8 KANAL 22.3 43.7 27.9 6.0 0.0 1.18 + 0.015 36.84 DISK 1 DISK 2 DISK 3 DISK 4 KANAL 1341 1341 2662 2656 65.8 25.1 7.1 54.1 28.9 11.6 14.4 14.8 10.4 39.0 26.6 14.9 1.9 4.0 0.2 1.5 8.2 52.2 8.0 10.8 9.0 36.6 40.3 14.1 0.0 0.457 + 0.033 33.59 48.48 10 10 0.706 + 0.043 44.18 71.71 10 20 6.020 + 0.201 87,98 309.47 20 20 1.375 + 0.053 66,34 78,24 20 10 1.59 + 0.015 46.02 Tabela 2, BROJ % RASPOD. BEDA ČEKANJA ZAilTJEVA 0 1 2 3 4 + 90% % 'iAUZBĆA tgftiW \ a^W DISK 1 1512 98.2 1.8 0.0. 0.0 0.0 0.018 + 0.005 2.33 23.53 1 10 4 8 DISK 2 1480 97.3 2.6 0.1 0.0 0.0 0,026 + 0,007 3.37 34.96 1 20 4 8 DISK 3 ■ 2974 93.0 6.6 0.3 0.0 Q.O 0.073 + 0,008 7.33 39.43 2 20 8 e DISK 4 2998 95.9 3.9 0.1 0.0 0.0 0.04ä + 0.006 5.50 28.49 2 10 8 8 DISK 5 IS 6 7 97.4 2.6 0.0 0.0 0.0 0.026 + 0.007 2.46 24 .28 1 10 4 8 DISK 6 1469 96.9 3.0 0.1 0.0 o;o 0.031 1 0.007 3.29 34 .51 1. 20 4 8 KANAL 84.8 14.2 1.0 0.1 0.0 0.16 + 0.006 5.57 DISK 1 1512 96.6 3.3 0.1 0.0 0.0 0.034 + 0.007 4.95 25.94 2 10 4 8 DISK 2 1480 93.0 6.6 0.3 0.0 0.0 0.073 + 0.012 7.06 38:52 2 20 4 8 DISK 3 2974 36.9 11.3 1.5 0.2 0.1 0.152 + 0.012 15,12 4 3.87 4 20 8 8 DISK 4 2998 91.2 8.0 0.7 0.1 0.0 0.097 + 0.009 11.30 31.48. 4 10 8 S DISK 5 1567 95.3 4.7 0.1 0.0 0.Ò 0.048 + 0.009 5.21 26.63 2 10 4 8 DISK 6 1469 93.1 6.4 O.S 0.0 0,0 0.074 + 0.012 Ć.80 37.21 2 20 4 8 KANAL. 70.3 25.4 4.0 0.2 0.0 0.34 + 0.009 11.15 podaci potrebni da bi se moglo napraviti model sistema kojim će se prema specificiranom nivou detaljizaoije prouiavati fenomeni koji se u ovakvom podsistemu pojavljuju. Podaci koji se moraju znati sm - broj zahtjeva za ulazno/izlaznu operaciju u sekundi /1^^1 = 1,2, ...N - broj disk jedinica spojenih na jedan put H - prosječno vrijeme potrebno za putovanje glava za öitanje/pisanje Sj^ 1=1,,..,N ~ prosječna dužina prenesenog bloka podataka kroz kanal tj^ - brzina okretanja disk jedinice Jedina je 1. konstantna velićtna za neki model disk jedinice, a ostale se veličine mijenjaju i ovise o konkretnoj situaciji. Da bi se dobili točni podaci koji karakteriziraju neki odredjeni U/I podaiatem vräeno je niz mjerenja različitim softverskim Bredstvima, Bududi da je potrebno dobiti Sto točnije podatke da se može izvršiti validacija i podešavanje točnosti rada simulatora korištena su programska sredstva koja zapisuju sve dogadjaje iz nekih klasa dogadjaja u sistemu (vidi ,(4)). Rezultat snimanja rada disk jedinica spojenih na jedan kanal dan je u Tabeli 1. Uočljivo je da postoji prilična razlika u srednjim vremenima posluživanja disk jedinica äto je posljedica prije spomenutih različitih karakteristika I smjegta-ja datoteka na njima te pristupnih metoda i načina rada pojedinih komponenti operativnog sistema koje s njima rade. Na slici 4 i 5 su dane frekvencije vremena posluživanja izinierene za 2 diska. Iz ovakvih mjerenja dobiveni su realni podaci kao posljedica karakteristike opterećenja pa se podsistem može promatrati kod maksimalnog, prosječnog, tipičnog itd. opteredenja. Ulaskom u model sa takvim podacima mjeri se efekt promjene i djelovanja na pojedine komponente kod različiti!» opterećenja i mogučih konfiguracija. Simulator se u principu može upogoniti sa podacima dobivenim rnjerenjem tako da se koriste Izmjereni dogadjaji (trace-driven) ili se može na osnovu mjerenja nači funkcija raspodjele vjerojatnosti dogadjaja i na taj ga način upo-goni.ti. Često se koristi i kombiniranje te dvije metode. Ovdje dan model se upogonjava ea generiranjem slučajnih brojeva po funkciji raspodjele vjerojatnosti koja najbliže opisuje realni sistem. Sigurno da je interesantno napraviti 1 upravljanje realnim dogadjajima te komparacijom mjeriti točnost pretpostavljenih funkcija raspodjele. Izračunavanjem 0,90% nivoa pouzdanosti za pretpostavljene vrijednosti odredilo se broj potrebnih uzoraka koji se trebaju generirati. Isti postupak se primjenjuje i za mjerenje realnog sistema i potrebni broj promatranja. U prikazanim tabelama taj je broj uzoraka znatno Iznad potrebnih i sigurno leži u danom intervalu pouzdanosti. U modelu je pretpostavljeno da zahtjevi sa posluživanje za neki dlak I, I IN dolazQ po Poissonovoj razdiobi sa srednjim brojem aahtje-va u jedinici vremena A pa se vjerojatnoot da de k zahtjeva dođi u vremenskom intarvalu opisuje sai P, (T) Tr e" MO, k90,r5>0 Pretpostavljeno je nadalje da je vrijeme za postavljanje glava za čitanje/pisanje ("seek") dano po eksponencijalnoj razdiobi, raspodjela vremena potrebnog za okretanje diska("latency" po uniformnoj razdiobi /'o,R/ ta vrijeme transfera po eksponencijalnoj razdiobi. U modelu su, da aumarlziramo, uzete još i sli-jedede pretpostavke! - diskovi rade po SLTP disciplini - uzeto je u obzir trajanje komandi koje kod velikih opterećenja ipak nisu tako zanemarive u ukupnom opteređenju (prethodni modeli ne uzimaju komande u obzir) - za vrijeme trajanja komande put je zauzet i obratno, kad je put zauzet transferom podataka, ne može se poslati komanda. - u fazama dok je kanal zauzet (vidi sliku 3) postoji medjusobno djelovanje diskova na vrijeme posluživanja. Vrijeme koje se potroši u 6) ovisi o broju puta koliko se ponavlja i o vjerojatnosti da je put slobodan. - pretpostavljeno je da su "seek", "latency" i posluživanje kanala . za svaki zahtjev za posluživanje nezavisni. DOBIVENI REZULTATI Napomenuto je da su Izlazni rezultati koji se dobivaju iz simulatora prilagodjeni obliku koji se dobiva iz programskih monitora na realnom sistemu. Iako je na ovom prostoru nemoguće pokazivati sve varijacije koji se mogu promatrati Izabran je za promatranje sistem koji ima na kanal preko kontrolne jedinice spojena 4 diska. Za svaki disk su izabrane različite kombinacije trajanja "seek"-a, transfera podataka i "latency" faze. Promatralo se efekt porasta opterećenja po svakom disku (različit za svaki disk) na duzinu reda čekanja na posluživanje, prosječnu duljinu reda i prosječno vrijeme odgovora (posluživanja)tOy diska. Uz to se može vidjeti kako se opterećenje pojedinih diskova reflektira na opterećenje kanala. Izračunat je broj potrebnih zahtjeva uz nivo pouzdanosti 0.90 i interval pouzdanosti od oko 5% srednje vrijednosti dužine reda. Nakon toga se promatrao efekt povećanja broja diskova na istom kanalu sa 4 na 6 i 8 diskova spojenih u jednom nizu. Za svaki niz je promatrana promjena opterećenja na prije dane veličine. Kako se iz toga za procjenu efikasnosti rada odre-djene konfiguracije mogu promatrati b obzirom na dane kriterije različiti efekti, i za sve mogućnosti ovdje nema prostora kao ilustracija rada, prikazana je na nekoliko dijagrama promjena vremena posluživanja jedinica kod istog opterećenja kanala na različite diskove (sa razlićitim "seek"-ora, transferom podataka) 1 različitim brojem disk jedinica, U tabelama se prosječna dužina reda čekanja označila sa Ln, a prosječno vrijeme odgovara sa tg. Ostale veličine su prije objaSnjene. značajno različito od polovice vremena maksimalnog trajan ja ."seek"-a. !)) Nakon Sto Je završio "seek" disk jedinica signalizira završetak te operacije prema kanalu. Da bi se to obavilo mora biti slobodan prethodno definirani put kroz sve resurse. To vrijeme je'očito funkcija korištenja kanala i vremena posluživanja zahtjeva. 5) Jedinica se ponovo spojila na kanal signalom o završetku "seek"-a i äalje se komanda za postavLjanje na odredjèni sektor. Statistički to vrijeme iznosi pola vremena potrebnog za okretaj diska, 6) Kad. se dosegao odgovarajući sektor jedinica pokuäava da se nanovo spoji na CPU preko definiranog puta i to vrijeme opet ovisi o korištenju puta i vremenu posluživanja zahtjeva. 7) Sve dok kompletan put nije slobodan sistem je u fazi 6 koja traje opdenito n okretaja diska. Interesantno je razmotriti koja je vjerojatnost da nakon što se jedinica nije uspjela spojiti na CPU u prvom okretaju spoji u nekom od slijedećih okretaja, OSito da to ovisi o broju pokušaja đa se jedinica spoji i može se naći da je jednako vremenu potrebnom za okretanje diska pomnoženom sa postotkom zauzeda'i podijeljenom sa (100 - postotak zauzeća).■ Uspjeänim povezivanjem jedinice preko definiranog puta sa CPU-om po5inje transfer podataKa. Vrijeme za ovu operaciju ("search id" i "transfer") ovisi o pristupnoj metodi (ISAM, SAM, DAM)-, dužini bloka podataka na disku i naöinu alociranja (ataza, cilindar te zbog toga tiaöinu pre-, nosa; više staza, lanac CCW-ova itd.) KONSTRUKCIJA MODELA I TAKA DOBIVANJE ULAZNIH PODA- ProuCavanjera rada različitih resursa ukljuće-niJi u promatrani podsistem i ođredjivanjem njihovih medjusobnih odnosa i veza problem je specificiran. Sada treba specificirati koji su 20 10 % DISK I srednja vrijeme posluživanja broj" uzoraka 10000 20 10 10 20 30 AO 50 6 0 70 SI . 4. ■ % 100 150 >150ma DISK H srednje vrijeme posluiivonja 58 ms broj uzoraka 10000 10 20 30 . 40 50 60 70 100 150 >150 ma di sit broj uzo- ukupno pros j. irax. jedinica, rata VL'ijenE vrijeiTie vrijaiie za U/I posi. pogluž. 50 "75 ________ ^ 81.47 10.21.....473B' 2,0 0.92, 0r4 0.21 0.12 DISK A 11733 DISK B 36785 DISK C 3025 DISK D 41212 DISK F 87178 DISK G 8142 % posluženih zahtjeva do: £msf' 50 75 100 125 150 175 200 225 5. 375.888 0.032 250 "OT 300 0,07 > 0.03 1161.701 0,031 ai!47 91Ì69 96!O7 9a!o8 99,0Q'99.4 99,.61 99.74 99,88 ^9.96 99.99 r, 7ia BS.79 8.76 3.06 1.25 0.54 0.22 0.14 0.06 0.04 ' 0.04 0.04 85.79 94.55 97.62 98.B7 99.41 99.64 99.79 99.86 99.90 99.95 99.99 Via fiflft ■ n nA? 77.71 9.61 3:37 2:31 1.05 1.Ö1 1.61 0.76 0.36 0,19 0.36 139,688 0,042 0.531 ^^^^^ ^^^^^ 99.43 99.63 99.99 1514.527 0.Ü36 80.99 11.13 3.55 3.01 0,79 0.27 0.10 0.04 0.01 0.03 0.01 80,88 92,13 95.69 98.70 99.50 99.77 96.88 99.92 99.94 99,98 99.99 ^ ~ 81,27 10.82 3.62 2,08 0,98 00,32 0.24 0,15 0.14 0,08 ÖTÖ4 DISKE 1411.8. 463.332 Ü.Ü32 0.351 ai.27 92.10 95.92 92.01 99.00 99.32 99.56 99.72 99.87 99.95 99.94 0.21 5484.884 .0,062 143.213 ■ 0.Ü17 „ 52.43 16.38 12.15 8.44 4.96 2,68 1.32 0,68 0.37 0.33 52.43 68.61 80.97 89.41 94.37 97.06 98.38 99.06 99.94 99.78 99.99 ~~ 93Ì83 3.66 90 0,71 0.52 0.07 0.02 0.02 0.14 0.06 0,02 0.339 93.83 97.49 98.40 99.11 99.64 99.71 99.74 99.76 99.91 99,97 99.99 KONTROLM prednji disk cpu kanal JEDINICA disk k j. rd jedinica SI. 1. SI. 2. ćekanj© na posluiivcinje (dužina redo čekonja I čekanje na pot /kanal K.J, \P.O. / vrijeme ćekanja no _posluživanje " seek ' putovanje' g lava za , čitanje / \pisanje / ćekanjB na put /kanal' K.J. \ P. D./ " latent/" 'okretanjeN dié(a nu pravi y sektor J tekanje na put i sektor /kanal k.j. okr'e^üi \ diska ,n)eJ vrijeme posluživanja jedinice 3) li I SEEK I CCW I I 4) 6) 5) set SECTOR CCW vremeno u Itojem kona! poslužuje zahtjev SI. 3. prenos podataka 71 K(ii%o je dodjela puta disk jedinici po principu FCt'S (first come first served) uglavnom napuštena i razmatrana je detaljno napr. u (8) u ovom se modelu pretpostavljao SLTP {shortest latenöy time first) koji se zbog svojih prednosti danas dalelto češće susrecSe. 2bog toga prezentacija modela počinje sa ItratKiro opisom rada ulaziio/izlaznoy podsistema da se uoči svi nužni detalji koji su kasnije mjereni da bi se došlo do realnih vrijednosti i uaelo ih u obzir a riKDdalu. Nakon toga su opisana i prikazane neke inogudnoati kroz modeliranje rada sistema simulatorom. Sugestije za korištenje i poboljšanje mogudnosti i točnosti simulatora dane su na kraju rada. 1. OPiS HADA ULA2NO/IZLA2NOÜ PODSISTEMA Tipičan put koji se treba u izvodjénju jednog ula^no/izlaziiog ssahtjeva prema jedinicama sa direktnim dostupom preći je dan na ulici 1. Ove komponente su prisutne kod £BM sistema S/370, 30XX i 43XX. Kod većih instalacija sa jednim procesorom ili viSe procesora taj put može biti znatno kompliciraniji i tada u razmatranju moguđeg puta učestvuje znatno viäe faktora istovremeno, U ovom radu sd pretpostavlja da pruko kanala do jedinice postoji jedinstveni put. Tipovi dJak jedinica koje se u ovom radu analiziraju su tzv. RPS (rotational position sensln^j) koje omogutfuju znatno bolje korištenje kanala zato što zauzimaju kanal aamo u vrijeme prenosa komandi i prenosa podataka. Vrijeme zauzimanja kanala, kontrolne jedinice, prednjeg diska, i jedinice diska zbog pronosa komandi iako je vrlo malo (oko 0,5 ms) u ovom modelu je uzetDu obzir zato što kod vedeg opterećenja ukupno vrijeme zauzeća kanala komandama nije zanemarivo 1 to povečava točnost modela. Faze koje se dešavaju kod izvodjenja jednog U/I cahtjuva su prikazane na slici 3. 2bog lakšeg praćenja i analize faze su numerirane aa 1) -7). 1) Prvo čekanje nakon iniciranja U/I zahtjeva od strane CPU-a je čekanje na slobodnu jedinicu i na slobodan put do jedinice. To vrijeme čekanja je općenito funkcija od: - vremena u kojem je jedinica zauzeta zboy posluživanja prethodnog ulazno/izlaznog zahtjeva i ovisi o funkciji raspodjele U/I zahtjeva te vremenu posluživanja zahtjeva od strane disk jedinice - vremena Čekanja puta zbog toga što je neki reaure (kanal, kontrolna jedinica, prednji disk) zauzet. Općenito se kod viäeatrukih puteva kao na si. 2 mura promatrati odvojeno zauzimanju svakog od ovih resursa. U ovakvom nsodelu (si. 1) se može pretpostaviti da su oni istovremeno približno jednako zauzeti. Ovo vrijeme Čekanja ovisi o vremenu posluživanja zahtjeva na ovim resursima i korištenju resursa (vjerojatnosti da Je resurs zauzet), 2) Kada je put do disk jedinice tslobodan inicira se komanda kojom se traži pomak ylava za čitanje/pisanje na odredjeni cilindar. 31 Nakon poslanu komandti kanal i ostali resursi na tora putu se oslobaJjaju 1 ostaje nadalje u posluživanju tog zahtjeva zauzeta disk jedinica. Prosječno vrijeme za tu operaciju se kod proračuna uzima kao polovica maksimalnog vremena. To vrijeme za različite jedinice iznosi od 20-30 ma. Zna se medjutim, da to vrijeme ovisi o razmještaju i broju istovremeno aktivnih datoteka te o smještaju VTOC-a (Volume Table of COntena) na disku i često je modeliranje rada jedinica memorije sa direktnim dostupom (dasd) ^ UDK: 681.3:618.876.6 petar knežević, miroslava lapaine NIKOLA TESLA. ZAGREB Razmatran jsođel ulazno/izla«nog podsistema jedinica sa direktnim dostupom. U modelu se primjenom metode slmulaaije promatra promjena srednjeg vremena posluživanja ulazno/lalaznlh zahtjeva variranjem vell&lna koje na to utjefiu. Model dozvoljava Istovremeno nezavisno variranje karakteristika svake pojedine jedinice 1 promatranje efekta na zauzede kanalia 1 vrijeme odgovora drugih jedinica^ HODSLLtHG OF DtR£CT ACCESS STORAGE OBVXCSS (DASD) ACTIVITY. A modal of the Input/output subBystem of direct aocass storage devioes was considered. Simulation methods yrere applied to observe the changes . In the mean servicing time of I/o demands caused by variations in the quantities which influence It, The model allows the,simultaneous 'and.indeipendent varying of the characteristics of each particular runlt'iand jftie observation of its effects on channel activity and the of òther units. ' UVOD ' Tokom zadnjih godina doälo je do nagle preor-, ■jentaclje načina rada na kompjuterskim slste-mirna. Korianicl kompjuterskih sistema sa sve : vläe orjentiraju na Interaktivni rad te se kao Jedno od osnovnih mjerila efikasnosti rada kompjuterskog sistema, promatra vrijeme odgovora sistema na zahtjeve za obradom Inicirane sa terminala. Najvedl djelovi operatilvnog sistema, programi : 1 podaol korisnika se nalaze na jedinicama sa direktnim dostupom 1 istraživanje puta transakcija Ili komande inicirane od terminala kroz slstetn 1 natrag na terminal pokazalo je da je krltlćaii dio puta ulazno/izlazni podsi-steiD jedinica ua direktnim dostupom na kojima se nalaze podaci i programi. Detaljna analiza cjelokupnog sistema zahtje-vala bi kompletnu Inforiuaciju o sistemu (hardver, softver, aplikacija korisnika, karakteri-zaolja opterećenja ltd.) te je zbog |x>trabnlh dugotrajnih ulaog modela vrlo skupa. Zbog toya se razmatranja,u ovom radu ocjranl&avaju na promatranje ulazno/Izlaznog podalateraa. Mjerenje efikasnosti rada i planiranja proälranja i rekonflguraciJa . ulazno/izlaznog poda Istima pretpostavlja stvaranje mođaia podsistema poniodu kojeg de se modi ispitati efekt proinjena opteredenja ulazno/izlaznog podsistema na parametre koji predstavljaju mjerila efikasnosti rađa. U literaturi Ja,jako puno radova koji kociSte-njem različitih tehnika stvaraju na različitim nivoima detalja modele ulazno/izlaznog podsistema (emiJlrljska, analitičke, simulacijake metode), U Ovom radu se koristilo metodom simula- cije. Da bi se lakäe moglo usporedjivati rezultate dobivene Iz modela 1 iz konkretnog si-Steina jedan dio Izlaza Iz simulatora yo svom obliku je identlòan obliku Izlaza koji se dobiju programskim monitorima, razvijenim od strane proizvodjač,a, koji u odredjenlm vremenskim intervalima snimaju statua sistema 1 na osnovu tih snimanja mogu prikazati postotak zauzeda, srednje vrijeme posluživanja 1 čekanja u redu za odredjene resurse /vidi napr. <2), (3) /. Ovdje provedeno modeliranje pretpostavlja konfiguracije u kojima postoji jedinstveni put od CPU-a do jedinice. Vlfiestruki putevi preko viàe CPU-a ovdje nisu razmatrani 1 taj ja problem obradjen u (1). Sigurno je da su I ta razmatranja interesantna, ali ona vrljeiia samo sa jako velike instalacije kakve su Ipak rjedje. zastupljene, Dugotrajnim mjerenjlii« 1 proučavanjem realnog sistema (IBM 3031) dobivena je velika kollölna podataka koji su omogudlll da se u model Ide sa ulaznim vrijednoatima koji odgovaraju stvarnim situacijama. Zbog toga se u ovdje razradjenoiu modelu pretpostavlja da je na BVim jedinicama diskova koji pripadaju jednom nizu spojenom preko prednjeg diska (P.D.) na kontrolnu jedinicu samo vrijeme okretanja Jednako dok se,za razliku od prethodnih nwdelay. svi ostall Interesantni podaci variraju od jedinice do jedinice, jar samo takva slika odgovara realnoj situaciji. Današnje ulazno/izlazni podsistemi srednje velikih 1 velikih konfiguracija Imaju 6, 12 Ili vlSe U/I kanal«. Pretpostavlja ae da algoritmi za dodjelu puta unutar operativnog sistema nastoje približno jednako opteretiti svaki put od CPl)-a do jedinloa tako da Ista raxluatranja vaì£a za svaki mogudl put. l koji Jiiia ulotju fijylstara. lako ie u princi-IJU iiiahsliualan broi aKupova ovih royi attira o^jra-nlätin isključivo valićinom raaijoloìlvu incjiuoriju, u kolonama Sunkcionaine organiüaol ju ruijiatara dat je samo jedan akup. SkoH na podijroijrani obavlja "il i>üiiiod prtibauivanja iia sludedi akuy uni-vürzaliiili rugistara (Context Switch pirinclp) . Uuduiil da poüitüji autolnkreiiitìiitrio i aiitodekre-iiitìiitnù adrtislraiije to 9900 iiiü5e da radi i beiz poüubnoij registra ukazatelja steka. Rtìyistar KU nu iiiože uüüötvouati u indokalranom adrubi-irtiijii, tiJ je LI toj ko3ijrii ukupan broj ruglss-tcird ab jedan umanji. I'ril.lkoiii procjrainlranJa iic--Ki od 16 itiijiatrirn imaju poüobiio funkciju, pa je btvarnl rnapoložlvi broj uni vtsrzaini li re-ijiistard li. U dtìlu tabele 2 koji su odnosi na tì-bitue loijiütre prikazane au vrednosti za Ny, a u delu tiibeie koji se odnoai na It-bitne reyiatrti prikazane su velićine Njg- Medjutim, avi uavedtìni l6"bltiLÌ iiiikroprocesori macju se uapeSno koria-Llii 1 n rt-bitniiii priiiiùnaiua. U yluÈaju 68U00, 9'JUÜ 1 I.Ö1-11/23 u 8-bltntiu priiiicnaKia kori ali ad aamo jedija polovina odgovarajućih l6-biLniii rey tatara. Na taj iiaöiii n^, n^^, i ostaju nei Zilien jeni u Ü-b.itniiii i ifa-bitnlm primenama, pa N - = N,,. ü slućaju ZBU02 u l6-biLniiii roij a i. t» priiiieiiauici = n -15, dok u 8-bltniiii priiiienauia 7 l(j-bMnlh registara se koriste za adrese, a Ö lt)-l>iLnlh reyiatara može ae koriatiti za adreae ill za 1 fp S-bltniii podataka, (Jtlatle sledi n. =7 i n^.-llJ, pa je (>200, N^^^ 18, lil i za B-bitiie priiiu::iie doli I jamo . 6i't što je poaebno na- vedc-no u tdbeii 2. Sto sc tiče 8(JÖ6, aayiasiio iHidJizL prikazanoj na alici J, u S-Uitniiii pj.i-iiieK-iiiia on ae ponaša kao Bi)08 1 za njeya važi i f'ieiiia toiim, ij tabeli 2 iiil kroptoeetiori su yrupiwaui Ztiuiano od toga da li je Ny-ji^Ni^ ili '^jj-fJjjjj tako ila ae inoyu obrazovati lauf) iistt; posebno H-bitnu primene i jjoaebno in 16-bi. tne pr i nitriti. Ove mncj liste gral-ički liiuitrirje tìlika 4, b. KAKl.JIICAK U ovom r.idn iJi ikaz.iii je ((•il.ui koiiib 1 na Lui ii < l>OH(:u|»uk za vrLiliiov^ui jo or.).iiH v.ueI Ji; tKÌrt'a.ibi 1-nlli pi oeeiiui ak 1 h i, i a ta i.i. CiikaZaiii ku pijiiio-rl V rodnu Vnrrj.i 8-bitnlli I U>-h j tii ili mi k lopro-cenora, ali hc predložena moli.ida iiioze b<;v>. ikakvih iziiiciÉti priiiKjiivLl i Zli vi.u.ioii. Mierciprooi^atiora V. 1 ,Wi).ti,J9V7, I 6 I MlerocaiipuUir ieuiniiciue. Inc., MlcrI•)pl(X.■e^.•.sor3 Sojreuird. ti..\l fogle ilainibook Vol.!, No.t, Sept, 1974. 17 I Cole, T.A., A colltuted guide to ndcrtisyslisii ii>.'lec-tli... t^t-i-irU-Uü-l/4 , rJ8l. I y i UljiitivÌL?, J,J., i-Jvalint.ion aroi emijjiii iaon ot B-bit aiut It-blL iidotTipuxeiit».ira. liciiiiiiar held ai Ük! liitoriivit tca'Di! Ciji(t)ruaa. ai tr il- < n ni Q. 0 II' =■ ao c litt rr ai tt I tr c- rf C T- CC o ijTì UJ t^ Q OC c_ G ENE ML CHARACTER! SI rics FUriCTIOilAL ORGANIZATION OF REGISTERS (MAXIMUM NUrBER OF REGISTERS WHICH CAN OPERATE IN EACH GROUP) PHYSICAL ORGAfjlZATIOK DF REGISTERS o» J jr Ol UJ « _i tu )-S' to 3 ts CTLiJ 1 ujc: ti__1 o n C C£ to tE _] fc LU _J Ij- o >- ll =! or c;. ADDP£SS REGISTERS ' DATA AND ' STATUS REGISTERS o m -—. -C _J C «t — o UJ ce CL. UJ (O >— t/5 fes UJ CC a£ lEl fz d S C LJ ^ hj ac i—1 lli 1/1 h-t kU Li- OH U. ^ o «C B: or UJ UJ z = o; C LÜ-t/J rj QC -- LiJ to 1— 1 to Li_ >— _J t5 iS Li__1 O C t/l CU OC LiJ LjJ ra > Z ^ ! lA CC i LlJ i Z , ö o ' s CC C 1 CC o. lO oc t— ^ o Ci. o < t— U-Ì DATA POINTERS INDEX REGISTERS 1 < 1— LO Li_ O CC L^ ca =3 S ! d m - UJ C : ^K/ ^ ! _I lO ! C QC ltj ! o 1; uj t/i o. — i t/T tr LiJ Li. ce 1 tO « t/) ^^ : E O ' =. O Ä < t/l □C UJ )— t/l tr LLj cz: l/l C tO CC LlJ E s o «I 1— < o Ö S s C; UJ X tr to CC LÜ O tJ >: UJ C z 80Ö8 8 1 tE Yes 4 , 1 1 5 2 4 0 1 11 9 ; 0 4 3 4 ; 8.90 87.22 Z80 8 64 i-.e Yes 3 : 1 1 a 0 0 0 14 6 2 1 0 6 7.00 30.15 1802 8 64 1 No 2 16 15 15 15 0 0 ; 1 7 ^ 12 1 0 0 ; 5.72 73.38 6080 S 64 U2 Ves . 2 1 1 3 0 0 0 ; 7 6 ! 0 1 0 6 1 4.84 67.35 eoos 8 )6 I Ves 2 1 ■ 1 1 0 0 0 7 4 0 6 ' 0 2 3.81 58.58 6S09 £ 64 1;2 No ■ 4 i 1 2 5 5 5 0. 2 9 i 3 2 0 0 3.42 54.67 6800 . fi - 64 U2 No 3 . 1 1 1 0 0 0 2 6 I 1 2 0 0 : 2.00 37.00 6502 £ .-64 1 No 3 1 1 0 0 z 0 i 1 ■ 7 ; 2 1 0 0 ' 2.00 37.00 28002 16 64 1 ;2;4 Yes ' 1 2 16 ib ■ 15 0 : 16 10 7 0 0 16 18.51 • 98.61 8086 :' 1ć Ves 4 i J 1 5 2 4 0 t " 0 ! 0 4 3 4 ' .8.90 ; 87.22 68000 15 16ME 1;2;4 Yes S 2 8 . 3 16 0 i ® 7 7 0 8 0 ; 13.21 ^ 95.27 .9900 16 64 U2 Yes 16 : 1 0 15 15 1 = 0 i 16 7 i 0 0 11 0 11,00 • 92.13 LSI-li/23 ie 64 1 Yes S ; 1 2 7 7 7 0 1 ' 6 5 i ^ 0 £ 0 6.00 ■ 75.00 18002 16 64 • 1 ;2;4 Yes 5 -1 ■ 2 16 16 15 0 i 16 10 i 0 15 0 15.00 96.87 8036 ! 16 iri3 1;2 Yes 4 : i 1 - 5 2 4 0 i 7 9 i ° 2 5 0 6.64 78.43 808B ■ 3 1MB U2 Yes 4 ' 1 1 5 2 4 ■ 0 . 7 9 i 0 2 5 0 6.64 ^ 78.43 = «6 «reg = S = «16 »■reg ' «16 » mikroprocesore 1 koji se mogu prtmeniti ako se proces vrednovanja proälri. i na ove karakteristike. U drugom delu tabele 2 u kolonama pod nazivom FUigCTIONAL ORGANIZATION OF REGISTERS nalaze se podaci o adresatailnim registrima mikroprocesora. U kolonama NUMBER OP EQUIVALENT UNIVERSAL REGISTERS i PREFERENCE RATING OF ADDRESSABLE REGISTERS nalaze se finalni rezultati vrednovanja. Mikroprocesori su u tabeli poredjani po opadajudim vređnostlma preference adresabil-»ilh registara u okviru svake od grupa. U koloni DATA BUS WIDTH data je äirina spolj-ne magistrale podataka. U koloni ADDRESS SPACE je data veličina direktno ađrasabilnog memori j skog prostora bez upotrebe pomodnog hardvera i softvera za njegovo proširenje. Veličine operanada sa kojima mogu mikroprocesori raditi date su u koloni AVAILABLE sizes OF OPERANDS. Naznačene su one veličine operanada koje su veličine bajta ili vede. Operandi veličine 1 i 4 bita nisu uzimani u obzir. Pored toga nisu uzimane u obzir ni dvostruke veličine operanada koje su rezultat operacije množenja. Podaci ct prekidima su dati u kolonama VECTORED INTBRUUPTS i NUMBER OF PROGRAM PRIORITY LEVELS. U koloni NUMBER OF PROGRAM PRIORITY LEVELS naveden je ukupan broj nivoa prioriteta na kojima se mogu izvrgavati mašinske instrukcije ne uzimajući u obzir kako se na te nivoe dolazi: hardverskim ili softverskim prekidom, ili direktnim postavljanjem nivoa prioriteta iz nekog od programa. U kolonama FUNCTIONAL ORGAKIHATION OF REGISTERS dat je prikaz najvedeg mogućeg broja registara sa svakom od navedenih funkcija. Na primer, 2 8002 i 69(1ÜÜ ne mogu istovremeno imati oba ukazatelja steka, već im je u jödnoin trenutku dostupan samo jedan, sistamski ili korisnički stek. I pored toga u opštejti alučaju se oba ate- mogu hsz ograničenja alternativno koristiti, pa su u ovom slučaju u koloni STACK POINTERS naanačtina dva steka. Kako u mikroprocesoru mora postojati brojač naredbi, a u slučaju mikroprocesora 1802 COSMAC bilo koji üd adresnih registara može biti korišten kao brojač jiariidbl, to je u ovom slučaju maksimalan broj adresnih registara morao biti smanjen za jadan. Kolona NUMBER OF STATUS t'LAGS ne dajo samo broj indikatora unutar statusne reči mikroprocesora, vtsd ukupan broj unutrašnjih indikatora dostupnih programeru. Podeli-i riiglstara u delu PHYSICAL ORGANISATION Of REGISTLIRE je Izvräena sliodno definicijama n "đ' "u ^ "e '^'ägistara na način kako je to llua- trovano slllccim 3. Za razliku od funkcionalne organizacije registara ovđe su date vrednosti koje odgovaraju broju registara u upotrebi prilikom programiranja. One su manje ili jednake jiiaksimalnlin vteđnoatiroa i odgovaraju registarskoj arhitekturi koju vidi programer u jednom trenutku. U nastavku slede objaänjenja kako su odredjene vrednosti n^, n^, n^ i n^ tamo gda su takva objašnjenja neophodna. zilo^ aSO. Ovaj mikroprocesor ima dva skupa registara, primarni I sekundarni, koji se koriste alternativno. U kolonama maksimalnog broja registara oni su uzeti u obzir, dok u kolonama fizičke organizacije registara nisu. Razlog je što programer u jednom momentu koristi samo jedan od dva skupa dok drugi koristi za opsluživanje prekiđnih rutina, privremeno čuvanja sadržaja registara, ltd. RCA OPPI80Z COSMAC. Karakteristika ovog mikroprocesora je izrazito neuravnotežena organizacija adresabllnih registara. Šesnaest l6-bitnih registara s.e mogu koristiti samo kao adresni. Pored njih postoji jedan registar podataka -8-hltni akumulator. Svaki od 16 adresnih registara može imati ulogu brojača naredbi. Ako se od preostalih 15 jedan koristi kao ukazatelj steka, a dva za opsluživanje prekidne rutine, ostaje korisnih 12 registara za programera, Ta vrednost je 1 navedena u koloni n^. Motorola MC6609. U koloni n^ ne uzimaju ao u obzir ukazatelji steka. Medjutim, dva put-tojeda ukazatelja steka mogu se istovremeno upotrebiti kao adresni registri. Da bi se ovo uzelo u obzir vrednosti navedene u kolonama data POINTERS 1 INDEX REGISTERS au za dva vede od vrednosti u koloni n . a Zilog za002. Od 16 univerzalnih registara samo registar ro ne može sadržati relativnu adresu prilikom indeksiranja te je u koloni fixed indices broj registara umanjen za jedan. Iz istog razloga kao i u slučaju 6B09 u kolonama data pointers i index registers dodat je ukaza-tel) stüka, éto nije učinjeno u n^ koloni. U koloni stack pointers navođeni su slstamaki 1 korlanlčki ukazatelj steka 1 pored toga àto se ne mogu siuiultano koristiti. Motorola MceaOOO. Va£i isti komentar kao u slučaju k;B002. Texas Instrumenta TMS9900. l'rogramlrajudi ovaj mikroprocusor programer mož« da koristi 16 univerzalnih registara koji predstavljaju doo memo- «Oéa I-- Ng = 8.90 ---—1 «WS Njg - 5.6(| AH 0 AL CH , CL rs BH 1 BL ĐH I DL « 8P SI 0> , nt>4 Hull I AX ex BX DX BP SI D) HutS L. a) 61100 r~ ■n H r\i=i ei 180 No = 7 T 0 I A I 1S rid.i B C 0 e H L n«>< ngsl l. C) 6*000 p- J1 L. LSI IVW I----- đ) 13.21 oo 01 02 03 04 OS DS ÜT nu>< AO Al A2 A3 A« AS AS no«T «16 = 6 BO «1 RI R3 R4 RS nu>6 tìllka 3, Prijneri odredjlvanja veličina n , procesore a "d' "u' N^g 2a neke 8-bltne 1 16-bitne mlkro- Kako registri podataka mogu prilikom indeksiranja obavljati 1 ulogu adresnih regietara to je Ü slučajevima gde je ovo od Interesa inogude interpretirati DO.....d7 kao univerzalne registre. To je 1 učinjeno na al. 3 tako da je dobljeno J 3.21 ekvlvalent.iJh univerzalnih registara (u protivnome, za n^=7 i n^=8 eledelo bi Nj^g = H).51). Detaljni prikaz postupka vrednovanja adres-abllnlh registara za 13 popularnih 8-bltnih i 16-bltnlh mikroprocesora Izložen je u tabeli 2. Za Izračunavanje E^^^ koriddena je formula (3) sa parametrom Nq=4.328. Pored podataka neophodnih za izračunavanje u tabeli 2 su dati 1 drugi važni podaci koji karakterläu prikazane « pr.imenjena za izračunavanje preferenci oi-yaiii-žaclje mikroprocesorskih registara za 13 popularnih 0-bitnih i 16-bitnih mikroprocesora prikazanih u odeljku kojl sledi. Naravno, prethodna formula se bez teškoća može modifikovati ill dopuniti u saglasnostl sa konkretnim potrebama odredjenog korisnika. Pored kontlnualnlh funkcija, često je pogodno da Be y^ggC^^^^) izrazi u vidu niza pravollnijsklh seyitiönata, pri čemu it! vrednovalelj du£an da uz obrazloženje de£i-iiLSe skup koordinata prelomnih taöaka. Heyistri AX, CX, BX 1 UX su bajt-adresiiblIni, tako da ae u 8-bìtnoj varijanti kod 8088 pojavljuju četiri registra podataka (AH, AL, CU i CL), tj. Registri BX i DX moyu 1 sada da sadrže l6-bitne adrese, a podaci koji se u njih mogu uskladlStiti eu 8-bltni, tako da se radi o univerzalnim registrima polovične dužine (BH, BL, mi 1 DL), pa Imano . Konačno, BP. SI i-Dl nisu bajtovskl adreaabllnl pa predstavljaju univerzalne registre pune dužine, tj. n^=3 . Koristeći formule (1) i (2) sada se dobija 'I. RIsaULTATI VREDNOVANJA ORGANIZACIJE MIKRÜPHOCESORSKIH KEGlSTARA Radi ilustracije organizacije mlkroproctìsor- akJh registara i odredjivanja veličina n , n,, u u JI^ i n^ na al.3 su prlkaaani registri tri popularna fl-bitna mikroprocesora (8088, 6800 1 280) i tri 16-bitna mikroprocesora (Ö086, 68000 1 I,SI-lJ/23). Notacija i analiza registara na H 1.3 podrazunieva B-bitne priinene za 8088, 6800 i 1180, 1 l6-blLne primene za 8086, 68000 1 LBl-11/23 . ' Ihri tome ae mogućnosti registra da prihvata razne podatke ustanovljava detaljnom analizom skupa maäinsklh Instrukcija, a uloga reijlatara u adresiranju odredjuje se analizom Bkupa naéina adresiranja. Rezultate prikazane na si.3 u nastavku ćemo detaljno prodiBkutova ti na primeru komparativne analize 8088 i 8085. Mikroprocesor Intel B08Ö po svojoj unutrašnjoj strukturi 1. skupu niaäinsklh Instrukcija predstavlja 16-bitni mikroprocesor. Hedjut..ii, zbog avoje S-bltne apoljne magistrale podataka 1 softverskih mogućnosti rada u 8-bitnlrn pri-iiienama opravdano je da se 8088 analizira u grupi 8-bltnih mikroprocesora, a njegov 16-bltnl ekvivalent, 8086, u grupi 16-bitnlh mlk-roproceaora. Prema ranijoj klaalflkacl j J 8088 je procesor tipa 8/16, a 8086 je tipa 16/8. Interesantno je upoređltl organizaciju regia-tara za 8086 1 8088 uočavajući kako es jedan lati Bkup registara može korlatlti na dva različita načina. Registri AX i CX kod 8086 aadrže leključivo podatke dok su BX i ÜX, isto kao I BP, Si i iji univerzalni registri (u bmüsKi kako je to definlsano u taòkl 2.2). Odatle je asa 8086 n^ « 2 1 n^ =5 pa prema formulama (1) 1 (2) sledi ^ "n ^ + + n,, lln, /2 = 33 C = n^+n^+n^+1 + (2n^+2n^+n^vi)n^/2 + '16 (-3 + / 9 + 8 .~32 )/2 -- 6.64 . 54 Ng = (-3 + / 9 + 8 . 53 )/2 = 8.90 Kao što se 1 očekivalo Ng > N^g , Ako predpostavimo Wg=Wjg=0.S i prlmenimo aritmu-tičko uarednjavanje sledi ■ reg (Ng + N^g)/2 = 7.77 Đuduči da su u ovom slučaju Ng i Njg bliske vrednosti odabrani tip usrednjavanja ne utiče bitno na rezultat (npr. u slučaju geometrijskog uarednjavanja fi^gg"" 7.6a). Ukoliko registri l6-bitnog mikroproceBora nisu bajt-adreBabllnl, a tunkcija registara je ista za 8-bj.tne 1 16-bitne primene, onda veličine n , n^, n„ 1 n^ ostaju nclzmenjene, adu e pa je Ng = N^g . Na taj način se npr. za l.SI-11/23 dobi ja N reg "8 = ^16 6 . Kod 6800 poutoje samo dva akumulatora i jedan bav.nl reglatar (proizvodjač ga naziva indeks registrom), äto je ekvivalentno sa dva univerzalna registra. Ovaj primer lluutruje da sa sve procesorske funkcije mogu realizovatl i aa veoma ukromnira brojem registara, što je bio čeat slučaj 1 kod nilnlračunara starijeg datuma. Naravno, u ovakvoj situaciji programer nailazi na ni« »igranlčenja koja otežavaju njegov rad i umanjuju rezultantnii efikasnost programiranja. Kod HavrenienJ je koncipiranih mikroprocesora, kao äto je 1160, broj registara je znatno povećan, a njlliova funkcionalnost ji> dodatno poboljšana uvod je njem unlverisaltiih registara. l>renui s 1.3 ZÖO ima ukupno 9 registara koji Bu ekvivalentni sa 7 univerzalni!) registara; u kategoriji B-bitnlh prlmena ovo predstavlja jedan od veoma dobrih rezultata. Konačno, 6 8000 je mikroprouosoir tipa 16/8/ /32 kod koga je prolzvodjač prcdvideo 7 udrcjsnlii registara 1 8 rugi&tara podataka. neposrednog dohvatanja, skladištenja u registre i obrade l6-bitnlb 111. dužih podataka. Prlnieri: 6502, 6000, 6B09 , zao, 8000, 1802 ltd. TIP 8/16. Procesor sa 6-bitnom tnati Istra lom podataka predvldjen primarno na 8-blt-ne prlmene 1 opremljen instrukcijama dohvatanja, skladištenja u reqlstre i obrade 16-bitnlii podataka. Pri tome ae programi za obradu 16-bitnlli •podataka ne razlikuju od procirama na ekvivalentnu obradu a-bltnih podataka; aekvencijalno dohvatanje 16-bltdih podataka usporava obradu ali je nevidljivo za programera. Trinieri b088. 'rlP 16. Prociatior sa 16-bi.tnom magiatralom podataka predvldjen Isključivo za 16-hitne priniene. Specijallzovane Instrukcije za nepoaređno dohva tanje, skladištenje i obradu B.-bitnlli podataka ne postoje. Memorija nije baj-tovski adresalii lila, procesor nema a-bltnih regj.atara, a Bve S-bitne operacije moraju se siiriullratl pomoću odgovarajudih l6-bltnlh operacija, što otežava programiranje i usporava obradu. Primer: IBM 1130. 'i'IP 16/B. Procesor sa 16-bitiioii! magi s tra lotu podataka predvldjen za 16-bltne 1 8-bitne priiuene. postoji vedlna speci jalizovanl h Inatrukclja za prenoa iz iiieiiiorije, skladištenje u proce-aorskiiii registrima, i obradu 8-bi t-nih podataka. Hemoiija je bnjtovski adresalJj Ifia, pri čeiKu iiekö instrukcije dolivataju i obradjujii dva bajta, a neke Jedan bajt. Primeri: Öüe6, 68UüO, ZÖOOO, f.SI-11 . Navedena klasifikacija ukuznjir da vrednovanje procesorskih reglacaia Ima ümiHla jedino u okviru jednog ti.pa primena, t.j. posebno u domenu B-bitnili priinena i posebno u doiiienn 16-bitnil> primčiiia, Sto ■ ' .6 -.. Iii : a : 9 V ici ^ . 11..;- 12 'jl3 , l'I 15 "ä. ■ . p- V V ■ - "• " O'V ii' 'ö' ■ 3 ■ ' V ■> 1 ' I ' 2 2 a- • ■ i ' ■ ■0. ■ 2 • 1 ■ Ó 0.' . ' 0' 0 10 ' ■ ■ ^ 0 0 ; , ' o' ■ '■6 • 1 - , .'"l.T ■ ■ \i . " Ò 9" ' Ò ■ o"'- . ■ 0 ■ 2 ■ ■ 0 ■ 0 0 ■ ' -2 0 t-: . '.0 0-' • .'f ' 4 ' ■ .i' Dr. o' '." ■ Id' 0 ■' o' ' ■ V 8;, • - i r^'. ' . 8' ■ 6 ■ 6 4 t ■ 1 > 4' ,36 . '35 /.32 , 20 .33,. 30 29 NM' ■'2 ' ■ U.4'' ■ 6'.,9 4.8 6 . 9 - ^ .6.8 , 6.6 6,3 6.1 -i : ■'"i .. < ■ T • • j Np ■.. i'6 ■• ;. IB.. 2 Ü 2) '. 22 .. 23 ; ' 24 25' 26 . 27 2a 29 30 ■ ''i- i ■ 2.- K -l'i. , .0 P . 0?' ■ , 0; ^ 0 0 " ■ : ' . .;'. 2';.' ■ t . :> i*' ■ ■ 3 - V '0 • 0 .. 0 , 0. 0 0 "u- ; .-'y V ■ ■ Ò ■ 0;' ■uA-r ■ .2 : .8 ■ - 6 :. .. 2" . ■. 9 0 4 ■.■ B" p: 0' ; 0 '-. 0' : ■■ -2 ,4 • . B , .12. 20. ",..... ' ' - ' C , . 42 60 4.6 . M 60 54. 46 76 lil 121 ■ ■ 'J.5 ■ ■ ■ 8.1 : 9. a 9 .5 a. 9' 8.1 ip.a 13.4 14.1 Ovčtj,' pokazaterj j:e pr03;t0 procéna't, univer,za.lnlii. reyistara-i u;t)ri,neipu organizacija registara' ie najbolja ukoliko ,u reg 1004 Mddjutlm/ < 1004 . ■ joä uvek ne znači nè'ef lkasiiu oryà" rilzàci-Ju reijititéca, jer'ako jé' N dovoljno vell'k-time; Je prpgràm.t r,anj,à olakäano pa. smanjenje, vrednosti u nèina kritični značaj. ■ ' 'i.. u'i; ic a j ; pu ž i h e; -;.poda taka LlitiTNlll 1J«IVl5ßilAt,NiH:K'; Vrednovanje i kdiiipa . aabfliilh ml k r òpra će sf zavisi, .od iiiog li", u a k 1 ad l'ä C11 . ' ' ilkóvatil dvö per ■■ ;»> ' sa "8.7b!::thriii pö / '" '' - - ■ -,■ I Rad " sa ■ te r ni ina ured ja j; ^^ podaci tovi. u ovakvi., veće diižirie sreće ^ pos.toje régi^tri" 1 ' ■■ • . ■ -V ~ ' •podaoliiia onda'-tot ne-pr.edsc *"■ o BUŠtlnsko,- preimućstvo pp sina tra nog mikroprocesora. Rad', sa reCiina' vede dužine javlja se 'uvek kada mikroprocesor podržava neki od viših prograsn-■aklh. je'iika ut okviru malih raSuiiara. i arođnlh Bi 6, te ma gde je korišhp pmogu'tflti direktnu podr-äkii radu sa celobrojnim pćđaćlina dužine barena ' ' óvóni slučaju se ..pod'rr azurne va da ■^ašinšktl;jezik-.obezbediuje aritme-. Čke operacije, prenos, pomeranje, . 1 komparaciju podataka u dybbajtnini / j mehiorl jsk.ljn Cell jama 1 procesorakim ■:■ ' Ima. ■ " ' . " . ■ .iiiajudi u vidu različite potrebe u bajtov-Min prirntinaiiia 1 pr'lmenama ve^tanim za duže reCi Vor i ö no je uvesti k-lasifikaci ju 'procesora pómo-■öuCätfrö B/D,s gdó B ozhačava Širinu magistrale ■ podataka 1 memoirljske reòl, a p (ukoliko postoji) označava da postoje procesorski registri 1 maSlnske instrukcije zäprihvatanje 1 obradu podataka dužine D bita. Primeri ove klaöiflka-blje.u-domenu mikroprocesora 1 minTraČunara su , Bledeči. . ■ ■ TIP a ,"' Procesor/ sa 6-bitnom tDaglstralom podataka prodviđ jen iskljuèivo za 8-bltne pr imene . . Nejna mogučnpsti Ako Ja n =ü tada.je u tJ C=Cg . Ostali važni speci jalni . slučajevi foniiule (1) au: = '^u ^ Su - 1 - S ^ S + Sb ■ ^ = S S Se - » "e = ° "a = ° Prema tome, formula (1) je uni'veržalna, te Be može prlmenlti na 8-bitne, ić-bitne mikroproce-i sore, kao i na procesore drugih, vodih računara. SKup registara se moie smatrati, etatistički posinatrano, ekvivalentnim skupu univerzalnih registara ako oba skupa omogućavaju jednak btoj (a,d)-kombinacija, Skup registara koji sadrži n^ adresnih registara, n^ registara podataka, n^^ univerzalnih registara standardne dužine 1 n^ ujUverzalnlh registara polovične dužine smatramo da je atatistčki ekvivalentan skupu ođ N univerzalnih registara ako je (H + 1) (N + 2)/2 = C Hešeiije gornje jednaćlne daje N = L - 3 ( /~9~T~BTČ"-^TT] / 2 . (2) N se može interpretirati kao broj univerzalnih rùyistara koji eu u atatlatlčkom smislu funkcionalno ekvivalentni postojedini apecljallzovanlm 1 univerüalnim regi a trima. Stoga demo N zvati broj ekvivalentnih univerüalnlh registara . ukupan bL-oj (a,d)-kombinacija C i registara N ^ odražavaju Istovremeno broj dostupnih adreaabll-nlh registara i fleksibilnost njihove upotrebe, pa se C i N mogu direktno primeni ti u vrednovanju i poredjenju adresabiInih'registara. Ofsnovne osobine formula (1) 1 (2) su: 1 . C 1 N au striktno rastuće funkcije ii. , n,, a ij "u ' "e ■ "l^^'J toga je svako povedan je broja regiatara i povečanje C i N. 2, Ako je r>. n 0 onda je, kako se 1 očekuje, N = n^ . Za sve druge slučajeve N je jednako n^ plus ink remen t koji odražava utlcaj n^, n, 1 n . a U & 3. üa svako n^ ä 0 i svako k i 0 slučajevi "a = "d = "e 0 a d n^ = 2k «U ekvivalentni. 0, 4. Formule (1) i (2) au nezavisne od "subjektivnih Interpretacija" u aludedem siiilalui ne moie ae postidi povedaiije C i N ako se univerzalni registri interpretiraju kao specijallzovanl. Tada se, u stvari, C 1. H smanjuju. . , Druge interesantne osobine formula (1) i (2» su prikazane u 30 primera tabele i. Primeri 1-7 llustruju osnovne uticaje odnosa broja univerzalnih 1 specijalizovanlh registara. Na pri-nierlma 6, 8, 9 1 10 kada je n^+n^=const , vidi se da je slučaj bolji od slučajeva gde n_,?in. , zavisnost n od odnosa broja specijali- a Cl zovanlh registara 1 univerzalnih registara polovične dužine prikazan Je u primerlma 11-19. U prlmerlma 11-15 podrazumeva se 10 univerzalnih registara polovične dužine, dok je u prlmerlma 16-19 n +n,+n =iO bez obzira na veličinu rea d e glstara. Zahvaljujudi prethodno navedenoj osobini broj 3 formula (1) 1 (2), u odnosu na C i H medjusobni odnos broja univerzalnih i speci jalizovanlh registara (primeri 20-23) je ekvivalentan medjusobnom odnosu broja'univerzalnih registara standardne dužine.i univerzalnih registara polovične dužine (primeri 24-27). Na kraju,primeri 5, 28, 29 i 30 prikazuju šta se dobi ja ako se svaka polovina univerzalnog registra može adreslrati pod uslovom da je n +n /2 » 10 . a e' ^ • ^ Koeficijent univerzalnosti teglgjjJLä l'rooes programiranja je najjednostavniji onda kada su svi registri univerzalni, tako da prograiiier ne mora da vodi računa o tome koji registar bira za koju primenu ved jedino o tome ima 11 elobodnlh registara. Ovaj zaključak podržavaju formule (u i (2| time .'Sto važi MSN "a/ "d ^ "u ^ "e Cri tome N = N jedino u slučaju kada - 0, tj, kada N " n . Odavde se uočava da ukupan brcj raspoloživih registara N Ima redukovanii funkcionalnost zbog specijalizacije pojedinih registara. Stoga veličina N predstavlja jednu kvantitativnu meru funkcionalnosti skupa registara, pa u nekim slučajevima može biti od Interesa da se u proces vrednovanja uključi i alededl koeficijent univerzalnosti registara u ;= lOÜ N/N reg [ % J ai (apsolutnih Ili. relativnih) i podataka. Meka aid označavaju broj adresa i broj podataka, respekcivno, koji se mogu nalaziti ü grupi adreaabilnih registara. laraöunademo prvo broj niogudih (a,d)-)conibinaci Ja, za sve tri glavne grupe: (1) speci jalizovane registre, (2) univerzalne registre standardna (pune) dužine, (3) univerzalne registre polovične dužine (a odnosu na standardnu duSinu). Izračunavanje (a,d)-kombinacija se bazira na pretpostavci da su svi registri unutar bilo koje grupe ekvivalentni i da redosled uakladlä-tenja adresa 1 podataka u tu grupu registara nije važan. Na primer, ako je broj univerzalnih registara n^=6 1 a=d=l, tada postoji 30 raznih parova adreaa-podatak koji se mogu sraestiti u 6 registara. Medjutim, kada se piše program, izbor odredjenog para nema uticaja na dužinu programa 1/111 njegovu strukturu, pa je opravdano usvojiti da -se u ovom sluCaju radi o jednoj jedinoj (a,d)-kombinaciji (a,đ)=(l,l). Na strukturu programa utiÖe jedino broj doatupnlli registara pa su stoga 1 svi registri unutar grupe ekvi valentni. Za grupu specijallzovanlii registara broj mo-yudih (a,d)-kO[nbinacija, C , je ograniöen ne- 9 jednačinaiiia a s n^ I d s n^ . Moguöe kombinacije su (0,0) (1,0) , . .. , ( ...) (n^,0),...,. odavde je (n^ + 1)(n^ + 1) Za grupu univerzalnih registara standardne dužine broj mogudih (a,d)-kombinacija, C^, Je ograničen nejednafilnom a + d ^n^ . U ovom eluÖaju moguče kombinacije su (0,0),...,(0,n^)t (1,0) , . . (l,n^-l) } (n^-1 ,0) , (n^^-l,!) , (ny,G) . Tako je 1 + 2 + ... + arci jalna suma kombinacija je sada (n.,«n +1 )+... +(n. + n^+n,» = u e o e u = (2nj+2ii^+n^+l ) n^/2. Na kraju, posle ispunjavanja n^ 1 n^ registara, ostatak adraaa su može smestiti g n univerzalnih registara. Jedna ade resa zauzima dva registra u ovoj grupi to se u preostale registre može smestiti od 0 do n^+n^-2 podataka. Slično tome, n /2 adresa može popuniti e sve n^ registre i dopustiti smeStanje od 0 do n^ podataka. Parcijalna suma (a,d)-kombinacija je sada (n^+1)+(n^+3)+...+(n^+n^-i) = = (nj+n^/2)n^/2 . Zbir svih parcijalnih suma u OpStem slučaju daje ukupan broj (a,d)-kombina-Cljai C (n^ + I) + (n^/2 + , ,.l (n /2,0) , pa Imamo da Je (n^/2 +1)^ gde su ±q tei slika 1, Klasifikacija adresabiinih tirocesorskih registara vi II net J N _ * T II I 1 4 3 ■6 S rie-l rif-i I 11 iJ rv. na M e ii ¥ - Sìs I «3 M r I I li IS fld q) fl-bit microprocessors b) 16-bi I microprocessors Slika 2. RtìtiosJod sintjätLirjja adresa i podataka regtstara kod minlračunara t većih računata. obavljaju funkcije adresnih registara i registara podataka. 2. MATEMATIČKI MODEL ZA VREDNOVANJE MIKROPRO-ĆESORSKIH REGISTARA 2.2 Ekvivalentni univerzalni registri '2-. 1 Klasifikacija registara Najvažniji adresabllni mikroprocesorski registri su registri podataka (Data Registers), adresni registri (Address Registers), brojaö naredbi (Program Counter), ukazatelj(i) steka tStack Pointer<8)ì X registar stanja (Status Register). Svaki od njih ima specifičnu ulogu u asemblerskom programiranju. Funkcije brojača naredbi, ukazatelja steka i registra stanja su skoro iste za sve tradicionalne mikroprocesorske arhitekture. Sa druge strane, broj, organizacija 1 uloga registara podataka 1 adresnih registara može se od procesora do procesora znatno razlikovati, äto utiče u velikoj meri na efikasnost asemblerskog programiranja. Dok mali broj ovih registara predstavlja ograničenje u programiranju 1 sprečava optimlzaclju njihove upotrebe od strane viäih jezika, dovoljan broj registara po pravilu olakSava realizaciju efl-katinili (kratkih i brzih) programa. Ovo je naročito izraženo u slučajevima kada su raspoloživi univerzalni registri. Zbog toga je glavni problem u vrednovanju mikroprocesorskih registara napraviti pogodan analitički model za vrednovanje registara podataka i adresnih registara. Za potrebe vrednovanja neophodna je klasifikacija adresabilnih mikroproceiiorskih registara i ona je sa odgovarajućim tetniinima i skraćenicama prikazana na sl.l. Kod adresnih registara razlikujemo one koji sadrže apsolutnu adresu (ukazatelji podataka - Data Pointers) 1 relativnu adresu (indeks registri - Index Registers). Neki od njih imaju mogućnost autoinkre-iiientiranja odnosno autodekreiaentiranja sadržaja zakonstantu {q) pre ili posle izvrSenja instrukcije. Ukazatelj podataka koji sadrži fiksnu apsolutnu adresu naziva se bazni registar (Base Register), a ukoliko se adresa može automatski iiiodifikovatl u cilju odbi;o javan ja, onda takav registar nazivamo brojač podataka (Data Counter). Na sličan način se definiäe fiksni Indeks registar (Fixed index) i indeksni brojač (Index Counter) (ovaj poslednji se za sada srede samo kod vedlh procesora). u nastavku ovog rada razvijen je model za vrednovanje adresabilnih mikroprocesorskih registara baziran na analizi raspoloživih adresnih registara, registara podataka i univerzalnih registara koji mogu da Neka je n broj specijalizovanih adresnih a registara a n^ broj specijalizovanih registara podataka. Pođrazumeva se đa je broj bita u registru podataka jednak Širini spoljne magistrale podataka. Veličina adresnog registra može biti jednaka äirini apsolutne adrese (koja je jednaka Širini adresne magistrale ili manja od nje), ili može biti i manja, ako predstavlja relativnu adresu (najčešče od 8 do 16 bita). Pored specijallzovanih adresnih registara 1 registara podataka, ill umesto njih, neki mikroprocesori imaju univerzalne registre koji mogu sadržati adresu ili podatak. Za potrebe ovog rada sitiatrademo da je registar univerzalan ako prema potrebi može obavljati funkcije ukazate-Ija podataka i funkcije indeks registra i ako u ulozi registra podataka može izvrfiltl sledeče operacije nad svojim sadržajem: (1) dvosmerni prenos podataka memorija-registar, (2) najvažnije aritmetičke, logičke i ulazno^lzlazne operacije, kao 1 operacije pomeranja sadržaja i editovanja podataka, (3) operacije testiranja i poredjenja. Pri vrednovanju mikroprocesorskih registara korisno je razlikovati dve grupe univerzalnih registara. Prvu grupu, univerzalne registro standardne dužine, čine registri koji mogu sadržati adrese ili podatke jednake veličine. Označimo broj ovih registara sa n^. U drugoj grupi, koja je karakteristična za 8-bitne mikroprocesore, dužina podataka jednaka je polovini dužine adrese. Podrazumuvačenio da ovi registri mogu sadržati n podataka ila n /2 ad- U prethodnom prikazu definiuane veličine n^, n^, i n^ predstavljaju četiri glavna ulazna elementa potrebna za vrednovanje adresabilnih registara, Sada je potrebno odrediti funkciju ■^reg^ «reg<"a'"d'"u'»o' za izračunavanje rezultantne preference adresabilnih registara za date vrednosti n^. n^, n^ 1 n^. Postupak vrednovanja su može iz-vräitl imajudi u vidu da je osnovna funkcija adresabilnih registara da omoguće čuvanje što većeg broja raznih kombinacija adresa jedan kvantitativni postupak za vrednovanje organizacije mikroprocesorskih registara UDK: 681.32Z042 jozo 1 dujmović, miletanovaković ELEKTROTEHNIČKI FAKULTET, BEOGRAD INSTITUT „MIHAILO PUPIN", BEOGRAD u aci pmiilöää jedan novi kvantitativni pout u t>aH sa vra'diiovanje 1 komparaoilu organlaaotje mlK- foproctäsoceklh reijlata«. Poutup.ak ee easiiiva na koniDlnatoinol analUl sadržaja adresabilnin prooe Borskili roglatara. »a evaku koiidalnaciju adresnih registara, registara podataka 1 unlverzalnin regiHT tara f nlfjue eiiableu the computation of an overall iiuantitative indicator of register Organization called the uuuiber of eijuivalent universal registers. This indicator is affected both by the number of available registers, and by the efficiency of their organization. The number of equivalent universal registers is then used for organizing a suitable elementary criterion for computing the elementary, preference 6f addressable registers. Furthermore, the computed elementary preference can be aggre-' gated with elementary preferences of other microprocessor attributes according the LSP-ttvethòd for system evaluation, '|'he proposed technique la illustrated by a comparative analysis of 13 popular 8-bic and l6-bit microprocessors. I, OVOD Miioga organizacije i pojedinci suočeni su sa pioblćiiiaiii izbora na jpovol jnije ml kroproc-esotske aihUektute za odredjenu klasu prlmena, fil tome oiiiioi/iil problemi obuhvata ju (1) ooenu mikro-procesorakiti registarci, (J) ooönu načina adre-6 li an ja, IJJ otienu broja adieaa inatrukcijl, (4) iiueiiu Eiitut)a masitmkih liiatruKoi ja I oci-nn ia.iuHi lianjversKlli I softverakiti osobina ve-sanili ači a la tulil prekida, oiijrtiUiaoi ju magia-traln J u Laaa/li la^a, podriiku opui at i vuom uts-teiuu i prdvùtlioolma, 1 «jiiičrio. Uoasiditàuj 1. poku-»ujL uitìiliiovaii )a avoiltll au ae najbešć« na nu-fiirma hib puafinAu blazirano na «iatfciiia tsh i.iii pi l-kuiliiij r« lciujiHiii.lt atributa luikioprtujtiaorake lii teKtui.« I . činjeni au 1 pohuäajl dd au pi.üb lüiii kounjaiijol je mikruprouesoia u iz-vuiini.ij 11u.11 j toiijij I lati jd, dU bu prua la^juntj twU-lìlhu 119 l.aviiuiii (.1511 alt; II« )ili/uu apucl.) j.Ll.zuVrtnuij grčitiokug lulKaza akuijoi/a InaLrukclja t !> I, adi-tlvnlh iiMtoild z= iiilkiO- pr ocesoraka arhitektura mota da poaedu-je [71 Mlkioproceaorake arhitekture se mogu uspeéao kvantitativno vredjiovatl pomocu opäte LSP metode za vrednovanja aložunlh Biatuiiia i:aj, pod uslo-voiu da se razvije kompletan likup relevantnlli atributa arliittìktuce, 1 da au za avakl atribut rüallzujü üdgovarujudi üleinentarnl krlterljum. l'ivi pokušaj u toii> pravcu učinjen je u radu £91, etil jts tu naglasak bio postavljen na vradnovanje načina aduiSlraiija 1 skupova uiaslnakllt Instrukcija, dok iiidtoclu za kvttntitdtlviio vrednovanja organizacije ttiy tatara ulj« bilo. U ovum t-tidu ont ani čavaiiio au na vrednovanje adruaablliUh ml kropt.ot;L:üorakili r-a-ilstara. U tom smislu ovaj rad prtJdatavlja dopunu m^todologlja izlozcintì u radu t U j l korak u pravcu ruallzactljM ctjlovite JiiiitodoUKj L jd za vriiduovanja mikropro-euHijiakili arliitdktuiđ. pored toga, poatupak vi:udiiovan Koji a.ltidl muzu ue bùz te^koCa priiuenltl I za vteJnovanju procuaorakIh Ce Iroamo dovolj diskovnega prostora, je priporočljivo, đa imamo na eni enoti prevajalnik, knjižnične simbolne zbirke (.SYM), knjižnične objektne zbirke (.JRL) in povezovalnik. Ta kombinacija omogoča hitro prevajanje in povezovanje programov. Tako niso potrebne zamenjave disket pri iskanju manjkajočih zbirk. Ce se ne uporablja opcija /S, mora prevajalnik najti knjläniöne simbolne zbirke (.SYM). Te zbirke morajo tako biti na prevajalnlSkem ali na izvirnem disku. Podobno velja tudi za lastne knjižnice (prevedene iz paketnih specifikacij). Priporočljivo je imeti tudi sistemske knjižnl-ine zbirke na prevajalnläkem dlaku in lastne knjlìnice na izvirnem disku. Pri uporabi opcije /S se lahko knJliSniiSne simbolne zbirke nahajajo na posebnem disku (npr. na povezovalnem disku). TskSen dlak se po potrebi vstavi v prevajalniäkl diskovni pogon. Ce pa so te zbirke ie na prevajalnläkem disku, zamenjava ni potrebna. Pri uporabi opcije /S mora biti na prevajalniäkem dlaku vsaj 2k zlogov prostora. Ta prostor se uporablja za informacijsko zbirko, ki pove prevajalniku, kam 'naj pogleda za druge zbirke. Če se opcija /S ne uporabi, mora biti na preva jalniškem disku 5e precej prostora (I6k zlogov + dvakratni obseg izvirne zbirke). Ta prostor je potreben za vmesne in končne zbirke. Pri sistemih, ki imajo diske s 400k zlogi In več, je najbolje Imeti prevajalnlške zbirke, knjižnične simbolne zbirke, knjižnične objektne zbirke in povezovalnik na prevajalniškem disku. Tu opcija /a nI potrebna. Podobno lahko imamo na enem disku tudi vse Izvirne zbirke. Pri sistemih z 240k - 400k zlogov na disku ja priporočljivo imeti poseben prevajalnifiKl in poseben povezovalniäki disk. PrevajalnlSki Öiök vsebuje äe sistemske knjižnične simbolne zbirke. PovezovalnlSki disk ima Se oleteciolta knjižnične objektne zbirke. Tu opcija /S ni potrebna, v kolikor bo zadevne Izvirna zbiErJta na enem samem dlaku, Pri manjših diskovnih ano-tah ee uporabi opcija /S, pri zelo majhnih (pod I60k zlogi) pa se prevajalnik razdeli v dva ali v več delov I ustrezna navodila so pri tem pojavijo med prevajanjem. 6, Sklep Čeprav Janua Ada nI popoln prevajalnik za (standardni jezik Ada, Je vendarle zelo sanimlv 0 stališča možnosti učenja tecta jezika na malih (mlkro) sistemih. Ta prevajalnik je tako moč zelo uspeäno uporabljati na sistemu Partner (proizvod DO Iskra Delta)> ta sistem uporablja disketo in vinčestrski disk e velikim obsegom pod operacijskim sistemom CP/H Plus j prevajanje In povezovanje sta tu zelo hitra postopka In tudi omejitev Izvirnih zbirk praktično ni. Jezik Ada bo prej ko slej postal aktualen na posebnih področjih programiranja, ima pa tudi posebne lastnosti, ki so äe kako koristna, V teh dneh prihaja na tržiSče tudi paket za aritmetiko s plavajočo vejico, ki bo omogočil uporabo Janua Ade tudi na klasičnih. - poslovnih in tehniških področjih. TAKO V TAKO v FRANCIJI ! FRAHCIJI ! Nabor za računalniSko generacijo Francozi so pravi posebneži v podpiranju prodora računalniške tehnologije. Intelektualci in vladajoči državniki so vselej podpirali sodoben tehnološki razvoj s posebno skrbjo za ohranjanje in nastajanje francoske računalniške industrije, izobraževanja, terminologije. Letos v januarju je francoski publicist J,J, Servan-Schreiber sprožil idejo, da naj bi srednješolci in Študentje opravljali "nacinalno računalniško sluìenje" kot alternativo za 12-mesečno služenje vojaSkega roka. Ta nenavadna ideja Je postala zanimiva tudi za vladajočo garnituro. V marcu letoa je predsednik t\ Mitterrand sprožil akcijo za uresničitev Servan-Schrelberjeve ideje. Namesto služenja vojaškeoa roka bodo francoski Študentje politehnike in posebnih gimnazij lahko izbrali poučevanje nezaposlenih mladih o eletnentarnl računalniški tehnologiji. In v okviru tega posebnega gibanja je Mitterrand takoj ukazal mobilizacijo 12000 diploml-rancev iz 110 inštltuclj, ki bodo predavali na računalniških tečajih. MAtterrandova motivacija za to akcijo Izvira iz strahu, da ima Francija že znaten zaostanek v tekmi z japonsko informacijsko tehnologijo. V tem trenutku je težko napovedati, kakSen bo učinek tega računalniškega nabora. Izobraževalni tečaji za nezaposlene med 15 in 25 letom starosti bodo trajali le mesec ali dva, kar pa bržkone ne bo zadostovalo za obvladanje sodobne računalniške tehnologije. In nazadnje je nabor vendarle samo nabor, zato je vpraäanje, ali bodo francoski računalniški rekruti dovolj motivirani, da bi obvladali dolo v tem programu. Vsekakor pa velja občudovati Mitterrandovo hitrost reagiranja, ko je sprejel izziv In ga pretvoril v akcijo. Francija vsebolj spoznava, da so za postavitev sodobne računalniška industrije potrebni posebni napori In posebnd podpora francoske družbe. Seveda se ob tem postavlja tudi vpraäanje, kje smo pri nas v teh naporih, kje so pobude za bolj sodobno izobraževanje v srednjih in visokih šolah, kakSnl so naäl programi na tcro področju, ali jih spJoh Imamo (tudi Intelektualca In družbene aktiviste)? Ali ni naSa Izobraževalna dejavnost na področju računalništva preveč (in pretežna) nestrokovno pragmatična, - povrSno rutlnerska, - močno utrujena (učitelje utrujajoč«), - malenkostno pridobltnlSka in pedagoško neangažirana? A.P.ŽelBznlkar kako pa pri nas? kako pa pri nas? -- ätevanò podprogramsko telo. COMPILER TABLE USAGE: CURREMT MAX. LIMIT A>STAT Cl*.• SVMQOL TABLE 5 45 4 00 TYPE TABLE 14 90 PROCEDURE TABLE 6. SO PARAMETER TABLE 13 90 RANGE TABLE 7 100 PARSE STACK 3 25 50 -- Ta preglednica kaìe uporabo različnih — prevajalnläkih tabel,. Če je katera od — tabel blizu svoje meje, naj bi se za— devni objekti v programu uporabljali — manj pogosto, to lahko pomeni delitev — programa na več modulov. Analixni — sklad ka£a globino vgnezdenja posarne-, — znih programskih konstruktov. PASS II COMPLETED — Pretiođ 3 se zaäne nalagati in bo iz— vajan. PASS III - 8060 LISTING FILE B:QS0RT1.PHN ***** Znak se tiska za vsako uporablje- — no pod pro grama k o telo progrčima. DATA USED = 1612 — Decimalno Število podatkovnih zlogov, — uporabljenih v programu. To so samo — statifino- dodeljeni paketni podatki. — Podprogramakl lokalni podatki se — shranjujejo v skladu, HIGHEST DATA ADDRESS = 064C — To je obseg podatkovnega segment.! v .— heksadecimalnl obliki. Ta podatef Je — uporaben za preizkušanje povezovalnih — naslovov. HIGHEST CODE; ADDRESS = ÜBEE — Ta je vrhnji naslov ukaznega koda v — heksadecimalni obliki. Ta naslov ka— že, ali je program prestopil območje. PASS III COMPLETED — Začne se nalagati prehod 4, ki se po— tem.izvaja. PASS IV THANK YOU FOR USING JANUS — Sporočilo konca delovanja prevajal-~ nlka. Prl prevajanju se sporočajo napake takoj,,ko so zaznane, to je v prvih dveh prehodih) v prehodih 3 in 4 skorajda ni več teh sporočil. 5.3. Uporaba prevedenega programa Prevajalnik izdela zbirko tipa .JRL (Janua ReLocatable); ta zbirka mora biti povezana (kombinirana) s knjižničnimi rutinami izvajalnega časa, da bi tako dobili Izvršljivi program. V naäem primeru bomo imeli ukazno vrstico JLINK Bsqsortl Po povezavi bomo vtipkali za uporabo tega programa enostavno 'qaortl'. Tudi pri povezovanju imamo na razpolago različne opcije (npr. za vstavljanje knjižničnih disket), pojavljajo pa se tudi značilna sporočila o napakah pri povezovanju. 5.4. Janua diskete in razpoložljivi prostor V llatl 8 imamo sezname treli disket Janus Ade, in sicer prevajalniške, povezovalniske in storitvene s primari. Povòjmo Sa, kako naj bodo posamezne abi.rke razporejene po posaBieznili diskovnih enotah. RECS 3 5 2 93 6 177 161 149 £63 322 73 29 I 13 3 .6 BVTES BYTES IK IK IK ÌZK IK 23K eiK 19K 33K 31K JilK IDK IK 8 It I K nc IK IK EXT ACC .1 R/U I B/W I n/\j I rt/u 1 Fl/U a H/u 2 H/U a R/u 3 H/tf a H/W 3 R/U 1 R/W 1 R/W I R/VI I H/U i R/W 1 R/U I R/U I n^u REMAINiua Oi'j Cl CitìlT.SfM C (ÜLltlÜ.SVM CiCHAIMLIB.SYM CtCRIlOH.MSG CllO.SYil ClJAiJUS.CCl'l CiJA!4US).ÜUL ClJAMllS2*Cai'l C i JA»US2A>C0i^ CÌJAC4US213-COI1 C IJAI1US3.C011 Cl JAiJUS^.'COl'l CitJLIli&O'SYll ClNAME.Sil C 1 OPCODE.SYM ClSTANÜAhD.SY« CtSTHLIQ.SYM ClTlVlELlEi.SYtl ClUTIL.SYil 36K A>STAT üt*.* HEES BYTES EXT ACC 25 4K 1 R/W EsiBIT.ASM 2 IK 1 H/U BlBlT.JRL 9 2K 1 R/U Bi13IT.L1Q 3 IK 1 R/U BiBlT.SYlt 7 IK 1 R/W BiBLKIO.JRL 9 2K 1 R/U □löLKIO.LlB 25 4K I n/w IjiULK'IÜ.PKÜ 2 IK 1 h/W Eli BLKIÜ.SYW S IK 1 H/U BiCHAIHLIB.JRL 9 2K 1 R/U B: CIIAINLIB.LIB 29 4K 1 R/U UtOlAIULIB.PKQ 2 IK 1 R/U biCHAINLia.SYM 43 6K 1 R/U Bi IO.JRL 13 2 K t R/U Bi IO.LIB 113 I5K 1 n/u BiIO.PiCG & IK 1 H/U BilÜ-SYH 63 1 79K 5 H/U BtJLIBäQ.ASil 48 6K 1 ft/W BiJLIBÖO.JRL 37 5K 1 R/W Bt JLIBÜO.LIB 29 4 K 1 U/W BiJLIüBO.SYil 1 57 20 K 2 R/U bi JLUJK.CM l IK 1 R/U DlOPCQDE.JRL 25 4 K 1 R/U BtOPCODE.LIB 13 £K 1 H/U BlOPCUBE.SYH 33 5K 1 H/U bi STHLIB.JRL 13 2K 1 R/U BiSTHLIB.LlÖ 41 6 K 1 H/U ÜiSTRLIB.PKG 4 IK 1 R/U ßtSTRLIB.SYI-l 19 3K 1 R/U BiTlHELIB-JHL 9 SK 1 R/U BtTlHELIB.LIß 29 4 K 1 R/U BSTIHELID-PKÜ 4 IK 1 H/U ÜiTIMEUlÜ-SYM 33 5 K 1 R/U Bl UTIL. ASlI 3 IK 1 R/U BiUT IL.JHL 1 3 1 H/U DiUTIL.LIB 6 IK 1 R/W biUTIL. SYil ÜYTES REMAI Niim o;j ui 39K A>STAT bi"." Lista 8, Zbirke jia piravajaliiiàkl, povezovalni-škl in storitveni disketi Janus Ade HECS 53 £34 1 17 133 121 16 7 57 49 09 l 50 £01 ÜYTES ÜYTES 7 Ii 3aK 32K l 5K 1 7K 16K 6 K Ili BK 7 K i2H 20 K e6K aE^lAlHl EXr ACC 1 a/u R/U 2 n/u 1 h/W 2 H/W 1 H/U 1 h/W 1 R/U I H/U 1 H/U 1 H/U 2 ti/W ■ 2 )I/W ^JG Dil tìi DsCHÜSSHEf.PKÜ Üi LlISASrlBQ .CDU üi JASrlöO.CüH lit JASdBO.ÙVL Ut JASilÖl .ÜVL BiKALAllA.PKÜ liii'lEÌ'ìCliK.CU.l DtPnlUE.PKQ UiUSOKT-PKü Ol READ. M E Di hEAUSYll.Cüd U 1 3Y« 1 . DVE üjSYfJTAA.CDM 39K -- SHRAiJI RESEUl ZAPIS. END STINSERT50RTJ BEGIN IF NUMB < HAXSUB THEiJ STINSEKTSOBKLIST. t= 11 STACK< 1 ) . Ea< 1= iJlA-lBi LOÜH -- UZAMI VniUJÜ ZAHTEVO IZ SKLADA. LEFT 1= STAGit(STK>.fiEÜJ HIGH 1= STACKCSTK).EUilJ e PUTC"STK=-)J PÜT(STK)J 0 PUT C- LEFT=->; PUT(LEFT)i a PUT<" ftIGHT=")J PUT(hi GH)j b wew.line; STK,i= STK - i;-- SORTIHAJ POD-- KBIRltE r-IAL^JSE OD dAXSUB Z NEPQSREajIM VSTAUITVEIJIM SOnTIRA^^JEH. IF (RIÜH - LEFT) < I1AJS.SUB TMEi-J STIrtSEftTSOHTtLISTjLEFTihlUH)) ELSE LOOP -- flAZDELl IdTEHVALE. 1 1= LEFT; J %=■ niGHJ e PUTt"l=LEFT=") J PUTU); 0 PUT(" J=RIGH=")J PUTCJ)J 0 PUT(" LOW AWD HIGH MARKS OF CUHHEiJT BüHT")J 0 NEW.HNEJ T 1 REC I = LIST(l-tEDIAii((LIST) j 0 PUT<"TIKEC.KE¥J="); 0 PUTtTlBEC.KEYl>J 0 PUT<" SHOULD HATCH (lEDIAW VALUE") J O NEU.LIWEJ LOOP WHILE LISTCD-KEYl < T iREC.KEY i LOOP I I» I ♦ U Erfd loop; WHILE TIHEC.KEYl < LIST TEhEC.KEYlJ I I" I * i; J t= J - i; Eiju IF; EXIT MHEJ I > JJ EHD LOOP;--PONOVI ZAUKÜ 0 PUT<-OO.JE PARTITION - Io-)J Q PUTU); PUT(" J=")J 0 PUT(d)J JEW.LlWEi IF TYPe BiQSORTt.PKG PACKAijE BODY ÜS0RT1 IS ■ -- OCEUJEVALWI PROGRAW QUICKSORT — TA PHOGHÄ-i »IE LE PKIHER SPLÜSiJE SlHT/iKSJS: JEZIKA ADA V PRIMERJAVI 2 JESIKOH PASUAL. -- PODOBEM PBOGBAH JE U WIHTHOVEM A * DS » P. .. •••• OPOMBE 2A PASCALSKE PROßRAHFtEJE JÜSIJÜ QtMAKO . -- POGOJND PREVEDLJIVE VRSTICE SU WAHEMJEiJE 0-PAZOVANJU PREVEDENEGA KODA RAZWEVAiiJU -- .DELOVANJA PROGRAMA. iiERO < CQtJSTAiilT. 1= OJ . iilUÜRECS t CONSTAI'JT 1= SDOi -- največje STEUILO SORTlRAi^IH iAPJSOV TYPE IT EH IS RECORD datai. DATAI 1= 'A'; FlLRECtl) .DATA2 s= 'Z'; PÜTdJJ PUTC-i ">i PÜT; put; new.line; eno fileout; PROCEDURE UUICKSOHT (LIST i IN OUT DRECORD; WU'IB t IN INTEGER) IS MAXSUÖ 1 constant t= 211 -- NAJitAiJJSA PODZblRKAj K1 JE DOVOLJENA V Q3ÜRT-STACKDEP « CONSTANT i= 20; -- OaSEG SKLADA. TYPE ItJDlClES IS RECORD — DELITVENI ZAPISI SKLADA. ÜEG,EDiJ 1 INTEGER; ' Ei'gD RECORDJ £TKiI; pijtclistnwcmedj .keyi ); . putc" "); putclistnam(lef).keyi); PUTC" ">; PUTCHSTNAMCRIT).KEYrJ; ■ PUT<" SHOULD RETURi\l MEDlAiJ VALUE") J NEU. L INE; if (LISTNAiICRIT) .KEYl > LISTNAMCMED).KEYI) THEN IF LlSTNAflCMEDJ.KEYl > LISTNAM(LEF).KEYl TIIEi'J RETURN CMEDM ELSIF CLISTNAM(RIT).KEY! > LISTNAMCLEF).KEY!) TitEfJ RETURNCLEF); ELSE R£TUR.^^CH1T) ; ENÜ IF; ELSIF LISTNAlKi-lED) .KEYl < i.:STNAH(L£F).K£y» then HETURiJCMED); ELSiF LISTNAN(BJTJ.KEYJ■< LISTNAN CLEF).KEYl thei-j RETURN CLEF,); ELSE RETURN CRIT); FUNKCIJE POTREBUJEJO RETURN STAVKE. ElMD IF; END t-lEDlAN; PROCEDURE STINSEHTsdaT CNEUliEC i IN OUT DRECORD; M^N < INTEGER) IS -- MORE EFFICEi>JT -- 'M' JE ZAČETNI. 'N ' KONČNI POLOŽAJ. LFT I integer; -- leva sort iaja ustavitev: savrec/krec i iteii; -- üacasni zap. begin SAVREC NEWRECCH - 1); -- RESI ZAPIS PRED SORTIRNIM OBHOC. FOR HGT IN CM ♦ 1)..N LOOP -- DESNA SORTIRNA USTAVITEV. XREC 1= NEWKECCRGT); NEWIlECdl - I) 1= KREC; LFT <= RQT - i; UHILE \REC.KEYI < WEUKECCLFT;.«EYl LÜÜP -- PREKLOPNI ZAPISI. NEWHECCLFT + I) t=> newrecclft); LFT 1= LFT - I; end loop; NEURECtLFT +1) XREC; END LODPi NEURECCM - 1) 1= SAVREC; put ("niz £ znak v nlzC^') = ')s put (niz £ char to str('0'))j new llnef ~ niz £ bT bTlo nepravilno!" get (zn) } put("vstavi(znak_v_niz(zn),niz,= ")} put(insert(char_to_str(zn),nlz,4)); new llnej ~ ~ put {"niz v celo št(-" - US"") = put(str to lnt(" - 123"))i new llnej put("celo_£t_v_nlz<4 32) = "), put (int_to_str (432) ) ) new_lin0.j — Te procedure se uporabljajo za oblikova- — nje besedil In za uporabniško prijazen — vhod. END nlzni_te3tf Ta program generira tale izpis: niz = nizni test niz2 = programska oprema dolžina(niz) = lO položaj(" ",niz) = 6 položaj("programska",nl22) = 1 položaj(nlz2,niz) = O odstrani(niz,B,3) = niznl t odstrani(niz,položaj("zni",niz),3) = ni test vstavi("rutinski ",nlz,7) = nizni rutinski test vstavl(niz2,odstrani(niz,1,5),12) ^ programska testopreraa Izvleci{nlz2,1 2,6) = oprema izvleci(niz,1,5) = nlzni izvlecl(nlz,dolžlna(niz)-4,4) = test niz i znak__v_niz (') = nizni testj! — Če je vtipkani znak (zn) enak '?', Iraamoi vstavi(znak-v-niz(zn),niz,4) = nlz?nl test niz v celi St(" - 123") = -123 celo It v Hie(4321 = 432 5. Uporaba Janua prevajalnika 5.1. Prevajalne niožnoati in ukazna vrstica Janus prevajalnik pokličemo v Izvajanje s formatom! JAKUS [d:l lms_zblrke [ .razj {/opcija} Tu je ime_^zbirke CP/M zbirka na disku [d:] z razširitvijo [.raz] in prevajalniSkiml opcijami {/opcija) . Če diskovna enota ni Imenovana, ae aktivira trenutni disk; 6e razširitev nI Imenovana, obstaja zbirka tipa .PKG . Prevajalniäke opcije pa so telej D - ne generiraj popravljalnega koda) B - kratka sporočila o napakah; vrstica z napako se ne ciskč»; W - izda se pojasnilo o nezdružljivosti a Janua Ado} C - pogojno prevajanje je vključeno) L - oblikuj listo zbirke z imenom ime zbirke.PRN na istem diaku, kot je Ime^zblrkc.PKG. Ld - cblikuj listo zbirke na disku 'd'} Izbira je v intervalu 'A' .. 'w'| LX - oblikuj listo zbirke na konzolni enoti (CONO I LZ - oblikuj listo zbirke na tiskalni enoti (LSTi)) Hd - usmeri .JRL zbirko na dlak 'd' (Interval je 'A' .. '»'), 6e 'd'-ja ni, bo ta zbirka na trenutno aktivnem dlakui Sd - preusmeri vmesne in končne zbirke na imenovani dlskf ta potreba se lahko pojavi pri diskovnih sistemih, ki imajo manj kot 2S0k zlogov na disketi (npr. pri S-colskih disketah)) uporaba te opcije dovoljuje zamenjavo diskete za naložitev paketne specifikacije (.SYM zbirke)) prevajalnik išče pri tei opciji .SYM zbirke na vstavljenih disketah in če jih ne najde, se lahKo prevajaIntSka disketa zamenjuje z disketami za nadaljnje iskanjef tudi povezovalnik ima podobno .možnost, kar omogoča razvoj vall-klh programov na sistemih z mallcnl disketnimi obsegi) Q - tiha sporočila o napakah) ta opcija povzroči, da prevajalnik ne čaka na akcijo uporabnika po hapakl) v navadnem načinu prevajalnik počaka po vsaki napaki na u-porabnlSkc soglasje, ali naj s prevajanjem preneha ali pa ga nadaljuje; ta opcija je smiselna pri odsotnosti uporabnika, tako da prevajalnik lahko opravi svoje delo do konca) napake oe tu ne pojavijo na zaslonu, zato je smiselna uporaba tiskalnika) določene slntakone napake lahko povzročijo tiskanje velikega Števila sporočil. če naätetlh opcij ne uporabimo, pa velja tole« D B H L R S Q generira se popravljalni kodj sporočila o napakah se ne pojavijo) nI sporočil o nezdružljivosti z Janua Ado; pogojno prevedene vrstice se obravnavajo kot komentarji) ne generira se lista zbirke; ista disketa kot jo ima vhodna zbirka) ista disketa kot je za prevajalnik) prevajalnik zahteva potrditev za prenehanje prevajanja po vsaki napaki. Primeril JANUS preizkus/Q/LX JANUS preizkus.IKE/W JANUS preizkus JANUS preizkus .IKE /B /W /L 5.2. Delovanje prevajalnika Delovanje Stlrlprehodnega prevajalnika za Janus Ado preizkusin«3 na zbirki (Ada programu) z imenom QSQRTI.PKG, ki je prikazana z listo 6. Med prevajalnim postopkom dobimo na zaslonu izpis, ki je prikazan z listo 7. Ta izpis ima tale pomen! C JANUS B:QS0RT1/L/SB — Prevedi QS0RT1 in — generiraj listo (L). Zbirke naj bodo — na disku B. JANUS- VtlRSION 1.4.5 COPYRIGHT (C) 1981,82 -RR SOFRWAPE e0fl0/z80 VERSION (CP/M-80) SCRATCH FILFS ON DISK B -- Ta vrstica pokaže — vtipkano opcijo, tako da vidimo, da — jo je prevajalnik sprejel. LISTING ON - FILENAME = B i QS0RT1 . PRIJ INPUT FILE IS BiQSORTl.PKG — Vhodna zbirka. òffoainnfi/ffitii/iàBBi/tì — Po en znak dvojnega križa se natisne — za vsakih vCitanlh 16 vrstic. To za— poredje dokazuje, da prevajalnik pre— vaja (pravilno deluje). STRSPACE PTR - 854 USAGE - 266 HASH TABLE - 136 BUCKETS USED, USAGE - 20Ü — Ta statistika pove, koliko provajal- — nlškega prostora je bilo porabljene— ga. Ce se poraba približa lOOU, Je — treba program razdeliti na manjSe mo-- dule. PARSING COMPLETED - 272 LINES FOUND PASS II — Naloäl se drugi prehod in □□ za— čne Izvajati. HO PACKAGE SPECIFICATION FOUND — To pomeni, da se prevaja pakot, aa -- katerega ni bila prevedena speci£ika- — cija. To Je lahko glavni program, ki — ne more biti uporabljen v kakep dru-- gem modulu. — Po en znak '4' se tlaka za vsako upo- se je pojavila napaka pri vpisu ali put pozivu za zbirko 'sblrka'. Ta funkcija poenostavi preizkus diskovne napake. FUNCTION eof (zbirkas IN file) I RETURN boolean t Ta funkcija je enaka funkciji end_of_file, vendar " deluje nad binarnimi zbirkamlT Funkcija end__of_file lahko vrne nepravi TRUE, jo upo-rabTino~nad binarno zbirko. PROCEDURE put_hex (zbirka: IN OUT file» ~ vredi IN integer)} Ta procedura zapiše 'vred' v 'zbirka' hePteade-cinialno. Število ae zapiše z natanko 4 številkami; Vendar to število ni Izraieno v Ada formatu baznega Števila (ki ne ustreza za zbirnik). Primerai put hex(tren_izhođ(),254)} — tiska OOFE put~hex(tren_izhodO,-20)J — tiska FFEB Podprogrami diak_full, eof in put_hex so v knjižničnem paketu 10. PROCEDURE reađ_blk (zbirkas IN OUT file» ~ sek; OUT sector) bloki IN Integer)J Ta procedura prebere logični sektor 'sek' z 128 zlogi iz 'zbirka', implementira pa omejeni, naključni dostop, ko uporabnik sam blokira in de-blokira vrednosti. Bločno število 'blok' mora biti pozitivno. Preizkusa na zbirki nI; zato je potrebna določena previdnost pri uporabi te procedure. ' ^ PROCEDURE write_blk (zbirka; IN OUT file? sekt IN sector) blok! IN integer)» Procedura aaplše logični sektor 'sek' s 128 zlogi v 'zbirka '. PROCEDURE rclose (zbirkai IN OUT file)i Ta rutina ima enak učinek kot rutina close nad zbirko z naključnim dostopom) nahaja se v paketu BLKIO. Podprogrami za manipulacijo nizov sprejemajo nizne tipej pri tem ae njihovi argumenti ne. modificirajo. Celoštevil-ski parametri in rezultati so v območju 0..2SS, če ni drugače določeno. Vae te rutine ao v paketu STRUB. , FUNCTION length (nizi I« string) RETURN integérì Ta funkcija vrne dolžino niza 'niz'. FUNCTION remove (nlzì IN string) pozicija, obsegt IN integer) RETURN string) Ta funkcija odstrani 'obseg' znakov Ir niza 'niz', začenši pri znaku 'pozicija'. Napaka se pojavi, če 'pozicija' ni v okviru niza 'niz' ali če ni dovolj anakov za odstranitev v nizu, FUNCTION insert (izvir, nament IN string) pozicija I IN integer) RETURN string) Ta funkcija vstavi izvirni niz v namenskega pred znak, ki jo označen s pozicijo in vrne re- zultatni niz. Napaka se pojavi, če pozicija ni v okviru namenskega niza ali če je rezultatnl niz predolg za predstavitev. FUNCTION extract (nizs IK string) pozicija, obseg: IN Integer) . BETURN string» Ta funkcija izvleče 'obseg' znakov la niza 'niz' pri položaju 'pozicija'. Napaka se pojavi, če 'pozicija' nI v okviru niza ali če v nizu nI dovolj znakov (glede na 'obseg') za izvleček. Ta funkcija je podobna Basic funkciji MID? In funkciji LEPTji in RIGHT^ v Baaicu Je moč simulirati a funkcijo extract, FUNCTION position (vzorec, nizi IN string) RETURN integer) Ta funkcija vrne pozicijo prve pojavitve vzorca v nizu) če vzorca ne najde, se vrne ničla. FUNCTION char to str (znaki IN character) ~ " RETURN strlngj. Ta funkcija pretvori zriak v niz dolžine 1. Janus ne dovoljuje atikanja znakov v niz In ta funkcija je potrebna za vrsto elementarnih operaci j . . FUNCTION Btr_to_lnt (nizi IN string) RETURN integer) Ta procedura pretvori niz v celo število. Niz mora predstavljati celo žtevilo v veljavnem območju Janusa. Vodeči presledki In tabulimi znaki se ne upoštevajo. Prvi nenumeričnl znak označuje konec pretvorbe, FUNCTION Int to string (c štev; IN integer) ~ ~ ~ RETURN string) Ta funkcija pretvori celo število v niz. Vsako celo ätevilo se sprejme, vrne se najkrajöi mogoči niz. Primeri WITH strlib) PACKAGE BODY niztöBt IS USE strlib) zns character) nlz, niz2: string; BEGIN niz t- "nlzni test"; niz2 i= "programska oprema") put("niz ~ ")) put(niz)J new_llnef put("niz2 = "){ put(niz2)) new line) put("đolžlna(nlz) = ")j put(leHgth(nlz))j new_line) put("položaj(........,nl2) = ")) put(position(" ",niz))j new line) put ("položaj(""programska"",nTz2) = ")) put(position("programska",niz2))) new line» put("položaj(niz2,niz) = ")} put(position(nlz2,niz))) new line) put("odstrani{niz,e,3) = ")t put(remove(nlz,e,3))) new line) put("odstrani, at. 3; R. Đsvlllero, G. Louohard i Improvesente of parallelieo in a finite buffer sharing policy, The Computer Journal, 19 <1?7<>), ät. 3t CS3 E.H, Oljkstra t Co-operating Se^uentlal Prooesses, Programming Languages, Ed. F. Genuys, Aoademio Press, 1968) E. y. Dljkstra t Hiorarchicel ordering at eo^uentlfll Prooasseo, Operating Syotamo toohniquso, Aosd. press, 1972; C7J ti. Enal I KaauniNdOlja stad ccNvsn^nloi prococl - progled, 1. In 2. dsl, Iniornotloa 1 <1977>, Ot. 1 in 2t CSI ft. EkgI t (Monitorji, IJ9 Ljubljena, novQGbar <900( t93 0. Movoh, F). KovoesvlQ, B, KastoUo i AHH oporaoijottl oIdèqq, IJ8 Ljubljana, junij i9aQt ClOa A. W. Hoboroann a Synchronisotiton oJ CooQuniooting Ppooooqgd, CACK, 1.1S (1972), Ot. 3s C113 Hooro i tlonltarsi An aparating ByQtOR Btruoturlng Conoopt, CACH, 17 <1974), at. lOi C123 R, Bobo t HodoUcanjD noQiQlJano tsloIonaiiQ oantralQ o ooflaonicii prooool, dipl. dsio, FWT, LJubljano, 19300 C1,33 A. C. 8hau t Ths Logicai Deoign al Operating SyDtefflfi,Prontioo-Hal1, EngSawood ClUfn, N.J. 197'^! CU3 W. tìlrtfi ( Tho Uco oi Hodula, SoStwaro-Praotlaa and EKporianco, 7 (1977)j C1S3 M. Wirth i Touard o OloolplirtQ oJ Raol-tlQO PrograoQing, CACM 1.20 <1977), öt. B. zagotovljena varnost s sproSCanJem likljyölt-venega aenafarja pri vlaganju. V tem primeru prooBS, ki je üelel vloiiti spocoCilo v itravnalnik, ki pa Je bil poln, najprej iivrSi operacijo V(«iii) ter se Sele nato postavi v Čakalno vrato za tisti izravnalnih. Probien. Je torej l zahtevati nek vir < izravnalnik ) la vlaganje.. Ne sprostiti svojega vira in zahtevati tujega pomeni za nek proces v naSi inaCici, da na vlaganja v njegov izravnalnik Se Čakajo procesi, ta proces pa zahteva vlaganje v nek drug izravnalnik. To pa je mogaöe v dveh pcinerlh. 1) Proces je svoj izravnalnik popolnoma izpraznil In nato zaäel poBiljatl svoja sporočila i pri tem pa na njegov i^eravnalnih Se Čakajo procesi. Kdaj pa Je to mogoöe? Ker so na njegov izravnalnik Čakali prooesi, pomeni, da je ta bil poln. Reoioia, da Je velikost izravnalnika N mesti Proces je Izravnalnik ' izpraznil in pri vsakem vzetju Je lahko .1 operacijo V poslal signal enemu Cakajoeenu procesu, torej najveC N signalov. Po izpraznitvi zaCne ustvarjati in poBiljatl svoja sporoCila In ker na njegov izravnalnik po privzetku Se Čakajo procesi, pomeni, da jih je pred zaSetkom praznenja Čakalo več kot N. OznaCimo z n, ne glede na velikost izranalnika niti na Število CakaJaCih procesov. Skratka, v drugem primeru lahko zahljuCimo, da obstoja proces,ki sprejema prehodna sporoClla. <3) Potrebni in zadostni pogoj za varnost opisane Inaöice prubltfma "proizvajalcev in potrošnikov" Je posledica 1. in 2. trditve ter (2) in (3) in se glasi t t,, trditev. Pri inaCici problema "proizvajalcev in potrošnikov", kot je opisana v tem Članku, so varni natanko vsi tisti sistemi prooescv, pri katerih ne obstajata dva taka procesa, ki sta povezana z dvosmerno potjo in hi imata prenajhen izravnalnik ali prehodna sporoOila drug za drugega. Blste« prooeBov, pri katerem obstoja cq tak "krltiflnl" proces < kot Je omenjen v trditvi ), J» zvezdast ( 13. filila >• Sistem procesov brez takega procesa je tak, da Je povezan vsak prooes z vsakim ( U. slika ). 13. ellkai zvezdasti model - vsebuje eno "kritiCno" vozllSöe. U. slikat «odel "vsak z vsakim" - Je brez "kritičnih" vozliSt!. ZAKtJUCEK 1. V Članku sta obravnavana dva naCina sinhronizacije soCasnih procesovi z monitorjem In G semaforji. Na opisanem konkretne« modelu se je pokazal drug naCin boljtti, s Bii»er pa ne trdio, da je to na sploSno res. Na uporabnost monitorjev kaZe dejstvo, da Jih uporablja precej novejSih operacijskih sistemov. Monitor je veC kot saao konstrukt - lahko Je tudi naCin programiranja. Programer ima veCjo izbiro in veCji vpliv ( lahko tudi negativen ) na sinhronizacijo, na primer z izbiro sinhronizaoijskih spremenljivk, loglönlh testov ob vstopanju v monitor. Za sinhronizaoiJo lahko upošteva tudi izvenmonltorske pogoja, vpliva lahko na razvrSCanje procesov v Čakalne vrste. Zato pa Je dokazljivost pravilnosti cteVena ali celo nemogoöa, ali pa se je treba nasloniti na druge dodatne lastnosti, na primer hitrost - "poCasnost" perifernih enot glade na osrednjo procesno enoto ipd. 2. Dobra stran semalarjev Je v tem, da so preprosti in zato pregledni. Tofino doloCaJo naCin sinhronizaoije, ki procesom samim ni dostopen, to ima za posledico doloCeno togost, ki v nekaterih primerih programerje ovira. Operaciji P in V nad semaforji sta kcautativnl, zato vrstni red njune izvröitvo'. ni vaJfen. To pa za operaoiji send ne velja. Na volja nas aetano äs tretji pogoj, pogoj Uroänags Bakanja. V hroSna ÖaNanje sta v prlDorUi 1(0 procesi ns raorajo fiakati na lastne vira, vedno vblJuSens vsaj dva procesa. < Uahko Jih Je vsB, vendar Število ni bistveno sa can pojfìv. > Krojno Čakanje pomeni v tem primeru, da nek proces zahteva nespraSöen vir nekega drugega procesa pri nesprofiBenem svojem viru, drugi proces zaViteva nesproööen vir tretjega procesa itd,, zadnji v tej zanki pa zahteva pri nesproščenem svojen viru vir ^irvega procesa. Privzeli smo Se, da ima vsak orooeEi samo en vir, ki je izkljuäni in bere t-smo on sam. 1. trditev. (-"t,'! predpostavkah^ dai 1. ima vsak proces saino en vir in 2. proces ne more čakati na svoj vir, je potreben pQQoj za nastop krojnega dakanja na vire ta, da nek proces zahteva nesproSCien vir drugega procesa pri nesprcäüenem svojem viru, Dokaz. Oglejmo si vse aoüne situacije, v katerih je lahko proces Cs svojim vlfom ) glede na drug proces ( 01. vir )( Za holjSo preglednost jih zapiBimo v obliki tabele ( 11. slika ) poloKaj lastni vir odnos procesa tuj vir spraSBen nesproSBen sproetJen neaproaBen spro^Ben nesproščen sproSCen nesproBBen 11. slihai tabela možnih položajev procesa glede na vire. Proces je v odnosu do nekega tujega vira gotova v enem od poloiajev tl) - , (S) ali (i) se ne more nahajati, saj tu vira sploh ne zahteva. V položajih (3) in (7) bi bila njegova zahteva za tuji vir odobrena, ker je ta sproaBen, in proces se ne bi zaustavil in ßekal. Kot edina položaja, v katerih lahko pride v poStev krožno äakanje, ostaneta položaja in (ft). Pokažimo, da tudi v položaju krožnega Bahanja ne more bitif V položaju (A) je prvi prooes svoj vir sprostil in zahteva tuj nesprofiBen vir. Zaradi evoje zahteve se sicer zaustavi, toda nobena Bakalna zanka, kot je opisana na prejSnJi strani, ni mogoBa ozirodia zakljuBena, kajti zaustavitev in flakanje na vir prvega procesa ni mogoBe, ker je ta vir sproSCen ( 12. slika ). f 1 ) SproäSen ne zahteva ( 'i ) sproecen ne zahteva ( 3 ) sproSBen zahteva C A ) sproÈBen zahteva ■i. S ) nesproSBen ne zahteva t h > nesproäBen ne zahteva < 7 ) nesproSBen zahteva ( a ) nesproSBen zahteva prvt prooee 12. slika, krožna öakalna zanka, ki ni zaklJuBena. TaUo 6(no pohssali, da v poloSajih (1) - tV) kroKno Bahonjo ne viro ni aogotìo, torcjj Jo oogoäa la v polo£aju C! Torej lahko prooes a pri nesproSBanea viru A zahteva nsk vir B nekega procesa b, proccs o lahko pri nespraSBene« viru C zahteva vir D poljubnega procesa d. Toda nobene ovire nI, da ne bi smeli za o vzeti kar b, za d pa o in imamo naslednji položaj t - proces a zahteva vir procesa b, - proces h pa zahteva vir procesa a in ker sta oba vira nesproSBena, sa oba procesa ustavita, Bakajoö drug drugega, da bo sprostil svoj vir. Toda pogoj 2. trditve, za katerega sitio pravkar pokazali, (Ja je zadosten, je zgrajen s potrebnim pogojen C 1. trditev ), To nas navede na misel, da je mogoBe tudi sam potreben. Reoirao, da nI izpolnjen! To potieni a) ali, da za noben proces ne velja pogoj 1.trditve - to pa je že tudi zanikanje! 2. trditve, ki je potreben pogoj, torej v tem primeru krožnega Čakanja ne «ore biti; b) ali, da velja 1. trditev za natanko en prooes. Ker pa smo že ugotovili, da sta v krožno Bakanje vkljuBena vedno vsaj dva procesa, to pomeni, da tudi v tem prii.iwru ne more biti krožnega gakanja. Tako smo dokazali 3. trditev. 2. trditev predstavlja potrebni in zadostni pogoj za nastop mrtve toBke v obliki krožnega Čakanja na vire. Naäa prva ugotovitev v boju proti lartvi toBkl je tat sistem procesov je varen ( pred pojavom krožnega Bakanja ), üe 1. trditev ne valja zü noben par procesov, hI je povezan z dvosmerno povezavo. Posledica je, da srna biti v tjititemuj v katera« so vse povezave dvosmerne, pogoj 1. trditve izpolnjen samo za un proces. Vir Ja sprofiOan, kadar je na razpolago, torej kadar ga nihfie ne zahteva. Ce proces aahtavü vir ( izravnalnik ), pomeni, da bo uli iz njega Jemal ali vanj vlagal. Za samo JtrmanJo ni težav, saj ima to pravioo z organizirana kot hritlBni del, IBtenJo kritiBnih delov pa je urejeno z binarni« eeoaforjem ( miz ) za medsebjno i zk I jutlHvan JQ . Varnost pri aflitenju kritiBnih delov, da no pride do mrtve toBke, ker bi vsi procesi Čakali na i z k IJuBitveni semafor, smo dosegli a iikljuBltvljo drugega potr&bnega pogoja za nastop mrtva toBke - to Je nesproäöanja, proces vedno, ko Je vatopil v kcitiBni dsl operacijo P(itiz) > in zahteval dostop saj < K dO izravnalnika, pa ga ni dobil. izctool is kritiBnega dela C z operacijo VCaiz) ) isc uo Sele nato ustavi, 6 podobnim postopkoti» Jo K»J pa, «e Je NP(s> = C(8) + NB(b) > NHCs) ^ li uCinha operacije P' vidima, da P' epreminja koUCini NPCs) in NW(6) vedno obe hkrati, in ker sta na zaCetku enaki, sta vedno enaki. Torej zadnji primer, Ivo je NP > NH , ne »ore nastopiti, lato Je izraz (1.3) invarianten tudi za izvrSitev operacije V(a) in po indukcijskem sklepu volja vedno. '(v) Predpostavimo, da Je izraz M.3) : invarianten , KakSen Je potem uOinek operacij P' in V 7 Najprej si aglejno P'(s) ! V (i) amo ugotovili, da izravnalnik ni prazen natanko tedaj, ko Je NP t" NU(s) , Ii relaoij C1.7) in C1.Ä) sledi pq eni stranii tlP(pr(l)) =< N + N3). Po drugi strani pa ii (1.7) in (1.6) sledi tudi i NPtepCi)) =< N8(Bp i ( prvi del neenatibe (1.6>).! Ker Je i poljuben, velja (1.6) za vse izrav-nalnike. pa tudi konOa NP(B> !■=■ NPts) + 1 , prazen i^: false . Ce pa je izravnalnik prazen, NP(e> = N8(s> i ni ne vzetja ne eahanja, torej nobene Bpreaenbe razen prazen t°.triie. Vidimo, da je uUinek tak, kot je zapisan v (1.4).. (vi) Predpostavino, da je izraz (1.3) invarianten, ka'kSen mora biti potem üäinek V 7 Jz uflinka P' smo ugotovili, da vedno velja zato Je NP= NP(s) , vidimo, da se NB(s) lahko ,vedrio poveOa, pa bo (1.3) ostal invarianten. Torej Je uCinek Vts) res NS(E> t» NS(a) * 1 brezpogojno, tako kot ga opisuje (1.£). &.E.D. Pravkar dokazano trditev bomo uporabili za dokaz pravilnosti sinhronizacije ned procesi glede- na prazen oziroma poln izravnalnik, Dokazati itelimo, da ne pride do vlaganja v poln izravnalnik ali do Jeoianja iz praznega, torej da je vedno res ■ O =< NP(pr(i)) - NPCsp(i)) =< N , 1 =< i =< n. (1.6) Iz próoeduce vloüi ( 9. slika ), trditve (1.3) in trditve (1.3') sledi i N8(Ep(i>) =< NP(pr(l)) »< C) + NS(prfi)) QziroBa\ N8(6p(i)) =< NPtpc(i)) -< N t N8(pr(l)) . (1.7) Iz procedure vzemi ( NS(sp{i)) (l.a) Trditvi eia) in (1b) sta trivialni posledici; invariantnoetl (1.3). s) Iz (1.3) eledi NP(S) »< 1 + N8(s) , to pomeni, da je Število vstopov v kritiöni del(e) lahko kveäjemu za 1 veäje od Števila izstopov, kar üe pomeni, da v kritičnem delu(s) ni ved kot en proces. b) Iz (1.3)'sledi v primeru, ko imamo tJakaJoÒe procese ( ko Je NPCs) < NU(s> ) I NP(B) 1 + MS(fi) . To pa ne more biti res, ko je NP^) = NS(s), kar opisuje polo*aJ, ko ni noben prooes v hritiOnem deluCa). Vidimo, da se lahko izvaja samo en kritiäni del hkrati in da ne more priti do zaustavitve procesa, tie so vsi procesi icunaj svojih kritičnih delov.. Ker je naga reSitev Izvedena s semaforji, ti pa 60 implementirani tako, da uvrecajo üakajofie procese po naöelu - prvi noter, prvi ven -, ni «cgcäe, da bi kateri prooes prehitel drugega, ki je v isti vrsti prad njis. S tem Je onemogočeno, da bi nek prooes Oakal neomejeno dolgo . MRTVA TOCKA Za nastop mrtve tofihe so potrebni trije pogoji i - medsebojno izklJuöevanJe, - nesproBöanJe ( "nonpreemption" ) in - kroüno tjakanje na vice C3]. (ie hoöemo dosetii, da da mrtve toöke ne bo prifilo, morano onesogoClti enega teh pogojev. Medsebojnega izključevanja ne moremo opustiti, saj ga uporabljamo za Söltenje kritičnih delov' ( operiranje nad izravnalnlko« ) in je nujno la pravilen potek izvajanja procesov. Ravno tako ni ustrezno popolno spro&Uanje virov, kajti će npr. prooes, ki ima neko sporočilo za drugega, ne bo Čakal, dokler ga ne bo vloitil, bo to sporoöilo izgubil < "povozil" ), ko~ba vzel naslednje sporoCilc. Vendar pa to vseeno Izkarletimo, kot bomo pokazali pozneje. SlMMßONLZAClJA Haburoann jo v C103 dobazal naelednjei ob predpostavtci, da v «ritieni del vetapaao in izstopamo saao ekoxi oporaaiji P in V < 10. Blihđ ), velja t a) izvaja ee lahko eamo en hritiCni del hkrati in b> ea ni noben od procesov v svojem kritiCnem delu, ne nore biti zaustavljen < blokiran ) noben proces. ( i ) P(s); krititini del(s)t VCs) -, 10. Elihat izvajanje krltifinit^ delov. Ali sme proces, ki itvrSi P, nadaljevati ali ne, je odvisno od tega, kolikokrat ata bili P in V izvrfieni prej. Stanje usklajevanja oiad prooeei'lahko opiöemo z naslednjimi kolieina-tai t C(s> - nenegativna celoSteviIska Konstanta, podana ob iniciali zaci ji ; NHCs) - Število izvršenih (klicanih) Pts>| MSCs) - Število izvršenih y Je, za koliko sme Število klicdriih operacij P presegati Število operacij V .Pri eöitenju kritiCnih delov ( 10. slika ) uporabimo vrednost C in NPCs) i NM(s) 1= NU(s> + 1) if NU + NBts) then NP(s) 1= NP<9) + 1 , ti .1) torej izvršitev operacije P(s) ne povzrotli Čakanja, dokler je Število izvršitev P<6) kveöjemu za C(s) veòje kot Število izvršitev V > C(s) + NS then NP<5> i» MP(s) t 1 1 W8(b> 1= NS(6) + 1| (1.2) tzvrBitev V, Habsrmann trdi i NP(s) = «in( NW(b), CCs) + NS(b) ) (1.3) je invarianta la operaciji P(s) in V(s). Dokazal bom, da te trditev (1.3') in trditvi Uo) in (Ibi veljajo tudi za P' in V. Zstietne vrednosti naj bodo ■ C(6) >= O , HU(e> ' NP(ü) ^ NSCe) = O t MajpraJ zapiSioo uöinka operacij P' in V s koiitlinani C , NU , NS in NP ! Dodatno vpeljeaio Se logiBno spremenljivko prazen, ki ioa vrednost "prav", Be je izravnalnik prazen, in vrednost "napak" sicer. Uöinek izvršitve operacije P'(s) je i it WP + U ftlP(B> la WP(ö) « 1 □nd; uainob isvrCSitv® operacijo V (s) pa jo i NS tor uOlnkov oporaoij P in V (<1.1) in (1.2)) Bledi, da velja tedaj NP(s) = NS(6) . Ca pa izravnalnik ni prazen, pa pomoni, da je v njea nekaj sporoäil, torej da Jo ßtovilo vlaganj veCJe od Števila Jeraanj, HP(s) < NS(s> . Ker druge moSnosti ni, pomeni hkrati, da MPts) > W3tB) ne nore nastopiti. Ca tisdsj priiaerjaao dobljene relacija z uBlnkcia operacije P'Ca) (1.4), vidimo, da Jp vrsdnost fipreaenlJivke prazen pravilno doloäena. (ii) I indukcijo borna dokazali, da je izraz (1,3) invarianten za operaciji P' in V. Relacija (1.3) na zatietku velja, ker Je WP(6) e NUI(B> = O in CCS) ■«■ NSCb) >° 0. (ili) Recimo, da relacija (1.3) velja in da se bo izvršila operacija P'(s) ! Ca je NPCs) >= WS(s), izvršitev operacije P'(s) samo vrne indikator prazen !«= "prav" . Ker ostanejo vse ostale koliöine nespremenjene, izraz <1.3) obdr2i svojo veljavnost. Ce pa je NPCs) < NSCe) , iiaaao NU(s) NU(s) 1 , NP(s) 1= NPCs) + 1 , ( vrednosti spremenljivke prazdn sao obravna" vali posebej (i) ). Iz NP(6> < NS(6) Bledi tudi NP<6) < CCs) + MSCe) 5 torej v tam primeru pred izvröitvijo optji-aoijo P' velja NP(6) = MHts) < C(g) + NS(6) , po izvršitvi pa MP(«) = N«(6) =< C(e) NS(q) in je potemtakso izraz za operacijo ri3c invarianten. (iv) Predpostavimo, da je i^raz <1.3> valjoven in da sa bo izvršila operacija VCö) ! «oj vbj ja NP(b) = WU(6) =< C(Q) * NS(a) ! Po izvröitvl operaci jtr V (e) ce povotto la o WS(s) 1"= NS procedure vieoid, sporoäilo, prazen)) var 1 i identiteta >| «poroäiloi begin F\,(nit) i «mitenje kritlänega dela >( H BtevBc(i> ° 0 then begin Praxen i= truei VffliDi return) endf else begin prazen lalse) "vieni sporoCiilo iz izravnalnika"i fltevBc, ki ob uresniOitvl spremeni dejavnost procesa ll "pòtrottnlka" v "proizva-Jaloa". Operaciji P' in V sta prikaiani na A. sliki. var Bp I arra/ C1..n] af integer lnlt( 0, 0,...,0 ) ) < eploflni seoaforji, ki Btejejo eporoQila V izravnatnikih > prazen i Boolean ) P' t prazen false» spd) I» ep - 11 if sp(l> < b then begin prazen i= truej spd) I» fip(i> + 1| Vfc(miz)) return < iz procedure >| end ) V (6p(i)> « spCi) t" spti) + 1) a. slikai Operaciji P' in V nad splošnim senatorjem. RESITEV 3 SEMAFORJI Z navedenimi ainhronizaoiJekini operacijami imata monitorski proceduri violi in vzeni naslednjo obliko i V Jedru operacijskega eistecna C93 imamo implementiran binarni semafor z Oljkstrovima operacijama Pt in S^ t61, zato ga razdirimo do splošnega na obidajni nafiin C133. var pr i arrayC1..n3 ot integer lnit( N, N,.,.,N ) ( sploSni semaforji, hi Btejejo prajna mesta v i»ravnalnikih >j nepo i arrayC1..n] ot inte^ger lnit( O, O,...,O ) i binarni «emaforji la sinhronizacijo poln - nepoln } ) ini z P(pr(i) V(pr(i)> InltC 1 ) < binarni semafor za Söitanje kritiönih delov >} pr ( i > I -i pr ( i> - 1 I if pr{i) < □ then begin Vfc(miz) I Pb> I Pb(miz)) end) prCi) 1= pr(i) + 1) if prcl) =< O then . V^(nBpo(i)>) 7. slika» operaciji P semaforJem. In V nad sploBnim procedure vloiti< i, sporodilo)! var i- i integer f Identiteta >| eporoSilo I raccrd ) begin Pi <«ii)( P| sporodilo I record) begin Pb[ n ■( Število prooesov >i ver prazen s Boolean < indikator praznostl I) nspor I integer < Števec ustvarjenih sporoCi1 > t sporočilo I record) prooes 1 : begin nspor 0; while nspor < nsporraax do begin vzeoK 1, sporotiilu, prazen >) while prazen = false do < prazni svoj izravnalnik > begin if i = naslovnik than "izpiei-sporotìila"( Qlse begin '•pQÌ«0i-ndslednika"ì if "naslednik Je najden" then vtoüi( nasledniku, sporofillo ) si se "1zpiÈi-Sporaal la" end I vzaait 1, sporuöllo, prazen ) end) < ustvari novo spoi'oliilo > tvori< i, sporoöllo ); nspor 1= nspor 1| "poigdi-nasladnlka"; ii "naslednik Je najden" then vtoüK nasledniku, sporodlla } SlDO "iipiai-sporoöllo" and end I Qlsepj < prostovoljni odstop prooosorja > QO to praOQG i ond) Bllkas prodiram procesa "pruizvajaloa in potroSnlka" Pel prooodwpoh, bi nioo poooDbno za to feoooj no no boEio uoiovljaU < "tvoa-i-oporoiäiSo „ "poiCJei-naolodnitso", "ispiOi'- tipei-eSUo' n agjQdoU ^a oi bono prooođ«pi "tfloSJ." in "vsDoi" tor oinhponisooijolsa opopoeijo« SESITEV 1 HOwnORJEF) Moi isrcvnalnikl bo zdruBonl v pooabni Qtruhturl - aonitorju < Cfllt C113, C143, C1S3, S. Glika). BS DP 88 tfi piz vloSli VSQQl (Stovso(i> QigCi) Števci Qporoöil Bienali ppraz(i) ttazaloi na prvo prašno occto ppolnfi) kazalol no prvo polno oanto BS skskluzivnl binarni ssoafor za zfläätto monitorja, DP dosegni procadurl, aa Binhronlzaci Jska tspreaonl jlvho, Kl kazalci v posameznih Izravnalnlkih, PI poljs izravnalnlkov (St. procesov k dolSina izravnalnlka ) 5. Qilkai oris monitorja. Iikljuöno pravico dostopa do isravnalnihov imata oionitorskl prooeduri "vloSi" In "vzemi < 6. Sliko ). DOnst W < velikost izravnalnlkov Jj var mil init( 1 ) i binarni cooaJor la aaitonje kritiflnih dolov >5 öteveo QrrayC1..n3 of inta^or inltt N, ) { tJtaveo sporoflil v izravnalfiikih > ( Dig arrayi:i..n3 oi integer init( O, 0,...,0 ) { signali >J procodurs vtoSKl, sporoeilo); vor i < identiteta >, eporoüiId; bogln Pt^niix) < Otiitenjo kritlänoga dola >9 do while Ütov90 >o N bogin oneooQodi prekinitvoi Vt.. Ko sa proaas aktivira, najprej preveri, ali Je njayuv izravnalnik prazen, Ge ni prazen, potem kot "patrottritk" Jemlje eporotSila ven. Obstojajo tri aoXriostl i a) da je naslovnik eporntiild aii san. Tedaj • proOilo "prebere" ( sprocosir^ > in (ja nato zavrle: b> da je näslovnlk kdo diuy. Pruoes tedaj polCde pot do nJega in De Ju najde, poBlje sporodllo prvesu prooesu na poti do naslovnika« D> da do naslovnika ne najde poti. V tem prl«eru sporoOllo zavrtr». (9) proces lzravttalt)lk prvi poln predal 1. Bliliai priner il Steina .procespv I 1 iravnalnlk1. prvi prazen predal 3. «likai zamisel izravnalnika. pomijatelj prejemnik naslednik vsebina 3. slikai oris iporotlila. Ce Ja izravnalnik prazen, zadne kot 'proizva-Jaleo" ( nakljudno > ustvarjati sporoCila za druga praoesa in Jla Jih posKulia poslati. Ca lahko doloOano Število sporotill odda drugi« proaeson, sa ustavi, vendar ostane v stanju "pripravljen" in o« lahko razvrlOevalnik hadarkoll spet akCivira. Ce pa «e (godi, da Veli proces poslati sporofiilo v nek izravnalnik, ki je te poln, ga sinhrpnitaoiJska lunkoijB sisteaa blokirajo. Tak prooas sa neha izvajati, eistam bo spremami stanja tag« prooasa li ''blokiran" v "pripravljen", ko bo odpravljen vzrok, ki Je povzrobll njegovo blokada < torej, ko tisti liravnalntk ne bo ve 0 1 oaat of condensed railli is used for drying (x^ = 1 088) and 500t of dried milk ie sold« Similarly the othar results from the firat table can be explained« Ths aecond tablg presenta the marginal profit of the conatraintso Xf ifo tfero to incrooeo tho available quantity of freeh isill: fo? ^.tg tlio profit ttould increase for oioUo (oaj^gi^oi profit of tho constraint EIL i0 6,830)o Hov> ever, this inoreas® holds only till 20 By increasing the oapaoity of tho ovaporofeos' ths profit cannot be inoroasQd (tho morgiaal profit of the constraint iQ 0)» X£ tho oapaoity waro to deoreaee beì,ot! 3.3 SgOj ths profit uould start deorsDsiage Sho mccTfjiaal price of the first holf=product, that is fied milk, is aii.,4- Hi,Uo/t (Dserginal profit of the constraint S^^ is Similarly othor results from the seoond tablo om be esplainedc Literature lo Heiko Io, Optimiranje in obračun večfass^e proizvodnje, HaSe gospodarstvo, 1979ii Sto 5-6, 2o Meško Io, Optimiranje poslovanja X, VMš Maribor l'9ö2, 3o Meško Io, Bo Fevec, Optimiranje poslovanja kod viSefazne proiavodnjo, Proiavodnjaj april 1982. Survey of tedmologicol ^oceduras Tehnological procedura X- Typification ■ of Bilk Xn Skimming of ^ milk X, Condensation ' of milk Xi. Condensation of S^ ^ skimmed milk Kf Xe Typification ^ of cream Input Output Element Xc Production ° of toutter X, ^ing Of x„ Drying of ° ekiramed milk Xq Production of ' herb butter .3, Pp e' hi r 0.72 1 0,79 0,75 0,25 1 1 1 1 1 ' 1 0,96 0,01 0,0? ■ '7. Ji 0,98 0,02 0,91 0,09 0,28 0,21 0,47 0,53 0,A€ 0,46 0,99 Coat m.u./t 1 20 0 0 20 1 1 15 On the basis of the data which can be seen from the tables, the graph is constructed and that is followed by the mathematical model. The model is expressed in the form of the maximum of the functiont -Sx^-20x^-x^XQ-lB*g+100p j^+120p 2+ +580p2+220pj+150p^j^+160pj^3+150p^+ +f50pg+6p^ where the variables ere nonnegative and they satisfy the constraints i lO Segj^rSIlSOO :1000 15000 s ej-^. 20000 0,02xJ +0,09x^-0,?5x5-xg+e2i+e 22 1000 : «22" -0,D5xg+ej ä 0 0,72x^+0,^ 14000 5000 Xg^2500 0,91x2- xj^- 0,25x^ ^ 0 Pl2 500 0,47xg-0,96xg-P2-^0 500 ::ii:pj EIG (12) E1L,E1G2 (1?) E2G1 (14) E2I,1,E2G2 (15) Ea2 (16) E3 (17) K1 (18) K2 (19) K3 (20) SI (21) 82 (22) S? (25) PIG (24) PH. (25) P2 (26) P3G1 (27) P5L,P5G2 (28) Pt^^fe 300 ■ 500. Xj-PjSrO 0,99x9-PgS:0 P6^500 O,53xg-P7S:0 FtGl (29) E4G2 (30) P4L (31). P5 (32) P6G (33) P6L (34) P7 (35) Inequationa (12) - (17) còrraapond to input elementa. Inequations (18) - (20) correspond I to working means, inequations (21) - (23) correspond to aemi-products and inequations (24) - (35) correspond to producta, (The varisf-blea k^ and kg are slakes in (18) and (19)* The optimal solution was obtained by the computer program ALINO performed on the ooiajpuF-ter ISKRA DATA, The first table of results presents for each variable Its optimal value end the interval of the coefficient of the objective function on which the aolution is not sensitive for changes* The second table of resulta presents for every constraint the marginal profit of the constraint and also the interval of the constant term on which this profit is not sensitive for changes of the constant term. The constraints are ordered in the following ways firstly the constraints of the form less or equal, and then those of .the ^ form greater or equal. Z(t^AX) 553465 VAHTAUIJ.' SOLUTIOM VARIABIJi, AGTIvm P01Ì PRICE PROM TO XI X2 X3 X4 X5 X6 X7 XÖ X9 El E21 E22 E3 Pll P12 P2 P3 P41 P42 P5 P6 P7 15407 4593 15099 3106 4295 o 1087 652 0 20000 1500 1000 0 2641 500 0 500 3G0 0 4295 0 0 -2,641 -41,284 -1,675 -426,087 -9,187 -2029,986 -59,108 -26,830 -195,098 -195,898 - CKJ 96,200 100,000 - 00 _ 00 _ 00 - PO . 140,813 585,446 0,000 38,284 0,359 '»0,086 1,851 17,582 -7,477 2,800 7,813 10,579 00 00 0 120 00 425,946 228,261 179,159 179,159 167,582 455,837 29,628 REDUCED PUOPIT 0 0 O 0 0 -12,523 0 0 0 0 0 0 -200 0 0 -45,946 0 0 -19,159 0 0 0 From the first tobl© of resulta we can see with the help of the graph, that we should typify 15 ')07t of the fresh milk (xj_= 15 t07). In this way we produce 15 099t of typified milk which we condense (x^ - 15 099). 2 641t CONDEKSü-TION CF MILK CONDENSATI ON OF SKIMMED >Ì'LK X^ ■nPIFlCATI-ON OF CREAM PRODUCTION OF BCTTER DRYING OF MILK DRYING Cff SKIMMED MILK >^8 PRODUCTION OF HERB 0.99 ' BUTTES 0.53 avoid that problem flo that for all elementa which are sold or bought the variables or ^ilc ^^ included in the model. In this case nij'O for all elementary production proces ties. In thiB way the optimai solution is more con»- . plete. However, mora wpric iis left to the codh puter, especially if large modela are considered, If the graph contains around 1000 transformation and 1000 allocation nodes, which happens when gptimiz^B the production of an average-Gized companyi the computing time will be of the order of about 10 hours. The constraint (4) is simplified in some other .cases too. If the i-th element is a semi-pro-duot which cannot be sold, bought or stored, the following constraint ariseei With large laodels, inequations are not written down at all, for this is almost impossible to do. Those data which can be read from the graph are entered directly into the computer. The control of the data and check of the reality of the resulta is done by means of the graph as well. I Using the computer end the representation of the production process by the graph malces it possible for the model to be Buccessfully used at some production enterprises, At the "Mesna industrija Murska Sobota" two years ago, a graph with .693 allocation and 516 trnnsforma-tion nodes was constructed. Vhe graph was drawn .on several pages of format AO. In order to get a useful result the model had been improved several tiroes and further nodes were added. When the graph is conatructed, it is possible to work out in two days the production, purchase and selling plan of the coupany producing 200 different final products [3]. If the planned financial result is not realised, it is now possible to find the reasons and to quantify their consequences. 3. JiJcample Let ua consider a simplified example from the milk industry. The data can ba seen from the tables. £'or the input elements the following data are stated for each sourcei the. variable representing the purchase quantity searched for, the minimal and the maximal purchase quantity and finally the purchase price increased for an eventual marginal cost of. purchase. For the products the following' is stated for each sink: the variable representing the quan^ tity of sals searched for, the minimal and the maximal quantity of sale and the sale price decreased for an eventual marginal cost of ■ sale. For the capacities of the machinery, the capacities and oai^inal operating costs are stated. For the technological procedures the following is stated: the normatives of the input and autput elements and those marginal costs which are not included in the input el^ nents and machinery capacities. The data for the semi-products are seen from the graphical representation of the production. Survey of input elements Element Variable Min t Max t trice m.u./t Ej^ Milk 15 000. 20 000 20 Cream «21 ■ «22 1 000 0 1,500 1 000' lito 150 Ej Kerbs 0 «o 200 Survey of equipment capacities Element Capacity Cost Kj^ Evaporator Kg Spray drying tower KJ Butter machinery liv .000 m^ HgO 5 000 t 2 500 t 5B,u./m' iD.U./t 0 Survey of final producta Element Variable Hin ■ t ■Max t Price ffl.U./t P, Condensed milk Pg Fresh butter Pl2 P2 0 0 0 00 500 oo- 100 120 380 Pj Spray dried milk 500 1500 22Ó Spray dried skimmed milk Pifl 500 0 oa 500 150 160 P^ Sweet cream P5 0 00 150 Pg Herb butter 0 500 430 Py Buttermilk 0 «0 6 i:)here B^ means the index Bet of sources, S^^ the Index set o£ sinks for the i-th element, e^^j^ means the quantity of the i-tli elewant auppliad by the )t-tb source and the quantity of the i-th element, supplied to the ii>>th sinks When the available capacity of the liwth source is bounded by bj^j^, and when the need of the b-th sink Is hounded by b^j^, we must consider also the following consti'ainte s "ik (5) (6) Denote by o^j^ the price of the i-th element at the k-th sink reduced for the merginel cost of the sale. Denote by c^j^ the price of i-th element of the k-th source increased for the uiarginal coat of purchases Let us set for the objective the profit, defined as i kes. (7) Mherd the third sum contains those variable costs which are not included in the second sum. The objective fimction (?) ensures that we will utilize first of all the most favourable souiv ces end that we will satisfy the most favourar-ble sinks. When v;e find this unsatisfactory, because we went to favour some sources or sinks we can achieve that by introducing additional ooneti-tiints in the form of equalities or ini-equalitieB, We can also use the uiethods of multiobjective projjraamlngs The variables e^j^ and e^^j^ appear only in (7), in (4) and possibly in (5) or (6), Because of tlie itiarginal cost of sale and that of purchase, for the coefficients in C7) from where it follows (2) or (3). If the coefficients a^^ or Bj^ depend on the production level of the J-th elemental^ production process and if they may not be approximated by the constant then we must take them piecewise constant and linearize the left side of equations (1) or (4), The same holds for ra^o 2o Realisation of optimiaation Because of the development of technology production systems become more complicated and mutually dependent, For this reason we break them down and present them on a graph. In this graph each element E^ has an allocation node which la represented by the oircloe So tho elementary proosse X^ the trai>sformation ^^i^ào Xj is arranged which is reprofssntad by 4hü square, Vhs value of ths are (E^^^ X^) is and the value of the a?® (X^t, Ej^) ie a^j^o technologioal data uhich ÌQ thQ graph Q^o presented by th® values of tha etcs, ara unod for the formulation of oonotraints (1) o:? (4), Furthermore we also need tha sourca oM the sink data, so that variabloa e^^^p eJ^j^ and the constraints (5) t (6) can ba dafiaed t^sd that the coefficients of the objective fuaction can be determined. The constraint (1-) is general, but for spacial cases it can be simplified, Fox' instanco^ if the i-th element cannot be produced, the £irot and the fourth sum disappear. Bo we get tho constraint! kfB, (6) Additional simplification is possible if there is only one source, so that the second eiub in (8) consists of only one term» From the analogy of (1) we get + (9) jeNi -1 The inequation (9) can be simplified, if the coefficient of the variable e^^ in the objoctivo function equals 0. This happens when tho i-th element represents the appliance with given capacity b^ which could not be hired» Xm this case there is ao need to use the variablo and instead of (9) we get (10) Bo the model is simplified end the computing io shortened and this would be of great importanco for large modeIs» The constraint (9) can be also written in tha form (10) although the coefficient in tho objective function belonging to Bj^ la not oquaJ, to 0, In that case the consumption of i'^th element in the objective function must be considered in the marginal costs of all those elementary procosoes at which tblo element is consumed and the variable e^^ Lo not defined« In this way the model is simplified and computer time is shortened, althou::^ the coefficients m^ are harder to compute« Wo osm informatica 1/1983 PRODUCTION PLANNING BY LOMP udk: 681.3.06:338 IVAN MESKO, BOJAN PEVEC vekš maribor mesna industrija murska sobota PeODUOTIOtI HiANINa ex LOHP. Tbà produatlon procesa oiiii be elearly Illustrated by «he grapb. Vor tliia reason tba prooeea omat be bMkea down Into several production unite. By using the gi^apb oan construct the mathematioal nodel for optimication, for wblob it la assumed to be linear, because for otherwise it would not be. applicable to large 87stemB, Optimising the production sjrsteia ,by its eubsyeteois io disadvantageous beoause of the slnergetio affeots, ^at is to say, in generali one cannot construct the opt^un of the systeia by putting together the optimums of its aubsystems. In the processing industry, from which an example is taken, the method LOHF is used. This is the method of Linear Optimisation of the Multiphaae Production. oraiHIHAHJE FROIZVODHJE Z MEIKiDO LOHP. Proiavodni proces Je mogoče naeorno prikazati'» grafom, «e ga razčlenimo na posamezne tehnološke poetopke osiroma naSine proievodnjet S.pouofijo grafa nato konstruiramo aatejnati2ni. model sa optimiranje, ki nora biti linearen, sioer ni uporaben sa velike sisteme. Optimiranja proisvodnje sistema saradi sinergijakih učinkov ni primemo izvesti s pomofijo podsiatemov. V splošnem namreč ne moremo dobiti optimuma celotnega sistema š sestavljanjem optimur mov podaietamov. V predelovalni industriji, od koder je vaet primer, uporabljamo metodo lineamegS optimiranja multifazne proizvodnje, to je metodo XOMP. 1. Mathematical model We break down the produotion process into several elaiuentary prooesBes, For the reijul-renenta of the optimisation, we dlatliif^ulah the eleuietitary prooessee only according to the quantity of the. eleiaants oonsuiuad or produced per unit of production, where the elements include production elements and producta. Denote by the index set of the elementary proceaaea at which the 1-th element le consumed, by Pj the index aet of the elementary prooeasea at whicb the i-th element is px>odu-ced and by the level of production for the j-th elemeutax7 procesa. Decision variables Xj then satisfy the following conditiont where a represents the quantity pui-chaaad and ej^ tbe quantity sold of the i-th element, a^^j the .iniiut coefficient: ajid a'j^ the output ocefrioient of the j-tl> elementary procesa. If the production of the.i-th element (first sum.in (1)) is greater than the quantity of the element consumed (second sum in (1)), then it follows I «i If (2) jep^ JCN^ holds, then it follows ei-O (3) UotU requirements are automatically fulfilled if tbe objective function is suitably formula^ ted. I • . If there ere more or leas favourable sources and sinks of the i-th element instead of (1) we get the Inequality) ■ / .. jePj d«N kCB. 13 An elementary criterion Is defined as a mapping of a value of a performanGe variable into the corresponding value öf elementary preferenoe. The performance variable represents a relevant system performance indicator influencing the system capability to satisfy some given requirements. In the case of instruction format the performance variable is m and the requlranent is to achieve the shortest possible assembly language program. The length of an assembly language program is approximated by the average lenqth of an assignment statement, L(m), and therefore L(ra) can be used for evaluation and comparison of various instruction formats. The corresponding elementary preference is rigorously interpreted as the degree of truth In the statement asserting that "the value of m (or L (in)) completely fulfills all given requirements" (thus OsE^sl). Approximately, the elementary preference can be interpreted as a percentage of fulfilled requirements. Consequently, the elementary criterion for instruction format evaluation is a function m h . A rational way to assign preferences (Eg,Ej, E2, and e3) to various instruction formats is to assign the maximum preference (i.e. I) to the three-address format, and to assign the mlnimutn preference to the zero-address format. This reasoning yields the following elementary criterion t L(0) - L{m) + - L(3)] L{0) - L{3) m- 0, 1, 2, 3, The minimum preference E reflects the evaluator's standpoint, i.e'? She requirements of some specific environment. One way to select E[tii)l is to take into account that some real stack machines are restricted only to high-level languages [11]. Of course, in that case the inconvenience of assembly language is not the only reason for not allowing general programmers to use the assembly language. That allows us, however, to conclude that in an extreme (but not unrealistic) case one can adopt yielding the results Ejj=0, Ej=0.42, E2=0.79, E3=1 , Several alternative criteria for instruction format evaluation are shown in Fig. 1. CONCLUSION Prom 40% to 50% of statements in programs written in high-level languages are assignnienta. The assigmaents also dominate in assembly language programs. The average number of operands per an assignment statement is approximately It = 3.14. The length of an assembly language program depends on the number of addresses per machine Instruction, m, and can be approximated by the length of the assembly language program realizing an average assignment statement, L(m). For the single-address machine format the length_of an average assignment statement is L(l) -k, i.e. it is nesessary to write one assembly language instruction per each operand. For other instruction formata we have L(0) = 1.36 k 2 I L(l) L(2) = 0.69 £ = I L(V) L(3) 0.60 it a ^ HI) (and L(l) « n) (1) The two-address format is two times more efficient than the zero-address format, and the three-address format is two times more efficient than the a ingle-address format, and (2) tho single-address format yields 27% shorter programs than the zero-address format, the two-address format yields 32% shorter programa than the single-address format, and the three-address format yields 27% shorter programe than the two-address format. These relations can be useful both for assessing various assembly language programming efforts, and for comparing different processor architecturoo. Figure 1, Criteria for instruction format evaluation Therefore, the machine instruction formats can be coiiipared approximately as follows! REFERENCES [1] B.A, Wichmann, "Algol 60 Compilation and Assessment." Academic Press, 1973, [2] D,E, Knuth, "An Empirical Study of Fortran Programs." Software - Practice and Experience, 1, pp. 105-133, 1971. [3] S.K, Robinson and I.S. Torsun, "An Empirical Study of Fortran Programs." The Computer Journal, 19, I, pp, 56-62, 1975. 1:4 J A. Salvador! et al,"Static Profile of Cobol Programs." Slgplan N. 10,pp.20-23, Aug.1975. L5] M.M. Al-Jarrah and I.S. Torsun, "An Empirical Analysis od Cobol Programs." Software-Practice and Experience 9,pp,341-359,1979. [,61 D,J, Kuck, "The Structure of Computers and Computations," Vol, 1, John Wiley, 1978. C7] J.L, Elshoff, "A Numerical Profile of Commercial PL/1 Programs." Software,6, 1976, [8] J.L. Elshoff, "An Analysis of some Commercial PL/l Programs."IEEfTSE, June 19 76, rS] J.J. Dujmovld, "The Preference Scoring Method for Decision Making - a Survey, CIäs-sification and an Annotated Bibliography." Informatica, No.2, pp. 26-34, 1977. 110] j.j, Dujmovltf, "Computer Selection and Criteria for Computer pecformunce Evaluation," International j. of Computur and information Sciences, 9, Ko,6,pp.«59-482, 1980. [11] W,H, McKeeman, "Stack Computers." Chapter 7 in H. Stone (Ed.) "Introduction to Computer Architecture" Second Edition, SRA, 1980, Table II. AsBcmbly language programa for an asaigniiieot statement m=Q (format 0) ni=l (format HA) nR2 (foraat KHA) m=3(;fonMt HHH) push Hj A A = = T puah H^ A ;= A*Mjj A A*M3 T * A := A*Mj A T push M^ • * A A T := T*Hj push • < • , * A A T pop Hj^ »k := A . «k := A. "k = = -^»k-l 2II-2 ■ k k-1 k-2 Table III. The average length of an aBsignment statement k Pk L,(0) Vn L^(2) 2 0.43 2 0.86 2 0.86 1 0.43 1 0,43, 3 0.30 4 1:20 3 0.90 2 0.60 .1 . 0.30 A 0.12 6 0.72 4 0.48 3 0.36 2 0.24 5 0.05 8 0.40 5 0.25 4 0.20 3 0.15 6 O.OS 10 0,50 6 0.30 5 0.25 . 4 0.20 7 0.05 12 O.fiQ 7 0.35 6 0.30 5 0.25 ■L(0) = 4.28 L(l) = 3.14 L(2) = 2.14 L(3) =1.57 comtjarlson of Instruction formats is based on the assembly language programs which realize aaaignments. Let Mi, Mo,.-., M)j denote a sequence of mejnory addresses. The general asaignaient statement can be defined as follows: k>l. Where * denotes an arbitrary associative binary operation. Of course, all sizes of assignment statements are not equally frequent. The analysis of Robinson and Torsun [3] showed the following relative frequencies for large application programs; k=2 k=3 k=4 kž5 P4=0.12 Pj.+Pg+. . .-0, 15 . This distribution is consistent with Knuth's measurement 12] showing for various saniplea P2=0.45 , 0.49 , and even 0.68, Since pg, pg,., wSre not provided by the original measurement [3] we will aaopt the values P5=P(,=P7=0.05 since they yield k = 2p^+3p3+4p^+5p^+6pg+7p^ - 3.14 which is consistent with the average length of assignn>ent statement, k=3.2 , measured bv Wichntann [1( . The general assignment statement is programmed in assembly language in the way shown in Table II. The bottom line in this table shows the total number of assembly language instructions, i.e., the length of the program Lj^ (m) . The average length of the assembly language program realizing an average assignment statement is 7 k=2 ■ and can be computed according to Table III. Therefore, in the best case of the tliree--addresa format an average assignment can be realized with 1.57 assembly language instructions. In the worst case corresponding to a stack machine the necessary number of assembly language instructions is 4.26. EVALUATION AND COMPARISON OP INSTRUCTION FORMATS Evaluation and comparison of instruction formats represents a step in the computer evaluation and selection process. Using the LSP method for system evaluation i;9,101 a criterion for system evaluation is organized as a logical aggregation of a number of elementary criteria. One among the elementary criteria is the elementary criterion for the evaluation of instruction formats. AN APPROACH TO THE COMPARISON OF MACHINE INSTRUCTION FORMATS UDK: 681.102 JOZO Jl DUJMOVIĆ DEPARTMENT OF ELECTRICAL ENGINEERING UNIVERSITY OF BELGRADE. YUGOSLAVIA A almpl« quantitative mođpl for evaluation and comparlaon of SSing posed. The suitability of instruction formats for aaeembly Ja^f»«?« P^^raming le ana^ various ei«pirioal atudiea of major high level ianguapa an asaignment statement la derived. This Indicator ta then applied for organialng a formal criterion for evaluation and comparlaon of.machine inatruotlon formata, JEDAN PRILAZ KOMPARACIJI FORMATA MASINSKIH IMSTRUKCIJA. U radu 83 predlaže »nali« model za vrednovanje i komparaciju formata maäinaKih instrukcija "ođ^J P?,« godnoBti raznih formata instrukcija za programiranje na BimboUäkora »naŠinakom JeUku. Primanom vi^^ InpirijaKih studija glavnih viSih programskih jeilka izveden je pokazatelj proseÄne ^uSine Inatruk ci ja dodela vrednosti. Ovaj pokazatelj se «atim prlmenjuje za realizaciju formalnog kriterijuma la vrednovanje i komparaciju formata malinakih inatrukclja. INSTRUCTION t-ORMATS Traditional organization of a machina instruction asBumaa an opcode field and up to three address fi Ids referencing memory locations (denoted M) or explicitly addressable processor registers,(denoted R>., Let m denote the number of maroory addresses per instruction, and r denote the number of general purpose register addresses par instruction. For zero-, one-, two-, and three-address inetructione the ten possibla instruction formats can be defined ae shown in Table I. Table I. Ten Instruction Formata _J lustructloo formats a 0 » H KR KRft i HA HH rat» - 2 MM, HHA MMH - - - 3 _ HMH . - 0 1 2 3 C Tha format (J denotea stack machines. In the casa m-l, r^O wa assuma a computer with an accumulator A that holds one operand and receives tha computed result (this öKplains the symbol HA). In the case m«2, r-t), both the version wltti an accujnulator (MHAJ and the version without the acoumulator (MM) are possible. The formats R, RR, and HRK can be considered auxiliary fornuits ainoe they are useid either aa spadai cases derived from instruction formats having m>0, or the ragiatars contain the addresses of (iieniory locations to be Referenced and consequently such fl-formate are equivalent to the corraapondlng M-fcroiats. Of pouree, the availability of general purpose registers enables the efficient handling of intermediate results of arithmetic operations, but the M-, -fields ara crucial since they enable fetching of operands from memory. Bome machines hava only one inatruotlon format, e.g. the only Instruction format of the IBM 1130 Is HA. Modern computers, however, mora frequently have multipla instruction formata Lć]. for example, the Instruction formate of the DEC PDP-11 are MM, MR, and RR. Similarly, the instruction formats of tha IBM/370 ara MM, MK, KB, and MRR. Since the assembly language programming la easier in the cases with more various logical instruction formats the number of available formats can be used aa one of criteria for oompacluon of competitive processors. AVERAGE LENÜTH Of' AN ASSIGNMENT STATfiMtlNT Various instruction foniu«ts yiuld various levels of complexity of assunibly language programs. Of course, from a progranuiiar's standpoint short programs are more convenient than lunger ones. Consequently, the length of the program can be used for comparison of various Instruction formata. This immediatolly rises thu isaua of eelecting a representative ("typical") program. In the arida of high level languayus tlia studies oi typical real-life programa included programs written in Algol (11 , Fortran 1^,31 Cobol [4,5, fi] , dnd PL/1 17,81 . Tliase analyses showed that the slmpläst ptogiaituiilng ' pattern» are the moat fraquent in practical programming, Conseguently, the majority of axeouted statements are assignments. Acourding to Knuth 12] the dynamic frequency of assignment utatements ia £7t. Static freguancltìs of assignments show a rather conalutont patterni Knuth f2 1 (Fortran) 411 - 51» Robinson & Torsun [3J (forttan) 36.1«- 3S.1% Al-Jarrah i Torsun C5J (Cobol) 37.6»-Strebendt (Kuck) [&] (Cobol) 49.6» Elshoff f7l (PL/I) 41.2» Therefore, wa ballava that the risk of over-Biiiipllflcation is sufficiently low if the nit) procesorjev v prihodnosti. Te njegove Iz--Jemne amogljlvostl pa je potrebno v celoti prenesti tudi na aplikativno programsko opremo. .Aplikativni prograjnl se vobSe lahko izvajajo na novem sistemu, ne morejo pa se izvajati nekateri diskovni fltorltveni programi. Ena glavnih prednosti sistema CP/H Plus je povečana hitrost diskovnega dostopanja, ki je.pogojena z dodatnim (bančnim) pomnilnikom. Implementacija pomnlLnlSkega upravljanja je tako priporočij Iva, Pohltritev diskovnega dostopa pa je zlasti pomembna pri velikih (vln-Sestrskih) diskih. Bistveno je tudi povečanja TPA prostora, kar oraojofia priroSnejfle izvajanje daljSlh uporabniških' programov bres plaete-nja. Slovstvo ((D) A.P.Železnikars Uvod v CP/H I. Informatica 5 (19H1), št. 3, str, 63-76. ((2)) A.P.Železnikars Uvod v CP/M 11. Informatica S (1981), fit. 4, str. 9-23. ((3)) A.P.Železnikar: Uvod v CP/M III. Informatica 6 (1982), ät, 1, str. 33-42. ((4)) CP/M Plus (CP/M Version 3) Operating System: user's Guide (1982), Digital Research. ((5)) CP/M Plus (CP/M Version 3) Operating system: System Guide (1982), Digital Research. ((6)) CP/H Plus (CP/M Version 3) Operating System; Programmer's Guide (1982), Digital Research. ((7)} CP/M Plus (CP/H version 3> Operating System i, Programmer's Utilities Guide for the CP/M Family of Operating. Systems (1982), Digital Research. ((8)) D.Hardy, K.Jackson) CP/M Plus» An Overview for CP/M 2.2 Users. Microsystems 4 (1983), No. 2, pp. 20-25. ((9)) B.R.Ratoff: Implementing the Advanced Features of CP/M Plus, Microsystems 4 (1963), No. 2, pp. 26-29. * CP/M Plus In CP/M sta zaäbitna znaka podjetja Digital Research, P.O.Box 579, 160 Central Avenue, Pacific Grove, CA 93950, U.S.A. LISA je nov dosežek Ik********************** Podjetje Apple je dalo v prodajo svoj nov eno-uporabnlgki osebni računalnik z imenom Lisa. Ta grafitno usmerjena in z mläko vodena delovna postaja je namenjena predvsem pisarniäkemu delu (po naše administrativnemu delu), njena cena pa Je ^ 9995. Lisa je podobna slatemii Star podjetja Xerox, je pa ceneJSa, Njena zna&ilnost je tkim. lokalno integrirana programska arhitektura, ki omogota njeno uporabnost z minimalnim vtipkavanjem prek tastature. Podobno kot sistem Star je tudi tisa moöno grafično usmerjena, z menujskim načinom komunikacije In z uporabo miäke (ta miSka se giblje prosto po mizi) za manipulacijo kurzorja (zaslonskega kazalca). Z inifiko 36 kurzor pomakne k določeni besedi ali sliki (Xerox Imenuje tak objekt podoba) na za- slonu In .a pritiskom na mi Skin gumb se potem nekaj zgodi, npr t prikaže ae ukazni seznam, odpre ali zapre se zbirka, pomakne se beseda ali cel odstavek, generira se določen stolpec podatkov ali pa se oblikuje preglednica. Osebni računalniki so se doslej že udomačili na , določenih poslovnih področjih, pri poslovanju: na veliko in na malo, v vladnih In upravljavskih pisarnah, v Šolah in v raziskovalnih laboratorijih) cilj novega plasmaja osebnih računalnikov je aedaj poslovna eksekutiva In etro- , kovnjaki (ekonomisti, Inženirji, komercialisti, svetovalne strokovne slutbe), Lisa uporablja mikroprocesor 68000, 12-colski črnobeli zaslon, 5MB vinčeatrskl dlak in dve! petinčetrtcolski enoti za upogljlvlve dlake z , obsegom 870KB, selektrJčno tastaturo z numeri- ; čnlm dodatkom in mifiko. V to materialno opremo ; Je integriranih šest programskih paketov: - LisaList omogoča oblikovanje in vzdrževanje ' seznamov poljubnega tipa za osebno podatkovno ; bazo 1 - LiaaCalc je modelirnl pripomoček za razpre- 1 delnične pole in finance, kjer se. pola lahko , razprostira do 2^55 vrstic in do 255 stolpcev ; - LisaProJect je vidni pripomoček za projektno ' upravljanje, ki omogoča uporabniku viđenje • kritičnih poti, medsebojnih odvisnosti in i postavljanje vprašanj tipa "kaj - če" • - LlsaWrite Je besedni (tekstni) procesor - LisaGraph Je namenjen poslovni grafiki - LisaOraw Je bistven del integrirane programske opreme in nudi menu črt, krogov, likov, za oblikovanje skic, ahem, tehničnih diagra- : mov in temu podobno Lisa Je rezultat dela 200 človek-let, od tega velik del za izdelavo programske opreme. Investicija v ta projekt je znašala 40 do 50 mili- . jonov dolarjev, projekt pa se je začel v letu 1979. Na osnovi tega projekta je podjetje Apple ; ustanovilo pođeben oddelek za osebne pisarniške sisteme s 100 inženirji v letu 1980. Kljub temu : se pričakuje, da bo 90% progiamske opreme za Liso narejene izven podjetja .'vpple (neodvisni j programski proizvajalci). Podjetje Digital Research bo imelo CP/M za Liso, podjetje Microsoft pa operacijski sistem zenlx (verzija Unlxa). Na v3dlku so tudi visoki programirnl jeziki Cobol, Basic, Pascal in Fortran. Iz drugih virov se bodo pojavili tudi aplikativni programi. Predviden je tudi paket AppleNet za lokalne mreHe, s Sirino l Mbit in s podporo za 128 naprav. Ta paket naj bi omogočil povezavo z drugimi mrežami,. kot so Ethernet in Širokopasovne mreže vključno s storitvami podatkovnih baz in elektronske poŠte, Lisa je namenjena pisarniškemu tržiŠčvi, strokovnjakom, direktorjem in administrativnim pomočnikom. Namenjena Je pa tudi manjšim in srednje velikim podjetjem z manj kot 200 milijoni dolarjev brutoprodlkta na leto. Podjetje Apple Je v letu 1982 doseglo produkt 583 milijonov dolarjev, s cenami svojih sistemov med 500 in 6 000 dolarji. Leto prej je imelo Se '23% triiSča v ZDA, lani pa samo Se 19% zaradi vstopa IßMa na to tržiSče, Ijeno banko òt. 0. To Je dogovor., V razldentnera delu BlOSa aa fiahajata rutini za dlBkovno brati jo Irt pisanje, potreben pa bo Se poaiv rutine yonmllnlSkega upravljanja, da se bo vkljuSlla ustrezna banka ga podatkovni prenos. Po branju ali pisanju v določen sektor se mora ponovno vhljuS.ltl banka ät. O pred vrnltyljo v BCOS. bančna Številka, ki mora biti uporabljena ica dlukovno branje In pleanje se posreduje z novo n;Od 1'utlno z Imenom Set Bank (nastavitev bdfika), ki posreduje vselej banćno Številko med i) lil 15, Ta dtevllka se shrani skupaj e ätevll-kaml staze In sektorja in z DMA naslovom, da bi lilla lahko uporabljena pri diskovnem branju in plbuoju. Zato bo potrebna izdelava rutine za IžtiUo poitinilnlka (Select Memory), kl se pukJiÈe z banCiiO Številko In mora opraviti materialno odvisno opravilo preklopitve na ustre-.I1Ü ponmllulško banko. Nazadnje bo potrebno Iz-^^cldti äe rutini MOVp in XMOVE, kl kopirata püiiiiiiliUäkl blok v okviru dane banke (HOVE) ali iiictci dvema bankama (XHOVE). Procesor Z80 Ima na vuljo ustrezne ukaze za bločnl prenos. Ì.4. Prednosti bančnega sistema Prva prednost bančnega sistema Je v tem, da Je za uporabniške programe na razpolago več poiti" nllalka. Večina operacijskega sistema biva v posebni pomnllnläkl banki In tako ne obremenjuje 'ITA prostora kot sistem Cp/M 2,2. Tudi bančni BDOS Ima nove lastnosti, ki so za uporabnika prljaznejäe in bolj raznovrstne. Obstaja zaslonsko usmerjen urejevalnik, ki je vgrajen v ukaz branja kon^olnega v/cesnika In se uporablja pri vstopu ukazov pri CCP, PIP In drugih storitvah, 'l'a editor omogoča ponoven vpoklic zadnje vcBtlce konzolnega vhoda, omogoča pomikanje kurzorja a moinoatml vstavljanja In brisanja. Modificirana ukazna vrstica ae potem ponovno obdela. To pa skrajšuje tipkanje pri po-dobiilti ukasilh, popraviti pa je mogoče tudi napaki-, ki se je pojavila na začetku dolge vrstice. rudi sporočila o napakah 30 daljša In bolj Iziažita, pokaže se Številka BDOS funkcije In ime zbirke, kjer se je napaka pojavila. Naslednja bistvena lastnost bančnega BDOSa je zaSči-ta zbirk z gesli. S tem je zaščitena zasebnost zbirk pjTl uporabi sistema z več uporabniki. Prav tako je moč zbirke zaščititi pred Izbri-8ÙUI, pisanjem ali branjem pred nepoklicanimi , ostìbaiiil. 3,5. Tabele in vmesniki K opisanim vidnim zunanjim lastnostim sistema CP/M Plus je treba dodati še prednosti vrsta notranjlli izboljšav v BDOSu, Te izboljšave bistveno prispevajo k hitrosti večine diskovnih operacij. Te izboljäave se pokažejo tudi pri nebanòneiii slsteiiui, vendar jf pri bančnem slste-iim omogočena njihova polna uporaba, ki ne gre na račun dragocenega TPA prostora. Ma poseben naèln se lahko GKNCPM določi obseg in mesto vaeh teh tabel. Uve urstl tabel, ki ju lahko pomaknemo v banke in sta zn:inl iz sistema CP/M 2.2, sta vektorja preizkusnih vsot in dodeljevanja. Vektor preizkusnih vsot je tabela, ki vsebuje enozloine preizkusne vsote za vsak sektor v diskovnem i-[ueniku. Med ImentSkinil operacijami uporablja CP/H te preizkusne vsote za razpoenavanje različnih disket, ki ao bile vstavljene v enoto. Razlika pri sistemu CP/M Plus je v tem, da je moč vektorje preizkusnih vsot poiuakniti v bjt>ko àt. O in tako caabremisniti TPA prostor. Druga znana tabela je dodeijevalni vektor. Ta tabela se uporablja za evidenco zasedenih blokov tdüdeljevaiiiih skupin) na disku. V sistemu Cp/M 2.2 In v nebaučnetii sistemu CP/M Plus se uporablja en bit za evidenco vsakega diskovnega bloka. Ta bit se popravlja vsakokrat, ko je nov blok uporabljen In celotna tabela Be rekonstruira pri toplem sagonu oziroma pri v&tavitvl nove diskete. V bančnem sistemu CP/a Plus se uporabljata dva bita za vsak blok. Prvi bit kaže uporabijonost bloka sa zbirko, ki ga nI bila zaprta g drugI bit pove, da J© bila ebirka, povesana o tem blokom zaprta In tako potrjuje permanentno dodelitev. Ta dvobltna ahama omogoča aproööanje blokov, ki so bili dodeljeni izvajanju tronut-nega programa, ko se enota resetlra ali ko je program izstopil brez zapiranja svojih '^birk. Tako nI več potrebno preiskovanje imenika (kot v sistemu ĆP/H 2.2) sa prestrukturiranja dodeljevalnega vektorja med toplim zagonom. Ta pristop povzroči Izdaten časovni prihranek pri toplem zagonu. V primeru, da se CCP prenosa Is sosednje banke, postane tklm. topli zagon navidezno odvečen, Imenlško sekljanje (hashing) je nova lastnost sistema CP/H Plus, V rutini GEWCPM je s pomočjo dialoga moč Izbrati sekljanje na nekaterih ali na vseh diskovnih enotah. To povzroči nastanek dodatne tabele s Stirimi zlogi za vsak lasnlSkl vstop, ki ae dodelijo z rutino GENCPM in se oblikujejo, ko se posamezna disketa vpläe. To tabelo uporablja BDOS za direkten izračun lokacije zbirke v imeniku, tako da ni več potrebno zaporedno preiskovanje imenika kot v prejšnjem BDOSu. Povečanje hitrosti je tu znatno pri odpiranju, zapiranju, preimenovanju In brisanju zbirk, saj nastopi vselej operacija nad enim samim sektorjem, Nadaljna notranja izboljSava BDOSa Je uporaba domiselne shema hitrih vmesnikov (cache) pri diskovnem dostopu. Med Izvajanjem rutine GENCPM se lahko vsaki enoti v sistemu dodeli ninoilca (bazen) vmesnikov. Ločeni bazeni se vdràujejo za Imeniške in podatkovne sektorje. Vsak bazen ae lahko dodeli eni sami enoti ali pa je skupen za več diskovnih enot po prosti izbiri. Vsak bazen lahko vsebuje do 255 vmesnikov in culotno Število vmesnikov bo omejeno le z razpoložljivim pomnilnim prostorom. Imeniškl vmesniki se namestijo v banko St. O (kot kaže slika 4) tako da so lahko dostopni za imeniška BDOS funkcije. Podatkovni vmesniki se lahko predvidijo v bankah St. 2 do 15. Hitri vmesniki (cache) se uporabljajo s namenom, da se preprečijo ponovna branja že prebranih diskovnih sektorjev. Ko je bil sektor enkrat prebran ali vpisan, ostane v pomnilniku. Ponovno branje istega sektorja bo uporabilo ob-stojeSo pomnilniško kopijo in tako ne bo potrebno ponovno branje z diska. Ko sistem uporabi vse razpoložljive vmesnike, sprosti najmanj uporabljenega v zadnjem razdobju. Obstaja poseben BDOS poziv (rutina) za sproščanje vmesnikov. Programi, kot so PIP z vorlflkacljako možnostjo, pa morajo opravljati vsakokraten diskovni dostop. ublnek te viuesniäke sheme na prevajctlnlke, tekstovne procesorje, pakete podatkovnih baz in druge programe, ki uporabljajo ponovne dostopa k latim podatkom, je izredno zanimiv. Ko je bil enkrat opravljen prehod akozl zbirko, se na disk praktično ne dostopa, če ni vpisa v zapis. Progranii s plastail se izvajajo hitreje, ker lahko plast ostane v pomnilniku àe od avoje prejSnje uporabo. Sistem hitrih vmesnikov daje videz, kot da se piogram Izvaja v velikem pom" nilnem prostoru. 4.Sklep Sistem CP/M Plus je veliko boij zmogljiv kut sistem CP/M 2,2 In bržkone dosega mejno zmoij-IjLvost za Ö-bitne mikroprocesorje, S tem pa aa podaljšuje tudi žlvljenaka doba uporab«.i H-blt- Opleano pomnilno upravljanje pa ima tudi dolo-öene omejitve. Pri €4K-zložnem prostoru nI mo£ prekljapljatl celotnega obsega, . ker bl a tem !lagubill. izvajalno zaporedje oziroma bl procesor moral izvajati program pri naslednjem naslovu novega prostora, kjer je v starem prostor ru nehal, Voböe ni smotrno Izključiti pomnilnika, v katerem ae nahaja del programa za preklopi Posledica tega je, da.mora ostati določen del pomnilnega prostora skupen vsem bankam. V tem delu se mora nahajati tkim. preklopni segment (del programa). V sistemu ,CP/M Plus Je moò definirati tkim, "skupno bazo", in pod to bazo sé lahko nahaja ves kod, ki ne vpliva na preklapljanje bank. Vrednost skupne baze Je odvisna materialno rea-,llziranga mehanizma pomnilnlškega upravljanja v 'konkretnem raöunalniku. Navadno se pomnilnik prekljaplja v 16K-žložnlh segmentih in v tem primeru se skupna baza lahko zaSne prinaslovu COOOH. Banke se tako preklapljajo v intervalih po 48K zlogov In segajo od OOOOH do BFFFH, i 3.2. Bančni pomnilnik pri CP/W Plus Polna implementacija sistema CP/M Plus zahteva vsaj tri pomnllnlške banke. Prva banka (banka St. 0) se uporablja za shranjevanje bančnega dela BlOSa in BDOSa, diskovnih dodeljevalnih vektorjev, vektorjev preizkusnih vsot, imeni-. 5kih. vmesnikov in sekl jalnih tabel. Banka ät. .1 se uporablja kot podroöje prehodnih programov ; (TPA) in v njej. se izvajajo aplikativni programi in konzolnl ukazni procesor (CCP). Na sliki 4 Vidimo,bogatejši sistem CP/M Plus' s Stirimi bankami. Rezidentni BDOS Ima obseg le l,5K zlogov in le mali del. BlOSa mora biti ire-zldenten, tako da je TPA kar ae da obseino^ Tako lahko ostane za TPA tudi eiK zlogov RAMa. Preostale . banke ae lahko uporabljajo prvenstveno kot diskovni ^datkovnl.vmesniki. V 3K-zlo£nem segmentu .se lahko nekje nahaja rezervna kopija CCPja, ki se kopira v banko 1 ž rutino ponovnega (toplega) zagona z rutino v BIOSu, Tako ponovni zagon ne potrebuje diskovnega dostopa„ Zaradi tega je dovoljena menjava diskete v enoti A, v vsakem času. Sistem CP/M ; Plus podpira v celoti 16 bank in omogofia tako; vrsto podatkovnih vn^snlkovt ta metoda sé bp ; izkazala kot zelo'uporabna In .'smiseliui. . Kot smo 2e povedali, še v prvi banki nahajata ; dela programskih modulov BDOSa in BlOSa. BDOS ' dobavlja Digital Besearch v obliki premestlji-vega sistemskega progr^a (SPR pomeni System Program Reloctable). Obstajajo tri zbirkei ^ BDOS3,SPR Je popoln BDOS za uporabo v nebanfinemI CP/M Plus slstemuj zbirki BNKBIX>S3.SPR Ini RESBDOS3.SPR sta banian 1 in nebanSnl del BDOSa. 1 Ti moduli se berejo s programom GENCFH, ki je storitev za. sistemsko generiranje in postanejo r del generlranega sistema, i 3.3, Bančna delitev BlOSa Delitev BZOSa na banké Opravimo tako, da ugotovimo segmente, ki bodo dostopni v posameznih' bankah. Tisti del BlOSa/ ki bo dostopan v vefi kot eni banki, naj bl ostal rezldenten' .(nebančni; glej sliko 4). V rezidentnem delu se . nahaja tudi rutina za izbiro bank in deli dis-■ kovnih Sitalnih in pisalnih rutin,- ki opravljajo prenos podatkov. Rezidentne so lahko tudi; rutine za konzolhe in tiskalne operacije, saj! bodo te klicane iz.TPA (banka št. ,1) in Iz, BDOSa (banka St, 0). TI sedenti so rezidentni ' in nJim predhodi ukaz CSEG v zbirnem izvirnem j kodu. Druge diskovne usluinostne rutine, kot so' izbira diska (Select Disk), nastavitev steze j '(Set Track), nastavitev sektorja (Set Sector) ltd. In segmenti za odkrivanje In odpravljanje napak pa se lahko nahajajo v bančnih delih pomnilnika, Tem segmentoiA predhodi ukaz ĐSEG v zbirnem izvirnem kodu. Ko se tako modificirani BIOS prevede z zbirnikom HMAC (tj. MAC zbirnik za premeščanje) in poveže s pomočjo'storilnost-■ ne rutina LINK, vsebuje rezultirajoöa zbirka; BNKBI0S3.SPR bančne in nebančne dele koda, ki so urejeni v dva ločena segmenta. ■ Program GENCPM bo razpoznal ta segmenta in bo . ustrezno razdelil BIOS v bančni in rezidentni del. V zvezi z bančnim BlOSom so potrebne ge nekatere minimalne spremembe v obstoječem kodu, BDOS bo vselej poklical.diskovni V/I BIOS z vklop-' Skupna baza OJOOH OOOOH -->■ Rezidentni BIOS Rezidentni BDOS BIOS tabele Bančni BIOS Bančni BDOS Iiaenièki vmesniki Sekljalne tabele DodelJevalne tabele TPA CCP (pri izvajanju) Podatkovni vmesniki CCP (v rezervi) ====^=:== Podatkovni vmesniki »Nebančnl pomnilnik Bančni pomnilnik e4K ' Slika 4. Tipični štiribančni model sistema CP/M Plus (ki pa ni maksimalen) VMESNIKI IN SEKLJAIHE TABELE BIOS S D O S PROGRAMSKI HALAGAUIIK NEOBVEZNE PLASTI . PREHODNI PROGRAMI OSNOVNA STRAN OH - lOOH Slika 2. Značilen nebančni fllstem CP/H Plus Na Bilki 2 In sliki 3 imamo priliazana tipična primera nebanŽnega in bančnega aia tenia CP/M Plus. 2.11. Modifikacija la sistema CP/M 2.2 Modifikacija sistema CP/M 2.2 v sletein CP/M Plus je lahko enostavna in hitra, ße imamo določeno znanje in izvirni (zbirni) kod BlOSa sistema CP/M 2.2. V aiatemskem priročniku aletema CP/H Plus je dana procedura, ki pojasnjuje posamezna dejanja. Sevda ho modifikacija bistvena, potrebno bo pa tudi zbirnläko prevajanje z uporabo atiitnika tipa RMACj vobfie bo potrebno dodati 16 novih BIOS funkcij,' razälrlti vodnik in blok diskovnih parametrov, Veölna od obstoječih BIOS funkcij (O do 16) bo spremenjenih, nekatere od njih celo bistveno. Razen tega bo po'-rebno zgraditi manj So različico obstoječega BlOSa za povezavo v nalagalnl program sistema CP/M Plus I vendar tu ni prlöakovati večjih te-üav. Seveda pa naloga ni tako lahka, kot se zdi in potrebnih je več ur trdega dela za odpravljanje napak v novem BIOSu, preden bo ta deloval zanesljivo. Seveda pa je CP/M Plua laij e implementirati kot sistem MP/M. 3. Nove lastnosti sistema CP/H Plus Sistem CP/M Plus Ima več novih lastnosti, kot so odtis datuma In «»»a v ablrke, ablrCna gesla in zmogljiv urejevalnik «kaznih vratio. Pri tem pa so pomembnaJöe "ötranje Izboljäave el-stema,kot Je povečana hitrost doatopa v 2birka in povečane pomnilne zmogljivosti M izvajanju. Vse to pa zahteva "olj zapleten BIOS. ki le potrebno dodatno pojasniti, lo, klr e v Blstema CP/M Plus « ^"te- mom CP/M 2.2 bistveno, je večji Po^"^^ ator za izvajajoči program pri novem sistemu, Lprav je ta sistem obsežnejši od starega. Ta lastnost je posledica posebnega mehanizma, Kt ga imenujemo upravljanje pomnilnika. 3.1. upravljanje pomnilnika Pomnllnlško upravljanje je "»etoda, "ji je ìe dolgo znana pri velikih računalnikih. Pelini ško upravljanje preseže omejenost flzičn^a pomnilnega prostora, ki je na "zpolago za i^ezne mikroprocesorje. Za večino osembitnlh procesorjev Je ta prostor omejen a 16 naslovnimi biti, tako da imamo le 65536 enoličnih pomnilnih ki h naslovov. Kadar programer spozna, da določeni programski deli ne navajajo eden drugega, lahko te dele loči v plasti, za katere pa ni ve6 potrebno, da se istočasno nahajajo v pomnilniku <»atačneje v stanju izvajanja). To pa omogoči, da ä& lahko plasti nalagajo v absolutni pomnilni prostor na prekrivajoče naslove (ne na vlSje ali nižje), vendar v različnih ČaaovOlh Intervalih. Tako lahko postane tudi absolutni pomnilni procesorja, ki je samo 64k-zloien, dovolj velik za Izvajanje neomejeno razsežnih programov, ce so ti seveda bili ustrezno razdeljeni v plasti. Po drugi strani pa lahko plasti naložimo v paralelne pomnilnike (imenujemo jih banke). Ki 1lh po potrebi vključujemo v IzvajalnL proces. Ta metoda zahteva minimalno dodatno materialno opremo oziroma preklopni mehanizem, ki ga uresničimo z uporabo V/I vrat (procesorji ZflO, 8080 In 6085). Tako dobimo aist^ s tkim. "bančnim preklapljanjem" ali z "razSirjenlm naslavljanjem". SKUPNI POMNILNIK LRU podatkovni vmesniki Rezidentni BIOS IK Rezidentni BOOS 1,5K Dodeljevalni vektorji Vektorji preizkusnih vsot Bančni BIOS 3K Bančni BDOS llK LRU IroeniSki vmesniki Sekljane imeniäke tabele (po ena na enoto) rt' Programski nalagalnlk RSX moduli v skladu TPA » • • * • * • * » TPA • « « Neobvezne plasti Prehodni program LRU podatkovni vtneanikl Sekljane Imeniške tabele (po ena na enoto) Kopija CCeja za topil zagon (neobvezna) Banka è t. O Stran nič Banka St. 1 Slika i. Značilen bančni CP/H eistem Iki pa ni edini) Banka ät. 2 30 USERPs rezervirano za Blstemekega Implementator Ja. 31 RESERVH rezervirano za prihodnjo uporabo. 32 RESERV2! rezervirano za prihodnjo uporabo. Hov^ BIOS funkcije ao v celoti pojasnjène v CP/H Plus priročnikih, vendar bo nekatera podrobnosti zanemarjene in jih je težko najti. 2.6. Preusmeritev V/I in slstemäkl _krmilni blok '_ SlBtemsfcl krmilni blok (SCB za System Control Block) je lOO-zloìnl blok podatkov v BDOSu. SCB hrani razlifine sistemske parametre, zastavice In spremenljivke, ki se navajajo, modificirajo z BDOSom, CCPjem In BlOSom, SCB definicija se nahaja v posebni zbirki sistema CP/M Plus, imenovani SCB,ASM . Vse spremenljivke v SCB.A.SM ab definirane kot PUBLIC spremenljivke, tako da jih BIOS lahko navaja. To je vsekakor prednost pri uporabi programa za sistemsko generiranje In zbirk tipa .REL . SCB spremenljivke ao markirane kot R/0 ali R/W v odvisnosti, ali so lahko ali ne modificirane z BlOSom. 2.7. Diskovne podatkovne strukture CP/M Plus je podoben slatemu 2,2 in uporablja tudi vodnik diskovnih parametrov (DPH za Dlak Parameter Header), bloke diskovnih parametrov (DPB za Disk Parameter Block), teatno vsoto In dodeljevalne vektorje. Dodanih pa Je tudi nekaj novosti. Vmesnlškl krmilni bloki (BCB za Buffer Control Block) bo dodani za lociranje vmesnikov flzlönlh zapisov za BDOS, dodani pa ao tudi i-menlški vmesniki. Kot kaže slika 1, ao bili DPB (bloki diskovnih parametrov) nekoliko razširjeni e novimi strukturami in kazalci. Novi DPH (vodnik diskovnih parametrov) je malce nejasen in bolj zapleten kot njegov 2.2 predhodnik) vendar vse to povečuje hitrost sistema CP/M Plua. Ista BCB struktura ee uporablja za lociranje obeh vmesnikov J imenlškega In podatkovnega. Vse to pa zahteva precej več pomnilnika kot v starem sistemu. 2.a. LBU vmesniki V banCnih alsteiiiili, kot je CP/M PluB, se uporablja vmeanlška shema LBU (Least Recently used) za upravljanje skrivališča debloklrnlh vmesnikov in imenläklh zapisov.Ča BDOS potrebuje vmesnik, izbere vselej tistega, ki Je bil v poslednjem razdobju najmanj uporabljan (LRU). Shema z LRU vmesniki ne povečuje neposredno Izvajalne hitrosti ali diskovnega V/l, toda lahko pridobi dragoceni čas pri ponovljenih nalaganjih pogostno uporabljane Informacije, Tabela enot (naslovi DPHJev) ^0123 [l5 nlk disk. par. —^ Vodnik Vektor testnih vsot Dodeljevalnl vektor Sekljalna tabela ____—___— r"— r—— r i r 1 f— XLT MF DPB CSV ALV DIR DTA HASH BK BCB BCB BCB glava BCB BUFP ADDR LINK BCB glava BCB ImeniSkl vmesnik BUS'E ADDR ji: :r LiNK BCB buff ADDR link podatkovni vmesnik J BOB imeniäkl vmesnik ! BUFF ADDR LINK ......ji; podatkovni vmesnik : BCB BCB buff addr LINK fiH imenički vmesnik " — — — BUFP .... LINK ADDR UH podatkovni vmesnik 4 Slika 1. Bančni slatem BIOS podatkovnih struktur v sistemu CP/M Plus 2.^. Sekljalne tabele CP/M Plus uporablja sekljalne tabele za povečanje hitrosti iskanja v linonlku. Pri sekljanju je položaj sektorjev v imeniku določen brez preiskovanja dejanskega imenika, kar zmanjäa ätevllo diskovnih dostopov, ki bi bili potrebni za dostop v imenlški vstop. Tako Je moč reSlti dragoceni čas, ki bi bil sicer porabljen aa zap9redno branje Imenika pri Iskanju specifičnega vstopa. 2.i0. febančne in bančne sistemske zahteve Čeprav ne tiiiallmo opisovati načina instalacije CP/M Plus -sistema pa vendar omenimo minimalne sistemske zahteve za implementacijo eletema CP/M Plus, Načeloma potrebuje nebančnl sistem le a,5K zlogov in äe prostor za BIOS (ki je zelo odvisen od specifičnega sistema oziroma aparaturne konfiguracije) in najmanj 32K zlogov RAMa. Bančni sistem potrebuje vsaj dve banki, z najmanj IIK zlogi in prostorom za BIOS v banki St. O in najmanj l,5K zlogov v skupni banki (v banki ät. 1). Minimalni bančni alatem potrebuje .96K zlogov v dveh bankah. 2.4. Wove BDOS funkcije BDOS funkciji 3 In 4 eta bill preimenovani iz READER INPUT In PUNCH OUTPUT v AüXILIARV INPUT In AUXILIARY OUTPUT. Funkoiji 7 in 8, ki Bta bili GET in SET I/O BYTE, Sta opuSÉeni, njuni številki pa prirejeni funkcijama AUX. IWPUT STATUS in AUX. OUTPUT STATUS. Vefi starih BDOS funkcij je bilo modificiranih, vendar so ostale približno združljive s starim Bistemora. Nove BDOS funkcija s pripadajočimi za CP/M Plus so tele; Številkami 37 RESET DRIVE; se uporablja za resetiranje posameznih enotf je združljiva z MP/M. 44 SET MULTISECTOR COUNT t zagotavlja blokiranje logifinih zapisov) je združljiva z MP/M. 45 SET BDOS ERROR MODE: doloöa obdelavo fizičnih in razširjenih napak} je združljiva z HP/M. 46 GET DISK FREE SPACEt določa Število prostih sektorjev na specifični enoti ; je združljiva z MP/M. 4 7 CHAIN TO PROGRAM» omogoöa veriženje iz enega programa na drugega s je združljiva z MP/M. 48 FLUSH BUFFERS: izaili- zapis poljubnega pisalno nerešenega zapisaf je združljiva z HP/M. 49 GET/SET SYSTEM CONTROL BLOCK: oinogoöa dostop v krmilni blok siatema CP/M Plua. 5U DIRECT BIOS CALLS: omogoiSa neposredne BIOS pozive skozi BDOS v BIOS. 59 LOAD OVERLAY OR RESIDENT SYSTEM EXTENSION: naloži modulsko plast all RSX modul V pomnilnik. ĆO CALL RESIDENT SYSTEM EXTENSIONi se uporablja za klicanje RSXov. 98 FREE BLOCKS: vrne v prosti prostor vse za6asno dodeljene podatkovne bloke vseh trenutno aktivnih enot} uporablja se v CCP po toplem zagonu. 99 TRUNCATE FILE: nastavl zadnji zapis zbirke na doloSeno nakljuöno zaplsno številko 100 SET DIRECTORY LABEL: Oblikuje all popravi Imeniäko označitev» je združljiva z MP/M. 101 RETURN DIRECTORY LABEL DATA: vrne označl-tveni vatop imenläke označitve za določeno enotof Je združljiva z MP/M. 102 READ FILE DATE STAMPS AND PASSWORD MODE: vrne informacijo datumskega in časovnega odtisa in geselski način za določeno zblrkoj je združljiva z MP/H. 103 WRITE FILE XFCB: oblikuje oz. popravi XFCB za specificirano zbirko) je združljiva z MP/M. 104 SET DATE AND TIME: nastavl slstemaki notranji datum In čas) je združljiva z MP/M 105 GET DATE AND TIME: dobi aisteraski notranji datum In časj je združljiva z MP/M. 10 6 SET DEFAULT PASSWORD: omogoča programu specifikacijo zblrčnega gesla pred dostopom vanj, sicer se pojavi geselska napa-kaj Je združljiva z MP/M. 107 RETURM SERIAL NUMBER: vrne 6-sìo£no serijsko Steviltio sistema CP/M Plua. lOB GET/Ser PROGRAM RETURH GODB t omogoča programu, da nastavi ali dobi vrnltveni kod pred vrnitvijo. 109 GET/SET CONSOLE MODE: to je iS-bitni si-steoiaki parameter, ki doloés akcijo več BDOS konzolnlh V/I funkcij, kot jo npr, Control-C funkcija, zvijanje/ ne zvijanje itd. 110 GET/SET OUTPCT DELIHITBBi dobi ali nastavi trenutni izhodni omejavalnik, normalno 111 PRIKT BLOCK: poSlje znakovni niz, je lokaliziran s specificiranim CCB (Character Control Block) na logično konzolo. 112 LIST BLOCK: pošlje znakovni niz, ki je lokaliziran s specificiranim CCB na logično napravo za listanje. 152 PARSE FILENAME: analizira ASCII sbiröno ime In pripravi FCB (File Control Block). Tudi vrsta HP/M funkcij (38, 39, 41, 42^, 43), ki niso podprte, vrne ustrezen ("uspešni") kod. 2.5. Nove BIOS funkcije BIOS skočnl vektor sistema CP/M Plus ja bil razširjen iz 17 na 33 skokov. Za delovanje ai-stema CP/M Plus ni potrebna implementacija voeh skokov, vendar mora biti 33 skokov vključenih v skočno tabelo. Navadno neuporabljeni skok kaže na RET ukaz. Eden od skokov je rezerviran za OEM implementacijo (številka 30) In je dostopen skozi BDOS funkcijo 50. Zadnja dva skoka sta rezervirana za prihodnjo uporabo. Za operativnost osnovnega CP/M Plus sistema zadostuje implementacija skokov 0-4, 8-14, 16 In 26. BIOS funkcije 0-16 so načeloma enake kot v sistemu 2.2, z izjemo funkcij 6 in 7 (PUNCH, READER», kl sta zamenjani z AUXOUT in AUXIN, tj. s rutinama za pomožni V/I. Move BIOS funkcije sistema CP/M Plus BO tele: 17 CONOSTt vrne izhodni status konzole. 18 AUXISTj vrne vhodni status pomožnih vrat, 19 AUXOSTi vrne izhodni status pomožnih vrat, 20 DEVTBLt vrne naslov znakovne V/I tabele, 21 DEVINI: inicializira znakovno V/I napravo. 22 DRVTBLt vrne naslov tabele diskovne enote. 23 MULTIO: nastavi Številko naslednjega sektorja za branje ali pisanje, 24 FLUSH: vsili polnjenje fizičnega vmesnike pri uporabniško podprtem debloklranju. 35 MOVE: opravi pomnllnliko pomnilnlBtti blo-čni pomik. Opravi lahko tudi bančno bančni bločni pomik, če ae pokliče funkcija XMOVE. 26 TIME: dobi ali nastavi čas. 27 SELMBM: izbere specificirano pomnilniSko banko. 28 SETBNKj Specificira banko za DMA operacijo 29 XHOVE; nastavi banki za naslednji pomik. 2, Nove lastnosti sistema CP/M Plus 2.1. Dokumentacija Dokumantacija za CP/M Plus je v primerjavi z dokumentacijo aa stari sistem (CP/M 2.2) izdelana vzorno in profesionalno. Sestavljena je iz Štirih priročnikov! uporabniškega, sistemakega, programirnega in storitvenega. Vsi priročniki 80 vsebinsko tako zaokroženi, da vsak zase omo-goCajo razumevanje sistema CP/M Plus in njegovo modifikacijo iz sistema CP/M 212. 2.2. Vgrajeni ukazi Dodanih je več novih ukazov, iri sicer vgrajenih in prehodnih. Iz prejänje različice ao ostali ukazi DIRectory, ERAse, KEName, TYPE in USER, dodan pa je bil ukaz DIRSYS, ki prikaže, sistemske zbirke (prej prikazIJive s prehodnim ukazom STAT). Vendar so vsi ti ukazi razširjeni (izpopolnjeni), tako da avtomatiöno nalagajo zadevne prehodne programe. Vgrajeni ukazi so tiles DIR To je storitev z razSirjenim prikazom imenika. DIR vsebuje veö kot 16 različnih tnoinosti ukaznih vrstic, prikaže lahko obseg zbirk (prej STAT ukaz), preostali prostorna disku in vstope, pridevke, datum, diskovne enote, uporabniška območja itd. DIRSVS Prikaže vse sistemske zbirke v trenutnem uporabniškem območju. ERASE Ta ukaz je podoben ukazu 2,2 ERA, vendar omogoča potrditev (soglasje uporabnika) pred izbrisom. ' • renahe Omogoča preimenovanje zbirk, lahko zbriše dvojna imena (s potrditvijo), omogoča vključitev delov v specificirana zbirčna imena. TYPE USER' Novi' tile: Ima enako funkcijo kot prej, vendar omogoča stranenje (listanje po straneh) in zahteva ime zbirke, če to ni bilo posredovano v ukazni vrstici. Ima enako funkcijo kot prej, vendar zahteva Številko uporabnika, če mu ta ni bila posredovana v ukazni vrstici. 2.3. Prehodni ukazi (progrčuni) prehodni programi sistema Cp/M Plus pa so COPySYS DATE DEVICE To je Btoritev za kopiranje nalagalni-ka (podobno kot SYSGEN). CP/M Plus se nahaja, v diskovni zbirki in COPYSYS vpiäe nalagalnik na sistemske steze. Nastavi in prikaže datum in čaa. Se uporablja za prireditev logičnih CP/M naprav eni ali več fizičniro CP/M 'napravam. Omogoča uporabniku spremembo vmesniških (perifernih) protokolov, hitrosti prenosa (baud rate) in modifikacijo višine In širine zaslona. DUMP EO GENCOM Je podoben DUMP programu za zbirke v Hex m ascii formatu. prikaz ED je tu vrstično usmerjan, ima pa vse prejSnje ukaze. To je Btoritev, ki omogoča RSX zbirkam (Resident System extension) navezavo na .COM zbirke. vhod iz diskovne zbirke namesto s ta-, stature. help to je storitveni program, ki s pomočjo 76K-zložne podatkovne zbirke poj aenju" je uporabo ukazov. KEXCOH Podobno kot LOAD v CP/H 2.2 se ta pro-. gram uporablja za pretvorbo .HEX zbirk v .COM zbirke. ' INITDIR Iniciallzira diakovni imenik in oniogo-či odtis časa in datuma v bantinein CP/M Plus sistemu. ■ LIB . Knjižnični storitveni program. HKK Standardni povezovalnik za proizvodnjo programskih zbirk iz .REL zbirk, nastalih z uporabo RMACa. MAC Ta makrozbirnik generira .HEX zbirke. • PATCH Sistemska storitev za zbirčno popravljanje sistema. PIP Je enak staremu PIPu, vendar omogoča prestavitev zbirk v druga uporabniSka' območja in lahko zahteva potrditev za, vsako proceduro} ima tudi ARCHIVE lastnost. PUT Omogoča, da se zapis za tiskalnik ali konzolo prenese v diskovno zbirko. RMAC • To ^e premeSčevalnl inakrozbirnlk, ki' generira .KEL zbirke. SAVE Je storitev, ki sama sebe instalira na vrh TPA, se vrne, prestreže Izstop NEXT programa, da tako omogoči rešitev TPA vsebine. (SAVE ukaz ni vgrajen v' CP/M Plus). . SET Omogoča nastavitev zbirCnih pridevkov. Pridevki ao diskovne označitve, tip časovnega in datumskega odtisa, zaščita z geslom in drugi sistemski pridevki, ki so se uporabljali v STAT. SETDEF Omogoča nastavitev različnih sistemskih možnosti, kot so veriga Iskanja enot (diskovnih), začasna enota in vrstni red iskanja zbirčnih tipov. Krmili tudi sistemska načina DISPLAY, in PAGE: DISPLAY način povzroči prikaz i-Hien in programskih lokacij ali naloženih zbirk tipa .SUBf PAGE funkcija omogoča stranenje konzolnega prikazovanja. SHOW Prikaže karakteristike diskov in enot. Ta storitev nadomeSča skupaj s SET storitvijo ukaz STAT. SID To Je nova različica za DDT. SUBMIT To je izboljgan izvajalnik ukaznih zbirk z možnostjo vgnezdevanja in lahko vsebuje programske vhodne vrstice. . Poseben primer .SUB zbirke je PROFIL .SUB^ ki so avtomatično izvaja pri mrzlem zagonu. XREF To Je storitev za križne navedbe .ASM zbirke. Eno je očitno I ukazi sistema CP/M Plus so zelo podobni ukazom sistema MP/Mj nekateri so dobesedno prepisani. CP/M Plus ima obilo programske opreme, npr. LIB, LINK, MAC, RMAC, SID, XREF, ki je ni potrebno kupovati posebej. GET Omogoča CP/M sistemu, da dobi konzolnl OPERACIJSKI SISTEM CP/M PLUS ANTON P. 2ELEZNIKAR UDK: 681.3.06 CP/M PLUS:181.4 ISKRA DELTA, LJUBLJANA Ta filanek pfegleđno opisuje lastnosti novega operaoljekega elsteina CP/M Plua (CP/M verzija 3,0) «a uporabnika elBtema CP/M 2,2, tako da prlka-auje nove lastnosti sistema CP/M Plus, tn sieer vgrajene ukaze, nova prehodne programe tega sistema, nove BOOS funkcije, nove BIOS funkalje, slatemskl krmilni blok, diskovna podatkovne strukture, vmesnike In se-kljalne tabele, aahtevo za nebanönl in banCnl operacijski sistem In postopek modifikacije s pomočjo sistema CP/M 2.2, SploSno je opisan mehanizam pomnllniSkega upravljanja, organizacija bančnega pomnilnika, bančne posebnosti BlOSs In prednosti bančnega sistema s tabelami In vmesniki. CP/M Plus Operating system, This article is a survey of the new CP/M Plus Operating System features for the CP/M 2.2 users showing new abilities of the CP/M Plus Systemi built-in commands, new transient programs of the system, new BDOS functions, new BIOS functions, system control block, disk d^ta structures, buffering and hash tables, nonbanked and banked systems requirements and updating from CP/M a.2, In a general way memory tnanagement, banked memory, banking of BIOS, benefits of a banked system yjlth tables and buffers are described. l.Ovod Sistem CP/M je bil v Časopisu Informatica ie dok^j Izčrpno opisan (glej navedbe v slovstvu pod Številkami ((D), ((2)) in (O)), kjer Je navedena fie druga literatura). CP/M Plus je nova izvedenka sistema CP/M 2,2, ki. ae je letos pojavila na tržiSču In pomeni nove, vpodbudne moŠnosti za uporabo S-bltnih mikroprocesorjev. Novi osebni mikroračunalnik Partner, ki ga pro-isvaja DO Iskra Delta, uporablja nov operacijski sistem CP/M Plus (ali CP/M 3.0) 2a a-bitne mikroprocesorje. Nova različica Je Se vedno do-,volj podobna staremu CP/M 2,2, je enoupprabni-Ska in Isvaja iblrke tipa .COM, ima tuđi nekatere prejšnje ukaze, kot so DIR, REN, TYPE ltd. Cas, kl Je potreben za prlufiltev na novo različico operacijskega sistema, je neznaten (spoznavanje operacij na ukazni ravni). Vendar je e temi pičlimi ugotovitvami tudi konec podobnosti med novo In staro razll£lco sistema CP/M. CP/M Plus je bistveno raalifien od svojega predhodnika, saj predstavlja novo (tehnoLoiko) generacijo. Imeniki tega sistema so sekljani (hashed) . Tkim, LRU (Least Recently Used) vmasnlä-kl prenos (uporaba pomnilnih vmesnikov za sektorje s strategijo, da ee uporabi vselej, ko zmanjka pomnllnifikih vmesnikov, tisti vmesnik, ki je bil v poslednjem Času najmanj uporabljan) se opra-vlja v BDOüu (v osnovnem diskovnem operacijskem sistemu). Obseg diskovne enote je povečan na 5l2H zlogov (npr, uporaba eOOM zloinega vlnčestrskega diska) in največji obseg zbirke je 32M zlogov. CP/M Plus lahko uporablja pomnilnik z bankami (npr. bančni pomnilnik z aS6k zlogi dinamičnega RAMa), ki prinaSa vrsto prednosti, kot so razSlrjeno vrstično urejanje, dostop z geslom (podoben dostopu v zbirke sistema MP/M) in razäiritev vmesnlSklh (perifernih) funkcij. Vrsta lastnosti Je resda ostala nespremenjenih, vrsta pa se jih Je bistveno spremenila. CCP (u-kaznl konzolni procesor) je lahko prehoden program, Operacijski sistem ima svoje bivallice v regularni diskovni zbirki (ne na posebnih sistemskih stezah diska) in se naloil a uporabo enostavnega nalagalnlka; ta se nahaja na si-Otemskih stezah zadevnega diska oziroma diskete. Tudi SAVE ukaz (glej slovstvo o CP/H sistemu na koncu Članka) je prehodni ukaz (v stari različici vgrajen ukaz), ki sam sebe premesti na vrh TPA (Transient Program Area oziroma obrnoć je prehodnih programov). CP/M Plus aleten se generira Iz mnoŠlce premestijlvlh zbirk z uporabo generlrnega programa GBNCPM na način, ki Je podoben načinu generiranja v MP/m sistemu. BIOS (Basic I/O System oziroma osnovni V/I sistem, ki je poseben modul operacijskega sistema) Je razdeljen na enostavnejSe module, tako da je modifikacija (in graditev dodatnega dela) lažja in hitrejSa in da se lahko uporabi (In postopno razvija) tudi modificirani BIOS sistema CP/H 2.2. V/I se lahko preusmerja (krmili) a enostavnim storitvenim programom. Nov operacijski sistem ima dodanih tudi več sistemskih programov, kot je npr, dokaj obseSen HELP ukaz. Celota Je skupaj z BDOSom tako izpopolnjena, da zagotavlja visoko stopnjo prijaznosti, prlroč-nostl In seveda zanesljivosti. iriformatica JOURNAL OF COMPUTING AND INFORMATICS Published by INFORMATIKA, Slovene Society for Informatics, Parmova 41, 610 00 Ljubljana, Yugoslavia EDITORIAL board i T. Aleksić, Beograd; D, BJtrakov, Skopje; P. Dragojlovič, Rijeka; S, Hođiar, Ljubljana; B. Horvat, Maribor; A. Handžić, Sarajevo; S. Mihalid, Varaždin; S. Turk, Zagreb EDITOR-IN-CHIEF! Anton P. železnikar TECHNICAL DEPARTMENTS EDITORS! ■V. Batagelj, D. VJ.tas — Programming I, Bratkci — Artificial Intelligence D. Cedez-Kecmanović — Information Systems M. Bxel — Operating Systems B. Džonova-Jerman-Blažič — Meetings L. Lenart — Process Informatics D. Novak — Microcomputers Neda Papid — Editor's Assistant L. Pipan — Terminology V. Rajkovifi — Education M. Špegel, M. VukobratoviiS — Robotlos P. Tsncig — Computing in Humanities and Social Sciences S, Turk — Computer Hardware ' A. Gorup — Editor in SOZD Gorenje EXECUTIVE EDITOR! Rudolf Mum PUBLISHING COUNCIL! T. Banovec, Zavod SR Slovenije za statistiko, Voäarski pot 12, Ljubljana A, Jerman-BlažiS, DO Iskra Delta, Parmova 41, Ljubljana B. Kleraenfiič, Iskra Teleniatika, Kranj S. Saksida, Institut za sociologijo Univerze Edvarda Kardelja, Ljubljana J. Virant, Fakulteta za elektrotehniko, Tržaška' 25, Ljubljana HEADQUARTERS; Informatica, Parmova 41, 61000 Ljubljana, Yugoslavia Phone: 61-312-988; Telexi 31366 YU DELTA ANNUAL SUBSCRIPTION RATE i US? 22 for companies, and USg 10 for individuals Opinions expressed in the contributions are not necessarily shared by the Editorial Board PRINTED BYi Tiskarna Kresija, Ljubljana DESIGN! Rasto Kirn YU ISSN 0350-5596 VOLUME 7, 1983-No 2/3 A.P.Železnikar J.J.Dujraović I.Meäko R.Sabo A.P.Železnikar J.J.Dujmoviđ P.Kneževitf M.Lapaine M,V.Jefiđ D.B.Popovski M.Gams M.S.MilidevK! CONTENTS 3 CP/M Plus System Operating 11 An Approach to the Compa-rision of Machine letruc-tion Format 14 Production Planning by LOMP 20 A Demonstration of Parallel Process Synchronization in the Producer-Consumer Problem 28 Programming in Ada HI 38 A Quantitative Technique for the Evaluation of Microprocessor Register Organization 50 Modelling of Direct Access Storage Device (DASD) Activities 58 Extended Memory Management in Delta 340 Computer 61 A Two-step Method Finding.Roots for 63 Algorithms for Reserved Word Searching 67 Automatic Control for the Flying Cut-Off Device by the Introduction of the Direct-Current Motor and Microcomputer 7 7 Programming Quickies 79 News časopis .izdaja Slovensko druätvo INFORHATIl»., SlOOO Ljubljana, Farmova 41, Jugoslavija UREDNIŠKI ODBOR: T. Aleksič, Beograd; D. Bitrskov, Skopje; P. Dragojloviđ, Rijeka) S. Hodžar, Ljubljana; B, Horvat, Maribor; A. Handžič, Sarajevo; S. Hihalié, Varaždin; S. Turk, Zagreb GLAVNI IN ODGOVORNI UREDNIK: Anton P, Železnikar TEHNIČNI ODBOR i V. Batagelj, D.Vitas — programiranje I. Bratko — umetna inteligenca D. Če<5ez-Kecraanovl<5 — informacijski sistemi M. Exel — operacijski sistemi B. Džonova-Jerman-Blaži£ — sreCanja L. Lenart — procesna informatika D. Novak — mikrorafiunalniki Neda PapiiS ■— pomočnik glavnega urednika L. Pipan — terminologija V. Rajkovič — vzgoja in izobraževanje M. špegel, M. Vukobratovid — robotika P. Tancig — raöunalniätvo v humanističnih in družbenih vedah S. Turk — materialna oprema A. Gorup — urednik v SOZD Gorenje TEHNIČNI UREDNIK: Rudolf Murn ZAMŽNIŠKl SVET: T. Banovec, Zavod SR Slovenije za statistiko, Vožarski pot 12, Ljubljana A. Jerman-Blažič, DO Iskra Delta, Parmova 41, Ljubljana B. Klemenòiò, Iskra Telematika, Kranj S. Saksida, Institut za sociologijo Univerze Edvarda Kardelja, Ljubljana J. Virant, Fakultete za elektrotehniko, Träa- ke, 25, Ljubljana UREDNIŠTVO IK OPRAVA s Informatica, Parmova 41, 61000 Ljubljana; telefon {061) 312-988; teleks 3136 6 Y0 Delta LETNA NAROČNINA za delovne organizacije znaša 1900 din, za redne člane 490 din, za Studente 190 din; posamezna gtevilks. 590 din. ŽIRO RAČUN: 50101-678-51841 Pri financiranju časopisa sodeluje Raziskovalna skupnost Slovenije. Na podlagi mnenja Republiškega sekretariata za prosveto in kulturo St. 4 210-44/79, z dne 1,2.197 9, je časopis oproSčen temeljnega davka od prometa proizvodov TISK: Tiskarna Kresija, Ljubljana GRAFIČNA OPREMA.: RastO Kirn ČASOPIS ZÄ TEHNOLOGIJO m PROBLEME IWFOeWÄTiKE ČASOPIS IÄ RAČUf^ARSKU TEHNOLOGIJU 1 PROBLEME INFORMATIKE SPISANI E ZA TEHNOLOGIJA MA SMETÄR5JET0 I PROBLEMI OD OBLASTA NA BS\!FOR!MÄTtKATÄ YU ISSN 0350-5506 LETNIK 7, 1983-Št. 2/3 A. p.železnikar J, J.Du jinovld I.Meäko R.Sabo A.P.železnikar J.O .Dujmovič P.Kneževid M.Lapaine M.V.Jefid D.B.Popovski M,Gams M.S.Milidevič VSEBINA 3 Operacijski sistem CP/H Plus 11 An Approach to the Compa-rision of Machine Instruction Format 14 Production LCMP Planning by 20 Prikaz sinhronizacije paralelnih procesov na problemu proizvajalcev In potroänikov 26 Programiranje v Adi III 38 Jedan kvantitativni postupak za vrednovanje organizacije mlkroproceoor-skih registara 50 Modeliranje rađa jedinica memorije sa direktnim dostupom (DASD) 58 Prošireno upravljanje memorijom za rafiunar Delta 340 61 A Two-step Method for Finding Roots 63 Algoritmi za iskanja rezerviranih besed 67 Automatsko upravljanje letedom testerom uvodje-njem jednosmernog Rtotora i mikroraGunala 77 Uporabni programi 79 Novice in zanimivosti »a Vlrtiirtlnu MdreiäS . Git Uit Bit PAH/PDil VR IJ 13 Üiit ODOOOO - UX7TK 0 0. 0 0 , 020000 - 037776 0 t) 1 1 010000 - 037776 0 1 D 2 onoolX) - 077776 . 0 1 1 : 3 luoooo - 117776 i ü 0 4 ■ i;;üüoo ~ 137771Ì 1 1 S klüuoo - 1157770 1 l 0 tì tnoixKj - 177776 1 1 l 7 Si. t'Aii/i'itri ADKKSIi TuÓii» Uli cilroiIiiiK! i/o adruae za avnkt PAH i PDJl: I^AIi/PDH M« t . Karnfil PAH ('Uli Ua«ir fAH fl)H fnu : IS ; 0 7 6 G 1 3 a X n a wmuA nušItiH uitUanu u^™- ' nlua ÜI1IUI' älrmij«--—- Polj« kontrole prtatuija HMIirJ; 15 S wmumiimmwium Küavul jen iJnlbua, Mjjsi-Hoavol,1«!io ?.i bitno — udruai i-uiije 0 77S300 777640 77760Ü i 7723/12 77230^ 777(342 777602 ;; 772344 7723Ü4 777644 777H04 3 772346 77^306 77764<; 777606 1 772350 772310 777&50 777610 s 7776ft2 777612 e 772354 7721)1^ 7776S4 7776i 4 7 773356 772316 777BS6 777616 ti. PACK AI»IJHE;ìI; iiHdlSTEW (PAH) i'AH 11 jiiüütjiioi'n MKliTA 340 asdi'ži Hi bitnu Puu« /iildi-eaa riül.iu fViKtor), üti kojlni .)« Biiecl fi u i.i'aiiu Ihi'a i fünf.! iiiiL^esin f3l;rünicH. Pt'i rüniu sia V8 bituniii ai3r<^H0iu (Ijit 1 MKIW ni.ie aktl.viiii) se iiiJoLruhl fsaiim (iüiijili J^ hi-iujvh PAIi-fi, i, u Liiiiö.-ijij sa bilnoii nüfilnn bü ii(>ol:i'et)l avih Ui liitovn luici rN;lok;icifiki IViKtrji'. F'AN: If. ili Ii Ikidiii.iiii f) liii.a nii i"il,ti: iiilf-Hsti ri IriHl i CO . PliI,|o iiifruse a!:fiifilc J.:: biUivfi Küila Je aktiviran KMM littuvi 13 - rtunlne ailreae sii ij|jütiTjljlJ(!iii KU ocireJi.van.je kojl od uhiiain PAH/PDR rep.ia-tni'a Jtì Iskor'LSten KR iKiiljraiiL nnäln rada.' Httüvi virturtliitì FKiruBe; Q - .12's« iifibiäru «tì Btidr'zajititt PAH ri!j;iul:ra, u L L tovi p - B ae lUidaJu neprornKnJeni 1 liuliijiin i-()7.ultat ,ie (jitnfi hdresii. P rfr C varili 1,1 e vlrtiialiii's u i'ijiičku adrosu: 15 la 12 (i E> i^nJi klij i ! If'J i ^ 1 i>AH/iJ|iH J.ii''uin>tr«lil jmi 1 i ß ■ (1 1 sUdktiranotr, ^jiirrt 1 1 i 1 He/iii l irfijnčii 22 tii i:iiii lidretiii V. PAilK iPESiMt.ll'i'OH HfiliiyrEH (PI)H) Ki.-fi.irM ri oiiifiij ni;rniiii:;i (l'IMi) im ih; inidnjajii iin lo'i-.n i rmi i ill ii|.r.'ivl Jinpjoui iiii;ni(.ri,iii,no ili ........... .................. riki-i y i j-iiiijL'jji bit,H ^ u.....(Miči proS i r'onit ni'i'fivl JiinJ,-; iii.;ii.(>i-L.|uiii i i:i'ii i-.v.tiii i rTin.lii 10 iii< ljii.,t, l'ki:iniiii I.Ì,.- iiKiiivira Ijj.l, ;>, I,/,,Iü Unilai,) infii'ii.rniiiiii .|t;.fiiii- i.hiii;. M,-; LlmutnÄi do;itiJ|i fj.) ■ImiAtiit; ..........fijti. flli.i l,il.Ji ;ii! i'.'.bri "iij ij;i iiiicij,iMi:ii.;ij..iii tinli i iii i ( Un i 111 lil ) , a. EMM unibus kap a.l Punkcij« mapIranJa . Unibus map oinotiućava ću Jedinice na Unlbua-ki kornuntclra^l B» fIzläkoiii memoriJom, ;ia bitna «drsaa na Unlbue-u a« pi-t>veds na 22 bitnu adreau pomoću logike ta reVociranj«. Helokaoluka logika s» đktlvlra poutavljanjem hita 5 u MMH3. Najvtälh 4.KB od .256 KB Unibua adresnog prostora Je rezervirano za CPU I I/O reglatr« I' ne locira se ea masiranjem, eo 8.2 Zabran J ano reloclrmija Knda bit S u MHH3 ostano neaktivan Jo roloclrunje onoino-(jijferio 1 IB bitnoj Unlbua edreal ae doda nu nuJvlSlm mje-stlrnu 4 nule za Izgradnju 22 bitne adroBS, nl£l 18 bt-tnva satane nepronijenjeno. d.3 Rdioc iranJe MM logika ^leda takodo na IB bttnu adrsBU kao virtualnu. Najviših S bttovB »luži xa l»bor Jtulno« 23 bitnog mlo-kuciultnfi riiHlatra. Bndr'ZaJ Uabranoif regUtrn u« uatiem ua bltovlitn 1-12 Uiilbui« ndrese te a« dohlje äS bitna t'l^linu (iitraua. II toku tog proceaa Jo map bit O u ta I no nulii, Jur aa uva IzvrSava na nlvou roEli Koiiihlnaclja bitova 13 > 17 ditje podcitnk X« adrealronje 32 t'tiltlacra 1 kudu su ti bitovi postavljani u 1, Ja map ralakaolja onu«ici{fu£enn 1 tada Ja praprefeno raloclranj« I/O ati-finlca od 7GOOOO di> 777776. VirLii.itiin IliiiUuu ndf-uu^i 17 1 ;n Ü ::.:1.5klirait 1 »H SI» M.iii tit.fti Poilcjtff v.ii i'-eluci fari^it: 1 U —1— I I ~ I li bi Ina iiijipi i'iHUi 9. ZAKLJUČAK Prostrano upravljanja sa memorijom omoBuÉava naslednje alHtemak« hurahterlsttkei Heinorletti adresni pro»tor Adrnunt nuBlnl HeSlnl rada Stack pokazivali Memori liko re lociranj e Diilltui atranlce Zaätita memorije . 10, LITKHATUnA 4 HB Virtualna 16 bitno, Cl-zieno 10/22 bitno Ounovnl t korlsnlSki 2, Jedan sa aviikl nafiln Ifi Btranlcu (fl aa svaki nu5)n) 32 do 4096 reSl Nama priatup«, samo Elta- njo, tltanjB/unaSđnJa 1. Peter 0. Vogt! Virtual memory extenaton f Proceaaor Handbooks 0.4 Map rauUtrl Bvakl 22 bltnl map raglatar je kombinacija dva 16 bitna rug i a tra I zana lina Jednu o«l adresa između 770200 1 770372. Bitovi 1 - 15 1 0 - 5 8« u svakom registru mogu izmenlBno uplaatl. i'i'vti r-iiiii juii'tiiiM vvii^'oo I !> _I t lini;'.! 11.14 7 ■K'O.'I I i; '> uj M I.II [ M.i,> ,v,.i SI.,i- I O A TWO-STEP METHOD FOR FINDING ROOTS UDK: 681.3:51 D.a POPOVSKI SOCIETY OF SCIENCE AND ART-«ITOLA. YUGOSLAVIA J'n thio [iqpep a tuo-atep mthođ ft>p solving aingla ival twiabht equationa ia pveaented, fhe mthođ is đfrii>ed on tfta ■ banie of a twpoint Htiimite appivxination by tSe nttioml funation Propòaed method in «aoh i- teration atep requivea tuo funation evaluationa ' and one emlmtion of the fin t Uto đenvativaa and haa m aaymptotio aanvevpenae rate 6.541. . - . JEDNA DVOKORACNA METOCA ZA NALA2ENJE KORENA. U iväu J« pi<«uantir(ma jedna düokomSm metoda aa reSavanJe JedwSina aa Jednom väalnom näpoamtom. Metoda je iavedam na baai dvotaSkaate Humita-ove aprokaimaoije raaiònalnom fiinkoijoinyix) '■{x-a]Hi'!e^*'>x+d). PredloSena metoda u eiakoj itemaiji aohteva dva iamSimauarìJa fUnkoiJe i Jedno iaraöumvcmje nje~ nih pivih dita isvoda i im rad Ì:ont>ev{tenoiJe 6.541, - . ' - Popovski [1] proposed a tnethod for solving single rear variable equations of the forra ■ ■ ■ ■ In. which he uses a tWo-poInf He rinite approximation by the rational runction y(a»)={n^-a)/(^a^ taartd) (11 whose parameters a,b,o and d are üetenulned from the conditions His HieUtDil .wheiit • . f'M'vrVü- in each Iteration step requires one evaluation of the function and of each of Its first two derivatives and has an asymptotic conver()ence rate 3.303. Using a two-point Hermlte approximation by. rational function (1) In which the parameters a , o and (I are determined from the conditions (J-0,1,2) we my easily obtain the method . where Hethud (3), as well as method (2), In each iteration ste|) 'requires one evaluation of the function and of each of its first two derivatives, but has asymptotic convergence rate only 3. Cambthing (2) and (3) we may obtain a two's tep method, which requires two evjaluallons of the function and one evaluation of each of Us first two derivatives and has asymptotic converflence rate 6,541. To prove the asymptotje gotìyprgeiicé r^t^s' of all the above mentioned nwthods we use Herzberger's matrix method [Z] aecprding to which the order of a single-step method trix 1 3 "2 Li OJ with spectral radius 3 and for method (4) matrix with spectral radius {7+,^)/246,B41 "3 11 '1 3 9 1 Oj .1 0 O .1 3. »'■r^f^i-l'^i-Z.....VJ is spectral radius of the matrix M with elements m. I.fe- ^C-k (^'HMf»). where is the amounfj of Inforaiati-ons required at the point . m^ (j=2(1)n) and 1»; .=0 otherwise. The order of a multi-step method is spectral radius of the matrix ACKNOWLEDGEMENT I wisch to thank the Association of Scientific Activities - Skopje for its support. REFERENCES [I j D.B.Popovski ; A Method fot' Solviny equationn,Proc. 15th Yug.Int.Symp. on Computer Technolony and Problems of Informatics - Informatica'81, Ljubljana 5-6 October 1981, 1 212. [2] J.Herzber^er: Vbur mtrixJapatMiiiean. fUp Jteva-tionaveFfahren bei niahtUnearen Gleiohimpen, Computing 12(1974),215-222,' in our case, for method (2) we have matrix "r 3 1 1 OJ with spectra] radius {3+/3)/2i3.303, for method (3) ma- algoritmi za iskanje rezerviranih besed UDK; B19.6B8 m. gams INStlTUT „JOŽE F STEFAN-, JAMOVA 39, LJUBLJANA y «lanhu lo «p»i«nt alaentMt itK«nJt r*»trwir«nlh bi"«-Otnovna »i.orUBt Hlnirng it««nJi niMi V dl.tmu ig Qri»«n» uliolJI««! ub oin« i>ih tlaprumou. >od«n« Ji tudi nJlhou« «atovna in r«'«'« «nalli«. AtflOHITHHS FOS BEARCHINfl fa« ReSERVED MORUS. Thi» artlolt 4««BrUti «Uorilhwi for »tarohin« for r«t>rv.đ^wor->i. B^l« ■laorithnti art 6»nare »tareh and ha«h isaroh. Thi« artioit duftorlliff tofltifl «JaonthM» with thtlP iiiiprovi««»nti anđ prp-utdct ti«« and ra^uirttrttntt analrtii. UORDS ■ (. Uuod V radunalruOHih prntiraoiih puaasia »rattaua ra-»«rviranB b»ie4a, Tp to ^aieder h> imaJo' pp-, »vitini pritrviran pdm«». TaKa bpttdt iradamo V pravaJainihihi uraJavalniKini oparaoiJiHth «iiianiih itd, Raterviran« b*>«J* m itKanJe « raiprlininit ta-balamt. 2 i iba I jlawami tah di^ah alsantnuw je maaoPa domtdi prtoajlna datgvna prihranHt> ioMar •> lAND I IflRltfly I . I ... ■. .1 t... I ■ I... ... "1 , Mtdtli* •>(... .. I , „ I.,... ^ ■■ ( ■. .: . I........■■, i i.,, ( ■ ' ■• I...., I hiahar INITH I 2, üi^t* alšiai-itnou Najpi-RHl bomo opitaU otnowtkia altiiiri ima m ndto pjun« wii4lJl«v». A)9«ritm« bomo opttn-vali u H~t«r pa homo prtHoraVtU it" ra«ne matiitattt j«iiha> bp to poitbtj agnati»110, V tam poaiav^tt burna aouurilt tudt « Kaa)Pl«Hsnat ti alaori imuu. S tam poJnuin bQ«i« «iiiadili povertdrtq Ivifvilo priniac-ianj nainan* ««tati« I ra«*ruirani«l. l. «inariko i«h*nJa ■ cipomb« i i . . - na. u»Oio* obüiu^aUth ^««Öalpt^ih prauajalni' Hau pparaiorJa "<" in nitta in^pltmanti- rana la prirajattjt ftiiaulJanth tipou. ranerviran* bakvd* u labalt "HOf^üS" «loraJ« lOnam r«du. üprsmaiilJivHt "lowar" ii» "hiahar" «prata biti pred ladatHAM izvflJanJa ttnarna&a ItKanJa pi'lraJtni na ur>i< oiiroua dno tabala. ÜNi« alaurivfitaS lauti' tupl hiahar buiiaiul fpund fall«) whiia I luutr<'hiariai'I and .not futiiid da b«a4n middl« (lüMii' t hiafi«!-) PI u ZI IP viorüiCini ddl«] > unKnoirinMard ihfft niartar-:* miiiali ' »lia if wardiEniliidl«] < utiHnvunHurii Ihan iPMir niddla atta found t »,trua and i HunirltKtttom aluuriima «« binarna »«Kanj« ja rada vatiHpiil 10H(n»i hJar j» n «tatuilo r«* «arwiran.Jh b»«»d. K»r j» ra»arw»rafith bttad ' obiltajno naKaJ dakat, Ja Ua Alaoriiam x« biitaT'no itKanja J« patralino »amo malaiiMottno tpraman i 11 • 81 narna iiMnJB ur«)Mp V tabali "NORDS« taHOr da fređ 12vajan.i(fm osnovneao alaopiima Hriredl-(110 flpf etnenl J I i-Hama "louar" J»i "tiiahar" vrednosti ii vnaprtj aonartrana tabifl«. m usBbujc inoelue laReiKa jn «onoa sKucin oe-isitf đolSitis. Na priftier, de je "1" dol-neznane Desvoe, ba "tonar lenahtCU" in "hibher lenghiCl+n - i". Primer za jeziK PaBcat je ahsmatiBno pridasan malo naprej. V launjih leiih je neHaj odUntU powaBalo zanimanje za Minimalne »11 iKoraj ntinimalnii fBPolna rasi>r9itwenfl r'unKoije £1.2,21. 'J tll J» opisnna mininialna rozprtluvono t'unlieud. ihiPiement 1 rana na reiaruiranih bctìfldoh joijitla F*asoal. RaiprSi (vena r'cnticljo jo obltHo tl1 tìP 1 Ol flu 1 ot rtu 1 21— 1 . . f 1 . . t '1 tflfyflttY I 1.,. I... I 2.2. Isrjiue 2 raifrSunmu t-iBelanti algoritem : ra.HrSeni«. xao^- niäe« primeru Besede .n.Jeti^ taüele. KompU- iVlT -J» oüiaajno «ar non- .caut.. KpmPleK.no.t je 1 ,;«aar ja runKoua n rlzlv""'' '' .«ajo I funKdue ias(.-,oen, Ki so injeKtiv„osti , taKo da L müitnu HiMUliSajj ho,BPU«)iinoäti i. Di'.iaa ."ome.iDnd lasinost ra^PrH i v vemh funJloiJ je lo. da oüiÖdjMo razprBijo Po.ldUie w preuej yeäjo lalislo, osiromj da je v libeli ,-reče j praznin moät. Odr.ort "razPril«ne t.b«- "lenatii" jo doISina nasncne besedo "Word" "Wüi'dCij" Ja-i-ia ertra'boaeđđ "word" "uBiuoCIot16PJ" Ja izbrana vradnaat br«o "la~ »■.»er" OBiino funKoiJa no moro biti popolno. KoiSor« obatajaiD dva rszorvirani beuođl eooKo dol3l-nsr Ki imaia paroma enoKi ptwi lr> aadnji Ör-hi. y C2] Je poKazanoi da obaloja üo vefi flru-aaflnih pro 11 prinierou > toroj pooiopeH sahüii u r-ajprBi tvenih funKoiJ ns laornji naöin ni: Jamfli reaiiva, v C3] Jo omenjena iMjiKVđHja> unni noi ouerlap and (letter = '='> Osnouni alaoriteiii lahKo pohitnao = VDZnjmi irilu. Namesto laPoredneaa izbiranja Brti saflnemo z najbolj i»o30Btimi. Nadaljne izbulJ-SauB niso objauljtjno v litardturi, tìepray jO v praKsi najbrS uparati 1 jane . Najbulj uiinKo-vjto Pühiiritau imenujem " sup er b a c K t raoli " . Kadar sa due rezeruirani besedi preKcioata taKo, da jij ne morumu lüBin a spcb«i n janjutii urodnuBii letioflu (ìrtie, aoraiaa spremeniti 'TOiiiìOfl i arhe, Ki nastopa u prirejiniu in umo Ji radnji dolotìilj urmlnuyt. PoaleJmii 5l f'rini b f : ualuaClntter] e I r I t I f I m ■ l-a : 0 1 4 ? -I für file iL-UoCa Ci-Kd h(wl)= Vdlueifj t a < iialueCrJ »aluefPJ » 4 h(w2t= valueCfJ + J t vatdeCe] - vsJiieCfl f 4 Kddü,- je r^.n.i«lJa .„jahtiuna, Illudano re«e,„a, "puPolna" (parf'eott Kadsr Jt r-unfiOi.,a surjBKtiwna. rotì„r„o, da je " m i „ i,,., ma . hin.walna razpr- .l'A'in!].^ "aSem Priceru taSaJj WOifnb Polno saaedeno. "SuPertiacHtraoH" u taliem Prnii<;t..i PoweBa wi-ud-iioat Brna "r" za 1 . Autüc .le opfljil 9s er, Koristen recept, fiu Zđsledu.iamo i z i.. j ja u ,i e al^aoritma, opaziftidi do SD nekaterd zaporedja «rti iflo nepruetnj. laUrat proaram ipreminja vrednogli «r« tioraH la K oran a m bres "süperbaoKtracKa". TnKrot Jo na.>bolju p !■ e m niti iz u a janje jn spremeniti vrstni red erirojsoja ure.inosii BrUsm. SB Tallo Je za aetieriranJo minimalne popolne razprSituene FunHciJe za Pašcalpv« rezeruirane besede•autorJeu proaram PotroSi1 Is'neKaj sekund. PoBleJmo si primert. Ko vnaprej izberemo naJmanJflo moSno wrodnpBt raiprältvane funKol-Je 3: 'JALUe MOROS 1 lEI 01 1 1 2 IPI 01 1 1 3 IDI 01 1EMD 1 <1 ITI 11 lELSG 1 5 INI 31 ITVPE 1 6 ICI SI IPrtCKED 1 7 IRI Gl IMQT 1 . e IFI H 1 ITHEN 1 9 ILlill 1 PROCEDURE f 10 1 Al 151 lOO 1 U IC 1 191 ITO 1 12 iiiiai i RECORD ■ 1 13 mi33t i REPEAT , 1 14 IVISSI IDOHNTO .1 13 INI 141 IFILE ■ , ! lä IBI2tl lOft 1 17 IGlist IMIL 1 IB IHIISI 1 AND 1 10 ISI31I 1 WHILE 1 20 IUI 201 1 FOR 1 21 IVI17I lOF 1 22 1 JI Ol 1 FUNCTION 1 23 IKI Ol ICAQE 1 24 101 Ol (IN . 1 23 l«l Ol ICONST.. . .1 23 IZ! Ol IMOD 1 27------ 1 LABEL 1 20 IDI'.' ( 29 1 BEGIN . 1 30 1 PROGRAM 1 31 ■ IGOTO I' 32 .(IF ( 33 ■ 1 WITH t 34 . , |i,'AR 1 3? (SET 1 3ß . lUMTIL ' 1 37 (ARRAY 1 2a PasoalovB raieruirane. besede jnaiuo engstaw-no in hitro do 1oBi t i.«inima 1 no poPolno razprKl-meno Funkcijo. K^J pa fie imamo v reiervira-nih besedah tudi besede hot "odr" in "oar" ali "Fi" in "if"? OBiino «lorsmo izbrali dru-anljna abtilio razprti i t uene r'unhciJe. Natg po-sKusinio aeneriraii tabela "ualua". Ker nam po3topei; ne JamUi re$liue, prav lahKo po«Hu-lartia zaman. taHih primerih Je smiselno najprej isHaii papolno reiprSitueno funhaiJOi Ki ni minimalna. Tabela "WORDS" Jt sdaJ dimenei-Je N + MEKflJ, U Jer Je N 4te«ilo rezerviranih bosed. Ko najdeno ena reSitev. lahKo smanJ-tluJemo "NEKAJ"> doKler fe najdemo reltiteu. Da ne bi troSili preveO «poulnai «i pomatlaino «e z naslednjim triKoml yflLUEH Ì.IDRD3 3, Podrobnejša Haiovna in pro^iorsha snallia alaoritmov Do sedaJ smo savori 11.le'o povpresneu Številu, potrebnih primerjanj .neznane, besed« Z reservlr ranimi..To imo osnaBilt s "Kompleksnostjo alati-ritma". Sledi podrobnejša analiza šlaorttniov. Za eno operacijo bomo .ttte.li eno PrimerJanJe« eno prireJanJer eno raCuniKo operaoiJo en doeea POlJa Itd. Te operaoiJe Ba-souno ntso enakovredne^'zato io ooene okvirne in odvisne od raSunalniha. Privzeli bomo tet da en znaK zavzema eno besedo sponitnar da J« rezervirana beseda settavlJena iz 10 znakov m da Je i^seh rezerviranih beeed 32. Doenimo Steuilo osnovnih operaoiJ :a priMer-. JanJe besed med seboJI uhile 2 doseaa pol Ja (Ci 3) +1 la kontrolni honstruKt "while" 9 osnovnih operaoiJ Za enahi besedi naOeloma porab l«io' tol iho primerjanj hot Je-dimenzija besede (maksimalna dovoljena dolüinsK Za raaliBni besedi•porab i-uo bistveno manJ primerjanj, v pOvpreBJu bomo 23 na^e ocene vzeli 1>5. A - neznana beseda Je reaarvirana B - neznana beseda ni rezervirana lALOORITEM ( STEVri.O aPEf?flCIJ I CELIC SPOMINA I t fl ( B I . )------------- t I Iblnarno f ,130 I ( I 3Z0 t + PO (dolSini 11Q I + PO prm I t «r(;i I 120 I + PO Prvi t (Cr. + doIS.I 30 ) + PO prvih I o oKvirnsi ker so zelo odvisne od obllKs rezarviraniti ba»ed itd. - konkretne izvedbe alaoritmov lahko Malo pohitrimo s snostavniMi trihi. HI so u fljiaouni analizi upoS tauii.i. . irT. kadar u povprafiju dostikrat prirejamo «naHe betedei bomo primerjanje naredili taUolel uhile (unKnounUordC13 ° MDROSCindeks.i} ) and (UüRDSfindeH,i3<> • 't do i ; ' i + 1 : Ta (i imo. - u aaeni Ja bila privzete taKa QbliKii ra2F>r-SitwsnE furtKoiJa Kot sa Pasoalotfo reieruirE-ne baaade. ~ u praKtiBni uparabl alaoritmou, nfr. cri preuaJalniKtht odpade ueBJl det potrottenosa tìasa na branJe. taKo da no prihronhl nianjtll. fraHtifini rezultati: Skupii>B Studentov e.OremuSi M.Hrvatinr T.KoKalJt Jo merila rEiZMBrJe tnod osnounim binarnlto i»UanJem in popolno razprSitvena futiKciJo sa Paacajove razer~ uiran« bo«e.de. Razmerje as je suKalo od da 1:9 aleda na natlin aeneriranJa testnih beaad od samih rezerviranih do satnih neraior-wiranih. To razsierJe uaireza isoratiBno izratJunanemu. iVad bi se zahualil tudi I. Mozetiliu in N. Lauras Za h an etruKt ivne pripombe. ZahljuBeh analiie; Natanfina analiza alsarltmou za isKanJs rDEerviranih besed da doloBsno prednost Po~ putnini minimalnim ali shoraJ minlmalniin razpr~ ijituenim FunKciJam. Alaoriteni z razdelitvijo razaryiranih besed po prvih dvah HrKah J9 Baflovna oelo nialenKost hitreJBir vendar tro^i bistvene ueu sporainsKeaa prontars. Popolne razprSitvena funHciJa imaJo le to dodatno neprijetnost, da moramo nojti obliHo razprSiiueiiit furiholJe inda moramo Priradlti vrednosti brKsm. To pa Je obibaJno doto neKaJ dni, 4. ZoHlJuSoK PraH 11 Itili in toorotiBni rozulfoti dcJoJo prodnoot uporobi alaoritmov z mininatnimS oli sKoraJ tninimalnieii rosprSitvoniai funii oiJami za ioNanJe rozorviranih boBod. Saftk; uporaba razprüituone PunMoiJo Ja 2 do 10 hitrgJSa od osnounosa binarnoga isKanJa. Zaradi poflasneaa brarija Jo u prohtiEnlh t-i i aorih Prihraneh praaaJ tnanJai» «ondar So uadno upoStovanJa vrodan. Zato Jo otiiicQlti;: pohitriti obatoJoSo proaromoKo oproeio 3 polno rnsPrOitvono funhoiJo. Litopstura: 1. R. J.Ciohel U : Minimal PorFoat Hooti Funui,!-ans mnda simpla. CACH> Muonenti i potrebne uehaniđke op- rema. Odeecanje se obavlja tako što Je rez-ni alat kruto povesan sa taidraullČnltn cllln-drotii, fijon ee tranalacijoa upravlja promea-ou protoka fluida što ima za poGledlcu rasl-l£lte brzlnes Saei treautak odaecanja nastaje kada as generile signal ventilu ea aktivira-^ nje hidrauliönog cilindra za odaecanjeo Had Blatama za odsecanje u pokretu se odlikuje posedovanjem radnog ciklusa. Radni ciklus se sastoji o.d ubrzavanja,, sinhronizacijo oa brzinom prolavoda, odsecanja i vrač» anja rednog alata u početni mirni položaj, odakle atartuje nov radni ciklus nailaskom potrebne komande p Pri samom odaecanju potrebno Je da se sinhroniÈu brzine testere i profila, kada se ima rez pod pravim uglonip TaÄnost dužina odsečenlh proi'ila zavisi od vremenu preuranjenJ a polaska» Ovo vreme Je takvo, da se generiše komanda za polazak pre anuliranJa brojača, da bi se u trenutku sinhronizacije brzina, reznl alat našao upravo iznad teorijske tačke za odsecanje« Odaecaiije profila u pokretu Je razra-djivano u . OilJ Je bio povećati kvalitet odsecanja gde dolaze ugao odsecan-Ja i izabrana dužina za odsecanje. Razvojem ovakvih sisteBia težilo ae povećanju produktivnosti proizvodnje profila. Na postojećem sistemu za odsecanje prlmećenl su sledećl nedostaci: netačnost kola za preuranjeni polazak, nelinearnost frekventno naponskog konvertora 1 rad aistema u otvorenoj povratnoj sprezi. Za upravljanje translacijoa reznog alata tiu Instalii-ani servo ventil i servo pumpa proioenljivog protoka. Često puta, zbog problema nečistoće fluida, dolazilo Je do zastoja i smanjenja produktivnosti. Problem temperaturno različitih režima ae nepovoljno odražavao na rad sisteaia. Zbog navedenih nedostataka, koji eu potvrdjenl u praksi na nistemu, dolazilo Je do većih zastoja u V''-'oizvodnJl a dužine i ugao odaecanja, čaato puto, riiau bili u ohviru dozvoljenih tolei'uiioi ja, J.Z iiapred riavedtinlii razloga prišlo sa projektüvanju novog aistema automutiskog up-ravljBdju koji će imaci za cilj da poboljša rad i poveća produktivnost tehnoloških linija, Umealo jjoatoJeće elektronike projektu-ja Be miki'oraćunor koji se bazira na mikro-proceaoi'ii ÖOÜO, Servo ventil, aervo pumpa i hidraulićni oilindai-, aa traaslaciju, ee aa-raenjuju jednosniernini luotoi-ooi sa odvojenom pobudom. Regulacija hraine Jed noamer«og mo- tora se izvodi trofaznim punoupravljivis ti-ristorekim regulatorom. Zbog promene sraera uvodi ee dvostruki, antiparaloIno spoJen5 tiristorski regulator. Osovina niotora fl© sp= ajfl reduktorom SiJi izlea ide na aupćanik koji pokreće aupčastu letvu a za koju Je hff-uto povezan sistem za odsecanje. Merenjen brzine motora omogućava so uvodjenjo povrofe» ne sprege, ito sve ima za zadatak da ao atì'=' aptivuo upravlja brainom motora u odnosu aa brzinu proizvoda. Cilj novoprojehtovaaog dI= stema Je da poveća taSnost i produktivnost rada celog sistema za odsecanje u poltretu. 2. OPIS NOVOPHOJKKTOVAMOG SISTKMA Zbog poboljšanja odseoanja u pokretu, na tehnološkim linijama za proizvodnju čeličnih profila, uvodi se nov sistem automatskog upravljanja dat na sl.l. Za pogon ressn-og alata uvodi se zupčasta letva, zupčanik, reduktor i Jednosmerni motor, Zupčasta letva Je kruto vezana za rezni alat, tako da zajedno transliraju u smeru napred ili nazad. Jednosmerni motor se napaja iz antiparalalB= og punoupravljivog trofaznog tlristorskog regulatora brzine. Pobuda motora je konstantna, čime se poseduje konstantni moment. Položaj reznog alata se indicira gi'ci-ničnim beskontaktnlm prekidačima Đ^, i Di^o Brzina reznog alata Je u direktnoj sr-azmernosti sa brzinom motora, 1 ona se meri tahogeneratorom. Brzina proizvoda, koji se odseca, meri se optičkim generatorom impulsa, Bužina proiavoda se meri brojanjem impulsa optičkog generatora impulsa. 2a automatsko upravljanje odsecanjem uvodi se i mikroračunar. Mikroračunar se sp-reže sa procesom preko 1/0 jedinica, D/A i A/» konvertora, Mj'anJe željene duzine proizvoda za odsecanje tje obavlja biračima koji su locirani na pultu, Trenutna dužina se pokazuje na displeju za pokazlvutije dužine. Postupak Je aucotiiacizovan tako da se algoritam izvršava proKramaki, Mikroi-ačunar očitava postavljenu dužinu za odsecanje, meri dužinu 1 brzinu px'olzvoda i programski Izdaje komande izvršnim organima. Sinhi-onizacija brzine reznog alata i proizvoda se postiže mej'enjeni brzine motora i uporedjivanjem sa brzinom proizvoda generiše se potrebno upravljanje tirlatorakom regulatoru brzine. Radni ciklus započinje ubrzavanjem do referentne vrednosti, zatim se obavlja odsecanjo, ee gen. impulsa MIKHORAÖUNAH i-eani alat Rio \ □ . aupč* teho gener. h h O. a/D pi'ogr pojač D/A enkoclei dužine pokaziv duž, pr cleküd anal, mult. supSaaik raduktor tiriatorski regulator brsina _J ulaai i.........j--|)ialBzi moiiost multiv al.l. zaustavljanje i vraćanje reznog alata na početnu poelciju. Povratna brzina se iBože izabrati na potenuioraetru, kao i minimalna ćitne se ostvaruje potreban pritisak za držanje na odbojnike. Za pogon ćemo izabrati Jednoamerni motor tip üBVBfi - OIM 250 M-la čije au karakteristike: nominalni napon nominalna anaga Pj^=tìOkW, nominalna atruja Up=-200V, napon pobude struja pobude nominalna brzinu n^=1560o/in, otpornost rotora R^=0,llil, induktivnoat rotora L^=2,7iriH moment inercije J »l.lSkgm^ C2.1) Za redukciju brzine izabraćemo reduktor tip HEIVBH - zaa, čije su karakteristike: prenosni odnos i=12,59 « moment M-t200 Nm i (2.2) moment inercije J^"=0,16 kgm^. Ako se Izabere makainialna brzina reznog alata, tada prema maksimaInom broju obrtaja, ima se za poluprećnik zupčanika r » 13,27 cm. (2.3) Neka Je raaaa reznog alata 230Ù kg, tada ee dobija za moment inercije tereta 2 Jt - t3,7 kum'^ . (2,^) Sirodjeojem oonienta inercije tereta do-bija se J^j - 0„28te kgm'o Fosle sraiunavanja aa otporni Doment tereta se dobija M = 70,88 Nm (2.6) Bnenom poznatih dobija se vrednoat aomente motora \ • «m (2=7) Što se momenata tič® izabrani motor odgovara, a u procesu radiće sa momentom ubrzanja M^^ = ina,86 HBo (2o&) Ukupni moment inercije Jednak Je zbiru svedenog momenta inercije tereta na osovinu motora, momenta inercije motora i red-uktora, čija je vrednost J = 1,55 kgrn*^ (2«9) Da bi odredili prenosnu funkciju Jed«' nosniernog motora^ potrebno Je izračunati konstante motora. Blektrifina konstanta Je a Na osnovu poznatih relacija dobijaju se konstante i (2.11) (2.12) Za mehaničku vremensku konstantu ima V 2.26 f T - £-1" ° 55,05 ms, (2ol3) e m Kod Jedoosmernog motora, pri ubrzavanju sa teretom, ograničavajući faktor Je struja rotora. Poznata Je relacija za struju I 'r - ST_ 1 (2oU) gde Bu Ij. struja rotora, U^, napon rotora a M^ moment opterećenja. Ako se napon ü^. menja po sakonu, kao na 61,2, tada struja ima obl- ik ir = no aio 3IO In» hoo s odgovara za pogon reznog alata. Za atrujuio ograničenje se biraju vrednosti proporci^ia" alne brzini proizvoda, tako da se sa io^;© vreme sinhroniäu brzine reznog alata i prO'» izvoda. Na ovaj način se dobijaju vrednosti preuranjenja kao linearne zavisnosti brsisüo, Sto nije slučaj sa prvobitnin rafienjeRo TI 3, PROJBKTOVANJß HIKHORAČUNARA Sa bi se autonatlzovao sistem òdeecan-JB profila u pokretu potrebno Je projektova-ti mikrorafunar. Novoprojektovani Bisten sa mikroračunarem je prikazan na el.l. Koristeći ulazne podatke aikroračunar programski generiše komandne signale vodeći proces ods-ecanja automatski. Algoritam rada aistena Je prikazan na sl.3. © poSetak ^ inieijalizaci-Ja sistema očitavanje zad, duž, L za Ods. nerenje i izr. brzine proizv« računanja str, limita i preuü lanje izlaza za odeeeai;ije proizvoda, i kada je zavrSeno odeecanje alat se podiže u gornji položaj. Podizanje u gornji položaj prestaje onda kada Je aktivi- ran detektor D^^. Po izvršenom odaecahju anulira ee registar trenutne dušine proizvoda i šalje Be ialasi za oćltavanje povratne brzine. Povratna brzina se dobija iniciranjem konverzije A/S konvertora, i po zadovoljenju uslova za očitavanje, očitavanjem izlaza konvertora. Posle ovog oSitavanja šalje se makeloalan izlaz za strujno ograničenje. Izlazno upravljanje ee smanjuje za jedan kvant sve dotle dok se ne dostigne referentna vrednost za povratnu brzinu. Zatim se ispituje da li Je aktiviran detektor D^ za usporenje pri povratku reznog alata nazad. Kade je isti aktiviran, izlazi se iz petlje slanjem izlazne refi ze, analogni multipleks-er. Kada Je inicirana konverzija, po ispunjenju uslova, očitava se podatak o maloj brzini. Pošto Je očitan podatak o maloj brzini, povećava ae izlazno upravljanje za Jedan kvant sve do dostizanja referentne vrednosti. Onda se šalje minimalan strujni limit potreban za držanje na odbojnike, a algoritam se vraća na početak ponovnim očitavanjem dužine proizvoda za odsecanje. Mikroračuaar koji izvršava programske korake blok šeme sa si.3, predstavljen Je na bl.f. Ovaj mikroračunar ee bazira na osoobit-nom mikroprocesoru 8080. Za vremensko vodje-nje upotx-ebljava se clock generator 6224, Koristi se i kontroler iz ove familije 8228. Za memorije se upotrebljava SPROH od 2 kbyte-a (2x2?08) i HAM memorija od 256 byte-a (2x 2111)". Za odabiranje jedinice koristi ee dekoder 8205, koji, za ulaze uzima sa adresno magistrale i to A^g» ^n ^ ^10* Pos®" duje i tri programirajuće ulazno izlazne jedinice tipa 6255 preko kojih se mikroračunar povezuje aa procesom. Izlazi I/0#1 jedinice (A,B), se vode na displej gde se pokazuje trenutna dužina proizvoda a (0) je ulaz od A/D konvertora. Koristi se jedan A/D konvertor, gde se konv-ertuju podaci o brzini motora, povratnoj i minimalnoj brzini, što je omogučeno priroenom dekodera i analognog multipleksera., Dekoder A/P n tf/foMe/ fiMj^eAM/f, P/A Slii/pc btrooe» / MAS.. f^ULT. ff&uo^r. — MUiitVtS- U. 4. se koristi sbog koriàéenja dva ulaza a potrebno Je inati bar tri izlaza za uključenje analognog multipleksera preko koga idu analogni podaci za konvartovanj® u A/D konverto-ruo Izlazi is enkodera dužine bu priključeni na ulaze (A,B) ulazno Izlazne Jedinice 1/044:2. Izlaz (C) pomenute Jedinice ae vodi na programirajući pojačavačg £iji ielaa predstavlja strujno ograničenje za tlrietorski regulator brzine» Pri većiia brzinama proizvoda izlazi programiraJućeg pojaiavača su ći« tako da se motor, a e njim i resni alat, ubrzavaju većim ubrzanjem. Idući ka nanjls brzinama, smanjuje se ovo ubrzanje, tako da se sinhronizacija brzina postiže za isto vreme« Predjeni put reznog alata, a s nJim i preuranjenje polaska, su linearne zavisnosti u funkciji promene brzine proizvoda koji se odseca. Kod prvobitno instaliranog sistema ove zavisnosti su bile nelinearne, što Je otežavalo njihovo tečno izračunavanje, a kasnije i praktično izvodjenje. h/k konvertor se napaja iz (A) od ulazno izlazne' jedinice i/0#5, čiji izlaz predstavlja upravljanje za tiristorski regulator brzine. Ostali ulazi u mikrorečunar kao što su podaci sa graničnih prekidača, A/D konvertora i nsonostabilnog multivibratora su predstavljeni ulaaoni (B) pomenute jediniceo Izlaz (G) ove jedinice, predstavlja izlaznu reč gde su izlazi predstavljeni izlazom aa iniciranje konverzije A/B konvertora, mono-Btabilnog multivibratora i za generisanje potrebnih komandi pri odsecanju proizvoda^ Sistem prekida se organisuje počev od adrese 0g)00H, i on ima rezervisanu memoriju sve do adrese 005FH. Potprogram MNOZ, za množenje dva jednobajtna broja sa rezultatom od dva byte-a, smešten je počev od adrese 0040H„ Za pretvaranje brojeva iz BOD koda u binarni sastavljen je potprogram PRJ5TV, i on je smeéten počev od adrese 0060H, Glavni pr-, ogram je amešten sa početnom adresom 00GfJHo BPROM memorija zauzima adsese od 07PFH. MM memori j a ima adrese od gieifFH, tako da je stek emeéten počev od nej-veće adrese. Ulazno Izlazne jedinice imaju sledeče adrese i PORTI - 0C00ÌI, POH'ie - 0C01H, P0RT5 - 0C02H, POHW ~ 1000H, P0RT5 - le)01H, P0HT6 - 1002H, FORT? - leggH, . P0RT8 - 1801H i P0RT9 = 10@2H, Ks osnovu Instruiccionih dijagroan tolt« ova uradJsni au potprograBi 1 glavai prograso u slDboliSkoni jesiicu, mlkroračunar i ißtl SU prikazani u tabeli PORTI PORTS P0HT3 PORT^ PORTS PORTS PORT? P0HT8 P0RT9 ST£K REL RBR RPH RLI RLP HDU RTH RBRM VPOV VDR COMST ADR STOR PRKKl» EQU EQU BJU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU ORG PUSH PÜSH PUSH PüSH ff MP. HLT LIJLD INX SIILD MOV DAA KOV MOV AOI DAA MOV SHLD EI POP POP POP POP RET OHG MMOZi MOV MVI MOV LXI MVI LOOPlt DAD RAL J NC DAD liOOPa « DCS JMZ RET 0OP1H 0C02H 1000H 1001H 1002 H 18ß0H 1801H 1802 H 0805H 0807H 08PGH 0a0DH 060&H 080PH PSW B Đ H PREKl RDU H RDU A,L L,A A,H 0H H,A H D B PSW 40H B,L D,0H A,H H,0H B,8S K L00P2 D B LOOPl PRETV; JUMPl: JUMM t SKOKI1 PbfPj läK0K2i ÖKÜKJ i BK0K4 : ORG MVI MV I MVI MVI sufi MOV liDA AN4 JZ LDA ANA AĐĐ ü'i'A S'iKì CMC MOV RAL MOV STO CMC MOV RAL MOV DCR JNa RKl' OKU LXX LXI MVI MVI I NX DCR JN2 MVI . STA Üfk S'.L^A MVI STA LHLD MOV S'l'A CALL LDA S'l'A MOV StA CALL LÜA MOV MVI CALL MVI IDA MOV DAD SUL U MVI STA LUA ANI JW2 LDA IMR STA LDA ANI JNZ LDA ANI JM2 LDA STA MOV LM MOV CALL SHLD XCHQ LM,D 8pa 0,16D B,lpD A,255D C E,A ADR ,0 JUMF2 ADR £ B ADÜ A,0 0,A A»B JUMPX cm a,mm SP.STfiK M,(aH H D SKOKI A,0H ■ poRie PORT? P0l{T9 A,ian RBK POH'W A,L ADR PliETV ADR STOR A,H ADR Pfi&'i'V A DK H,A MNOZ STOR KBL P0RT9 P0RT6 161) SKÜK2 KBR A RBR POHTtì 16D SK0K3 PORTS 64D SK0K2 RBR PORl-e L,A OONST H.A MMOa . RPH RDÜ dad d shld rlp mov b»h mov lhld rIl mov a,h cmp b jnz sk0k4 mov ail cmp c jnz skoko- skok^t lda rtr sta port? inr a sta rtr mvi a,01h sta p0rt9 sk0k6;. lea p0rt8 ani 2(9h jnz sk0k6 lda p0rt3 sta rbrm mvi a,01h sta portg lda rbrm mov ]i,a lda rbr CMP E jnz sk0k5 MVI sta a,50h p0rt9 8k0k7t LDA P0RT8 ani iWU jz ' SKOK? mvi a,^8h STA p0rt9 skokst LDA PORTa ANI ■ 08« jz SK0K8 MVI STA A,S3H P0HT9 HVI L,0H MVI H.gtH SHLD RDU MVI A,02H BTA P0KT9 MVI A,06a S'tA P0RT9 sk0k9i LDA P0ST8 ANI 20H JNZ SK0k9 LDA P0RT3 STA VPOV MVI A,0H STA P0RT9 MVI A, KFH STA P0RT6 SKOl^Ji LDA RTR DCR A STA RTR STA PORT? MOV LDA E,A VPOV CMP E JN2 SKoija SKOllt LDA PORTS ANI P2H JZ SKOLl MVI a,05h sta P0RT9 MVI STA A,(a7H P0HT9 SK012 I LDA P0RT8 ANI 20H JNZ SK012 LDA P0RT3 STA V0R MVI a,0h T^ naat. STA SK013 ! LM INR STA MOV STA L DA CMP JNZ LDA STA JMP END K)RT9 BTfi A RTH P6RI7 VDR E SK013 VDR PORTS PET Tj^ nast. Na osnovu dinaiclčlce analize dolazi se do aakljuäka, da izabrana konfiguracija sistema sa mikroraćunarem odgovara svojoj nameni. se očitava i uvodi u računar, a na osnovu me-rene brzine proizvoda, generiše ee upi'üvl3w-je sa tendencidom da leteća testerà ee ronile sa brainom profila koji se odseca. Za usvojenu konfiguraciju hardware-a iDikioražunara, reelizovan Je software progi"-amioa napisanim u simboličkom Jesiku. Zadatak novopredloženog sistema Je da ae leteća testerà adaptivno upravlja u odnosu na brzinu proizvoda. Sistem ima te odlike da će se znatno povećati tačnost odseacanja proizvoda i produktivnost pri proizvodnji. Pored ovih performansi, može ae reći da se podiže nivo automatizacije na tehnoloSkim linijama za proizvodnju čeličnih profila. LITERATURA 4. ZAKLJUČAK U radu se projektuje sistem za automatsko upravljanje odsecanjem profila u pokretu. Predlaže se uvodJenJe Jednosmernog motora i mikroračunara koji će ovaj proces voditi automatski. Na početku rada se opisuje tehnološki postupak za izradu čeličnih profila. Posebna pažnja se obraća odsecanju profila u pokretu. Analiziraju se nedostaci prvobitno instaliranog sistema kroz davanje opisa radnog ciklusa. Korišćenjea iskustava dolaai se do zaključka da treba projektovati nov sistem čiji bi zadatak bio da se poveča tačnost i pouzdanost rada sistema za odsecanje. Za pogon leteće testers, a prema podacima procesa, usvaja se Jednosmerni motor sa odvojenom pobudom, reduktor, zupčanik i zupčasta letva. Na osnovu konkretnih podataka analizira se strujni režim rada motora pri zale tanju. Dolazi se do zaključka, da pri ubrzavanju tereta, motor mora raditi u režimu sa strujnim ograničenjem. Uvodi se ubrzanje motora proporcionalno brzini proizvoda, tako da se dostizanje brzine vi'ši za isto vreme. Zbog režima sa strujnim ograničenjem, brzina motora Je linearna funkcija po vremenu, Odavde proizilazl da je preuranjenje polaska linearna funkcije koja se na jednostavan način odredjuje a èto nije bio slučaj sa ranijim rešenjima. Kadi automatizacije odaecanja na lete~ ćoj teateri, projektuje se mikroračunar koji se povezuje sa procesom preko A/D, D/A konvertora i ulazno izlaznih jedinica. Za regulaciju bi-zine, pored mikroračunara, .uvodi se i tiriatorski reKulatox' brzine. Brzina motora Davis R. Maurice G., Electronically controlled pumps, Natinal Conference on Fluid Power, V.XVIII, Chicago, 196'^ [a] Settel D. F., Cut to length'devices. Measurement and Control, May 196t,London [3] Racine Vickers - Armstrongs, Klectroni-cally controlled axial piston pumps, RVA Bulletin a 20iV ['t] Vickers, Blectro-Hydraulic Drives for Plying cut-off Applicatine, vol. L792/ 1-2, Swindon [5] The Oilgear Company, Tipical die accelerator system with Digital Control 'e] Wester J. G., Software Design for Microprocessors, Texas Instruments,London [?] Lilen H., Du microprocesseur au micro-ordinateur, Editions Radio,Paris, 1977 [a] Lilen H., Programation des microprocess-eurs, isditiona Radio, Paris, 1979 {9] Intel 8080 Microcomputer Systems, User» s Manual, 1975 [10] Milićević M., Automatska regulacija una^ ge generatora za induktivno zavarivanje pomoću mikroračunara, Automatika br.5-6i Zagreb, 1981 11] Milićević M., Adaptivno upravljanje odsecanjem metalnih profila u pokretu prim-enom mikroračunara, III Jugoslovensko aavetovanje "Automatizacija u crnoj metalurgiji'', Sarajevo, 1981 12] Milićević M.,Automatizacija uredjaja za odsecanje profila u pokretu primenon mikroračunara, Automatika br,5-6| Zagreb, 1902 -rt uporabni programi Program, kl lzltata CP/M doclel^evalne Hkui>lne na B" dlkeetl * Informatica UP iò • * CP/M Allocation Croupe Program * * marec 1983 » * niodtflciral A. P. Želeienlkar * * Blatera CP/M, lakra Delta PARTNER * 1, Podroöje uporabe Is razllönlh razlogov ielliho vefikrat vedati, kakäxia je razporeditev podatkov na dlsktìtl v CP/M sistemu. Pri alatemu CP/M 2,2 ata prvi dva steal rezervirani za operacijski Blsteiii, vendar lahko s primernim znanjem tudi to organizacijo Bpreiuerilnio, Ostale steze na disketi eo na razpolago uporabniku. ÙBùHMjùlsfca disketa (takäna kot jo dobimo od uporabniške skupine ali od prodajalca prOijraiBaka oprtìiiitì) lifia 26 sektorjev nüt posamezni ste^l in 77 Btea na eni utranl. Na tali disketah eie uporablja tklm. preakočnl faktor za sosednje logične sektor je, kar povzroÖl razliko med fizičnimi In loglöhluil sektorji na posamezni Bte^i. Loyii6nl aektorjl ee namreč dodeljujejo fizično V naBlednjüiii zaporedjui 1, 7, n, 19, 2S, 11, 17, 23, 3, 9, 15, 21, 2, S, H, 20, 26, 6, 12, iS, 24, 4, 10, 1«, 33, Pri t«ui je osen eosednjlh loglünlh sektorjev povesanlh v ttciro. dodeljevalno skupino, v kateri se tako nahaja 8 X 128 » 1024 zlogov, Dodeljevalne skupine za&nejo na stezi 2, vsaka skupina ima po osem logičnih sektorjev, tako da lahko plfieino vobče za skupino a = Ol X, X = (O, I, 7) ki obsega sektorje steze T a 2 s £lxlčulnil sektorji 1, 7, 13, 19, 25, 5, 11, 17. Skupina 3 se nahaja na dveh stezah, In sicer na T = 2 s sektorjema 16 In 22 In na stezi T = 3 s preo-Btallml sektorji (1, 7, 13, 19, 25, 5). X označuje logične sektorje v posamezni dodeljevalnl skupini. Sko&nl faktor za sosednje fizične sektorje se uporablja zaradi časovne rezerve, ki je potrebna pri posameznih sistemih med dvema sektorja-nia, da bi se lahko Izvajal vpis na disketo In branje Iz nje. Na listi 1 je prikazan izpis neposredno Iz diskete, ko Imamo primer dveh dodeljevalnlh skupin, ene Iz Imenika (directory) In dru^e z ASCII podatki. Prikazani primer kaže npr, zbirko LISTGRfS.BAK (to je prav tekst tega uporabnega programa) v imeniku In začetek tega teksta IH o Ü=0ül0|j T=2j DU (ISS£S5Ù4JSa 6I£)Ü477e 6KVb7Ü73 eoiüOiiDaA U1J0ASAÈD aociiaacia £OeU{iU'.ìD äOUQQOSi 64696t69 63697li61 fr i iiòltiù i;U'£:u6ü69 btóbUL'UA £U7:»tilJ7'j 7Übycil.b5 ÖilÜjlÜilL'.i £(iliii£rt2i| ßirdjlLliiiJA UlJllJii/ii-'ü ijiićtifićl^ -ö pAfj)t iA^'TLT^k'^ aoüuiiüüu •lulTlilCA UP 10 BUÜUÜOäO UÜHnllPUA 6C6(:tiF63 6t74t96K fcübovütjf «ìttkóièij 6l>bl7ä6t 63Ètì-J)39 SOÜOilÜäl) SUäDUUüO eosAur-'U.^ SAao^ijti^ • I^Küiiliaid. Kl* • ULI STA UP/fl ijli* •L>ELdl:,VAt,ia,-. • • SKUHIJt* • b- LiiKStll..« »•■••««(«««•(•«asa • ••(■•II*«,.« UfQ' •• Ch/11 Al.LUOATlu» 'H UliUUi'S PnOUhAH« • ». . » ilHlltC 1 9« •öJ o ecauilièt ui(5üiih.2o. «uimuuirti. h Lista 1, Prikazana lista'je dobljena s posebnim programam, ki zmore brati posamezne sektorje iz stez diskete. Na levi Listi amo odčitali dva sektorja Iz tklm. CP/H Imenika in dva zaporedna sektorja s podatki zbirk» v Imeniku, V licitbiilku tìa naliaja med drugim tudi zbirka LISTÜHPS.BAK (vrstica 30 prvega sektorja v listi), ki zaseda skupine 21, 25 in 2711 na disketi, kot je razvidno Iz vrstics 40 prveya suktorja liste. tikupina 21, in sicer njena prva dva sektorja, je prikazana s sektorjema 3 in 4 v levi listi, tu je etuanjoii prav naslov tega prispüv-ka In v nadaljiilh skupinah caloten tekst. Vsi znaki so pri tem napisani z velikimi črkami (teleprinter) . Druyl utiktor lluke je zaaädön V inionltiu samo z eno zbirko, In si-aer z f.lSTüHPS .l)C«| ostale tri pozicije so ä<ü prazne (vrstice 2U do 70 ddutjtjga sektorja v listi). Ta vrutlce so napolnjen« a znakom '05% ilblikd l/lä'l'UHl'S.BAK v vratloi 40 prveya uoktorja liste pa ja neveljavna (dejansko Je bila zbrisana) in [ijen začetni znak v vrstici 40 Je 'ob' namesto '00' pri veljavni zbirki. Mata nazorno prikazuje del organizacije podatkov na CP/M disketi, v dodeljevalni skupini 21H. Podatek za zaCetek tä. skupine smo prebrali Iz Imenika (skupina G O, logični aektor = 2, pozicija = 30H v llflti 1), 2. Kratek opis programa Na listi 2 imamo program za listanje tabele, v kateri se nahajajo podatki o dodeljevalnl skupini in pripadajoči etezi/etezah, loglönih in fizičnih sektorjih, Dodeljevalne skupine v listi 1 se navajajo v heksadeclmalni obliki, v listi 2 pa jih Izpisujemo decimalno. V listi 2 imamo v vrstici 20 for zanko za read stavek s podatki v vrsticah 260 in 2£5t a tem se zmanjSa dolžina programa. Preostali dal programa Izračunava formulo za dodeljevalne skupine, steze, logiSne In flzlSne sektorje. Program je napisan v jeziku .CBASIC2 oziroma EBASIC, 3. Izvajanje programa V listi 3 je prikazano Izvajanje programa z Hate 2. Izpis se ujema z osnovnim izpisom (brez listanja sektorja) v listi 1, Ta lista kaže tako prostorsko organizacijo diskete v sistemu CP/M 2.2. Seveda lahko to organizacijo po ielji spremenimo (voböe bo organizacija drugafi-na pri dvostranski, 5" disketi in pri vlnfisstr-skem disku, ko bodo npr. sektorji daljši, dodeljevalne skupine spremenjene itd.). V spremenjenih razmerah bomo brez teäav spremenili program v listi 2. a>type listghp5.bas 1 REH TA PKQGhrtil IILISTA PhlhEBITVt STEZ Ii4 2 hEH SEKTQhJLV POSACIEZiKiM PODELITveijim 3 tlEil skupiuivl NA STAHUAhlÀJI CP/A DISKETI. ji reti vrednosti so DEClUALrfE. 5 trni pri lipisu z vhsticijul tiskalnikom se 6 heil usthei«0 sprei1e-jiju vhstice 65- 667 hai 67> 150 iij 151 tlpfii.iteh). $ KEil pboarail JE napisai\i u jeziku cbasic2. 9 flBI 10 OKI D(104> SO FOR 1=1 TO 104 3U HEAD Dd) 35 ir 1-26=0 ÜU I-5a=0 OB 1-78-0 TilElJ liLSTüKE 40 NEAT I 50 G^O 60 T = 2 65 PIiINT 66 PFiIlJT 67 PRINT 68 ls=i 7 0 60 C='£it7 90 PfilNTi PftliJT "0 8>crfUMa AitiSTOhPS u - cp/i< all0catiu.4 ufioup, t - thack. ' ls - logical sector- "I ps - physical sectofi" 91 5=1 100 fOR I = TO 0 no IF I <= t 04 TUM ISO If I<=7 6 THEN A=È i 30 IK l<=>b2 TlltM A® I 140 IF I<=e6 THDJ A=0 150 PJilNT TAb( S> J GJ " 1 "J S-I J " T » "Ji+AJ 151 pjdwr " LS = "I LSI' PS - 'lym 15S S=S+I1 LS=LS»1 153 [F LS»27 THEfJ LS= I 160 HEaT i no IF c<=i04 urro süq 1Ö0 b=Bt6 190 c=cte äoa o^Qi-i SIO GOTO 90 220 T=Tf4 230 if T>7ö THETM GOTO 300 240 G-G«-! 250 UOTO 7 0 260 BATA 15-21 265 DATA 2-3- 1 4- 20- £6-6-1 2-1 6. 24- 4« I 0- I 6. 30 0 E.JD ChUN VER 2.07 Q - CP/il ALLO LS Q - ATIQIJ QHOUP- T - TRACK- LOGICAL EtTOR- PS - PKVSICAL S EGT ort 0 1 0 " 2 LS 1 PS ■ 1 0 t 1 - 2 LS 2 PS - 7 0 1 2 • S LS 3 PS • 13 0 t 3 = 2 LS 4 PS - 19 0 t 4 ■ 2 LS 5 PS • es 0 t 5 3 2 LS 6 PS ■ 5 0 t 6 - 8 LS 7 PS « 11 0 1 7 = S LS S PS - 17 1 1 0 ° 2 LS 9 PS - 23 1 1 1 > 2 LS 10 PS - 3 1 1 S = 2 LS 11 PS - 9 1 1 3 = 2 LS 18 PS • IS 1 1 4 " 2 LS 13 PS - 21 1 1 S □ 2 LS 14 PS - S 1 t 6 = 2 LS 15 PS - a 1 1 7 = 8 LS 16 PS • 14 8 1 0 = 2 LS 17 PS - 20 2 1 1 = 2 LS 18 PS - B6 2 1 2 = 2 LS 1» PS - 6 2 1 3 - S LS 20 PS - 12 2 1 4 o 2 LS 21 PS • 16 2 t 5 = 2 LS 22 PS ■ 24 2 1 6 • 8 LS 23 PS • 4 e 1 7 - 2 LS 24 PS ■ IO 3 1 0 = 2 LS 25 PS ■ 16 3 1 J o a LS 26 PS - SS 3 1 '2 = 3 LS 1 PS = 1 3 1 3 => 3 ■LS 2 PS » 7 3 t 4 - 3 LS 3 PS ■ 13 3 1 S " 3 LS 4 PS => 19 3 1 6 ■ 3 LS 5 PS ■ = 25 3 1 7 = 3 LS 6 PS » 5 Lista 3. To listo generira progrma z liste 2, seveda potem, ko je bil predhodno preveden in nato izvajan. Ta lista se izpiše do vkljućno 77. sektorja, öe programa prej ne prekinemo. Z doloòeno modifikacijo lahko dosežemo, da se lista izpläe na disketo, tako da jo pri potrebi lahko öitamo (npr, z ukazom TypE). Lista 2. Ta kratek program, ki je napisan v jeziku CBASIC2, izlista tabelo dodeljevalnlh skupin, stez na disketi, loglònlh in fiziCnih sektorjev, kot jo razvidno Iz liste 3, Pri nekaterih raziskavah podatkov na disku all disketi, je taka tabela zalo priročna. Program lahko modificiramo v primeru drugaäne organizacije podatkov na disketi, tako da ustrezno spremenimo parametre v programu leve liste. Tako lahko dobimo popolnoma drugaćno tabelo npr. za organizacijo podatkov na vlnčestrskem disku ali na dvostranskih disketah z dvojno gostoto zapisa. I novice inzanimivosti •«••»»-»•••••«««««••tt PROBLEMI INTEUIGENCE *•*««««»*•••«*»**:**» J. Uvod TabaU 1 Z načrti re^evarije problemov pmt» répunalnl" ičarj ih). Vpi iiišarije razumevanja delovanja luozyanov » levo poloblo »B je pojavilo zaradi posebnih (zave-striih) lastnosti te poloble, v kateri je -sedei isù st'BdiSòa) tkiiii, človekovega eksaktne^a ini-iljecj.ja. To je poblalo ključe,o za re- ševanje pt obleiiiat ike pele r ačuiialnioke generacije, v kdteri bo potru-bt^^, fe riiieóiti pfoblt-iiitì intel itjćnct;, ki naj bi postilla yl^vna Inost le Itshr.oloSk« generacije. Ali je iiio£|c.če razi-BÉili te probleme z mi-filjenjoiji leve poloble, z nakopitenim eksaktnim inarijtiinV Kaj st- ihriva v obeh poloti-lah in ,(0 med njima f unktrional no ( i nf ocmaoi sko) tiistveno laz lično? üf. Wdillkii iiieiJ levo in cfnuiio (iioìyunfako poloblo b klalisča i.iož^afov ir, njilìovil) pcoi-wsov kot int oi'iiijiCi sistema ao i-aji iskovalci i>ione pol ob) e. Je včasih nasprotne zn^it i I nosi i so pi ikazšf.e v tabeli I. Pri tem velja povedati n>k>.| Ueswd o sntrijskih In pai'nJel nib InfortnaLi ijsklli procesih v molga-nir,. fierljska in (laralelna L'ljdelava v tabeli 1. se r>aiiaia na ifiteyi^aino inf.; 1 i.iau-ijö, na dc.voij velik, irifoi-maci jako zaokroisn i=srečo je večina zavestnega ml-kljenja bb-tediie (alavcne, simbolne) nar'ave, jezikovna središč« (centri za jezikovno abstakci-jo) pa se nahajajo v levi polobli. Iz tega i*-hijä, da je zelo težko opisati funkcije desne poloble s pojmi (terminologijo) leve poloble, ker bo verbalr.i procesi (koncepti) zapleteno povezan» s serijskim von Neumannovim računalnikom leve pi.loDls. bojBiiiinju delovanja desiiu tioloble z delovanjem leve poloble je de facto povezano z dekompozicijo paralelnih informacijskih pi-ocesov desna poloble V serijske informacijska procese lave poloble, flli je ta dekompozicija VBelej tnogoča, to je osnovno vprašanje. Pri napredovanju raču-^.alnièkB tahnologije bi Slovek ielsl uporabljati predvsem obratno dakompoiicijoi ■ ii koncipiranih serijskih procesov (algoritmov), neétalih v levi polobli, bi Solsl pridobiti okvivolontne (hitrojSe) paralelne procese. Z logiko lovo poloble J0 moć brej taSov formulirati sarijako procese, računalnik pa naj bi te proceao Inte- . ligenäno , ki kaže, da jb mogoče Iz deans poloble prenesti le bistveno majhen del njene aktivnosti v levo poloblo. Polobli sta v normalnih možganih bistveno funkcionalno specializirani in vprašanja je, ali je moč specialisacijo leve poloble dopolniti (naučiti) z deli opecla-lizacije desne poloble. 3. Procesi v desni polobli Informacijski procesi desne poloble so sploäno neverbalni. Primeri takih procesov so slikarski dosežki, simfonije, intuitivni prebliski( kolikšen je v* njih delei^ procesov leve poloble? Pcie/ija JB verjetno lahko proces obeh ' polobel (Bsveda samo, če jb zares izvirna, ustvarjalna, umetniško dobra). Leva polobla prispeva sistemske (šolska, fnodne, logične, okoliške, konform-ne) komponente, zavestno osredotočene. Kakovost abstraktnih asociacij, navidezno nelogičnega sklepanja in ustvarjalna ekstrapolacije pa prihaja iz dBBne poloble. Iz leve poloble prihajajo tako logično togo utrjene strukture rnièlje-nja. Čeprav desna polobla vobče nima zmogljivosti leve poloble, pa si te v p&sebnih pogojih lahko pridobi. Kadar pride do poškodb v levi polobli v zgodnji mladost i, te poSkodbe navzven ne bodo opajne (tudi v primeru odstranitve leve poloble), ker lahko desna polobla zadovoljivo prevzame funkcije lev» poloble. Leva polobla pa ei nekaterih sposobnosti desne poloble ne more pridobiti. Te sposobnosti so npr. i - reševanje probiamov - opravi javijanje nalog, ki zahtevajo neverbalno procesiranje - presojanja in vrednotenje prostorskih sovi snost i - razpoznavanje slik in vzorcev, ki so preveč zapleteni ali subtilni za verbalno opisovanje - uporaba podobnostnih, šibko kategoriziranih funkcij itd. Desnomoiganskl računalnik lohko npr. IsvrSi funkcije fi, B, C, D v poljubnem zaporedju in dobi &B vodno pravilen odgovor, Iivröi lahko lo fi, B, -, D in sklepa o funkciji C oziroma o njonom učinku, ko oo prisotni vnl ütirj© dIq~ menti. Podobno pripeljejo hkratne roÖltvQ do novih tvorb, ki jih lahko označimo kot simfonije, slikarijo, rslativnobtno tGOrijo itd. Doona poloblo uporablja tudi ovojoko eooovnü morila, toko da prihodnost lahko prohitova oodanjou^ in so »edanjODt rozülrjo v prihodnoot« Manifoota-cljo v dBoni polobli so vofikrat podobna naver-jetnosti (telepatija, parspniholoCki pojovi). fi, P. Soloanlkar o o o tHUtOtUSOtì tì C öö<}{KHS-&im-ö Ö o-ao PRIdERJPlVE PROCESORJA SSSfiS a Ö o Ö o-tt« öfnnnmött'üöiHHnnHnnj »o ProcHEor Intol 0®2S6 so v sadnjorii čnou voßkrot primerja s drugimi mikroprocoBorji po tudi o procBBorjc?rn VftX 11/788. To prlrnorjavo ao üQnl-mive, saj oo primeri tako Izbrani, do do vdoIdj v prid mikroprocesorja fiCtSSG. Iitiauio tole: Protected-MocC® Syaism Low®! 1.0 1.0 1.0 .SB .4e .31 AßSEMBLV* EDM' OICaiTAL PitTEFl' Vse to kaže, da obstajajo v desni polobli funkcije, ki jih verbalno ni moč opisati in tudi njihovih zmogljivosti in lastnosti ni moč dobro razumet i. Evolucijski pritisk je v skladu z razvojem v smeri viäjih ifivljensklh oblik (pogojev, navad) dejansko razdelil (specializiral) Hioiigane v dva korezidentna računalna sistema. Danes fes ni moč natanko kvantificirati in napovedati funkcij desne poloble, ni jih mogočo izraziti s pojmi lave poloble z izjemo izredno pomešanih in ra-inoličnih filozofskih jezikov tipa 'zen. OpCifnbei 1. "16"Eiit Microprocessor Benchmark Report," Intel Corporation, 1961. £. "16-Pit MicroproceOBOr Benctimarke, " £DN, Sept 1301. 3, "Digital Filter Implamantotion on 1&-Bit Microproceagors,IEEE Micro, Fob 19S1. "fi High Laval Language Benchmark," Byte, Sept »981. 5. "fi Performance Evaluation of the Intel iflPX A3£," Computer Rrchltecturo News, Juno ISBE 6. 68Ö00 z 68^51 MMu potrabujo a Čakalni ota-nji pri taktu SMHz. 1.0 .3S SIEVE* BERKELEY RASCAL S.0 ».7 1.B t.O 2.B 1.7 1.0 2,6 Z.3 SIEVE^ BERKÜLEV PASCAL^ ^ CPU to CPU Benchmark Comparisons 8 MHz 0 Walt States Aja 9.0 1.7 1.0 1.1 2.1 1.2 1,4 1.0 i 8 § n i 2.1 1.0 1.7 assembly' EDN'' DiaiTAL FILTER^ üpohibe» 1. - 5. so enake kot prej. 6. saefi v pri(,iBi"u Berkeley Pascal je urnet-jeri ii 5MHi, i dvema čakalnima stanjema Ii phikaüainih primerjav 2 railićnimi evaluacij-skimi postcppki in vidiki pa se kaio ripr. perma-neritria premoS v Jtwog 1 j i vost i procesorja flBS66 nad procesc.rjein feSCS®». Ta prernoC pa je ver jetno še veliko večja v rsapaloSl ji vi sistemski Ikì uporabi-iiäki programski oprerai ter tudi v integrirani-materialni pcidpori. fl.P.leleznikar ««•«•»»«.»»«»»«««««•»«»««fr»*»«* NOVI JftPQNBKI MIKRORfiCUNflLNIKI Prej ko slej bodo Japonci imeli prvovrstne o-SBbne ra^ufialnike, ; kot je pokazala incdriarodna razstava v jeseni prejScijega leta (Japan Data Show '82, Oct 19-2S, ISSE, Tokyo). Ta razstava je pokazala spekter prenosnih in osebnih rnikro-raCunalniških sistemov, v katerih prevladujejo mikroprocesorji podjetja Intel, in sicer Ö06S in e0B6. Pojavili so sa tudi novi domati računalniki, ki pa za naà pregled niso relevantni. Poglejmo 1b najprivlatnejèe razstavljene mikroBistems. Japonski 16-bitni mikroračunalni k i Japonci ao razstavili £a novih I6-bitnih tnikro-računalnikov, od katerih si borno posebej ogledali osebne mi kros i sterne, National Mybrain 300(? je osebni ratunalnik podjetja Matsushita, ki se v ZDfl prodaja pod iroe-ni Panasonic, National in Duasart irna 4 lotene enotei izredno bogato opremljeno tastaturo,' sisteineko enoto, videopri kazovalnik. za barvno grafiko visoke lo&ljivoeli in diskovne enote. Procesor je 8080 s 36K ilo^i ROMa, z dodéitnimi zlogi video RfìMa in 16K zlogi ROfia. Video ROM se lahko poveCa na ISÖK zlogov. Video grafika irna loèljivost krat totk. Dobavljivi .(.ipoaljivi diski BO 3 eolski, S in 1/4 eolski in ä eolski, vsi v lot^enih vertikalnih enotah. Sistem ima RS~£32C in ieee-48a vrata. Operacijski sistem je MS-DOS ali CP/M-8S z v»— Bto programirnih jezikov (programska oprema je v celoti arneriÈkaM. Pri dve upogljivih diekih (s po I60K zlogi), B0-kolonsketfl iglitnem tiskalniku in z jezikom Basic je cena tega sistema cca «3000. Mitsubishi Multi 16 jB mikroračunalnik "v enem kosu" in ga prodajajo tudi v ZDO, tastatura je lotena. Sistem uporablja procesor S0ßfi in po želji koprocesor e»e7, 1£ÖK RflM, ki je razäir-Ijiv na S76K zlogov, barvno grafiko s 640 krat 400 točkami, en 30aK zloini upogljivi disk in «.paracijaki sistein CP/M-B6. flietera jia hicfr aparat tirriO raiäiriti. Toshiba Paaopia 16 j& osebrii računa! rnU, ki äi^ V Z DO prodaja pod oznako TStiia. Ima vct video inoriitorjev za raalirrie iotljivosti (320 X do 6A0 X S»» toékl. Enote bo med ^eboj 1c.St!rn.>, upogljivi diski (S coleki) dosežejo ia ß^HÜIK zlogov- Tiskalnik je ae-kolonski, op*ie-abijo bo Idhko tudi B colBki upogljivi diäki (v ten) jn prudnosb loći;»«iii er'rot ). Procesor je 6008 s koprocBSorje-t.i 0887, s 4K ROMotn, 19SK HflMoin, k i je raiäirljiv do 51£K zlogov- Doda ae lahkci tudi video RfiM od l£fi do £5£K zlogov. Operaci jaki s i st Etni je MS-DOS. Toabdc UX-3a0 (Toshiba) uporablja procesor ßöaci», ki je podoben procesorju 00B6. Ta sistem lahko uporablja vinčestrski disk ISfl zlogov, ima do S12K ftflMö, cena je «9300. Nl-:C PC-9fl(ì0 in O PC (Advanced Pereonal Computer) sta preseriBčenji podjetja NEC. PC-9Ö9Ö jo pravi lÉ-hitnt osebni računalnik a procesorjem 80fl&, dočim se «PC prodaja v ZDfl pod os^ako N5£ia0 in uporablja tudi procesor BQtì6. ftPC ihia i:]o- zni RAM, dva ß poleka diska IM zlogi, liMino-kroinatifcni Kiinitor s 6^(9 X 475 toftkami, 9 cfcno itSüMc njegova amerisk« različica se prodaja za pc-gsea ima isök do &40k ram, 36k rdm z jG2ik.Mii NBflB!C-fl& in s 9(iK video RFlMom. Monitor i/(ia ločljivost 64a X 400 totk, S 1K0K RttMa in dvema fi eolskima diakoroa (po IM vsftkt je njegova cena $££.0(9 na JaponsUein. Hitachi pnaic Master Ifiöö» in PT-1 osebr.i terminal sta l&,-bitr.a osebna računa Ini ka. Prvi porablja procesor 0800, MB-DOS in 3S0K RflMa v standardni konfiguraciji. Video loCljivi^et ina-éa 640 )( 4ÈI0 toek. Pet eolska diska Imata po 34(ÄK zloyov, cena pa je 41050. Tudi PT~1 upc*-rablja MS-DDS, ctva 8 eolska diska (po IM) ir, video ločljivost 7£ia X SSù. PT~t je predviden za pisarniško avtcimat izaci jo v lokal »"«i mreii. Bdnyo M|jC~S3 je vrhunski oseörji računalnik s procesorjem ödüß, zelo kompakteci, s tankima S colskiiiid d i skotila (po 16010. Pv 1 prodaji v 7Dfl bo zanj i.iogočfc! uporabljati onake module kot za IBl'lt.v PC. MBC~HS uporablja operacijska sistema CP/M-aG ir, MB-DOS, pomni 1 n i Ii je razsirljiv od &4K do £5&K. Sistem irna 4K nalagiUni ROn if. proceaoi' 66107. Njegova cena v 7Dfl bo pri mini--maini k.:.fif igur^ci j i «1800 bre? viduo monitorja. T(J bo f.iočria konkurenca osatinemu ratur.alniku IBM, saj bo M&G-SS aprtjjemljiv družinski Eloi-d M-SAS je If feden izmed Številni m i k ror a čuna In i kov, ki j in i zdel juje podjetje Bord (npr, M5 domaČi i-acuna 1 ni k ali prenosni mi ta7 (matematični koprocesor), vsebuje kitiledarakc uro ir. RflM od S5EK do IM zlfgov. Uporablja javni standard IEGE:-796 (Multibus). Nadalje itna 16K nalagalni ROM in BK znakovni generator plus 1S0K kanji ROM, Uporablja Q eolske upogljive diske in 5 eolski vinčostrbki disk. M-16 ima vrsto operacijskih sistern&vi 6t?ni«, CP/M-66, Concurrer.t CP/M-86, MP/M-B6, MB-DOS, UCSD p-sisteni itd. Njegovi sistemski jfjiki so med drugimi LIBP, Pl./I in C. Seiko 9500 ici 0È0O sta 16-bitria roiUrorafiunalni-ka, predvidena za japonsko in ameriško trìièen. 9500 je super osebni mikroračunalnik, zgrajeri v enem ohiSju, i vodoravno postavljenimi diskovnimi enotami. Itna vrsto procesorjevi S0B6 z 0087 koprocesorjem in äe dva 8008 procesorja, ki JU uporablja za V/I in druge krmi 1 net komunikacije. ObrsoCjB ROMa sega od £5GK do 51EI< zlogov, operacijski sistem je RMX/06, ločljivost barvna gv-afike inafea 512 X 40« tofrk. S60« je predviden za prodajo v ZDfl, je fflunjÈl »n ima bolj dognan izgled. Japonski 8-bitrii mikroraSunalniki Stiarp XI je osembitni mikroraćunalnik s prcice-sorjem z barvnim monitorjem, 6AK ROM oni, video RflMom in £K znakovnim RflMom, dodati pa je mogoče ée 48K video RAMa. Ta raÉ^unalnik ima tračno kasetno enoto, uro realneqa časa. tnali t iskalinik. Sony SMC-70 uporablja ZBÈfl procesor, v prihodnosti pa bo" i ms 1 processor 8086 z MS-DOSom, V ZDfl se prodaja kot poslovni sistem. IMa 3-col-ske diske. Japonski prenosni mikroračunalniki Na razstavi v Tokiu eo se pojavili 4 zanimiv,! prenosni mi kroračuna i ni ki. Pval flVC-7V7J£ je v enern ko'^.u, uporablja operacijski sistem CP/N .i. £ z ZSl^ifl, 64K RAMa in 16K video f)flf»la. Vgrajen jb S-cc.lski monitor, dve 5-colski diskovni enoti (po e.00K vsaka), S-coloki termični tiskalnik, priključnice zà zun.inje diske in zunanje vodilo itd. Cena ja teža pa 1£, 5 kcj. ftval flVC-fi66 je razvojni ti at eni a CP/M £.P, z dvei.ia S-colskima diskovnima enotama, podoben Bistmriu 777Ja. Ima prikljufcnieo za zunanji video prikazovalnik, je vallk.o laz ji in ctjni^jài Sord je pravi prenotini mikrorsćunalr.ik s procesor jei,I ZÖ0H, 1£SK ROMa in Öft-znakovni m in B-vratičnim prikazovalnikom 6 tekočimi kristali. Ta računalnik omogofca dtUo na poti, doi.ia pa je i.ioč priključiti viavaden ali barvni riic-nitor. Računalnik uporablja dve diskovni rnitiiencti s 600 obrati na sekundo s po 500« zlogi. Njegova teža je 9 kg, cer.a tSS^ii*, Epson HC-Se se prodaja v ZDH pod oznako HX-.=0, je manj zmogljiv kot M2jP, cena je «800, pcrta-hilnoat JB odličfiđ. Nüvi domači računalniki Da r.e bo neaporasiuma, oinrai'iimc. takoj, da bo domaČi mikr-oraftunalni ki namenjeni za uporabo doma (v domu) in da j& njihova upcrabniist in L'iena prilagojena potrebam in finančni m imoglJ ivoet im. National JR-£00 i-isebni računalnik je i-rnen proizvod podjetja Matsushita, ima procesor IbK ROMa in 3£ H WMa. Cena je ..koli JFI-100 ima procesor Saöa, 8K ROMa, 16K RflWa, manjšo tastaturo, pri ceni *210. Sord MS ima procesor Z68fl, 8K ROMa, AK üiüteiii-ekega RAMa, 16K grafičnega RAMa. PrograniSbka oprema ne prodaja i'id kasetah aH v RDMih. Ta raCunalnik iriia VF izhod (za TV>, ceria ju $107. Safiyti PHC-S'J tìoiJi hisd boljäu! dofiiafte raöuinalrii-kß s cei-iü tS&A. Velikost tega računalnika jo enaka velikosti tastature} iitia pa S4K-iloini :Ei(6ie v flOMu ir. 2£H-zloìni HfiM. Kot video pro-kazovalnik uporablja televizor Ì!f4 kaseto kot gekundarr.i pomnilnik. PHC-Sei je cenejša i z vadba teas domačega ratuf.šlhika. Novi rofni računalniki Sanyo PHC~fl000 je računalnik, ki ga tiriirno v roki. Njegov procesor j» NSC-ßSi® v CMOS izvedbi, ima pa £AK-zložni ROM in AK zložni RflM. Prikazovanje se opravlja na enovrstičnem ■ Sia-^Ic.nu i: tE^kočih kristalov. Cena je HES. Nanj JÖ moS priključiti lunanji vitieo monitor, mikro kasetni zapisovalni k in dodati ie lAK-zloini ROM in E£K-zlc.Sni RRM. Mali t i alta 1 ni k , J e v ohišju t'Eirotna vse skupaj v torbici. Toiphitia Pijisopia Hini ima fl-faitni CMOS procesor, 4K-2ložni Rßrt, 2SlK-zložni ROM s 16K-2ZoŽnir.i jeiikoirt B&sic, Prikazovalnik je iz tekočih kristalov, enovrstični. Osnovna cena je 4"S10, dodati pa JU tjiogoče Se lEK-zložni RRM za »lia. Priključi 5ć> lahko tudi zunanji tiskalnik, cena zunanjeya krstit ni ka je $17®. Tako počasi in zanesljivo naraste cena! Procesor BBSS s bvojo ožjo okolico (podporo)i a£37A dnia krmilnik 8S1S vrata aeas/seQB (centralni procesor aSB& a&BB BSBS prenosnika Bsea aa53/4 časovni ki vmeani registri a£59ft prekinitveni krmilnik . 8£S4A taktni generator 8£aa lokalni krniInik vodila »6p7as iep7as 16p74s 16p7ae 16p7as 7as138 PomniIniSka in periferna izbira Logika pripravljenosti in čakanja ' Sistemski pomnilnik NEC PC-aađl ročni računalnik je med ' najbolj prijaznimi.' Uporablja 0-bitni, mi kroprocesor uPD7gei7 v CMOS izveöbi, s taktno frekvenco A MHz, 3£(<-zloinim ROMom in l£K-zložnim RfìMom. Ima budi serijska vrata in dvovrstični prikaso-valn.ik s tekočimi kristali. Cena je $eii5. Podjetniške uamer-itve Težnjo jafjon&kih nlf^ktronskih podjetij se hiižu-jo v proizvodnji popolnih mikroračunalniihih linij, od ročfiih do zelo zmogljivih namisnih računalnikov. Podjetje NEC izdeljuje npr. ročni računalnik PC-2Ö01, domači računalnik PC-6aö0, osebni računalnik PC-a000 (z Z0i3 procesorjem), močnejši oöfebni računalnik PC-BBC® (tudi z 200), osebni računalnik PC-3O(Zi0 (a procesorjem BiSÖf,) in vitioko zmogljivi osebni računalnik ' N5£0a (prociiüor flSifi&). ; Toshiba proizvaja'npr. ročni računalnik Pasopia Mini, osebni računalnik Pasopia (s procesorjem ZflCt), B-bitni namizni računalnik TSÖPi z dvema S-colskima upoijljiviina diskoma, 8-bitni namiini računalnik T£r5& z vgrajenima B-colskima diskoma in osebni računalnik Pasopia 16 a procesorjem 8008. Dbe podjetji pa proizvajata tudi tkitii, taataturne računalnike, kot je npr. Epson in preno&ns mi kroračunalnike. V ZDfl ima le Hewlett-Packard širšo paleto, deloma tudi DEC, za IBM pa to ie ne velja Vbč. Gre torej za bistveno različni strategiji osvajanja novih mikroračunalniških tržišč in kido bo uspešnejši (Japonci ali Američani), postaja danes viae bolj očitfio. fl. P. Železni kar Ekvivalentna konfiguracija s procesorjem B01B6t öfißS 1^60186 centralni procesor Sistemski pomnilnik asaa i vmesni reg i at r i fi. P. Železni kar ' **»*#•**» (f K k-K K » RAZLIK» MtID B«aa TN Bfliaa «»»«»••«K'*««««««'«'»»*«««»« Razlika med tarAa odličnima mikroproceeorjema je najbolj nazorno vidna na ep-;'ònji . uliki. Gre predvsem za bistveno razliko v arhitekturah.