The Amoeba Reference Manual User Guide AMOEBA Amoeba is a registered trademark

The Amoeba Reference Manual User Guide AMOEBA Amoeba is a registered trademark of the Vrije Universiteit in some countries. AMOEBA is a trademark of the Vrije Universiteit. Sun-3, Sun-4, NFS, SPARCclassic, SPARCstation, MicroSPARC, SunOS and Solaris® are trademarks of Sun Microsystems, Inc. SPARC is a registered trademark of SPARC International, Inc. UNIX is a trademark of Unix International. Irix and Personal Iris are trademarks of Silicon Graphics Corporation. DEC, VAX, MicroVAX, Ultrix and DEQNA are registered trademarks of Digital Equipment Corporation. Intel 386, Pentium, Multibus and Intel are trademarks of Intel Corporation. Ethernet is a registered trademark of Xerox Corporation. IBM and PC AT are registered trademarks of International Business Machines Corporation. X Window System is a trademark of the Massachusetts Institute of Technology. WD, EtherCard PLUS and EtherCard PLUS16 are trademarks of Standard Microsystems Corporation. Logitech is a trademark of Logitech, Inc. Novell is a trademark of Novell, Inc. 3Com and Etherlink II are registered trademarks of 3Com Corporation. MS-DOS is a trademark of Microsoft Corporation. Amoeba includes software developed by the University of California, Berkeley and its contributors. Copyright © 1996 Vrije Universiteit te Amsterdam and Stichting Mathematisch Centrum, The Netherlands. All Rights Reserved. Contents Chapter 1. About This Manual 1 Chapter 2. Introduction 2 2.1. History 2 2.2. The Amoeba Design Philosophy 2 2.3. The System Architecture 3 2.4. Objects and Capabilities 4 2.5. Remote Procedure Call 4 2.6. Directories 4 2.7. Files 5 2.8. Amoeba and POSIX Emulation 5 2.9. Conclusion 6 Chapter 3. Getting Started 7 3.1. Logging In and Out 7 3.2. Creating, Modifying and Destroying Files 8 3.3. Customizing Your Environment 8 3.4. Starting X Windows 10 3.5. Directories 11 3.5.1. The Soap Directory Server 12 3.5.2. The Directory Graph 12 3.5.3. Commands for Soap 12 3.5.4. The Structure of a Directory 13 3.6. Tools and Languages 14 Amoeba 5.3 iii 3.6.1. Debugging 15 3.7. On-line Help 15 Chapter 4. Advanced Users 16 4.1. The Pool Processors 16 4.2. Electronic Mail 17 4.3. The POSIX Emulation 17 Chapter 5. Accessing Non-Amoeba Systems 19 5.1. Remote Login 19 5.2. File Transfer 19 Chapter 6. Editors and Text Processing 20 6.1. Elvis Reference Manual 21 6.1.1. INTRODUCTION 24 6.1.2. VISUAL MODE COMMANDS 24 6.1.3. COLON MODE COMMANDS 30 6.1.4. REGULAR EXPRESSIONS 37 6.1.5. OPTIONS 39 6.1.6. CUT BUFFERS 47 6.1.7. DIFFERENCES BETWEEN ELVIS & BSD VI/EX 49 6.1.8. INTERNAL 51 6.1.9. CFLAGS 54 6.1.10. TERMCAP 57 6.1.11. ENVIRONMENT VARIABLES 59 Chapter 7. Manual Pages 60 Chapter 8. Index 338 iv Amoeba 5.3 1 About This Manual Intended Audience This manual is intended for use by all people using Amoeba, either by directly logging in or from another operating system running the Amoeba protocol. Scope This manual explains the basic concepts of Amoeba from a user’s perspective, including how to log in, how to configure the working environment and how to locate required services and objects. It concludes with the collection of reference manual pages for user utilities and servers. Advice On Use Of The Manual It is recommended that the introductory material and tutorials be read at least once by all users. For those familiar with UNIX the initial tutorial material may seem straight forward but the file system and directory service are different from that of conventional systems and should be understood before proceeding. The manual pages are provided for reference and explain how to use the utilities and servers provided with Amoeba. (Note that some programming tools are described in greater detail in the Programming Guide.) It is expected that the manual pages will be used frequently. Throughout the manual there are references of the form prv(L), ack(U) and bullet(A). These refer to manual pages at the back of each guide. The following table explains what each classification refers to and in which guide the manual page can be found. Letter Type Location (A) Administrative Program System Administration Guide (H) Include file Programming Guide (L) Library routine Programming Guide (T) Test Program System Administration Guide (U) User Utility User Guide                                 There is a full index at the end of the manual providing a permuted cross-reference to all the material. It gives references to both the manual pages and the introductory material which should provide enough information to clarify any difficulties in understanding. Amoeba 5.3 1 2 Introduction 2.1. History The Amoeba distributed operating system has been in development and use since 1981. Amoeba was originally designed and implemented at the Vrije Universiteit in Amsterdam, The Netherlands by Prof. Andrew S. Tanenbaum and two of his Ph.D. students, Sape Mullender and Robbert van Renesse. From 1986 until 1990 it was developed jointly there and at the Centre for Mathematics and Computer Science, also in Amsterdam. Since then development has continued at the Vrije Universiteit. It has passed through several versions, each experimenting with different file servers, network protocols and remote procedure call mechanisms. Although Amoeba has reached a point where it seems relatively stable, it is still undergoing change and so it is important to take note of the various warnings and advice about the proposed design changes for future releases. 2.2. The Amoeba Design Philosophy Amoeba has been developed with several ideas in mind. The first is that computers are rapidly becoming cheaper and faster. In one decade we have progressed from many people sharing one computer to each person having their own computer. As computers continue to get cheaper it should be possible for each person to have many computers available for individual use. This is already the case to some extent. The second relates to the widespread use and increasing performance of computer networks. The need for a uniform communication mechanism between computers that are both on a local network or on a wide-area network is already apparent for many applications. What is needed is the ability to deal with physically distributed hardware while using logically centralized software. Amoeba allows the connection of large numbers of computers, on both local and wide-area networks, in a coherent way that is easy to use and understand. The basic idea behind Amoeba is to provide the users with the illusion of a single powerful timesharing system, when in fact the system is implemented on a collection of machines, potentially distributed across several countries. The chief design goals were to build a distributed system that would be small, simple to use, scalable to large numbers of processors, have a degree of fault-tolerance, have very high performance, including the possibility for parallelism, and above all be usable in a way that is transparent to the users. What is meant by transparent can best be illustrated by contrasting it with a network operating system, in which each machine retains its own identity. With a network operating system, each user logs into one specific machine: their home machine. When a program is started, it executes on the home machine, unless the user gives an explicit command to run it elsewhere. Similarly, files are local unless a remote file system is explicitly mounted or files are explicitly copied. In short, the user is clearly aware that multiple independent computers exist, and must deal with them explicitly. By contrast, in a transparent distributed system, users effectively log into the system as a whole, and not to any specific machine. When a program is run, the system, not the user, decides the best place to run it. The user is not even aware of this choice. Finally, there is a single, system-wide object naming service. The files in a single directory may be located on 2 Amoeba 5.3 different machines possibly in different countries. There is no concept of file transfer, uploading or downloading from servers, or mounting remote file systems. The fact that a file is remote is not visible at all. 2.3. The System Architecture The Amoeba architecture consists of four principal components, as shown in figure 2.1. First are the workstations, one per user, on which users can carry out editing and other tasks that require fast interactive response. The workstations are all diskless, and are primarily used as intelligent terminals that do window management, rather than as computers for running complex user programs. Currently Suns, IBM PC/AT clones and X terminals can be used as workstations. Processor Pool Workstations Specialized servers (file, data base, etc) WAN Gateway Fig. 2.1. The Amoeba architecture. Second are the pool processors: a group of CPUs that can be dynamically allocated as needed, used, and then returned to the pool. This makes it possible to take advantage of parallelism within a job. For example, the make command might need to do six compilations, so six processors could be selected from the pool to do the compilation. Many applications, such as heuristic search in AI applications (e.g., playing chess), use large numbers of pool processors to do their computing. The processor uploads/Litterature/ amoeba-guide.pdf

  • 86
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager