Masters Exam. Fall 2004 Department of Computer Science University of Arizona
|
|
- Crystal Fowler
- 5 years ago
- Views:
Transcription
1 Masters Exam Fall 2004 Department of Computer Science University of Arizona This exam consists of ten problems, from which you will do six questions. The questions are in three areas: Theory (CSc 520, 545, 573), Systems (CSc 552, 553, 576), and Applications (CSc 522, 525, 533, 560). Answer two questions from each area. If more than two questions are attempted in an area, the two highest scores are used. You have two hours for the exam. Books or notes are not permitted. At the end of the exam, submit only your solutions in the envelope provided; do not include scrap paper. Write your answers on the paper provided separately. Start the answer to each question on a new sheet of paper. On each page you hand in, write the problem number in the upper-left corner, and the last four digits of your social security number in the upper-right corner. Results will be posted using the four-digit numbers. Some problems may ask you to write an algorithm or a program. Unless directed otherwise, use informal pseudocode. You may use programmming constructs that help present your solution provided their meaning is clear and they do not make the problem trivial. For example, when describing code that iterates over the elements of a set S, you may use a construct such as for x S do statement s
2 Theory 1 CSc 520 (Programming Language Theory) The following questions concern scoping of identifiers. (a) (3 points) Compare and contrast static and dynamic scoping. Explain how identifier bindings are resolved at compile-time or run-time. (b) (3 points) Briefly, why has dynamic scoping fallen out of favor? Give two distinct reasons. (c) (4 points) Write a single short program that prints the word dynamic if the language implementation uses dynamic scoping, and prints the word static if the implementation uses static scoping. ( by Todd Proebsting.) (a) Static scoping resolves all references at compile-time using lexical scoping. No run-time properties are necessary to determine bindings. Dynamic scoping requires binding resolution of free variables that is dependent on the execution context. An instance of the same identifier could be bound to different variables depending on execution context (i.e. the calling procedure). (b) Dynamic scoping requires identifier binding at run-time, which is a costly operation. Dynamic scoping makes programs hard to reason about because the programmer must anticipate all possible calling contexts for a procedure s free variables. (c) One solution is the following: var x : integer := 1; procedure foo() if (x==0) then print "dynamic" else print "static"; procedure main() var x : integer := 0; call foo() 1
3 Theory 2 CSc 545 (Algorithms) Suppose you have a pile of nuts and bolts, and you want to find the pairs of nuts and bolts that match. Specifically, there are n nuts and n bolts, and each nut matches exactly one bolt. When comparing a nut to a bolt, if they don t match you learn which one is bigger than the other, but you cannot directly compare two nuts or two bolts. (a) (3 points) How fast can you match the nuts and bolts in the worst case? More precisely, what is the worst-case running time of your algorithm in terms of the number of nut-bolt comparisons? (b) (7 points) How fast can you match the nuts and bolts in the expected case? You may use randomization to speed up your algorithm from Part (a). ( by Stephen Kobourov.) (a) Here is a trivial Θ(n 2 ) time algorithm. Compare each nut to each bolt. Since there are n nuts and n bolts, this takes Θ(n 2 ) comparisons in the worst case. (b) We can do better. A simple modification of QuickSort shows there is a randomized algorithm whose expected number of comparisons (and running time) is O(n log n). Just pick a random bolt, compare it to all nuts, find its matching nut, and compare it to all bolts, splitting the problem into two subproblems, one consisting of the nuts and bolts smaller than the matched pair and one consisting of the larger ones. Repeating in this manner yields an algorithm whose expected running time is O(n log n). The analysis is similar to that for QuickSort. 2
4 Theory 3 CSc 573 (Theory of Computation) The following questions concern closure properties of languages. (a) (4 points) Let A be a regular language and B be some other language that we know nothing about. Suppose we find that A B is not regular. Which of the following can we say about B? (1) B is regular. (2) B is not regular. (3) B might or might not be regular. Justify your answer carefully. (b) (6 points) Prove or disprove the following: If languages A and B are both context-free, then their intersection A B is context-free. ( by Stephen Kobourov.) (a) Answer (2) is correct: B is not regular. To see this, suppose B was regular. Since the class of regular languages is closed under union, this implies A B is regular, which is a contradiction. (b) This is false. Both and A := B := { } a i b i c j : i, j 1 { } a i b j c j : i, j 1 are context-free, but their intersection is { } A B = a i b i c i : i 1, which can be shown to be non-context-free using the pumping lemma. 3
5 Systems 1 CSc 552 (Operating Systems) The following questions concern remote procedure calls. (a) (3 points) What is the difference between idempotent and non-idempotent operations? Give an example of each. (b) (4 points) What is the difference between at-least-once and at-most-once remoteprocedure-call semantics? Briefly describe how each might be implemented. (c) (3 points) Why is the distinction between idempotent and non-idempotent operations important with respect to the different remote-procedure-call semantics? ( by John Hartman.) (a) An idempotent operation is one that has the same effect no matter how many times it is performed. Examples are reading a block of a file, or setting an account balance to a particular value. A non-idempotent operation has the opposite quality: its effect depends on how many times it is performed. Examples are appending to a file, or adding to an account balance. (b) At-least-once semantics guarantee that a remote-procedure call (RPC) is performed by the server at least once, even in the face of server failures. This can be implemented by having the client retransmit the RPC request until a reply is received. Since the server may fail after performing the RPC but before sending the reply, it may redo the RPC when it reboots. At-most-once semantics guarantee that an RPC is performed at most once by the server, even in the face of server failures. This can be accomplished by maintaining an epoch number on the server that the clients must include in the RPC requests. The server increments the epoch number when it reboots and refuses to service RPCs from the previous epoch. Clients eventually time-out when a reply is not received. (c) At-least-once RPC semantics require idempotent operations since the RPC may be performed multiple times. At-most-once RPC semantics can use either semantics, although it is left up to the client as to how to proceed if an RPC fails. 4
6 Systems 2 CSc 553 (Compilers) Briefly describe in one or two sentences what each of the following terms means in compilation, and what it is used for: register allocation, instruction scheduling, peephole optimization, liveness analysis, and control flow graphs. (Register allocation) This refers to the process of determining which variables are kept in registers at any given point in a program, and which are kept in memory. It is used to improve the performance of the compiled code by keeping frequently accessed variables in registers. (Instruction scheduling) This refers to the process of determining an ordering for the instructions in a program that preserves program semantics, but which may be more efficient than the original instruction order for the program. It is used to hide the latencies of expensive operations where possible. (Peephole optimization) This is an optimization that uses a sliding window over the instruction sequences to look for specific patterns of instructions, and replace them with equivalent sequences that are shorter or faster. This is a simple and cheap approach to effecting local improvements in the code generated by the compiler. (Liveness analysis) Liveness analysis is used to determine which variables in the program are live at each point in the program, i.e. which may be used at a later program point prior to being redefined. Variable liveness information is used for a variety of optimizations, e.g. in register allocation to determine whether the value of a variable in a register can be overwritten by that of some other variable. (Control flow graphs) A control flow graph is a directed graph where each node is a basic block and where there is an edge from node A to node B if it is possible for control to leave A and go immediately to B. It is used as the basic internal low-level program representation for a wide variety of program analyses and optimizations. 5
7 Systems 3 CSc 576 (Architecture) The following questions concern instruction scheduling and memory caches. (a) (5 points) Scoreboarding and Tomasulo s algorithm are commonly-used algorithms for dynamic instruction-scheduling in processors that support out-of-order execution. Explain how these algorithms differ in handling WAW and WAR hazards. (b) (5 points) The average memory-access time is determined by three factors. List these factors, and for each, name a technique that reduces the cache-hit time by affecting that factor. (a) Through register renaming, Tomasulo s algorithm effectively eliminates these hazards. Each instruction is assigned a unique destination register to which it writes its result by the register renaming mechanism, thereby eliminating these hazards. In scoreboarding, the execution of an instruction is delayed until the hazards are resolved. (b) The factors are: (1) cache miss-rate, affected by using a victim cache, (2) cache hit-time, affected by using a virtually-indexed and physically-tagged cache, and (3) cache miss-penalty, affected by giving priorities to reads over writes. 6
8 Applications 1 CSc 522 (Parallel and Distributed Programming) The following questions concern three mechanisms for creating and terminating processes: co/oc (also called cobegin/coend), fork/join/quit, and static process declaration. (a) (5 points) Informally describe the semantics of each of the above mechanisms. (b) (5 points) Discuss the advantages and disadvantages of each. In particular, describe which of the mechanisms above can simulate the other mechanisms. (a) Their semantics are: co/oc: These primitives explicitly specify a sequence of program statements (or processes) that may be executed concurrently. fork/join/quit: If process p executes fork x, it creates a new process q that starts executing the instruction labeled x. Processes p and q can execute concurrently. The command join(t, y) has the following effect: t := t-1 if t = 0 goto y; else quit; The command quit causes the process to terminate. Static process declaration: With this mechanism, process types are declared in the definition of a process p. When p is activated, the processes declared within the definition of p are also activated. (b) Their advantages and disadvantages are: co/oc: This can describe any process flow graph that is a series-parallel graph, but nothing more general. fork/join/quit: These can describe arbitrary process flow graphs and can simulate the two other mechanisms. The disadvantage is they are very unstructured. Static process declaration: This allows explicitly designating code segments as separate processes. The disadvantage is there is no mechanism for joining processes. 7
9 Applications 2 CSc 525 (Networking) The Internet is built on an infrastructure that is prone to failures. Suppose we found a way to build an infrastructure that did not fail. In particular, network links that connect hosts and routers never drop packets, never have bit errors, and every packet transmitted over a link gets to its destination. Furthermore, routers that connect networks never fail: every packet that gets to a router gets sent over a link to another router along a path to its destination. (a) (5 points) Consider the IP layer. What are the main features that IP provides in the traditional Internet? Of these features, what features would still be present in the never-fail Internet? (b) (5 points) Consider the TCP layer. What are the main features that TCP provides in the traditional Internet? Of these features, what features would still be present in the never-fail Internet? In your answers to Parts (a) and (b), for each feature still present in the never-fail Internet, give a very brief explanation why that feature is needed. ( by Patrick Homer.) (a) IP in the traditional Internet provides: host-to-host communication, datagram delivery, packet formatting, fragmentation and reassembly, IP addressing (or naming of hosts), and packet routing. In the never-fail Internet, IP would still provide these, but some would change in service: host-to-host communication: same, datagram delivery: same, but all datagrams (packets) get through, packet formatting: same, fragmentation and reassembly: same, as it s still needed to accomodate various sizes of packets or frames accepted by the underlying network hardware, IP addressing: same, packet routing: same, as we still need to consider the best (fastest or leastcongested) path for a packet to follow. (b) TCP in the traditional Internet provides: application-to-application communication, 8
10 byte streams, flow control, reliable delivery, ordered delivery of data, and virtual circuits. In the never-fail Internet, TCP would still provide the following: application-to-application communication: still needed to multiplex connections, byte streams: still a useful abstraction on top of packets, flow control: still needed (a key point!) since congestion is still possible, reliable delivery: not needed, since the underlying network is reliable, ordered delivery: still needed, since packets can arrive out-of-order by taking different paths through the Internet, virtual circuits: can be argued either way. They can be useful to establish a route for data to follow. One can also argue they are not necessary since the underlying network will deliver every packet. (TCP uses virtual circuits in part to avoid the how-long-do-i-wait-for-an-answer problem that UDP has.) 9
11 Applications 3 CSc 533 (Graphics) The following questions concern projecting points onto a viewing plane. (a) (1 point) Sketch a right-hand coordinate system with a point at (x, y, z) and a camera plane at z = f. Now illustrate how a point (x, y, z) with z > f gets projected onto the camera plane to become point (x, y, z ). (b) (1 point) Determine an expression for (x, y, z ) from Part (a). The derivation need not be long, but full credit requires some indication of how you got your answer. (c) (2 points) Is there a 3-by-3 matrix which maps (x, y, z) to (x, y, z )? If yes, what is it? If no, why not? (d) (2 points) Is there a 4-by-4 matrix which maps a homogeneous coordinate representation for (x, y, z) to a homogeneous coordinate representation for (x, y, z )? If yes, what is it? If no, why not? (e) (1 point) Regardless of whether the matrices in Parts (c) and (d) exist, state two independent properties of a matrix A that maps points in a three-dimensional world onto a plane. (f) (2 points) Suppose the camera is now at an arbitrary location as specified by the center of its image plane, and is pointing in an arbitrary direction. You can assume you know a camera-centric right-hand coordinate system. The focal length is still f. Describe how to compute a single matrix that can be used to map points onto the camera plane. (A complete derivation is not needed, just an outline of how it can be done.) (g) (1 point) Suppose you have an implementation that speeds up your answer for Part (f) by a factor of five. In rough terms, what is the anticipated computational improvement of the overall graphics pipeline when rendering a complex scene? ( by Kobus Barnard.) (a) See the following figure. 10
12 (b) See the above figure. (c) There is no such matrix, because the mapping derived in Part (b) is not a linear transformation. We would need to be able to express (x, y, z ) as a linear combination of x, y, and z. (d) It can be done in homogeneous coordinates because we can use the fourth coordinate w, to encode the division. In particular, the 4-by-4 matrix with ones for the first three diagonal entries, 1/f for entry (4, 3), and zero everywhere else does the job. (e) Two independent properties are: (1) A 2 = A, and (2) det(a) = 0, or inv(a) does not exist. (f) We can tackle this problem by changing coordinate systems, making it so that the objects are now expressed in terms of the the coordinate system drawn in Part (a). We can then follow this by the matrix operation for Part (d) to get a single matrix. We can do the change of coordinates with a sequence of translations and rotations. We can change coordinates by a translation which takes the camera center to the origin, a rotation to align the two right-hand coordinate systems, and then a final translation to put the focal point at the center. Having found a sequence of matrix operations, which when followed by the matrix in Part (d) does the projection, we get a single matrix by multiplying them together in the right order (right to left if we list them in the order that they would apply to a point). (g) The impact is minimal because the computation of the above matrix is only done once, and the single matrix is then applied to potentially millions of objects. It already does not take much time relative to other parts of the application (if done by any remotely reasonable method), so speeding it up has almost no effect. 11
13 Applications 4 CSc 560 (Databases) One method for finding nearest neighbors in a multidimensional database, where Euclidean distance is used to measure the nearness of data objects, is the branch-and-bound algorithm with an R-tree index. The key feature of the branch-and-bound algorithm is that it takes advantage of the Minimum- Bounding-Region Face-Property to prune the search space. Explain what this property is, and how it helps reduce query-processing costs. ( by Bongki Moon.) The Minimum-Bounding-Region (MBR) Face-Property is that every face of an MBR must touch at least one object enclosed by the MBR. This property implies the following: Given any query point q and any set of data objects S, there exists an object x S such that dist(q, x) MinMaxDist(q, MBR(S)). If an object y is encountered during the tree search and dist(q, y) > MinMaxDist(q, M) for any MBR M that has already been encountered, then object y cannot be the nearest neighbor of q and can be discarded. This is because the MBR M contains at least one object closer to q than y by the above. 12
Graduate Examination. Department of Computer Science The University of Arizona Spring March 5, Instructions
Graduate Examination Department of Computer Science The University of Arizona Spring 2004 March 5, 2004 Instructions This examination consists of ten problems. The questions are in three areas: 1. Theory:
More informationHigh Performance Computer Architecture Prof. Ajit Pal Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur
High Performance Computer Architecture Prof. Ajit Pal Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 18 Dynamic Instruction Scheduling with Branch Prediction
More informationStructure of Computer Systems
288 between this new matrix and the initial collision matrix M A, because the original forbidden latencies for functional unit A still have to be considered in later initiations. Figure 5.37. State diagram
More informationCS454/654 Midterm Exam Fall 2004
CS454/654 Midterm Exam Fall 2004 (3 November 2004) Question 1: Distributed System Models (18 pts) (a) [4 pts] Explain two benefits of middleware to distributed system programmers, providing an example
More informationMidterm Exam Fundamentals of Computer Graphics (COMP 557) Thurs. Feb. 19, 2015 Professor Michael Langer
Midterm Exam Fundamentals of Computer Graphics (COMP 557) Thurs. Feb. 19, 2015 Professor Michael Langer The exam consists of 10 questions. There are 2 points per question for a total of 20 points. You
More informationReference Models. 7.3 A Comparison of the OSI and TCP/IP Reference Models
Reference Models Contains 7.1 The OSI Reference Model 7.1.1 The Physical Layer 7.1.2 The Data Link Layer 7.1.3 The Network Layer 7.1.4 The Transport Layer 7.1.5 The Session Layer 7.1.6 The Presentation
More informationEXAM 1 SOLUTIONS. Midterm Exam. ECE 741 Advanced Computer Architecture, Spring Instructor: Onur Mutlu
Midterm Exam ECE 741 Advanced Computer Architecture, Spring 2009 Instructor: Onur Mutlu TAs: Michael Papamichael, Theodoros Strigkos, Evangelos Vlachos February 25, 2009 EXAM 1 SOLUTIONS Problem Points
More informationMIDTERM EXAMINATION #2 OPERATING SYSTEM CONCEPTS U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E
MIDTERM EXAMINATION #2 OPERATING SYSTEM CONCEPTS 03-60-367-01 U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E Intersession 2008 Last Name: First Name: Student ID: PLEASE
More informationB.Sc. (Hons.) Computer Science with Network Security B.Eng. (Hons) Telecommunications B.Sc. (Hons) Business Information Systems
B.Sc. (Hons.) Computer Science with Network Security B.Eng. (Hons) Telecommunications B.Sc. (Hons) Business Information Systems Bridge BTEL/PT BCNS/14/FT BIS/14/FT BTEL/14/FT Examinations for 2014-2015
More informationToday CSCI Communication. Communication in Distributed Systems. Communication in Distributed Systems. Remote Procedure Calls (RPC)
Today CSCI 5105 Communication in Distributed Systems Overview Types Remote Procedure Calls (RPC) Instructor: Abhishek Chandra 2 Communication How do program modules/processes communicate on a single machine?
More informationNetworks and distributed computing
Networks and distributed computing Hardware reality lots of different manufacturers of NICs network card has a fixed MAC address, e.g. 00:01:03:1C:8A:2E send packet to MAC address (max size 1500 bytes)
More informationCPSC 313, 04w Term 2 Midterm Exam 2 Solutions
1. (10 marks) Short answers. CPSC 313, 04w Term 2 Midterm Exam 2 Solutions Date: March 11, 2005; Instructor: Mike Feeley 1a. Give an example of one important CISC feature that is normally not part of a
More informationEXAM ELEMENTARY MATH FOR GMT: ALGORITHM ANALYSIS NOVEMBER 7, 2013, 13:15-16:15, RUPPERT D
SOLUTIONS EXAM ELEMENTARY MATH FOR GMT: ALGORITHM ANALYSIS NOVEMBER 7, 2013, 13:15-16:15, RUPPERT D This exam consists of 6 questions, worth 10 points in total, and a bonus question for 1 more point. Using
More information2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into
2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into the viewport of the current application window. A pixel
More informationMODELS OF DISTRIBUTED SYSTEMS
Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between
More informationCMPE150 Midterm Solutions
CMPE150 Midterm Solutions Question 1 Packet switching and circuit switching: (a) Is the Internet a packet switching or circuit switching network? Justify your answer. The Internet is a packet switching
More informationPLEASE READ CAREFULLY BEFORE YOU START
Page 1 of 20 MIDTERM EXAMINATION #1 - B COMPUTER NETWORKS : 03-60-367-01 U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E Fall 2008-75 minutes This examination document
More informationPLEASE READ CAREFULLY BEFORE YOU START
Page 1 of 20 MIDTERM EXAMINATION #1 - A COMPUTER NETWORKS : 03-60-367-01 U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E Fall 2008-75 minutes This examination document
More informationFinal Exam Solutions May 11, 2012 CS162 Operating Systems
University of California, Berkeley College of Engineering Computer Science Division EECS Spring 2012 Anthony D. Joseph and Ion Stoica Final Exam May 11, 2012 CS162 Operating Systems Your Name: SID AND
More informationData and Computer Communications. Protocols and Architecture
Data and Computer Communications Protocols and Architecture Characteristics Direct or indirect Monolithic or structured Symmetric or asymmetric Standard or nonstandard Means of Communication Direct or
More informationECE 3055: Final Exam
ECE 3055: Final Exam Instructions: You have 2 hours and 50 minutes to complete this quiz. The quiz is closed book and closed notes, except for one 8.5 x 11 sheet. No calculators are allowed. Multiple Choice
More informationRemote Procedure Call. Tom Anderson
Remote Procedure Call Tom Anderson Why Are Distributed Systems Hard? Asynchrony Different nodes run at different speeds Messages can be unpredictably, arbitrarily delayed Failures (partial and ambiguous)
More information11. a b c d e. 12. a b c d e. 13. a b c d e. 14. a b c d e. 15. a b c d e
CS-3160 Concepts of Programming Languages Spring 2015 EXAM #1 (Chapters 1-6) Name: SCORES MC: /75 PROB #1: /15 PROB #2: /10 TOTAL: /100 Multiple Choice Responses Each multiple choice question in the separate
More informationStream Control Transmission Protocol
Chapter 13 Stream Control Transmission Protocol Objectives Upon completion you will be able to: Be able to name and understand the services offered by SCTP Understand SCTP s flow and error control and
More informationContinuous Real Time Data Transfer with UDP/IP
Continuous Real Time Data Transfer with UDP/IP 1 Emil Farkas and 2 Iuliu Szekely 1 Wiener Strasse 27 Leopoldsdorf I. M., A-2285, Austria, farkas_emil@yahoo.com 2 Transilvania University of Brasov, Eroilor
More informationUNIT I (Two Marks Questions & Answers)
UNIT I (Two Marks Questions & Answers) Discuss the different ways how instruction set architecture can be classified? Stack Architecture,Accumulator Architecture, Register-Memory Architecture,Register-
More informationNAME: Problem Points Score. 7 (bonus) 15. Total
Midterm Exam ECE 741 Advanced Computer Architecture, Spring 2009 Instructor: Onur Mutlu TAs: Michael Papamichael, Theodoros Strigkos, Evangelos Vlachos February 25, 2009 NAME: Problem Points Score 1 40
More informationDa t e: August 2 0 th a t 9: :00 SOLUTIONS
Interne t working, Examina tion 2G1 3 0 5 Da t e: August 2 0 th 2 0 0 3 a t 9: 0 0 1 3:00 SOLUTIONS 1. General (5p) a) Place each of the following protocols in the correct TCP/IP layer (Application, Transport,
More informationYour Name: Your student ID number:
CSC 573 / ECE 573 Internet Protocols October 11, 2005 MID-TERM EXAM Your Name: Your student ID number: Instructions Allowed o A single 8 ½ x11 (front and back) study sheet, containing any info you wish
More informationECE 461 Internetworking Fall Quiz 1
ECE 461 Internetworking Fall 2013 Quiz 1 Instructions (read carefully): The time for this quiz is 50 minutes. This is a closed book and closed notes in-class exam. Non-programmable (Type 2) calculators
More informationHomework 1 Solutions:
Homework 1 Solutions: If we expand the square in the statistic, we get three terms that have to be summed for each i: (ExpectedFrequency[i]), (2ObservedFrequency[i]) and (ObservedFrequency[i])2 / Expected
More informationCOMPUTER SCIENCE TRIPOS
CST.2000.6.1 COMPUTER SCIENCE TRIPOS Part IB Thursday 8 June 2000 1.30 to 4.30 Paper 6 Answer five questions. No more than two questions from any one section are to be answered. Submit the answers in five
More informationConcurrent & Distributed Systems Supervision Exercises
Concurrent & Distributed Systems Supervision Exercises Stephen Kell Stephen.Kell@cl.cam.ac.uk November 9, 2009 These exercises are intended to cover all the main points of understanding in the lecture
More informationNetworks and distributed computing
Networks and distributed computing Abstractions provided for networks network card has fixed MAC address -> deliver message to computer on LAN -> machine-to-machine communication -> unordered messages
More informationCS152 Exam #2 Fall Professor Dave Patterson
CS152 Exam #2 Fall 2003 Professor Dave Patterson Question 1: Potpourri (Jack and Dave s Question) Part A: TLBs entries have valid bits and dirty bits. Data caches have them also. Which of the following
More informationComputer Networks - Midterm
Computer Networks - Midterm October 28, 2016 Duration: 2h15m This is a closed-book exam Please write your answers on these sheets in a readable way, in English or in French You can use extra sheets if
More informationJAMES F. KUROSE AND KEITH W. ROSS
JAMES F. KUROSE AND KEITH W. ROSS What is the internet? There is no one definition. Two ways to try to describe it: Nuts and bolts i.e. the basic hardware and software components A networking infrastructure
More informationQuestion Score Points Out Of 25
University of Texas at Austin 6 May 2005 Department of Computer Science Theory in Programming Practice, Spring 2005 Test #3 Instructions. This is a 50-minute test. No electronic devices (including calculators)
More informationNetwork Protocols - Revision
Network Protocols - Revision Luke Anderson luke@lukeanderson.com.au 18 th May 2018 University Of Sydney Overview 1. The Layers 1.1 OSI Model 1.2 Layer 1: Physical 1.3 Layer 2: Data Link MAC Addresses 1.4
More informationCS513/EE506/CS4514 Intro to Local and Wide Area Networks WPI, Summer 2006
CS513/EE506/CS4514 Intro to Local and Wide Area Networks WPI, Summer 006 Craig E. Wills Final Exam (100 pts) Given: Wednesday, July 19, 006 NAME: This is a closed book (and notes) examination. Answer all
More informationKing Fahd University of Petroleum and Minerals College of Computer Sciences and Engineering Department of Computer Engineering
Student Name: Section #: King Fahd University of Petroleum and Minerals College of Computer Sciences and Engineering Department of Computer Engineering COE 344 Computer Networks (T072) Final Exam Date
More informationAdvanced Data Types and New Applications
C H A P T E R25 Advanced Data Types and New Applications Practice Exercises 25.1 What are the two types of time, and how are they different? Why does it make sense to have both types of time associated
More informationPRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILERS
Objective PRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILERS Explain what is meant by compiler. Explain how the compiler works. Describe various analysis of the source program. Describe the
More informationCOMP-520 GoLite Tutorial
COMP-520 GoLite Tutorial Alexander Krolik Sable Lab McGill University Winter 2019 Plan Target languages Language constructs, emphasis on special cases General execution semantics Declarations Types Statements
More informationHomework 2. Sample Solution. Due Date: Thursday, May 31, 11:59 pm
Homework Sample Solution Due Date: Thursday, May 31, 11:59 pm Directions: Your solutions should be typed and submitted as a single pdf on Gradescope by the due date. L A TEX is preferred but not required.
More informationET4254 Communications and Networking 1
Topic 9 Internet Protocols Aims:- basic protocol functions internetworking principles connectionless internetworking IP IPv6 IPSec 1 Protocol Functions have a small set of functions that form basis of
More informationDr. Amotz Bar-Noy s Compendium of Algorithms Problems. Problems, Hints, and Solutions
Dr. Amotz Bar-Noy s Compendium of Algorithms Problems Problems, Hints, and Solutions Chapter 1 Searching and Sorting Problems 1 1.1 Array with One Missing 1.1.1 Problem Let A = A[1],..., A[n] be an array
More informationCS6303 Computer Architecture Regulation 2013 BE-Computer Science and Engineering III semester 2 MARKS
CS6303 Computer Architecture Regulation 2013 BE-Computer Science and Engineering III semester 2 MARKS UNIT-I OVERVIEW & INSTRUCTIONS 1. What are the eight great ideas in computer architecture? The eight
More informationLexical Considerations
Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.035, Fall 2005 Handout 6 Decaf Language Wednesday, September 7 The project for the course is to write a
More informationMODELS OF DISTRIBUTED SYSTEMS
Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between
More informationCS 381 Computer Graphics, Fall 2012 Midterm Exam Solutions. The Midterm Exam was given in class on Tuesday, October 16, 2012.
CS 381 Computer Graphics, Fall 2012 Midterm Exam Solutions The Midterm Exam was given in class on Tuesday, October 16, 2012. 1. [7 pts] Synthetic-Camera Model. Describe the Synthetic-Camera Model : how
More informationRichard Feynman, Lectures on Computation
Chapter 8 Sorting and Sequencing If you keep proving stuff that others have done, getting confidence, increasing the complexities of your solutions for the fun of it then one day you ll turn around and
More informationWrite only as much as necessary. Be brief!
1 CIS371 Computer Organization and Design Midterm Exam Prof. Martin Thursday, March 15th, 2012 This exam is an individual-work exam. Write your answers on these pages. Additional pages may be attached
More informationCS Computer Architecture
CS 35101 Computer Architecture Section 600 Dr. Angela Guercio Fall 2010 An Example Implementation In principle, we could describe the control store in binary, 36 bits per word. We will use a simple symbolic
More informationCS 2506 Computer Organization II Test 2. Do not start the test until instructed to do so! printed
Instructions: Print your name in the space provided below. This examination is closed book and closed notes, aside from the permitted fact sheet, with a restriction: 1) one 8.5x11 sheet, both sides, handwritten
More informationQuestion Score 1 / 19 2 / 19 3 / 16 4 / 29 5 / 17 Total / 100
NAME: Login name: Computer Science 461 Midterm Exam March 10, 2010 3:00-4:20pm This test has five (5) questions. Put your name on every page, and write out and sign the Honor Code pledge before turning
More informationComputer Science 425 Distributed Systems CS 425 / ECE 428. Fall 2013
Computer Science 425 Distributed Systems CS 425 / ECE 428 Fall 2013 Indranil Gupta (Indy) October 10, 2013 Lecture 14 Networking Reading: Chapter 3 (relevant parts) 2013, I. Gupta, K. Nahrtstedt, S. Mitra,
More informationCSCI4211: Introduction to Computer Networks Fall 2017 Homework Assignment 2
CSCI411: Introduction to Computer Networks Fall 017 Homework Assignment Due 11:59pm Friday November 17 Instructions: 1. Please submit your homework using the on-line electronic submission system (via Moodle)
More informationDEPLOYMENT GUIDE Version 1.1. DNS Traffic Management using the BIG-IP Local Traffic Manager
DEPLOYMENT GUIDE Version 1.1 DNS Traffic Management using the BIG-IP Local Traffic Manager Table of Contents Table of Contents Introducing DNS server traffic management with the BIG-IP LTM Prerequisites
More informationCS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007
CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007 Question 344 Points 444 Points Score 1 10 10 2 10 10 3 20 20 4 20 10 5 20 20 6 20 10 7-20 Total: 100 100 Instructions: 1. Question
More informationCS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP
CS 5520/ECE 5590NA: Network Architecture I Spring 2008 Lecture 13: UDP and TCP Most recent lectures discussed mechanisms to make better use of the IP address space, Internet control messages, and layering
More informationProject and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi
Project and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi Lecture - 8 Consistency and Redundancy in Project networks In today s lecture
More informationGoals for Today s Class. EE 122: Networks & Protocols. What Global (non-digital) Communication Network Do You Use Every Day?
Goals for Today s Class EE 122: & Protocols Ion Stoica TAs: Junda Liu, DK Moon, David Zats http://inst.eecs.berkeley.edu/~ee122/fa09 (Materials with thanks to Vern Paxson, Jennifer Rexford, and colleagues
More informationEECS 470 Midterm Exam Winter 2008 answers
EECS 470 Midterm Exam Winter 2008 answers Name: KEY unique name: KEY Sign the honor code: I have neither given nor received aid on this exam nor observed anyone else doing so. Scores: #Page Points 2 /10
More informationEXTENDING THE PRIORITY CEILING PROTOCOL USING READ/WRITE AFFECTED SETS MICHAEL A. SQUADRITO A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE
EXTENDING THE PRIORITY CEILING PROTOCOL USING READ/WRITE AFFECTED SETS BY MICHAEL A. SQUADRITO A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER
More informationCOMPUTER SCIENCE TRIPOS
CST.2001.1.1 COMPUTER SCIENCE TRIPOS Part IA Monday 4 June 2001 1.30 to 4.30 Paper 1 Answer two questions from Section A, and one question from each of Sections B, C, D and E. Submit the answers in six
More informationPLEASE READ CAREFULLY BEFORE YOU START
MIDTERM EXAMINATION #2 NETWORKING CONCEPTS 03-60-367-01 U N I V E R S I T Y O F W I N D S O R - S c h o o l o f C o m p u t e r S c i e n c e Fall 2011 Question Paper NOTE: Students may take this question
More informationTechnische Universität München Zentrum Mathematik
Technische Universität München Zentrum Mathematik Prof. Dr. Dr. Jürgen Richter-Gebert, Bernhard Werner Projective Geometry SS 208 https://www-m0.ma.tum.de/bin/view/lehre/ss8/pgss8/webhome Solutions for
More informationMidterm II December 4 th, 2006 CS162: Operating Systems and Systems Programming
Fall 2006 University of California, Berkeley College of Engineering Computer Science Division EECS John Kubiatowicz Midterm II December 4 th, 2006 CS162: Operating Systems and Systems Programming Your
More informationChapter 6 Memory 11/3/2015. Chapter 6 Objectives. 6.2 Types of Memory. 6.1 Introduction
Chapter 6 Objectives Chapter 6 Memory Master the concepts of hierarchical memory organization. Understand how each level of memory contributes to system performance, and how the performance is measured.
More informationIntroduction to Visual Basic and Visual C++ Arithmetic Expression. Arithmetic Expression. Using Arithmetic Expression. Lesson 4.
Introduction to Visual Basic and Visual C++ Arithmetic Expression Lesson 4 Calculation I154-1-A A @ Peter Lo 2010 1 I154-1-A A @ Peter Lo 2010 2 Arithmetic Expression Using Arithmetic Expression Calculations
More informationUNIT 2 TRANSPORT LAYER
Network, Transport and Application UNIT 2 TRANSPORT LAYER Structure Page No. 2.0 Introduction 34 2.1 Objective 34 2.2 Addressing 35 2.3 Reliable delivery 35 2.4 Flow control 38 2.5 Connection Management
More informationSoftware Development Techniques. 26 November Marking Scheme
Software Development Techniques 26 November 2015 Marking Scheme This marking scheme has been prepared as a guide only to markers. This is not a set of model answers, or the exclusive answers to the questions,
More informationCSc 520 final exam Wednesday 13 December 2000 TIME = 2 hours
NAME s GRADE Prob 1 2 3 4 5 I II III Σ Max 12 12 12 12 12 26 26 26 100(+... ) Score CSc 520 exam Wednesday 13 December 2000 TIME = 2 hours Write all answers ON THIS EXAMINATION, and submit it IN THE ENVELOPE
More informationFINAL Wednesday, 30 th July 2008
Data Communication & Networks Summer 2008 Semester FINAL Wednesday, 30 th July 2008 Total Time: 120 Minutes Total Marks: 80 Roll Number Name Section Signature: Signature of Invigilator Course Instructors:
More informationCOMP/ELEC 429/556 Introduction to Computer Networks
COMP/ELEC 429/556 Introduction to Computer Networks Let s Build a Scalable Global Network - IP Some slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang T. S. Eugene
More informationCSCD 330 Network Programming
CSCD 330 Network Programming Lecture 9 Transport Layer Winter 2019 Reading: Begin Chapter 3 Some Material in these slides from J.F Kurose and K.W. Ross All material copyright 1996-2007 1 Outline Overview
More informationLexical Considerations
Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.035, Spring 2010 Handout Decaf Language Tuesday, Feb 2 The project for the course is to write a compiler
More informationCS 3360 Design and Implementation of Programming Languages. Exam 1
1 Spring 2017 (Thursday, March 9) Name: CS 3360 Design and Implementation of Programming Languages Exam 1 This test has 8 questions and pages numbered 1 through 7. Reminders This test is closed-notes and
More informationCS455: Introduction to Distributed Systems [Spring 2018] Dept. Of Computer Science, Colorado State University
CS 455: INTRODUCTION TO DISTRIBUTED SYSTEMS [NETWORKING] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey Why not spawn processes
More informationDistributed Systems Fall 2009 Final
15-440 Distributed Systems Fall 2009 Final Name: Andrew: ID November 29, 2010 Please write your name and Andrew ID above before starting this exam. This exam has 10 pages, including this title page. Please
More informationChapter 6. What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control
Chapter 6 What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control OSI Model Hybrid Model Software outside the operating system Software inside
More informationTCP/IP-2. Transmission control protocol:
TCP/IP-2 Transmission control protocol: TCP and IP are the workhorses in the Internet. In this section we first discuss how TCP provides reliable, connectionoriented stream service over IP. To do so, TCP
More informationShadows in the graphics pipeline
Shadows in the graphics pipeline Steve Marschner Cornell University CS 569 Spring 2008, 19 February There are a number of visual cues that help let the viewer know about the 3D relationships between objects
More informationCS433 Final Exam. Prof Josep Torrellas. December 12, Time: 2 hours
CS433 Final Exam Prof Josep Torrellas December 12, 2006 Time: 2 hours Name: Instructions: 1. This is a closed-book, closed-notes examination. 2. The Exam has 6 Questions. Please budget your time. 3. Calculators
More informationGame Mathematics. (12 Week Lesson Plan)
Game Mathematics (12 Week Lesson Plan) Lesson 1: Set Theory Textbook: Chapter One (pgs. 1 15) We begin the course by introducing the student to a new vocabulary and set of rules that will be foundational
More informationCSCI 466 Midterm Networks Fall 2013
CSCI 466 Midterm Networks Fall 2013 Name: This exam consists of 6 problems on the following 7 pages. You may use your single-sided hand-written 8 ½ x 11 note sheet and a calculator during the exam. No
More informationCSC258: Computer Organization. Memory Systems
CSC258: Computer Organization Memory Systems 1 Summer Independent Studies I m looking for a few students who will be working on campus this summer. In addition to the paid positions posted earlier, I have
More informationMULTIPROCESSORS. Characteristics of Multiprocessors. Interconnection Structures. Interprocessor Arbitration
MULTIPROCESSORS Characteristics of Multiprocessors Interconnection Structures Interprocessor Arbitration Interprocessor Communication and Synchronization Cache Coherence 2 Characteristics of Multiprocessors
More informationMidterm solutions. n f 3 (n) = 3
Introduction to Computer Science 1, SE361 DGIST April 20, 2016 Professors Min-Soo Kim and Taesup Moon Midterm solutions Midterm solutions The midterm is a 1.5 hour exam (4:30pm 6:00pm). This is a closed
More informationDistributed Systems Exam 1 Review. Paul Krzyzanowski. Rutgers University. Fall 2016
Distributed Systems 2016 Exam 1 Review Paul Krzyzanowski Rutgers University Fall 2016 Question 1 Why does it not make sense to use TCP (Transmission Control Protocol) for the Network Time Protocol (NTP)?
More informationNotes on Bloom filters
Computer Science B63 Winter 2017 Scarborough Campus University of Toronto Notes on Bloom filters Vassos Hadzilacos A Bloom filter is an approximate or probabilistic dictionary. Let S be a dynamic set of
More informationECSE-6600: Internet Protocols Spring 2007, Exam 1 SOLUTIONS
ECSE-6600: Internet Protocols Spring 2007, Exam 1 SOLUTIONS Time: 75 min (strictly enforced) Points: 50 YOUR NAME (1 pt): Be brief, but DO NOT omit necessary detail {Note: Simply copying text directly
More informationECSE 414 Fall 2014 Final Exam Solutions
ECSE 414 Fall 2014 Final Exam Solutions Question 1 a. The five main layers of the internet protocol stack, along with the service provided by each, and the place where each is implemented are as follows:
More informationHardware-based Speculation
Hardware-based Speculation Hardware-based Speculation To exploit instruction-level parallelism, maintaining control dependences becomes an increasing burden. For a processor executing multiple instructions
More informationInternetworking With TCP/IP
Internetworking With TCP/IP Vol II: Design, Implementation, and Internals SECOND EDITION DOUGLAS E. COMER and DAVID L. STEVENS Department of Computer Sciences Purdue University West Lafayette, IN 47907
More informationEECS 122: Introduction to Communication Networks Final Exam Solutions
EECS 22: Introduction to Communication Networks Final Exam Solutions Problem. (6 points) How long does it take for a 3000-byte IP packet to go from host A to host B in the figure below. Assume the overhead
More informationSolutions to Problem Set 1
CSCI-GA.3520-001 Honors Analysis of Algorithms Solutions to Problem Set 1 Problem 1 An O(n) algorithm that finds the kth integer in an array a = (a 1,..., a n ) of n distinct integers. Basic Idea Using
More informationFramework for Design of Dynamic Programming Algorithms
CSE 441T/541T Advanced Algorithms September 22, 2010 Framework for Design of Dynamic Programming Algorithms Dynamic programming algorithms for combinatorial optimization generalize the strategy we studied
More informationEntrance exam - Informatics
Entrance exam - Informatics Name and Surname fill in the field Application No. Test Sheet No. 15 Algorithms and data structures 1 Which of the listed data structures is most suitable (w.r.t. time and memory
More information