CQ ° @»2@w¢cw.,%,¤1 CERN LIBRARIES, WIIIIIIIIII|||IIIIIIKIIHIIIIIIIIIHIIIIIIIIIII . I` v~ 2/ W M CERN·CN·96·m6 cERN/cN/96/16

From the PC to the Network Computer. George Shering, CN Division, CERN.

Norsk Data with CAMAC and Abstract custom Multiplex I/O were replaced by VME The Network Computer is being touted as computers. Although each of these steps the altemative/replacement/successor to the sounded good on its own, taken together the simplicity of the SPS system was lost and the PC. Claimed advantages are lower cost and reduced maintenance effort. Technical l980s’ control systems were no better, and were innovations are a network transferable more manpower consuming, than the 1970s’ interpretive programming language (Java), ones, despite enormously increased computer power and memory. network loadable objects and a simpler stylized user interface. Some of these have been seen before in the "home-built" control Fortunately in the 1990s the PC came along and systems of the 1970s. This paper describes gave a solution to many of the problems. the advantages of our current PC control Unfortunately the "professional computer" systems, traces their development from the tendency which did not like the custom solutions 1970s home-built control systems, and ofthe SPS also resisted the PC control system, speculates on the possible role of the and as recently as the 1991 International Network Computer in Accelerator Control Conference in Tsukuba, proponents of PC Systems. control systems were ridiculed for suggesting that a big accelerator could be controlled by Introduction PCs, some of which were limited to 640K memory (forgetting that the Norsk Data In the l970’s the computer control of machines were sub-64K). I hope this first accelerators was a very hot topic. Accelerators International Conference on PC control systems had progressed beyond the capability of manual signifies a change in attitude. and hardwired control systems, the computer was there and full of promise, but experience The PC control systems of today have not yet and for accelerator control had not yet solved all the problems, however, but things are become available. The SPS control system was a developing fast and the Network Computer is high water mark of this period. It brought about to appear on stage. The Network together concepts such as the touch panel from Computer, or perhaps more significantly SLAC, interpretive language ideas from Network Computing and the Control Intranet, Rutherford, powerful (for the time) will solve our remaining problems and take us minicomputers from Norsk Data, and welded back to the streamlined solutions of the 1970s them together into a network based control but with full “comrnercial" components. system which became an example for many other control systems, notably at DESY and Claims of the Network Computer KEK. A main claim for the Network Computer is low cost, namely a Network Computer for under The problem with the SPS control system was $500. Cost breakdowns given by Oracle indicate that everything was home designed and custom that this is perfectly possible. The key feature is built. The next generation of developers did not no hard disk, peripherals or expansion sockets. like this (not unreasonably) and an attempt was Just a screen, keyboard, mouse and speakers, made to replace the custom designed elements with "commercial so1utions". The Norsk Data knitted to the network by a single PC board with consoles programmed in Nodal were replaced by gnlysmqdcstamount of mcgmry I¤ 198% the programmed in . The network /Ih“S‘¤¤¤·¤S cost 5000 erm f<¤eS1¤g*¤ PC bwd md 9 black Md White m¤¤¤<¤» facilities of Nodal were replaced by Remote __ Procedure Calls and Equipment . The wheres a with the Same S¤¤=¤¤ and quanm of electronics cost about 200 francs. If the Mac

Paper presented at the International Workshop on PCs and Particle Accelerator Controls, October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/96/ 16 had been sold at 500 instead of 5000 francs at figure is easily reached if a support person is the time then maybe the PC of today would have needed for every 20 to 30 users. The NICE been a Macintosh! Oracle hope not to repeat that network at CERN attacks this problem head-on ( mistake and to keep the cost of the Network reference 1), and our NICE (Network Integrated Computer down. The only snag is that some full Computing Environment) needs a maximum of spec PCs are heading down to the $500 level as a tenth of this. It should be noted, however, that well! IBM have just announced their "Network Macintosh users quote the simpler installation of Station" at $700 (not counting screen). IBM is Macintosh software as a big advantage here, aiming squarely at replacing the millions of maybe a factor of two. However at CERN there "dumb terminals" connected to its AS/400 is no "NICE" for Macintosh so the support costs minicomputers, primarily in data entry and are indeed much higher for Macintosh than for customer service environments. The Network PC, as are those for Desktop . The Station gives these users a graphical interface, a Network Computer cuts the cost as there is no mouse, access to the Internet and corporate software to install at all (ROM version), or it is a intranets, and e-mail. standard image down—loaded from a server as for the claimed advantage of the X-terminal. It Low cost is also an important claim for PC should be noted that IBM’s partner for the control systems, compared to workstations and "Network Station" is none other than NCD, the VME crates. This aspect has been ignored for X—terrninal vendor. too long as computers are traditionally a touchy and highly politicized area. It is disturbing, The key to the above two advantages is of course however, when accelerator labs talk about software, not hardware. A Network Computer shortage of money and manpower yet ignore has only one piece of software on board, a Java factors of two or more in any area. The claim is enabled browser. This can be downloaded from that the control system is only a small part of the the network at power-on or built-in on ROM. accelerator so it doesn’t matter if too much The SPS Control System of the 1970s used the money is spent. Studies at CERN in the early same approach. The console software consisted l990’s showed, however, that total expenditure of a Nodal Interpreter with built in facilities for on computing was a significant fraction of the the man-machine interaction. All other laboratory’s disposable materials budget. Cost functionality, in particular all the accelerator studies on the Isolde control system and the control functionality, came down over the Tau—Charm projected facility showed enormous network in the of Nodal interpretable code cost savings from the use of PC rather than and objects. In the SPS the computer software +VME. Then there are the claims image was loaded through the network, and for that PC software can lead to big savings in man the first ISOLDE control system which was power and that concentration on one kind of modeled on the SPS one, all the system software computer can bring big savings. It is nice to was in ROM (EPROM) in the CAMAC based have every computer imaginable on site, no ICC. This was similar to the first personal chance of missing out on the latest gadget! The micro-computers where the system software and cost in terms of manpower support is enormous, BASIC was in ROM. This has the advantage of too great in fact, so what we get is reduced faster response at power on with no need to load functionality, e.g. mail in ASCII, inter the system image through the network, and so operability problems, no real expert or support useful network interaction can begin at once. on any one platform. A third claimed advantage of the Network Another claim for the Network Computer is low Computer is ease of use. This springs from two cost of maintenance. An oft—quoted study found factors: firstly only one interface which is fairly that an office PC can cost $8000 per year to simple and becoming well known. The interface maintain. I have just seen another figure of is simpler because everything is a Web page. $13900. This is used by opponents of the PC to The primary interaction is clicking on a picture counter our "low cost" claim. Most of this is or underlined text. Immediate reactions might support manpower cost, however, and is clearly be that this is not rich enough in functionality. very sensitive to the support environment. This Even the SPS control system had fancy gadgets

Paper presented at the Intemational Workshop on PCs and Particle Accelerator Controls, October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/96/ 16 such as a “c0mputcr controlled k110b". When it Applications Programming. came to controlling the Anti—prot0n In the late 1960s the first attempts to harness the Accumulator, despite the fact that it was a "state potential of computers for accelerator control of the art" machine, Simon van der Meer only foundered on the so—called "Software Barrier" wanted a simple touch panel and display, as he In the 1970s people became very aware of this considered this to give adequate interaction and problem and for the SPS the solution was Nodal, all the rest was clutter. And it worked. The an easy to use interpretive language. This was touch panel gave only the equivalent of 16 successful and a wide range of accelerator hypertext links and did indeed prove adequate. personnel were able to program their knowledge Web forms are also very simple, and surely into the control system. In the 1980s a new adequate for control use. Those of us who work generation of control personnel appeared who with databases have difficulty accepting that the had not lived through the experience of the ‘60s richness of, for example, Oracle Forms 4.5 is and were entranced by the power of the not really necessary for most purposes, butl am workstation. They therefore launched into sure that, as in the AA, an ounce of application applications programming in C as the latest in intelligence is worth a ton of interface clutter. software technology. This resulted in many The interface will become better known as the problems and large teams of prograrnrners had WWW continues its explosive advance. Here I to be employed to produce the code, which was feel on solid ground. Bill Gates, non other, has often not what the accelerator specialists would adopted the Web interface and the next version have produced, especially experts such as Nobel of Windows will have a desktop which is Prize winner Simon van der Meer who was also nothing other than a Web page! Another an expert Nodal programmer. important factor is documentation. This has always been a weak point of control systems. By the time documentation systems had been setup, PC control systems came to the rescue in the most of the people involved had moved on to early ‘90s with Visual Basic and Excel other interests. Now there is only one (reference 2), and once again Machine documentation system, Web pages. From 1997 Physicists and Engineers could create their own Microsoft will be providing their documentation applications. These tools are not as easy to use in WWW form, despite the fact that their as Nodal was, but the important thing is that current system is one of the best available. Thus they are easy enough. When we started with the future control systems and future PC interfaces ISOLDE control system in 1989 we developed a version on Nodal for the PC which emulated the should look just like a Web page with HTML documentation. Touch Panel facilities on the PC screen exactly as used in the AA and in the previous ISOLDE control system. Half way through this The following picture shows how the Financial development Visual Basic appeared from Times sees the battle between the "thin client" Microsoft, and Nodal was never seriously used and the "fat client". again. Although Visual Basic is more complicated than Nodal it seems to be on the right side of some threshold whereas C and assembly language are on the wrong side. Excel was also popular, even with its then rather arcane "macro language" now replaced by Visual Basic for applications. In the case of

M, Excel it was familiarity through use in non .. . is ff control applications which was decisive, plus the motivation of learning something which is of ,»é@»'f/ ~>~¥¥r)\ Q ‘§ Tir; . general use. .. -,a·—¤¢4W“‘ ~;. ._.. wi · *5*7* ¥».?<$ss~ ¢&· — N~ 2 J· —,» at · tg For the Network Computer the programming i jg p».* languages are HTML and Java. These are much more complicated than Nodal. Examples from ` " ` " the Nodal Manual such as

