Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 392 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
392
Dung lượng
6,47 MB
Nội dung
[...]... implementation to Windows; Hiu Ning (Angela) Chan, Esteban Pauli, Nija Shi†, and Erik Staab helped apply the finishing touches Hiu Ning (Angela) Chan and Erik Staab added quantifiers to the input statement Hiu Ning (Angela) Chan added parameterized virtual machines as part of her undergraduate honors thesis work xxvi Steven Chau, Andre Nash, and Esteban Pauli did the initial work on adding theconcurrent invocation... products in parallel The following program first reads inthe source matrices, then computes the matrix product, and finally prints the result matrix (The code omits the details of reading in the matrices as that code just uses standard Java features.) The main method reads in the arrays, instantiates a MMMultiplier object to do the actual computation, and then invokes the print method in that object 1.3... RPC, and rendezvous JR itself directly contains the mechanisms other than CCRs, monitors, and CSP Online Resources TheJR webpage is http://www.cs.ucdavis.edu/~olsson/research /jr TheJR implementation is in the public domain and is available from theJR webpage TheJR implementation executes on UNIX-based systems (Linux, Mac OS X, and Solaris) and Windows-based systems JR code is translated to native Java. .. hardware architectures and software applications JR is an extension of theJavaprogramming lan- 2 Introduction guage [28] with additional concurrency mechanisms based on those in the SR (Synchronizing Resources) programminglanguage [6, 9] Java has proven to be a clean and simple (and popular) language for objectoriented programming Even so, the standard Java concurrency model is rather limited It provides... universities These courses cover topics such as programming languages, operating systems, concurrent programming, parallel processing, and distributed systems This text can serve as a stand-alone introduction to one particular concurrentprogramminglanguage or as a supplement to a more general concurrentprogramming course For example, the text can be used to teach a section on concurrentprogrammingin an. .. simulation, and many others JR supports many “features” useful for concurrentprogramming However, our goals have always been keeping thelanguage simple and easy to learn and use We have achieved these goals by integrating common notions, both sequential and concurrent, into a few powerful mechanisms We have implemented these mechanisms as part of a complete language to determine their feasibility and cost,... Esteban Pauli, as part of his undergraduate honors thesis work, and Hiu Ning (Angela) Chan are continuing that work and are nearing completion of a working prototype Erik Staab is looking into ways to improve JR s performance (both compile time and run-time) and at porting JR to use Java 1.5 Alex Wen and Ingwar Wirjawan are adding a timeout arm to the input statement We appreciate the feedback and patience... of JR and theJR book in ECS 140B and ECS 244 classes over the last few years The System Support Group of the UC Davis Department of Computer Science, especially Babak Moghadam, did a great job in keeping our systems up and up-to-date! We thank Sun Microsystems, Inc for making public the source code for their Java translator and virtual machine JR s translator is built using Sun’s Java translator The. .. few bugs in the programs (a common source of annoyance inprogramminglanguage books) Content Overview This book contains 21 chapters The first chapter gives an overview of JR and includes a few sample programs The remaining chapters are organized into two parts: extensions for concurrency and applications In addition, the appendices contain language reference material, describe how to develop and execute... equations, the traveling salesman problem, a distributed file system, and discrete event simulation These illustrate the use of JR for distributed programming using message passing and parallel programming using shared variables JR is implemented on top of Java, so, in principle, it can run on any platform that supports Java, including networks of workstations and shared-memory multiprocessors JR programs can . THE JR PROGRAMMING LANGUAGE Concurrent Programming in an Extended Java THE KLUWER INTERNATIONAL SERIES IN ENGINEERING AND COMPUTER SCIENCE THE JR PROGRAMMING LANGUAGE Concurrent Programming in. semaphore s an d messag e passin g Time in microseconds to invoke an empty JR ProcOp and an empty Java method in a local object Time in milliseconds to invoke an empty JR ProcOp and an empty RMI. extension of the Java programming language with ad- ditional concurrency mechanisms based on those in the SR (Synchronizing Resources) programming language. It is suitable for writing programs