JPRS ID: 9607 USSR REPORT CYBERNETICS, COMPUTERS AND AUTOMATION TECHNOLOGY

Document Type: 
Collection: 
Document Number (FOIA) /ESDN (CREST): 
CIA-RDP82-00850R000300090029-8
Release Decision: 
RIF
Original Classification: 
U
Document Page Count: 
27
Document Creation Date: 
November 1, 2016
Sequence Number: 
29
Case Number: 
Content Type: 
REPORTS
File: 
AttachmentSize
PDF icon CIA-RDP82-00850R000300090029-8.pdf1.79 MB
Body: 
APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 hUR OFFICIAL USE ONLY ~ - JPRS L/9607 = 13 Ma r ch 1981 U SSR Re ort _ p - CYBL~RNETICS, COMPUTERS ~N~ - AUTOMATION TECHNOLOGY CFOUO 9~/81) ~ ~B~$ FOREIGN BROADCAST INFORMATION SERVICE FOR OFFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 NOTE JPRS public~tions contain information primarily f.rom foreign newspapers, periodicals and books, but also from news agency transmissions and broadcasts. Materials from foreign-Language ~ sources are translated; those from English-language sources _ are transcribed or reprinted, with the original phrasing and other characteristics retained. ~ - Headlines, editorial reports, and material. enclosed in brackets are supplied by JPRS. Processing indicators such as [Text] ' or [Excerpt] in the first line of each item, or following the last line of a brief, indicate how the original inforroation was processed. Where no processing indicator is given, the infor- mation was summarized or extracted. r Unfamiliar namea rendered phonetically or transliterated are , enclosed in parentheses. Words or names preceded by a ques- tion mark and enclosed in parentheses were not clear in the original but have been supplied as appropriate in context. Other unattributed parenthetical notes within the body of an , item originate with the source. Times within ~.tema are as _ given by source. The contente of this publication in no way represent the poli- - cies, views or at.titudes of the U.S. Government. - COPYRIGHT LAWS AND REGULATION3 GOVERNxNG OWNERSHIP OF MATERIALS REPRODUCED HEREIN REQUIRE THAT AISSEMINATION . OF THIS PL'BLICATION BE RESTRICTED FOR OFFICIAL USE ONLY. APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR OFFICIAL 1JSE ONLY JPRS L/9607 13 March 1981 USSR REPORT ~ CYBERNETICS, COMPUTERS AND AUTOMATION TECHNOLOGY - (FOUO 9/81) ' CONTEN TS HARDWARE ~ The E1'brus System 1 E1'brus-1 in Serial Production; E1'brus-2 Readied 18 - a- [III - USSR - 21.C S&T FOUO] APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR OFFICIAL USE ONLY HARDWARE UDC 681.3.01:681.3.06 THE EL'BRUS SYSTEM Moscow PROGRAN~IIROVANIYE in Russian No 6, 1980 pp 72-86 [Article by B.A. Babayan and Yu.Kh. Sakhin] ~ [Tekt] The article is devoted to a description of the arch3.tecture ' and software of a new high performance family of multiprocessor com- ' puter systems, the E1'brus-1 (E-1) and E1`brus-2 (E-2) MVK developed at the Institute of Precision Mechanics and Computer Technology imeni S.A. Lebedev. ~ ~ The general principles of the E1'brus system are outlined in the article and the I various components of the system are described; in addition the new features and ' versions of implementation are outlined in more detail. i ~ The E1'brus system is a multiprocessor modular system with a high degree of dyna- _ mism, stack organization for calculations and a tag configuration and hardware im- plementation af the procedural mechanism. I I. General Concepts % , When developing a computer system, one must take into account and balance the dif- ' ferent characteristics (operating speed, cost, reliability, convenience of use and so on). To retain conceptual unity, it is primarily necessary to "prio~itize" these characteristics in a specific manner. The main principle from which the remaining - principles ensue must be determined for this purpose. The main principle in the E1'brus design is the principle of programming simplicity. As design practice has demonstrated, this principle harmonizes well with the re- maining aspects of the problem and its consistent fulfillment leads t~ correct - _ resolution of most of the main problems arising during development. Let us explain this. 1. One of the most import_snt Features of the system is its dynamism. Generations of previous machines and prograuaning languages accustomed programmers to very "static" utilization of resources and data tiypes, which made programming compli- cated. The machine program is also an algorithm whose structure has been adapted � to the configuration of the machine and has been limited by it. In this sense pro- gramming consists of translating an abstract algorithm to a program. The more 1 FOR OFFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR OFFICIAL USE ONLV - dynamic the system is, the more precisely it can be adapted to the structure of the algorithm and the simpler programming is. The degree of dynamism should be sufficient so that there are no indications to physical resources (for example, to ~rithmetic registers) in the machine languages and programs, bu*_ so that there are algorithmic concepts (for example, local data procedures). The use of tags ~6] provides realization of the dynamism of data types. Good dynamic properties make the system adaptable to terminal work. Z� Another important principle which facilitates programming is the modular na- ture, Modularity is a method of controlling the information complexity of pro- . gramming and it permits one to conceal technical details from the programmer, re- _ quiring only a knowledge of the interface from him. Modules should mee.. ,:he fol- lowing requirements: _ a) modules should correspond to programming r~quirements. To do this,for example, the machine instruction set should support in hardware such concepts as procedure and data array; b) the functions realized by the module should be sufficiently complete. For example, the procedures should be recursive, which requires implementation of stack discipline for calculations. Parameters should be transferred without limitation, ~ arrays should be dynamic and so on. c) the modules should be independent of resources; d) modules should be independent of errors. Context security using tags has been realized in practice for the first time in the E1'brus. e) the effectiveness of programs based on the modular principle should be high, - which is achieved by powerful hardware support. _ 3. The most important characteristic is effectiveness. There is t'~e ~pinion that the effectiveness and convenience of programming are mutually contradictory. Devel- _ opment of the E1'brus convinced us of the opposite. For the case of high performance - machines a system with maximum convenient programming permits realization of high productivity. Actually, many algorithmic concepts are naturally embodied in the hardware (such as procedure, loop, array, expressions stack and so on) for ea.5e of programming, which makes apparatus optimization of calculations possible. 4. Programming is simplified considerably when oriented to high-level languages. Other programming is not used in the El.'brus system. We note in conclusion that the means available to the user are usually employed for the needs of systems progra~ning as well: a) systems programming is accomplished in h3.gh-level languages; b) the user has available those mean~ of parallel programming, by use of which the operating system of the E1'brus is urritten; c) the user and systems programmers have available the same memory distribution equipment (dynamic arrays and so on); _ 2 FOR OFFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 _ FOR OFFICIAL USE ONLY d) the user and systems programmers employ the same El'brus file system mechanisms. ~ With this approach, systems programmers find themselves under as comfortable condi- tions as users. 2. Memory A graphical depiction of the relationship of various schemes for organization of virtual memory is shown in Figure 1. _ 1L .~ncbpyc Manmurcc ~cc~iMeHmya- cmpoduyNQp cmpyKmypo/ 6aPP y~ Aninac /cmponuyoi/ ~CCZMemm~i/ . Figure 1 Key: I 1. E1'brus 3. Burrou hs (se ents) g ~ ; 2. Multics (segment-page structure) 4. Atlas (pages) _ -i ~ Unlike the Atlas [3] and Multics [4, 1] where the logical and physical memory are divided in pages of constant length, the memory in B6700 and B7700 machines of the Burroughs Company is distributed by segments of varying length acc~rding to the na- tural size of the file being ordered. ~ ' As in the Atlas and Multics, there is a logical memory in the E1'brus. A page of ; logical memory contains 512 words. A word contains 64 information and 8 service ; digits (tags, parity). However, whereas the segments are of constant length in tne Multics and consist of a fixed number of pages, there is no concept of segment in the logical memory in the E1'brus. The segments exist only in the physical memory. If the requested array is less than a page, the system alTocates the next logical page completely to the given user. In this case, exactly' as much physical memory is allocated as the user requested. If the user requested an array larger than a page, the system issues the entire number of sequential logical pages to hime In the physical memory as many words as necessary for placement of the user array are allocated. Thus, the scheme presented above illustrates the fact that the logical memory in both the E1'brus and Atlas is divided into rigid pages, but the physical memory is distributed in ~egments of arbitrary length according to the actual size of the array. Allocation oi the physical memory according to the require?nents of ~ the algorithm is convenient for the programmer, leads to efficient use of the memory and reduces the size of transfer arrays. As is known, the average size of an array declared by a programmer equals to 50-100 words (5]. An attempt to arrange this a;-ray, for example, in pages of 256 words ~ach (2 kilobytes), like IBM, leads to _ poor utilization of inemory. An attempt to reduce the size of the page leads to an increase of the number of data transfers and to an increase of tables. 3 � FOR OFFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR OFFICIAL USE ONLY The program segments in the E1'brus are also of arbitrary length (with ac~uracy to a word). However, logical memory is not allocated to them and access oc~:urs through physical addresses. Taking in~o account that all programs in the E.l'brus are re- entrant, this permits one to use a single copy of ~he program frum different joba. This organization does not lea~ to scanning (review) since all the physical addreases ~ � (segment bases) are collected at one point (in the segment dictionary). ~ Special hardware operations for worki~?g with lists are provided in the system to distribute the physical memory by segments of arbitrary length. Each occupied segment is framed by two service words by use of which they are intertwined into lists. Each list contains segments, the numbers of the logical page~ of which are - comparable module 2k (see Figure 2). There is associative memory of pages (AZUS-32 registers) in the processor, which is used to recode th~ logical address to a physical address. ~1~ ~ivau~ccxva lIOMAl170 - CduiuK c6o6naNOri no~++Amu , TC~1 Gc ~ 3c C 3C J J c ~ Ct J ~ C JC CC dt ~c Cc Figure 2. 'rSP--user page table; ZS--occupied segment; SS--free segment Key: 1. Physical memory 2. List of free memory If the required logical address is not present in the AZUS, the apparatus provides an autor.~atic search by list and carrying of the found address to the AZUS. The free memory is also organized into lists. The advantages of this organization of memory compared to Burroughs [2] are related to the absence of physical addresses 4 FOR OFFIC[AL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR OFFICIAL USE ONLY in descriptorsy which frees one of the necessity of scanning upon return to the physical memory system. This is manifested in the following: a) there is no overhead for scanning in the mechanism of the virtual memory when data are sent to secondary memory since the presence of logical memory per- - mits only table co rrection during evacuations; . b) descriptors may specifically describe subarrays or part of an array initiaily declared by the us er; this is impossible in the Burroughs since this would lead to a significant complication of scanning; c) if there are mathematical pages, no problem of array placement arises since the arrays are aut omatically divided into pages; d) the Burrough s scheme does not permit one to locate the descriptors in the virtual evacuated segments. All the descriptors should be in the memory for the case of scanning; e) the memory is freed of local arrays upon completion of the procedure. When , the descriptors of these arrays are sent to global regions in the Burroughs they will indicate a f reed memory which can be allocated to another job. This may lead . to disruption of p rotection. It is inefficient to scan the regions of global data _ upon return from p rocedures due to concepts of efficiency. The presence of a logi- _ cal memory in the E1'brus removes `hese problems since the freed memory is not used again; f) the presence of physical addresses and scanning the Burroughs leads to complex ~ problems upon dump ing and repeated call-up of the problem (SWAP) in the case of time- sharing. Actually, if the j~b is activated after dumping, the meu~ory segments are ' located iri another physical zone which requires rather complex correction of all descriptors. The scheme adopted in the Burroughs for controlling this complexity = provides for allocation of the entire memory of the interactive job cantiguously to simplify correction. As a result, interactive and batch jobs are statistically - separated in the memory, which in turn leads to the undesirability of eombining interactive and batch modes in time. These difficulties are absent due to the presence of a logical memory in the E1'brus. The possibility of indicating the - chain of inemory re gions in a single exchange operation contributes to more rapid - dumping of the ~ob. The E1'brus system provides operation with local and dynamic arrays. The size of - the dynamic array can vary during problem-solving. The memory occupied by the local array is freed automatically by the operating system upon completion of the procedure. Organization of dynamic arrays in the described scheme is simple and requires only a single surplus word of inemory per array as overhead. The presence _ of dynamic array generation during problem-solving ensures automatism of inemory resets. ' As already noted, the most important property of the entire system and of the mem- _ ory syst2m spec~f ically consists in organization of data security. Context secur- ity based on tag configuration is realized in the El'brus. One of the most importanfi designations of tags is dynamic detection of nonconformity between an operation and - the type of data at program execution time.. This control 5 FOR OF~'[CIAL USE ONLY - APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR OFFICIAL USE ONLY specifically permits one to strictly observe s~nantically correct actions with ad- dress information and to detect any errorG in the user programs which violate this regularity. For example, it is impossible to add a number to the address, but a descriptor can be indexed, obtaining a reference to the file element described by the descriptor. With this type of indexation, an apparatus check is made whether the index of the file size described by the descriptor is exceeded. Other opera- tions with descriptors are provided which correspond to semantically correct action~ with the file, for example, "take the subfile," "write by address" and so on. A descriptor cannot be arbitrarily created by the user. It is issued to the user to- gether with issuance of the corresponding new file by the system. All this is dynamically monitored by the apparatus due to the fact that it "understands" types of data by using tags. There is no address in the machine instr~ctions. Instead, indexes are used by means of which the descriptors are indexed. The initial de- . scriptors used to form the context (address environment) of the current procedure are found in the base registers. Their contents are formed by apparatus throuqh input and output instruc~ions from the procedure. Pesides regions described di- - rectly by base registers, the context of current procedure may also contain files whose descriptors are located in these regions and so on. Consequently, regardless of what the code of a given procedure is, it is incapable of counting or changing _ something beyond the bounds of its own context without starting other procedures. Thus, all procedures are protected from each other in the E1'brus system if of course they do not share some regions of context with each other at the desire of the program authors. There are a special type of data--procedure markers with their own tag--for changing to a different context. Having some marker in the con- text, one can omit this procedure, thus converting to a different context. However, one cannot return to the context of this procedure whose marker is in the current context while working in the old procedure. ~I'his protection is reliable. Specif- ically, if the allocated procedure is omitteci from the allocated program, this procedure can either be cycled or can be returned to the point of call-up. It be- comes possible in this case to analyze the results. All errors in the procedure work are formulated in terms of the interface of a - given procedure. It nas no side effects of any kind that cannot be checked. Since _ protection is reliahly provided automatically, the user is actuallv freed of the concerns related to protection. It should be noted that there is essentially no need for a privi?eged instructions mode in this system. It is introduced in the E1'brus only to enhance the efficiency of some operations. 3. Processes and Problems A logical memory is allocated to each problem in the E1'brus system. The problem has a number of attributes which are worked out during development and can be simplified or changed during its existence. Prior to execution, batch jobs pass through the planning mechanism of a multi- program mixture. Each problem can have parallel processes provided by the user within it. No restrictions are placed on the number of these processes e.xcept general restrictions by resources. A dynamic stack corresponds to each process . on a one-to-one basis. Creation and starting of a parallel process are almost equivalent in expenditures to simple announcement of a file in the user pro- gram. There is general priority of processes from different jobs ready for 6 FOR OF~TCIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR OFFICIAL USE ONLY execution in this systetr,. This order is regulate3 by priorities. Each pro- - cessor of a multiprocessor system takes on execution of stacks from this order after being released from routine work. Signals are selected as the mechanism for synchroniz ation of processes. The auth- ors do not feel that this mechanism is convenient. However, the schemes for syn- chron ization proposed at present are less satisfacto ry. For example, let us note~ the monitor scheme most widely distributed in the theoretical literature. This scheme requires compulsory fulfillment of rather comp lex programs compared to the E1'brus realization of critical signal sections. In operational systems one must rather frecruently cover two or more signals simultaneously, which leads to unnat- ural complications in the monitor schemes. The effectiveness of parallel processes is of primary significance in synchroniza- - tior. scheMes. Actually, no user begins to use paral lel processes without a special need. Only concepts for increasing efficiency usual ly force him to do this. Therefore, it is illogical t~ talk about low-effective synchronization schemes. The first most imnortant "user" of parallel processe s is the aperating system it- self o� a multiprocessor machine. Highly ef fective synchronization is especially important here. The developers of the Multics conducted an e~cperiment, reducing or enlarging the critical sections in the operating system, and concluded that enlarged sections are more economical. This is the r esult of high overhead for input and output from critical sections. High overhead for synchronization is in itself poor and reduces the productivity of a multiprocessor machine. M4reover, enlargement of critical sections occurs as a result and this in turn leads to the fact that processors begin to interfere to a large d egree with each ~ther due to ~ closed signals for a prolonged oeriod. The mechanism of synchronization is com- pletely realized in the apparatus in the E1'brus due to tag configuration and therefore is very efficient. This realization is somewhat different in the E-1 and E-2. Let us ascribe the E-2 scheme as the most pprfected one. It should be noted that the described scheme was first developed and re alized iri the E1'brus system. The signal in the E1'brus system is a word with a special tag which protects the contents against improper use and modification. The signal is located in the user data. The operation of opening and closing signals is a machine operation. Each of them is fulfilled durinq two accesses to the memory: reading the signal with - simultaneous setting per unit of service bit (if thi s bit were in the unit prior to this, the processor waits until it is cancelled) and modificatian of the signal contents in the processor and inverse writing to the memory with caiYCellation of the service bit. There is a signal bit in addition to the service bit. If this bit is zero prior to the operation "close signal," the processor writes a one in it the operation is completed with this and the next i nstruction--the first instruc- tion of the critical section--begins to be carried out. If the signal bit is one (the signal is closed), a special interruption occurs in which the system estab- lishes the process to be carried out by program in the queue to the given signal (the beginning of the queue begins in the signal itself), making use of the fact that the service bit is closed; the service bit then opens up. In the typical case when the open signal is closed prior to this, the operation is highly efficient. Zn like fashion, the operation to open the signal re ads the signal contents (with interlocking of the service bit), checks the presenc e of a queue and in the typical case of its absence opens the signal with removal of service interlocking. The 7 - FOR OFFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR OFFICIAL USE ONLY operation is completed with this. If tnere is a queue, a special interruption occurs and the queue to the signal is processed in the procedures. Operations of closing of write and read signals are introduced in tYie El'brus. Several processes may c:lose a single read signal and at the same time operat2 in critical sections. And only closing of a write signal blocks the operation of processes of awaiting the opening of a given signal. This measure is also called ~ upon to reduce the interference of processors in a multipzocessar system. Correct work with general data plays an important role in organization of parallel calculations in a Y:igh-speed multiprocessor machine. The main problem here in- cludes the follo~ing. Rapid calculations at modern speeds require organization of local super RAMs (SOZU) for each processor. If some general data are stored ir_ the local memory prior to the next input to the critical section on the same processor, an attempt to read them in the given critical section will provide the local variant of these data, wh~reas they can be announced in the memory by another processor between these critical sections. Systems designed without regard to multiprocessor function and which utilize local memories (for example, IBM) are forced to review the SOZU of all processors with any notation from any processor or. channel to the general r.~emory and to destory local copies of ~s~eneral data. This is one of the most important factors of why mul.timachine conf igurations are more popular in these systems and multiprocessor configurations sharply inhibit work when the number of processors is increased. A new solution of the indicated problem is realized in the E1'brus. For simplicity let us describe the solutit~n of this problem in the E-1 complex. The comolex con- tains two special registers for time-code storage. Moreover, each cell of the SOZU has a bit which indicates what informa~ion in this cell is related at a given moment from the time registers. The corresponding bit is setat one upon access to any cell of the SOZU during writing cir reading. If it turns out at ~ome moment that the bits are in the position of the one the current time is entered in the time register corresponding to the unit bit and the old contents are rewritten to another register. All the bits are set to zero. This system permits rought de- termination of when the last access to data in a specific cell of the SOZU oc- curred. Moreover, the time of opening is stored in all open signals. If some processor now a ttempts to close the signal, the times in the two service registers are then compared to the time the given signal was opened. In the typi:;al case when opening of this signal was earlier than access to the data in the processor (the signal time is less than the time in the register, corresponding to zero bit), . nothing is done with the information in the SOZU and the processor enters the critical section. If access to some data occurred prior to opening of this signal, the cells occupied by them are freed. An attempt to read them in the critical section leads to reading from the general memory. The complex of proposed measures leads to a system in which the processors essen- tially do not interfere with each other. 4. The File System Each file in the E1'brus system contains data and file attribute~. There are drum, disc, magnetic tape, punch card, ATsPU [Alphanumeric printerJ, punch tape, _ 8 FOR OFFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPROVED FOR RELEASE: 2007/02148: CIA-RDP82-00850R040340090029-8 FOR OFF'ICIAL USE ONLY ~ alphanumeric display and typewriter files. Graphical files will be subsequently realized. The main operations on files are generation, destruction, opening and closing of a file, reading and modification of attributes and various types of ex- changes. Direct and butter exchanges are provided. A direct exchange occur~ bey tween file data and user files. Direct exchanges can be synchronous and asynchronous. - FTith buff er exchange, data transmission occurs between the file and one of the sys- ' ~ tems file s(buffer). A descriptor of the operating buffer is i~sued to the user after the exchange. Thus, the user can work directly on systems buffers. There are two types of buffer exchanges--single-buffer and multibuffer. A single- buffer exchange is an ordinary sequential buffered exchange. A multibuffer exchange is used only for drum and disc files and permits the user to receive descriptors for several buffers simultaneously containing different regions of the given file. - System responses which are completed by a"situation" output in some "emergency" cases (see below), are provided during exchanqe with different errors. The user can prescribe his own error-processing algorithm. , A signif icant typical feature of the file system is its dynamic nature. Unlike ~ many oth er systems, files can be generated ~vithin any procedure and not onl~ at the level of the problem-~~ontrol langLage. During operation, any drum or disc file - can be lengthened or shortened arbitrarily. A dynamic distribution system of the physical drum and disc memory is realized to maintain these properties. With this = dynamic nature of resource distribution (memory and devices), something must be _ said about the approach to the problem of critical situations (dead lock) in the - E1'brus. It could be solved by requiring instructions from the programmer about , all the necessary resources or the work of a specific program segment. Another well-known solution is realization of the "banker algorithm." Both these solu~ions = violate modularity since one must know the necessary resources to it and the re- , sources of all prograir,s caused by it to start the problem. A different solution, more convenient to the user and which does not contradict modularity, has been adopted in the E1'brus. Any problem solved in the system can ~ be "dumped" to slow devices at any moment, thus freeing all the resources required for operation of it and it can then be continued at a later time. Another important property of the E1'brus file system is introduction of address informat ion or of interfile references to the files. This approach is logically necessary in the E1'brus system since it permits one to apply the cnntext security described in the memory section to the file sys~em. The information stored in the - files is more permanent in nature, i.e., it has no specific lifetime (as, for ex- ample, do ~iles which exist for the longe~t time until the end of the problem). Moreover, a very large volume of znformation stored in the files must be consider- ed. This nature of files reauires in some cases the possibility of "review" of all addr esses which link files to each other. The following solution has been adopted in the Ei'brus in this regzrd: all references are concentrated in the file headings which are collected into a single general file unified for all drums and for each set of discs. Any heading contains a special key consisting of inter- file ref erences, each of which is the relative address of the file heading in the 9 FOR OFFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPROVED FOR RELEASE: 2007/02108: CIA-RDP82-00850R000300090029-8 _ FOR OFFICIAL USE ONLY headings file. Any objeat in the file system can be reached only through the ~ references. Since the entire headings file is directly inaccessible to the user, the system changes references only through the user's requirement. Context secur- ity in the file system is realized in this case. A number of complexities which arise when working with address inf ormation and _ methods of solving them in the E1'brus must be noted here. A counter of references for the given file is introduced in each file to facilitate the prnblem of file de- struction. If the counter is equal to zern, the file can be destroyed at any time. All the objects ~o which tne given file refers are reviewed upon destruction of a - ~ file and if the given reference was the only one (tne reference counter is equal to one), this object is also destroyed. This process is carried out recursively. - If the user wants to destroy a f ile, the referenc~ counte~ of which is not equal to = zero, the given file is destroyed together with the heading (with possible recur- - sive destruction described above) , but a"keeper" meas~~ring one drLUn segment (32 - words) in which the reference counter is stored remains in place of the heading. This reference is subsequently destroyed upon an attempt at access to the given file thro ugh any reference and the counter is reduced to one. This finally leads to elimination of the "keeper." This technique ~f "keepers" is used when it is - necessary to transfer h~adings to another point within a headings file in the case , - of expansion of the file and in this ~case the "keeper" contains the address of the , new location of the heading. ~ The described work with address information may lead to the appearance of "garbage" in the system, although the system of recursive destruction carried out above and a riumber of other measures sicnificantly reduce the number of these cases. P, back- _ ground "garbage collector," which operates without stopping the solution of the = problem beforehand has been developed to clean up this "garbage." The following functions are entrusted to ~his "garbage collector": destruction of the "garbage," elimination of "keepers," determination of the "oldest" files and candidates for pushing to slower devices, destruction of all user files excluded from the system a.zd destruction of refereaces earlier created by a different user to the "host" . files (if desired). This "garbage collector" is rather economical and its work is related to review of one or tF~o files. = Interfile references and context security, so far as is known to the authors, were _ _ developed and implemented for the f irst time in the file system of the E1'brus. ~ The mechanism of references described above could be sufficient to create a con- text of already translated programs if one could get along without identifiers, ' but identifiers are required for cc mmunication with man and for creation of the correct ~nf~rmation environment for him. The information mechanism has been introduced in the system for working with iden- tifiers. Technically this is a hierarchical index tablP wi.th variable number of levels, with blocks of constant length and with using the technique of table split- ting. All information references on the drum are concentrated :in a single sys~ems file. In like fashion, there is an individual information file for each set of disc packs. From the external viewpoint, the irformation manual contains pairs: identifier-interfile reference to the file or to another information manual. Thus, 10 FOR OFFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR OFF'ICIAL USE ONLY directories are also included in the reference system and utilize standard tech- niques ("keepers," "garbage collector" and so on). The structure of the relation- ship between directories is not at all rigid in nature (for example, tree-like similar to the Multics (1] and to other systems [2]). Dirsctories 3re generated and linked to each other and to the files by rather arbitrary system and uset - proqrams. Using the technique of directories, ~ach program file--an objective code file _ ~ (FOK)--can be referred to other files (program or data files) not only directly by the reference in its heading but by using a so-called external name er identifier. To do this, the possibility of linking each FOK through a switch to a sFecific di- ` rectory which creates the context of the external names of a give.n FOK is provided. If it is now necessary to have access to the file indicated by using an external " name when completing a given progr.am, the system will search for it in the file according to the found reference. This access does not violate context security. Thus, directories can again be referred to directories and the external name can be polysyllabic. I?owever, single-syllable names are most cor,unonly used in the E1'brus system since the search is carried out "from below" from the local direc- tory rather than from the root. It should be noted that only the reference to the object is stored in the directory and in the file switch and all characteristics of the object are stored in the di- rectory itself. However, since there can be as many references as desired from different directories or file switches as desired, some information related to spe- cific access to this object through a given input is stored in the directory. For example, this information is writing restriction. The same object of a single user _ can simply be an ordinary file which permits modification of data and attributes, lengthening, shortening and destruction. This file may look like a permanent file - (constant) in the context of a different user. This is achieved by the information , mentioned in the reference. Another example is the right only to execute the FOK. This permits the program author to transfer it to the context of other users, only authorizing execution of it, having prohibited even readout of the FOK contents. Moreover, this information is used for the following purposes. I~ the element of a directory with specifi.c identifier is referred to a different directory, this, from the user's viewpoint, may create a hierarchy of directories, access to which is possible by a polysyllabic external name. However, if the feature of "indirect" context is contained with the reference from directory to directory, this means that both directories seemingly cr~ate a unified context of identifiers. Thus, if the search for some identifier in the first directory is unsuccessful, indirect - contexts begin to be reviewed in alphabetical order (this process can be continued recursively). Of course, any directory can be an indirect context for several other directories simultaneously. Such a case is a global directory of a system which is either con- tained directly or through a series of indirect contexts in the contexts of all - users. This mechanism permits one to get along in a large number of cases with a single-syllable name and also abstract and make independent the program from a spe- cific structure of directories. ihe developed mechanisms and ~~he structure of the archive described above permit one to find a highly efficient method of starting one independently compiled program _ 11 FOR OFF[CIAL USE ONLY I APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPROVED FOR RELEASE: 2007102/08: CIA-RDP82-00850R000300090029-8 FOR OFFICIAL USE UNLY - from another. This is done in most cases by interfile references through switches without resorting to a search by identifiers. This search is reduced to the maxi- mum since there is no search "from the root," as in most other systems. Moreover, introduction of interfile references and the described method of program con~exC formation permit one to solve correctly the problem "rules of search" existing in ~ - all systems (see, for example, Multics) [4]. Besides the two mentioned system files (the headings file and the directory file), there are two other systems files: the operations file and the user file. The . documentation of problems in different stage of execution (in input gueues, in the process of fulfillment, in output queues and in the process of printing out the results) is stored in the operations file. Each problem is referred to several files from this file by using interfile references: the assignment file (if the problem is a packet type) is an FOK translated from an assignment packet and input and output files (files first read from input devices and files in which the output is stored). The user file contains extensive information about each user. A directory of users which is found in the context of an operating system exists in the directory system. The input identifiers of this directory are the names of the users and the reference to entering a gi~ven user in the user file is put into agreement to each such name. The possibility of determining the structure of doc- i_ umentation in the user file within broad limits is provided in the E1'brus system ; for administration of the corc~uter center. It typically contains the following information: passwords, checks of access to the system, budget information, refer- - ence to the directory of a given user and tY~e file context which determines it. This context is found as a context reference for external names for a packet FOK _ - problem of a translated task of a given user. This context is used for dialogue work to interpret external names coming from the terminal. A possible pattern of connections and references in the E1'brus file system is presented in Figure 3. Let us analyze the process of establishing a new user and entering it into the sys- _ - tem. Upon establishment of a new ~sser, a new inpu*_ to the user directory with name of a given user is created by the operator and a reference to the newly established documentation of the given user is entered in it. A directory is created k�hich will serve as the context of this user. A reference from the user documentation (reference to context) is established for it. One or several global directories are entered as an indirect context in this directory. ,The,user's,authority is checked upon input of it into the system and if this is a batch .job it is then translated, user context is assi~ned to it, the prob- lem documentation is created in which the ref~rence to the newly created assign- ment FOK is written and finally the problem documentation is entiered in one of the preliminary planning queues. - The same checks are carried out with interactive input into the_system and the.user context found in the documentat.inn, as noted abov~, is used to interpret the ex- ternal names assigned by the user from the terminal. Restoration of system files is provided for the case of breakdowns and failures of apparatus and also errors in system programs. ~ An input-output system having an exchange speed up to one billion bits/s in maxi- mum configuration and which takes the load off the operating system to a significant 12 FOR (1FFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR uFFICIAL USE ONLY c~aKn - ,~n cn ' c~nn .~n . c~Kn Kc _ ,in ~ ~ 3 rp KC P ~ s � 0 0 - o - C ~ ~1~ ~ ~2~ E v ~ ~ � ; Figure 3. SP--user directory, ZP--user notation; SFKP--file context direc- ; tory; ZF--file heading; KS--context reference; RFOK--expanded file of object code ' Key: ' 1. Data 2. Program text degree from workin with the exchan e ue es g g q u, with dynamics and search for differ- ; ent access routes to the same object have been developed to ensure operation of ' files and the mechanism of virtual memory in the E1'brus. 5. Programming Language Programming languages play a special role in the E1'brus project. This is indi- cated by the main principle which is the basis of development--programming simplic- ity. This explains the high affinity of the configuration decisions of the El'brus to high-level progra~ning languages. Work on configuration was to a significant degree work on language. P7e dwell bel~w on the most important features of the basic Autocode programming lanc,uage of E1'brus. Selection of the name of the language is explained by the fact that this language, not inferior to existing programming languages in level, is the "lowest" progra~ing level in E1'brus and procTramming in it is equivalent in efficiency to ~ Assembler progran4ning in other systems. , Turning to description of the language itself, it must be noted that its most im- portant features (dynamism and modularity) are based on the corresponding features _ 13 FOR OEFICCAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 - FOR 4FFICIAL USE ONLY of the system as a whole. Autocode is the first highly effective language in com- puter practice that is dynamic by types. P9any dynamic lar.guages (APL, Euler, Lisp, Gedanken, POP-2) were created in the past which are ;onvenient from the programmer's viewpoint, but are hardly effective ~n existing machines. The presence of tag configuration permits one to make the dy- ~ namic language highly efficient. It was possible to write the operating sys~em in Autocode only due to the fact that Autocode is a dynamic language. Actually, the procedures of the operating system are constantly concerned with statically non- specific data users, the types and structure of which are determined dynamically during operation (by tags). Autocode is a recursive language and this property is maintained by the stack con- figuration and nonaddress instruction system. As indicated by design practlc~, it is this approach, unlike machines with siirectly addressible registers, that permits one to achieve maximum efficiency of calculating expressions. It is interesting to trace the history of this problem. Directly addressible reg- isters were initially introduced into computer configuration to increase the speed of ca].culations and this was justified to a sufficient degree (if one is diverted from progra~ning convenience) for machines of the early 1960s when the problem of - equipment economy became acute. A classical example of this configuration is IBM. However, registers were only an encumbrance under conditions of extensive overlap- ; ping of operations in the IBM mode1~91, when many different functional AU appeared in a single processor since information was transferred directly from one arithmet- ic device to another and the numbers of the registers were actually for identifica- tion of information and their current posit.ion was associative. Under these condi- . tions the presence of the register number in the instruction set only led to superfluous conflicts which slow down the work. Registers for calculation of expressions (16 for the E-1 and 32 for the E-2)--the apparatus apex of the stack (the number is not limited by any digit grid and is se- lected only by c~ncepts of efficiency)--are provided in the E1'brus. But these reg- isters are not addressed directly from the progz~am. During instruction decodinq, the processor translates a nonaddress system to a three-address register ~ystem, dynamically designating the numbers of the registers. This approach is yet another example of matching programming convenience and z~ficiency of calculations. A significant improvement in the E1'brus and conseQuently in the Autocode compared to traditional computers is related to.the FOR loops. Registers of control vari- ables which service several embedded loops are automatically introduced for them. They are initialized by a special operation "beginning of loop " and a one is added to or subtracted from them by a corresponding op~:ation "end of loop". There are packed files which are described by a certificate consisting of an ordinary descrip- tor and the aggregate of ineasuring steps arranged adjacent to it. Each step corre- sponds an increment of the packed file index upon variation of the corresponding measurement per unit of index. This corresponds in accuracy to the technique used in the translator. The operations "take the file element" and "take the address of file element" can be used within the loop~ with instructions of which control vari- ables index each dimension of the file. Upon first fulfillment of this instruc~ion or after interruption of the work of a loop (for example, starting a procedure within a loop.)s the index of a packed file is calculate3 by multiplying the control 14 FOR OFFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR OFFICIAL USE ONLY variables by the corresponding steps of the packed file with subsequent addition. _ This index is then corrected by addition alone instead of multiplication during subsequent repetitions of this loop by using sFecial associative registers in , which the current significance of the index for the oacked file is stored. This technique pe:-mits one to summon the values of the file elements for several of the following loo�s to the special associative memory of the fi].es since the law of index variation is well known to the apparatus. The described mechanism may serve as yet another illustration of the fact that programming ef~iciency and con- venience assist each at~er. Ar: important innovation in Autocode, easily maintained by the apparatus, is the so- - called structural transition which permits one to leave a loop � of dynamically embedded phrases up to a point noted by the programmer in a special manner. The response which actually "replaces" the omitted phrases is provided in the point marker. This response can be parametrized from the point the structural transition occurs. The structural transition simplifies in a significant manner "programaning without a transition operator." It is also extremei.y important to transfer pro- - cessing of emergency situations from systems procedures to the user (for example, the situation "end of file"). The iteration loon is extremely sim.plified due to the presence of structural transition--this is si.mply an infinite .loop with emer- gency exit in the Autocode. ~ The possibility of introducing an "arbitrary" syntax for procedure start-up (the restriction of arbitrariness possibly has a doubl.e meaning) is provided in Autocode ' for the case of starting up complex programs (for example, a complex variant of 'I translator start-up) when a simple procedural syntax becomes inconvenient due to ~ the large number and variety of parameters. This mechanism may serve to start ' complex applied programs. Moreover, the syntax of instructions from terminals can ; be determined by using this mechanism. ; Autocode is used as a batch job control language. The idea of using a high-level , language for this purpose (the same in which the problems are programmed) is not - , new, but according to our data it has been realized for the first time in industrial ' development. Some facilities which are in reality language orthogonalization had ; to be introduced into Autocode for this. The most significant of them are literal files which are actually the cards of external files which are the basis far the batch job. As a result, a unique property of Autocode, along with its high level, is its uni- versality which is greater than that of assemblers in existing machines (it encom- passes the job control language and terminal language}. However, it must be said that it is rather voluminous, like any practical language. It should be noted that modern language-independent dynamic diagnosis can be easily realized due to the tag configuration in the El'brus. Actually, a stack can be - printed at any moment of fulfillment where one can easily understand the sequence of starting the procedures at the machine level and the significance of all the local data and parameters with accuracy to types. A complexer which permits combining of the programs written in different languages is provided in the El'brus. An important feature of the complexer is that there is - 15 FOR OFFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR vF'FICIAL USE Op~LY no need to use it after each translation. The programs are issued by the trans- lator in a form ready for execution and, moreover, the programs dc~ not require loading due to the instruction set. Programs can be complexed only if the errors . in program already operating are corrected. 6, The Instruction Set The instruction set and the internal structure of the E1'brus are d~_signed for pro- gramming only in high-level languages. The main organization of tkie computer pro- _ cess is the stack. The names of procec~uheSSt~cicell~e toD ofttheestack issthesfast _ calculating expressions are located in t registers in the processor. Thes~ae=i~herintermediatebresultsnoflcalculations. problem-solving by the apparatus _ descriptors in the processor. ~ There is a special table--base registers, containing These descriptors describe the stack regions accessible to a�isterslare inaccessi- procedure, i.e., they determine its address context. Base reg' o erations ble to the notation user and their contents are changed automatically by P ` of procedural ttansitions according to the context of the new procedure. ' Names are addressed in the stack by using an address pair--the Iexical-graphical level of the procedure which determinWithin a givenQproceduree rAccessrtontheffile I shift which is the index of the nam , elements is gained throuqh the file d~herstack.~s~usy aodescriptorhaddress.andhone files themselves axe located outside or several indexes (in the case of a multidimensional file) are used to calculate the address of the file element. Most of the most frequently used inofrcurrent proceduren(the first 32 nan?es)tare Thus, for example, local variables read in E-2 by a single-byte instruction while a two-byte format is used in the remaining cases. The arithmetic and logical operations have a single-byte format. The operands for the queueing operation are the upper elements of the register apex of the stack. - Multibyte instructions are usually those containing a literal constant. The type and format of data control the operation-fulfilling algorithm due to the presence of tags. For exam~le, whole and real operands of identical or different formats can be fed in any combinationc~sare transformationsmpriorttomthe peration. and the apparatus itself inakes the ne Y If it turned out during reading ofaineis~realizedabylapparatuseferences lead to it, - the passage through the address ch - There are two types of branch instruction: conditional and unconditional branch and calls to procedures. The address context i.s changed by apparatus when making procedural transitions and control is transferred to the new program segment. The only type of address contained in the instruction code is the address pair, _ which is found as a result of proqram translation and is actually an encoded name. Tnis name is converted to a memory address only at the moment the instruction is 16 FOR O~FF[CIAL USE ONLY _ APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR OFFICIAL USE ONLY fulfilled and is determined by the content of the base registers. Consequently, the addresses in the program code are not dependent either on the position of the program itself in the mem~ry or on the position of the stack. Therefore, all pro- grsms are re-enterable in the E1'bzus. Compared to other computers, the apparatus realized in the E1'brus made it possible: a) to increase the pr~ductivity of the system as a whole and the efficiency of equipment utilization and consequently to reduce the cost of calculat~:,ns; b) significantly facilitate use of the system. There are no programs written in Assembler language iiz the E1'brus system; c) reduce the volume of software. The total volume of software, which in- cludes all the necessary ~omponents inherent to the more developed systems (with- out a data base) and which includes a programming system in three languages-- - Autocode, Algol and Fortran--comnrised an order of 200,000 lines of Autocode text; - d) increase s~ftware reliability. BIBLIOGRAPHY j 1. Organick, E. I., The Multics System: An Examination of Its Structure, Cambridge, MIT Press, 1972. ~ 2. Organick, E. I., Computer System Organization: The B5700/B6700 Series, New York, Academic Press, 1973. I 3. Kilburn et al, "One-Level Storage System," IRE TRANSACTIONS ON ELECTRONIC CON~UTERS, EC-11, No 2, April 1962. , 4. Dennis, J. B., "Segmentation and the Design of Multiprogrammed Computers ' Systems," JACM, Vol 12, No 4, Dctober 1965. ' S. Batson, S.-t~i. In and D. C. Wood, "Measurements of Segment Size," Second Sym- posium on Operating Systems Principles, Princeton University, October 20-22, 1969. 6. Ailif, D. J., "Printsipy postroyeniya bazovoy mashiny" [Principles of Con- structing a Baseline Machine], translated from English, Moscow, Aiir, 1973. _ COPYRIGHT: Izdatel'stvo "Nauka", "Programmirovaniye", 1980 - [8144/0521-6521] 6521 CSO: 8144/0521 17 FOR OFF[CIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR OFFICIAL USE ONLY EL'IsRUS-1 IN SERIAL PRODUCTION; EL~BRUS-2 READIID - Moscow SOVIET UNION in English No 11, Nov 80 pp 6-9 - [Article by I. Nekhamkin: "E1'br~is Comes of Age"] _ [Text] E1'brus-1 multi-processor computer complexes have gone into serial produc- tion in the Soviet Union. Computing speed: from 1.5 to 15 million operations a second. Memory holds about 10,000 million bits of information. El'brus-2 is next in line. ~ The development of an integrated computer system in the USSR was described in an article in this magazine 2 years ago (issue No 337, 1978) Letters from readers ask for information about the latest Soviet developments. Interest in this field is natural because it is advancing so rapidly: while three generations of human beings succeed one another in a century, three generations of computers have arisen in less than 40 years. Now fourth-gene:ration computers, to which E1'brus-1 (named after Mt Elbrus in the Caucasus, Eurcpe's highest peak) belongs, are in. Speed, one of the most important specifications of computers, is increasing steadily. Structure, storage capacity, the technological level of the machine as a whole and of its separate components, its softwear, the language of the computer, and the num- ber of interconnections with its own components and also with outside users, are equally important. This broad range of specifications held the attention of the creators of the E1'brus-1 multi-proce~sor computer complex. Among the leading figures in the big team of scientists and engineers who developed E1'brus-1 were pupils of Academician S. Lebedev, workers of the Institute of Pre- cision Mechanics and Computer Technology of the USSR Academy of Sciences. "Why is it called a complex instead of just a computer?" we asked the director of the institute, Vsevolod Burtsev, corresponding member of the USSR Academy of Sciences. He invited us to follow him into a narrowish corridor formed by grey-blue metal cab- inets roughly the size and shape of the dressers and wardrobes to be seen in an average home. Pausing in front of one of them, he said: "This is the brain of E1'brus-1, its 'thinking' section, called a processor. Farther on are the memory units: magnetic tape (tape recorders, but of a special kind), magnetic discs (rolls resembling those used in early phonographs). At the side are input-output processors, through which the complex is linked up with its users. In short, this is a complex made up of modules outwardly resembling wardrobes. This, actually, is the whole complex." 18 FOR OFFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPROVED FOR RELEASE: 2007102/08: CIA-RDP82-00850ROOQ3QOQ9Q029-8 FOR OFFICIAL USE ONLY We were surprised not to see the familiar console with flashing lights and hundreds of butt~ns and switches. - "They aren't needed," the director said. "During normal operation of the complex Chis room could be locked up. The 'several' thousand subscribers who use the com- - plex--some of them in places dozens and hundreds of kilometers from here--don't - _ suspect it functions without supervision. Nor do they imagine that while working for each of the subscribers~ the complex can simultaneously carry out calculations - for all the others." "You said the room could be locked up. But what if something goes wrong?" "If a module breaks down the computer automatically switches it off and its functions are taken over by other modules. Simultaneously, after rearranging the flow of the processes, the machine reports the malfunction 'to the operator: it prints out the number of the faulty module and the cause of its breakdown. With that knowledge we can replace it. Modular design is one of the complex's chief advantages. "Look at this," he continued, opening one of the cabinets. "This is the central pro- cessor. It has a computing speed of 1.5 million operations a second. A similar pro- cessor stands beside it. Together they perform 3 million operations a second. The complex is designed for as many as ten processors, 4iith an overall computing speed of 15 million operations a second." "Is its memory based on the modular principle too?" "Yes it is. The memory can be built up by the addition of standard modules, from several tens of millions of bits of information to approximately 10,000 million." When several years ago, British experts compared a computer with the human brain, they found that the human memory has a theoretical maximum capacity of 1,000 million bits of information in a lifetime, while the computer had a volume of 30 million. ; But in the past decade computers have made impressive progress: today their memory can hold as much information as that of dozens of sages. The designers endowed the complex with the ability to communicate high-level lan- guages. This has facilitated the work of the programmers and at the same time has made it a polyglot. It can communicate, if necessary, with computers that use other languages, There are plenty of subjects for conversations of that kind because the number of computers in our country is quickly growing. They are being successfully supplemented by the integrated computer system designed and built by countries of the socialist community. These machines have won high praise from experts in many countries but were met with dissatisfaction by some Western periodicals. Writing in COMPUTER WEEhLY, Rex Malik said that the Western hopes of colossal sales of computers to CMEA countries failed to come true. The Soviet Union stands for broad and mutually advantageous trade with the whole world. However, the lines above, written 7 years ago, are interesting to re-read today, when some people claim that East-West cooperation is a"one-way street." E1'brus-1 has gone into serial production," Vsevolod Burtsev said. "Its use sim- plifies and speeds up the designing of seagoing vessels and aircraft, complex man- agement and information systems, and so on. In short, a computer of this class has _ many applications. 19 FOR OFFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPROVED FOR RELEASE: 2007102/08: CIA-RDP82-00850ROOQ3QOQ9Q029-8 FOR OFFiC1AL USE ONLY Pointing ta another gr.oup of similar-looking grey-blue cabinets, he asked, "What do you think that is?" "At~ El'briis?" The doctor smiles. "Yes, but it's E1'brus-2, the younger brother of the complex you just saw, and ten times more powerful. E1'brus-2 is a multi-processor complex = developed on the new design and technological basis of fourth-generation computers, having integrated microcircuits. In order to organize the serial manufacture of - such powerful and super-powerful integrated circuits, precision multi-layer high- frequency ships and other components we had to master many new processes and start the mass-scale manufacture of sophisticated components. Also we had to draw up, - with the help of computers, of course, an enormous amount of documentation." The bulk of this work has now been done, and E1'brus-2 is in the production stage. It will perform at the rate of 150 million operations a second. Each operation will take only be*ween two and three ten-millionths of a second,a duration of time in - which light travels a distance of only a few dozen meters. The new complexes will enable Soviet specialists to develop still more powerful computers, needed in all spheres of life in all countries. The aim of improving _ and effectively applying electronir. computers in all spheres of the Soviet econo~iy, set by the 25th Party Congress in 1976, is being carried out with success. 20 FOR OFFICIAL USE ONLY APPROVED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 APPR~VED FOR RELEASE: 2007/02/08: CIA-RDP82-00850R000300090029-8 FOR OFFICIAL USE ONLY ~r------- , .I~ � ~ M 7/' ,,~4. ~ ' ~ ~ . y � , ~ ~ .b ~ ' . , ~~i � c~c . ~ ~ < p 3, ' , - "`j