Paper presented at the Intemational Workshop on PCs and Particle Accelerator Controls, October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/96/16

>TYPE BCT(3) technique made it easy to explain how such to see the third Beam Current Transformer commands could be strung together to make a reading, or program, even to non—programmers, for example >SET Hv'JPHS=l2 1.10 SET A=1 to set the RF phase at injection to 12 degrees, 1.30 SET B=2 were very easy to explain as immediate 1.50 TYPE A+B commands. The simple line numbering

HTML is not quite so obvious, unfortunately. For example:

PS Control System Layout

CERN European Laboratory for Particle Physics


Back to PS/CO Home Page
Contact I. Deloose CERN/PS (6—Sep—96)

The above HTML will generate the page as shown below:

European Laboratory for Particle Physics

P.5’»C0n#al C’ank¤i;5}s!am Eyujpmeniaécvess

Back Z0 PS/'CO Home Page Contact L Defense CERMPS (6-Sep-96)

Paper presented at the International Workshop on PCs and Particle Accelerator Controls, October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/96/16

How can wc bc sure that thc machine physicists advance. The final nail in Nodal’s coffin was and engineers will "catch 0n" to HTML? our inability to keep up with user expectations Accelerator personnel are now much more concerning such support facilities, on—line help computer literate than they were 20 years ago. etc. That is why it is so important to latch-on to Nodal was significant for its very low "leaming a successful standard such as the Web. threshold". Nowadays people expect to cross a reasonable threshold and even Visual Basic A Web Control Example takes a certain amount of effort to learn. But is This example was written by Ivan Deloose in the HTML too arcane? Two considerations give me PS Controls group (reference 3). What follows hope. The first is motivation. Everybody and his should only be considered as a demonstration little brother want to have their own "home and is not (yet) an operational tool, though using page" as the Web is visually rewarding. It is a the WWW as diagnostic environment is technology that people want to learn, like Excel currently under investigation. With the release macros were, and a lot easier too. For people of the latest Microsoft Intemet Explorer version who are responsible for a part of the accelerator 3, OLE objects and Visual Basic scripts can be it is motivating to be able to create a specific inserted into HMTL documents. The object has home page. The second reason for hope is that to be first entered in the Windows 95 registry automated aids are becoming available. The new . . . . . and its components must be accessible by the versions of the Browsers have page editing and ...... Intemet Explorer. Creation facilities built-in, for example the Page Wizard in Netscape Gold 3.0, and Microsoft’s Intemet Assistant for Word. _ _ _ _ Before Smmng the apP]1°a“e“· the See“mY Such products could well be customized for method must Pc Set K? Medlufn · Thls can be _control applications. Even if the HTML has to gigs tty °p°ml‘g the Opmms dialogue from the be edited by hand to include the control aspects, 1°WDiem] m E>rér· seleetmg the i _ the fact that the page layout with pictures Sccumy tab and chekmg the Safety Level button etc. can already be created easily with commercial software packages is an immense

General] Connection] Navigation] Programs $<=¢¤ll.v

r Content advisor Ratings help you control what kind ol Internet corient the Active content sermrity users ol your computer are allowed to view. web pages Teh ww gw] t; Ducntiauy - · Enab|e_Bat1ngs... ] Sgttrngs". ] DmuumgCGUSO $%Ut‘| aedwkh BIDS. SQ ` gh° tngs ' °w p°'°"t"’l

Security method: T Cdmcatcs § Use cerElicates to positively identify sites, publishers and ’°“"e"· f` uigh {recommended for al users] You are protected from all security problems. Potentially Eamndm ] Shin ] Publishers.-- ] unsale content is avoided, and you ere notified. {e Medum [recommended for expert users and developers] You are warned of all security pr0b|erns.You can choose . ·Actrve content · - whaha M nd to vnw pctmmny unsafe content You can choose what type of software Web sles can Sa download and run on your oomputer. " N¤¤¤ [mt rewmmendedl I;Gl; '"“e"‘_ UQ·|h$ UZ.inZ§%2lJrLL$Z.iE.iL¤ZiZ°T.LlL§r A `I“‘?‘'‘°£’'’“"'@LJ“° '"" V Flg1ActiveX scripts F Enable Java r:·r¤¤r¤m# l$;2(E¥¥,¥EYSE;l OK —;:-mil-]

Set the Security Method to 'Medium' DK Cancel ;g.·~;;·,· ]

Paper presented at the Intemational Workshop on PCs and Particle Accelerator Controls, October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/9 6/ l 6

The example URL http://nicewww.cem.ch/psdatafpsco/layout/xzsrvvw/EqpAccess.htm creates the page as follows:

[FFS F‘?£$ $° H$?E

p.,... l...l .,...... ,l.,....p.._...p . .,...... im'? #° ie/@ 4.,gi :2. E9? .l...... 26;...... Fsassc1”**¤* it . ._l,....¤...... all ...F .... TTS?}"T"°°""’i12L"f."¥?""f{YE€Z€F"°"‘¥?IiT‘."“°"‘??‘·"°" T.4..'§f'9‘c

P5 Cankal Cankal Sysiem Equjvzrre/1tAcca·s·.s·

l`·?<`€F··T""' M ] W. I

fP*¤¤¤

P1.SLhe: Q I ALL

J\naySi2e: ’ li

l¤naF»u¤: bpm

%EE§§““`

YUs¤:

Ndegun: lcrs

·S¤¤¤¤s·¤=¤ 2 bl·'I'PRO,$PTP'RO,AAJ-EA.PH PS,ERO.AA

’Encu Message; [Io Emn:ICo¤plcli¤n DK

Back to PS/CO Home Page Contact L Delocsv CERNYPS (6-Sap-96)

Done

To use the page one should fill in the parameters Element Name, Property, PLSLine, and click for instance the ‘H0tlink’ button. The DataField, CycleN0 and User labels will be refreshed in synchronism with the PS timing system (PLS).

A selection from the HTML for the above example is shown below.

PS Control System Layout< /TITLE> < ! —— PS Control Control System Equipment Access , I . Deloose , CERN/ PS</p><p>——> < / HEAD> <BODY> <SCRIPT LANGUZ-\.GE= "VBScript " > < I — Sub WriteButton__Cl ick ( ) RpcOle . ElemName = ElemName . Text RpcOle.Property = Property.Text RpcOle . PLSLine = PLSLine . Text RpcOle .ArreySi ze = ArraySi ze. Text Rpcole .Action = 2 ErrorMessage.Caption = " “ + RpcOle.ErrorMessage ReadTe l egram end sub </SCRIPT></p><p>Paper presented at the International Workshop on PCs and Particle Accelerator Controls, October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/96/16</p><p><OBJECT ID="ReadButt0n“ CLASSID= "CLSID : D7053240-CE69—l1CD-A777—OODDOll43C57 " S'I‘YLE= " TOP: 6 6pt ; LEFT : 2 15pC ; WIDTH: 5 Bpt ; HEIGHT : 2 Spt; HSPACE=lO ALIGN=TOP> <PARAM NAME="Capti0n“ VALUE="Read“> <PARAM NAME=“Size" VALUE="2000;682“> <PARAM NAME=“F0ntCharSet" VALUE="O"> <PARAM NAME="F0ntPitchAndFamily“ VALUE="2"> <PARAM NAME=“ParagraphAlign" VALUE="3"> <PARAM NAME="F0ntWeiqht" VALUE="O"> </OBJECT> <BR><BR><BR> <OBJECT ID="RpcOle" CLASSID="CLSID:C4FAADBO-F779—1lCF—AOAE—O0AAOOAC62lF' STYLE= " TOP : 173pt ; LEFT: 9lpt ; WIDTH : 248pt ; HEIGHT : 83pt ; HSPACE=10> <PARAM NAME= "_Versi0n" VALUE= " 65536 " > <PARAM NAME= "_Extent:X“ VALUE=" 8749 " > <PARAM NAME= " Extem;Y“ VALUE= " 3 OOO " > <PARAM NAME= " St0ckPx0ps " VALUE= " 221 " > <PARAM NAME="BackC¤l01·" VALUE="l6777215"> <PARAM NAME=“Appearance" VALUE="l"> < /OBJEC'I‘> <HR><ADDRESS> Back to <A HREF= "http: / /h0stXX . cern . ch/Welcome . html " >PS/CO Home Page< /A><BR> Contact <A HREF: "http: //xwh0 . cern. ch/WHO/people/08063 ">I . Del00se< /A> CERN/PS (6—Sep—96) </ADDRESS> </B0DY> < /htm].></p><p>The above HTML illustrates three important things. Firstly the <SCRIPT...> tag which enables VBscript to be included in the HTML document. Secondly the inclusion of normal Windows objects such as buttons. Thirdly the key object, "RpcOle" which is the OCX loaded to do the work.</p><p>The interpretive approach has advantages for Java and the Interpretive the user and for the system. For the user the approach advantages are an easy interactive approach to program development and a simpler language. The above approach is very powerftil and For the system the advantages are the security Microsoft is promoting it strongly as "ActiveX’ offered by the interpretation, sometimes called There are some problems, however, including running in a "virtual machine", and the network the need to register the OCX control, the transferability of the code. security problem of loading a binary into your computer, and the size of the binary. The requirements for an interpretive language do not exclude compilation. In fact "J ust In An interpretive approach to network computing Time" <a href="/tags/Compiler/" rel="tag">compilers</a> for Java are already available was used in the SPS control system to surmount whereas it took us from the SPS to the AA, five these and other problems, and the result was the or six years, to get the "Nodiler" for Nodal into Nodal system for the SPS (reference 4). The operation. The important thing is that an applet interpretive approach has now been re running over the network must be self discovered, and the hottest item in computing contained, must need no parts pre-loaded into today is "Java and the Web’ the target computer and must leave no parts behind.</p><p>Paper presented at the International Workshop on PCs and Particle Accelerator Controls, October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/96/ 16</p><p> more complicated as no code will be generated if The network transferability of code can be a language construct is not used. The result is illustrated by the following example from the that Java is simple and compact, yet powerful Nodal Manual. and object oriented. In my opinion, as a neophyte in the matter, it well justifies the hype 1.1 WAIT—CYCLE 6 it is experiencing at present. 1.2 FOR I=l,6; EXECUTE (I) 2 1.3 DIMENSION A( 108) A language can fail, despite its beauty, if there is 1.4 FOR I=1,6; WAIT (I); FOR J=1,18; SET not enough effort put into its support A(18*(I 1)+J)=B(J) environment. This was the final end of Nodal 1.5 EXECUTE(DISP) 3 A and the PS developed language P+ at CERN. 1.6 GOTO 1.1 Even Pascal and Modula 2, also invented in <a href="/tags/Switzerland/" rel="tag">Switzerland</a> though not at CERN, are suffering 2.1 DIM B(18) from this problem. There are altemative 2.1 FOR I=1,18; SET B(I)=HPOS(I) approaches to bringing life to Web pages, for 2.3 REMIT B example Netscape's plug-in technology, Microsoft's ActiveX which is based on 3.1 SET ODEV=15; CLEAR; I-lISTO(A) downloading OCX’s, and Oracle’s network loadable objects for <a href="/tags/Database/" rel="tag">database</a> access. None of Line 1.2 shows how group 2, an interpretive these use the interpretive approach, however, applet is sent to each of computers 1 to 6, the so with the possible exception of Oracle’s PL/SQL, called General Purpose computers at each of the nor do they enjoy the simplicity and power of SPS’s six access points. In the remote computer the Java object oriented language. I would say the code is interpreted and the work done. Line that Java will make it. The biggest assurance for 2.3 shows how the data is sent back. B is an me with Java is that Microsoft have produced object, in this case an 18 element array, but it is Visual Java ++ with all the goodies of Visual self—contained. It consists of a set of bytes Basic and Visual C++. Microsoft’s Internet containing its size, type, number of elements Explorer 3.0 is fully Java enabled, and all the and then the data, so that it can be interpreted in signs are that Microsoft will absorb it rather the client computer on arrival. This example than fight it. also shows parallel execution of the remote code, also a feature of Java. It is interesting to note that Java, like Nodal, started life as an equipment control language Why develop a new language? Of all the myriad and system. It was originally intended, by its languages that have been devised to program development team at Sun Microsystems, to computers relatively few survive, and popular allow a large, distributed and heterogeneous wisdom holds that we need a new programming network of consumer electronic devices to talk language like a hole in the head! The same was to each other and coordinate activity. Ideally said in 1972 when we started with Nodal, every device in the network could communicate although there were many fewer languages then. with every other, for example the television Nodal was developed from Focal, a DEC could tum the kettle on when the favorite language for the PDP 8 (now we are on a history program is near to the end. There was no lesson!). It was necessary to ADD so many intention to release the language for general use. features that we gave it a new name which When the Intemet "exploded" with the World reflected its network capability. In the case of Wide Web the Java team realized their product Java the opposite was the case! It started with was ideally suited to the new environment as it C++ with its good things such as objects, but would allow executable content to be distributed they had to SUBTRACT the things which could over the Internet. Java has become so successful not be interpreted (and which made it bug that Sun hope to move it back into its original prone), such as pointers. Interpretive languages on—line use. Sun is predicting that their software tend to be simpler as the interpreter must be sales of on-line control type Java based software resident and ready to handle any language will contribute more to their tumover than construct, whereas compiled languages can be server sales by the end of the century. If this</p><p>Paper presented at the International Workshop on PCs and Particle Accelerator Controls, October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/96/ 1 6 happens thcn maybe in accelerator controls we conference. It is being extended as a possible will see Network Computing spreading even operational tool and it is hoped that the below the control system into the equipment extended version will be demonstrated live. This itself. example provides similar functionality to the ActiveX example shown earlier, but is An Web Control Example using implemented in Java. Let us start with the Java HTML which is shown below. This application was written by Eric Roux, again in the PS, as a simple example for this</p><p><HTML> <HEAD> <TITLE>PS Control

Here the HTML is simpler, the page can be beautified later. The main thing to note is the applet defined by the tag. This is loaded and interpreted by the browser to give the output as shown below.

Elementname:

CPS

Property:

SUPER

Cycle;

. Send Request

Status:

SFTPRO,SFTPRO,NR,LEA,ZERO.AA,ZERO;SFHON,AA

Paper presented at the International Workshop on PCs and Particle Accelerator Controls, October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/96/16

A small section of thc Java codc is shown below.

/*######################################################################

FILE PS_C0n1:r0l . JAVA PROGRAM PS_C0nc1rc>l. . CLASS VERSION 1.0 AUTHOR Eric ROUX & Ivan DELOOSE DATE 24/09/96 PURPOSE PS passexelle access from an applet:

#####################################################################*/

//:::::: // imports /!2.'=Z==2 import java.applst.*; import; java.awt;.*; import; java.io.*;

// PS_Com:rol class declaration public class PS_Control extends Applet

private ’I'extArea Status'I‘extArea; private Button ReadButton; private Choice 'I‘elegramChoice, PropertyChoice, PLSLineChoice;

// Initializes the applet. public void init()

// Set the applet background color & default font setBackground (Color. lightGray) ; setFont (new Font(“Helvetica" , Font.PLAIN, 12) );

Thc Java codc is processed into a byte stream terminology. This is where most of the money which can be interpreted. Although Java is more goes, at least the initial up—front investment, complicated than earlier interpretive languages both in hardware and software. The equipment such as Nodal and Basic, it has the advantages interface electronics does seem to last well, of being modem, simple compared to C++, and however, and the life-cycle cost is therefore fully object oriented. On the interpretive side it lower. The most common problem is lack of has the advantage that the resultant byte stream follow—up knowledge and documentation. is small. One program was l4Kbytes for the Java code compared with 447Kbytes for the An important is fact that the server hardware Visual Basic compiled version (not quite and software has to be ready at an early point in identical versions, I must say, but similar). Of the accelerator commissioning cycle. Powerful course an interpreter for Java exists for all readily available and well known hardware, computers which have a Java enabled browser; together with an easy, rapid, and well known that means all computers. development and testing system is therefore called for — or so one might think. The Server Side The anchor point of any control system is of What, however, do most control systems use? course the Front End Computer as we used to VME crates, with specialized complex call it, now perhaps best called the Equipment processors, arcane operating systems and crude Server in the new Network Computing C or C++ development environments! All in the

Paper presented at the International Workshop on PCs and Particle Accelerator Controls, 10 October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/96/16 name 0f better performance in a Held where servers, yielding up tiles in HTML, GIF and performance is increasing by a factor of two other formats on request, at the click of a every 18 months and the accelerator may have a hypertext link. A simple hypertext link in life of over 18 years! HTML has the form, for example:

For Isolde we used simple PCs with ISA bus HREF="http://consult.cern.ch/xwho">Directorie interface, DOS, and Nodal plus Microsoft s QuickC development environment. This worked where the word "Directories" is underlined and and the rest is history. Nowadays we can have when clicked causes the browser to load from sewer PCs with four Pentium Pro processors the Uniform Resource Locator enclosed in the and PCI interface. CERN has — adopted/accepted quotes, i.e. http://consult.cern.ch/xwho PCI as a bus standard for LHC expedments despite its association with the common PC! The first attempt at interactive work uses an More seriously there is no way small VME interface called manufacturers can rival the research and (CGI). The diagram below shows an hypertext development efforts of Intel and others in the PC document on Computer B with a link to a file on field. The PC now has huge demands on its Computer C that holds the CGI program that performance due to the advent of multimedia will be executed if a user activates the link. This and 3D modelling, so performance is likely to be link is a "normal" http: link, but the file is led by the PC for the foreseeable future. Such stored in such a way that the H'ITP server on "commodity computing" is recognized as Computer C can tell that the tile contains a essential for I-IEP experiments. program that is to be run, rather than a document that is to be sent to the client as usual. Computer B More important, however, is the software and Computer A the software development environment. The PC is evolving rapidly in this area, especially with docu t.htm1 the "Visual" products from Microsoft, and again there is no way specialist I \H¤¤¤¤¤><¤Unk companies can match the resources of Microsoft WWW to produce powerful and easy to use Client development environments. § QW All this applies to any type of PC control system, but the next section will show how it ...... _..._.. particularly applies to a "Network Computing" control system.

..... The Network Computing Server Computer C Most of today’s control systems are based on the When the program runs, it prepares an HTML Remote Procedure Call (RPC) interface to the document on the fly, and sends that document to Front End Computer. The Isolde control system the client, which displays the document as it was so based and, as I will explain later, this would any other HTML document. Such was its (only?) weak point. We wrote our own programs are sometimes called HTTP scripts or RPC based on Novell IPX. Some effort has gone "Common Gateway Interface" (CGI) scripts. into standards for RPC but the usage level is Note that CGI scripts may be written in small and convergence level low compared with scripting languages (like , TCL, etc.) or in the . any other programming language (like C++, Pascal, Basic, Java). In the "Network Computing" control system the Front End Computer would be a WWW server As implemented in HTTP 1.0 the above protocol and the protocol would be HTTP. The original might be inadequate for control use. The World Wide Web servers were simply page objections would be the same as those made

Paper presented at the International Workshop on PCs and Particle Accelerator Controls, 11 October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/96/16

against thc PC, too slow, not designed for the for the SPS, and also of course its Java puxposc, no multi—tasking, ctc. Two reactions equivalent. are possible; drop it and go back to workstations and VME, or put some effort into the critical At CERN we are starting to use the Oracle Web areas, like we did on Isolde, to overcome the Server approach to database access. This is, of disadvantages and so reap all the advantages. course, vendor-specific and does not use For the WWW, however, we have been pre FastCGI (yet). It is already showing a lot of empted and I don’t think we have to do promise. Microsoft are also announcing new anything. Just read the following quotes from developments in this field. There is little the WWW consortium: conceptual difference between a database and a control system equipment server, in the SPS we FastCGI is a new, open extension to CGI that even called the equipment interface "data provides high performance for all Intemet modules". Fast speed of response is required in applications without any of the limitations of both cases. existing . The number of Web servers on the Internet is "A large proportion of the Web has always been increasing dramatically. Soon every data from all kinds of systems made visible on organization, club, maybe even every shop, will the Web through gateway servers," said Tim need its own server. Originally the Web software Bemers-Lee, Director of the World Wide Web was developed at CERN on a Norsk Data Consortium. "The first simple method of computer! With increasing popularity, of course, connecting custom gateways into existing the focus moved to UNIX and most of the servers was known as CGI. current implementations and documentation are UNIX based. With the explosion in demand this "CGI, whilst a common interface used by many is changing and Windows NT is rapidly servers, is intrinsically slow. The W3 becoming the server software of choice, see the Consortium is looking forward to the following graph thanks to the Economist: development of new open standards for this interface, and FastCGI is one promising In Micr0s¤ft's shadow ‘·°°° Worldwide server operating system proposal in the spirit of open standards. shipmerm, ‘000

Q Uni: Web server APIs increase application iwindnws NT performance compared to CGI, but are vendor SDD specific, complex, language—dependent, difficult to maintain, prone to security risks, and inherently unstable. FastCGI delivers aw performance increases that are as great as —— and often greater than -— APIs without these z¤¤ compromises. "CGI, which was developed here at NCSA, has become an important de facto me w w standard on the Web," said Elizabeth Frank, iowa: wwermuonzl Gm tcm. Wcrcsm httpd Technical Manager at NCSA. "But it also significantly impacts the performance of heavily One can be fairly sure that the latest, best and accessed sites. One response has been the fastest Web software will be available for NT proliferation of Web server APIs. Unfortunately, before UNIX, especially the more obscure applications produced to a specific server API versions of UNIX. The attraction is, of course, are rarely usuable with a different sewer. Applications using FastCGI will not have this the lower cost of the hardware, especially the big disks and fast network cards required for problem. This is why we are happy to announce support for FastCGI in our next server release. commercial servers. For control systems already using PC Front Ends all we have to do is to upgrade to NT. Even the current version of CGI has adequate capability to implement the Nodal system used

Paper presented at the International Workshop on PCs and Particle Accelerator Controls, 1 2 October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/96/16

The Intranet and security to be accessed). This could also be checked against the individual or his section. For Isolde A frequent worry in control system design is we used the Netware log in facilities. Credit card security. An unscrupulous control system designer can scare his management into shopping on the Internet, banking, and Internet money will need much more secure accepting some obscure software system by claiming it is more secure, especially as none of authorization, and this is indeed being these "bad hackers" will ever have heard of it! developed (see WWW page mentioned above). This could be adapted to control system use, maybe even in conjunction with a firewall. The Security is indeed a problem on the World Wide firewall could use a heavy authorization process Web (WWW). Although it was only invented in to allow outsiders in, but internally a lighter and 1989 at CERN, the Web has already become the faster solution could be used. It should be noted primary infomation interchange mechanism on that the main utility of the SPS protection the Internet. The computing industry worldwide system was to stop unintentional errors due for is working on solutions to provide WWW example to mis-typing a Nodal command, rather (Network Computer) shopping and even than to stop malicious hackers. banking. There is a W3C consortium web page on security, The Global Scaling Philosophy http://www.w3.org/pub/WWW/Security/. This chapter contains the main message I want For control systems there are two approaches to to get across, and is perhaps the most security. The first is the "Intranet" and revolutionary proposal in the paper. When we "firewall" approach. The Local Area Network were building the ISOLDE control systeml (LAN) used at CERN is currently Novell regularly asked the question "would it scale if Netware, so the Isolde Control system was we were building a control system for the whole designed to use this, the fundamental tenet of world". In the end this objective was not met, PC control systems being to use industry mainly because of the database required for the Remote Procedure Call software. The old SPS standard solutions where possible. control system would have scaled to the whole world, and so will the Network Computing There are strong indications that the industry based control system proposed here. will move from proprietary LAN software (Netware, NT, Netbios, etc.) to the Intranet. An The Internet and Intranet are based on a whole Intranet is just a local area Internet segment, usually using existing LAN hardware (Ethernet, new philosophy. They represent a move away ATM, etc.) but using standard Intemet and in from targeted information distribution towards particular WWW software. This local segment is active "inforrr1ation seeking". So it is with the then isolated from, or rather connected to, the Network Computer based control system. The global Internet via a "firewall". The firewall control system does not exist in any one place. It serves two functions. One is to isolate the local exists only as the amorphous sum of all the segment from outside traffic, so guaranteeing applications programs. This is a difficult the fast response needed for control systems. concept to understand, and also difficult for The second is to implement a security layer. control system owners to accept as it makes it Firewall systems are available commercially, hard for any one person or group to claim though apart from fictitious problems as in the ownership. film, there are practical problems of speed and ease of use. Let us look again at the SPS control system. Each General Purpose or Front End Computer had its own connected hardware and its own set The second approach to security is authorization. In the SPS control system a user of "data modules" to drive them. The only had to log in with a password and was allocated connection to the outside world was through a 16 bit section/group identifier and a 16 bit Nodal programs. Some of these programs set capability word. Each bit in the capability word initial values, others set operational conditions, allowed particular actions to be done (properties others took measurements and gave feedback. Any of these computers could have been part of

Paper presented at the Intemational Workshop on PCs and Particle Accelerator Controls, 1 3 October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/96/ 16 an enormous sct controlling all thc hardware of The answer is yes and no! If Microsoft’s all the accelerators inthe world, and even ambition to embrace the Web is realized it may everything else in the world! It would all be be difficult to distinguish between a Network connected to the same network, e. g. the Internet, Computer and a PC. If all documentation is and all controlled in the same way, of course HTML and the PC desktop is a Web page, then with different suites of Nodal programs for PC control systems will clearly follow. different applications. The integrating function for any one accelerator or application is only its The big unknown is whether the Java applet own group of Nodal programs, plus the security approach to spreadsheets, word processors or and permission facilities to ensure correct use. application scripting systems will ever rival or replace the standalone Excel, Word or Visual At first this led to confusion as the number of Basic elements of today’s PC. Not in the programs grew and grew. Then organization immediate future, that’s certain. was put in place and the programs were arranged in a "tree" structure. The typical Nevertheless a Network Computing control ‘node" program consisted of the lines: system could come quickly. The "real time computing" community are finding X11 too 2.1 FOR I=1,17; SSET LEGEND(I—l)=LEGS(l) heavy for browsing applications (reference 5), 2. 2 SET Z=BU'ITON; NEXT(PROGS(Z+ 1) and there are proposals to use Web serving instead. It is even easier to add Web serving to and the two string arrays LEGS and PROGS an NT equipment server. So simple applications which contained touch button legends and the could be handled by a Browser and more program names to be called. This tree structure demanding applications could use the existing allowed service programs to be written which RPC techniques until the Web techniques such scanned the tree and gave documentation of all as Fast CGI become adequately developed. the programs that made up the control system. Of course the documentation was always This could bring convergence with the UNIX ‘chasing after” reality, and it was always a great workstation control systems. Most applications debate as to whether this approach was not more could be handled by the Browser on either realistic that the more obvious "carefully pre UNIX or the PC, whereas C on the workstation planned and pre-documented" approach. or Excel and Visual Basic on the PC would handle the "legacy" applications in "traditional’ HTML with its hypertext links implements a VME or PC control environments. kind of branching "tree·leat" structure essentially similar to the SPS "tree" above. As many of the "simpler" applications could "Web Crawlers" to search and track the links quickly be converted to Network Computing are already in evidence. In the beginning we applications, then a simple Network Computer were always asked why there was not a Web could handle all the local control, public directory like a telephone directory where you terminal, type applications, and a Browser could could "find everything". Now, after two years, suffice for office access to the accelerator. we are not asked that question anymore and it is being accepted that "post facto" services like Will it ever happen ? Digital’s Alta Vista are the way to go. Similarly we hope that control system designers will Control system design for accelerators seems to accept the SPS approach and abandon the have changed from a pioneering subject to being chimera that all accelerator details and as conservative as controls for the chemical application programs can be carefully (and ever industry (some would say even more so heavily) planned in advance. conservative). This is understandable from the confidence point of view, but not when there is a The Role ofthe Network shortage of money and manpower. Computer The pioneering developments such as Nodal for Will the Network Computer as such have a the SPS were copied and further developed at place in our control systems, displacing the PC?

Paper presented at the International Workshop on PCs and Particle Accelerator Controls, 14 October 7-9 1996, Desy, Hamburg. OCR Output CERN/CN/96/ 16 thc PS, Dcsy and KEK to good effect. They Above all convergence between the control ncvcr made it across thc Atlantic, however. system world and the world of everyday When PC control systems were t`1rst proposed computing will increase, embracing not only the there was enormous resistance at CERN. It took proficient PC user as with today’s PC control a lot of courage to decide that Isolde, even systems, but also the whole Intemet proficient though a rather small project at the time and world of tomorrow which will comprise wives, very short of money, should be used as a test-bed children, and who knows, accelerator physicists. for a PC control system, against the established wisdom of the Controls fraternity. Subsequently Acknowledgments this was adopted by Desy and so we are all here I would like to thank Ivan Deloose and Eric today! Nevertheless the PS has gone back and Roux of the PS at CERN for the examples of invested in over a hundred AIX workstations Network Conuols, the Financial Times and rather than PCs, and is continuing with VME Economist for the relevant images, and my front ends. In LEP, where PC front end colleagues in the Database section at CERN for computers were installed "in extremis" to get the background in Oracle and Network LEP going, they are being replaced by VME Computing. systems! So not everyone is convinced about PC control systems! References

What then is the chance of not a PC or NC [1] A. Pace, "The CERN PC Network", this based Network Computing control system conference. seeing the light of day. Perhaps in time for the next PCaPAC conference someone will have the [2] R. Billinge, A. Bret, I. Deloose, A. Pace and courage to try. G. Shering, "A PC Based Control System for the CERN ISOLDE Separators", Conclusion ICALEPCS '9l, Tsukuba, Japan, November 199 l Networking Computing, with or without a specialized Network Computer could well be the [3] I. Deloose, "Integrating the New Generation next logical step in PC control systems. The of ISOLDE Controls into a Multi Platform essence of the PC control system is to harness Environment", this conference. the huge investment in hardware and software by firms such as Intel, Microsoft and Oracle for [4] M. C. Crowley—Milling and G. Shering, use in control systems, rather than use home "’I`he Nodal System for the SPS", CERN 78 brew or small production vendors. It looks 07 increasingly probable that the main thrust of PC development will be towards network computing [5] J. Blake, C. Eck, M. Merkel and L. and the Intranet, so the "true" PC control system Pregernig, "Real—Time Operating Systems should follow. at CERN", CERN/CN/96/1 l, VITA Europe Congress, 8-9 October 1996. Hardware will not change much. Four processor Pentium Pros with PCI bus interface already make the front end look almost overpowered! At the client level we may just see the specialized Network Computer replace the PC for auxiliary terminal type applications in maintenance and local operation.

Software will change the most. IP will remain but HTTP may replace TCP and RPC. JAVA may replace C++, and HTML may replace Visual Basic as the normal scripting language.

Paper presented at the International Workshop on PCs and Particle Accelerator Controls, 15 October 7-9 1996, Desy, Hamburg. OCR Output