Graduate Examination. Department of Computer Science The University of Arizona Spring March 5, Instructions

Size: px
Start display at page:

Download "Graduate Examination. Department of Computer Science The University of Arizona Spring March 5, Instructions"

Transcription

1 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: CSc 545, 573, and 520; 2. Systems: CSc 552, 553, and 576; and 3. Applications: CSc 560, 525, 522, and 533. You are to answer any two questions from each area (i.e., a total of six questions). If more than two questions are attempted in any area, the two highest scores will be used. You have two hours to complete the examination. Books or notes are not permitted during the exam. Please write your answers directly on this exam. Use the flip side of the page if you need additional space. Keep your answers brief and to the point. The last 4 digits of your CSID number will be used as identification. You must write the CSID number on the cover page of the exam. Without the CSID number, your exam will not be graded. Results will be posted using these four-digit numbers. Some problems will ask you to write an algorithm or a program. Unless directed otherwise, use an informal pseudo-code. That is, use a language with syntax and semantics similar to that of C or Pascal. You may invent informal constructs to help you present your solutions, provided that the meaning of such constructs is clear and they do not make the problem trivial. For example, when describing code that iterates over the elements of a set, you might find it helpful to use a construct such as for c S do Stmt where S is a set. SOLUTIONS

2 SOLUTIONS (Spring 2004) 1 1 Theory 1 (CSc 520: Principles of Programming Languages) Consider a Pascal-like language where we wish to introduce the notion of persistence to the semantics of local data declarations in procedure calls. In each scope, the programmer has the option of prefacing a data declaration with the term persistent, e.g., procedure Tucson(X : integer); var a, b : integer; begin persistent c, d : real; In the above example, local variables a and b are treated as usual. Persistent variables c and d are treated exactly as local variables within the scope of Tucson. However, the initial values of these variables at each subsequent call must be exactly the same as were the values of the variables of those names when control most recently returned from Tucson. Recursive calls also obey this rule. Describe a run-time organization that will correctly implement the above persistent data mechanism. Start from the assumption that static chain pointers are used to handle scoping details. Your scheme must answer the following questions: 1. How is the correct binding between a variable name and its location in memory determined at run-time? 2. What additional actions must occur at each procedure or function invocation? 3. What additional actions must occur at each procedure or function exit? 1. This is similar to a value-result parameter mechanism. Data need to be copied on entry to the procedure and copied back on exit. Each lexical occurrence of a persistent object gets a unique location in the persistent data structure. This is then a fixed address that can be built into the generated code. Local access to each object will be in the local activation record, but this global structure will be for carrying information between invocations. 2. Copy the current value from the persistent data structure to local storage. 3. Copy the current value back to the persistent data structure.

3 SOLUTIONS (Spring 2004) 2 2 Theory 2 (CSc 545: Design and Analysis of Algorithms) Given two sequences S and S, each consisting of n letters of some alphabet Σ. For example, assume that Σ = {a... z}, and S = (aabcdacbacdfghello) and S = (dqrworldxxx). The edit distance, d(s, S ) (as you have studied in class) is defined as the minimal number of deletions, insertions and substitutions needed to perform on S so it would be identical to S. You have studied an algorithm whose running time is O(n 2 ) for finding d(s, S ). You do not need to describe the algorithm in detail, just state which modifications to the original algorithm are required. The input for the problem is two sequences S and S, and a positive integer parameter k. The problem is to find an algorithm whose running time is O(nk), and determines if d(s, S ) k. Note that the algorithm does not need to find the exact distance d(s, S ). Hint consider the n n table used by the dynamic programming algorithm for finding d(s 1, S 2 ), which was described in class. Show for determining if d(s, S ) k, only O(k) cells need to be computed for each row of the table. Use this fact to obtain a faster algorithm. Consider first the case k = 1. Let T be the two-dimensional n n table used by the dynamic programming algorithm for finding d(s 1, S 2 ). The cell T [i, j] contains d(s i, S j ) where S i is the prefix of the first i letters of S, and S j is the prefix of first j letters of S. Clearly if at some stage of the algorithm we find that T [i, j] > k, and (j > i), then clearly T [i, j ] > k, for any j > j. A symmetric claim holds also if j < i. Hence these cells need not be computed. In other words, only the cells which are either on the diagonal of T, or of distance k cells from the diagonal, need to be computed. Thus for a fixed i, only the cells T [i, j] for i j k need to be computed, before we can compute the cells T [i + 1, j] (for i + 1 j k). There are only O(n(1 + 2k)) = O(nk) such cells, and their computation requires O(1) time per each cell.

4 SOLUTIONS (Spring 2004) 3 3 Theory 3 (CSc 573: Theory of Computation) Let G be a graph with weights associated with its edges. You should find for each of the following problems whether this problem is NP-hard. If it is NP-hard, you should briefly describe a reduction. If it is not, you should present a polynomial-time algorithm. The cost of a path in G is defined to be the sum of weights of its edges. The length of a path is the number of edges along the path. A simple path is a path along which each vertex occurs no more than once. Let n = V. For each of the following problems specify if the problem is in P, if the problem is in NP, and if it is NP-complete. The 17-path problem. Here the input to the problem is G(V, E) and a parameter M, and the problem is to find a simple path of length 17 in G whose cost is at most M. The k-path problem. Here the input to the problem is G, and an integer k n/2. Here the input to the problem is G(V, E), and the problem is to find a simple path of length k in G whose cost is at most M. The k-path problem-revised. This is the same problem, but this time k is no larger than n/2. The first problem can be solved in polynomial time, by checking all subsequences of 17 vertices, and decide for each of them if it forms a simple path. The second problem is not easier than the problem of Hamiltonian path in a graph (can be seen by setting k = n). Finally the third problem is not easier, as can be seen by adding n vertices with no edge connecting them. Of course, all problems are in NP.

5 SOLUTIONS (Spring 2004) 4 4 Systems 1 (CSc 552: Advanced Operating Systems) Threads can be implemented entirely at the user level without kernel involvement (user-level threads) or in the kernel (kernellevel threads). These methods of implementation differ in how blocking I/O operations affect the running application. 1. Outline how a blocking I/O operation affects an application using several user-level threads. 2. Outline how a blocking I/O operation affects an application using several kernel-level threads. 3. Scheduler activations is a thread implementation strategy that can combine the good properties of user-level and kernellevel threads. Outline how a blocking I/O operation would be handled in an application using a thread package based on scheduler activations. 1. As the kernel is not aware of there being several user-level threads, the entire application will be blocked by the I/O operation. None of the user-level threads will run until the I/O operation completes. 2. Here the kernel is aware of the several threads, and only the one actually performing the I/O operation will be blocked. Other threads can be scheduled by the kernel when blocking occurs. 3. With scheduler activations, there is a thread runtime system at the user level, which the kernel informs about events such as start and completion of I/O operations. The user-level runtime system is responsible for scheduling threads onto a number of virtual processors provided by the kernel. When a blocking I/O operation is started by a thread, the kernel informs the thread runtime system, which marks the blocked thread as being blocked and schedules another user-level thread onto that virtual processor. When the I/O operation is completed at some later point in time, the kernel informs the user-level runtime system about this event. The user-level runtime system will then unblock the thread, place it on the ready-queue so it can be scheduled to run, and might preempt another thread so the newly unblocked thread can be run immediately.

6 SOLUTIONS (Spring 2004) 5 5 Systems 2 (CSc 553: Principles of Compilation) (a) Draw the dominator tree for the control flow graph shown below: (b) [ 6 4 = 24 points ] Suppose we know that, in some given flow graph, vertex A dominates vertex B, and C is some other vertex in the graph. For each of the following situations, write down what we can say about the domination relationship between vertices A and C. Briefly justify your answer (a line or two of text, or a simple picture, will suffice). (i) C is an immediate successor of B. (ii) C is an immediate predecessor of B. (iii) C is an immediate successor of A. (iv) C is an immediate predecessor of A. (v) B dominates C. (vi) C dominates B. (a) The dominator tree is: (b) (i) A may or may not dominate C, since C may have another predecessor that is not dominated by A, as shown below: A D B C

7 SOLUTIONS (Spring 2004) 6 (ii) A dominates C: for if it didn t, there would be some way to reach C without going through A, and this would imply the existence of a way to reach B without going through A, i.e., A would not dominate B. (iii) A may or may not dominate C, since C may have other predecessors that are not dominated by A: A D B C (iv) C may or may dominate (or be dominated by) A, since A may have other predecessors that are not dominated by C: (v) Since the domination relation is transitive, it follows in this case that A dominates C. C (vi) Since the domination relation can be represented as a tree, if A dominates B and C dominates B it must be the case that either A dominates C, or C dominates A. A B D

8 SOLUTIONS (Spring 2004) 7 6 Systems 3 (CSc 576: Computer Architecture) A virtual memory system usually uses a single fixed page size. A major design decision for such a system is what size the pages should have. Discuss what advantages small and large pages have. Be sure to include, among other things, the consequences for TLB, cache size, and memory use. Advantages with larger pages: Smaller page table. Better cache performance as cache size can grow larger. (Page can t be smaller than cache.) Transferring pages to/from secondary storage is more efficient. A TLB entry maps more memory, so more TLB hits for a given TLB size. Advantages with smaller pages: Less memory wasted in last page of a segment. Small processes can start up quicker as less data needs to be brought into memory at startup. NOTE: Not all of these are needed for a full score.

9 SOLUTIONS (Spring 2004) 8 7 Applications 1 (CSc 522: Parallel and Distributed Programming) Answer the following questions. 1. Atomic Broadcast. Assume one producer process and N consumer processes that all share a single buffer. The producer deposits messages into the buffer, consumers fetch them. Every message deposited by the producer has to be fetched by all N consumers before the producer can deposit another message into the buffer. Develop a solution for this problem using semaphores for synchronization. 2. Now, assume the buffer has b slots. The producer can deposit messages only into empty slots and every message has to be received by all N consumers before the slot can be reused. Furthermore, each consumer is to receive the messages in the order they were deposited. However, different consumers can receive messages at different times. For example, one consumer could receive up to b more messages than another if the second consumer is slow. Extend your answer to (a) to solve this more general problem. 1. This is a standard producer-consumer solution with the addition of the loop for the producer to wait for all the consumers to fetch the item, and the loop by the producer to tell all the consumers they can go. sem fetch = 0, put = N; buffer b; Producer: while (true) { produce item for (i = 1 to N) P(put) deposit item in b for (i = 1 to N) V(fetch) } Consumers: while (true) { } P(fetch) get item from b V(put) consume item 2. The addition here is that the two semaphores, fetch and put, need to become arrays of semaphores. Each fetch semaphore is initially set to zero and each put semaphore is initially set to N. The producer and each consumer keeps a local mycount variable that determines which position of the arrays will be used next. sem fetch[n] = ([N] 0), put[n] = ([N] N); buffer b[n]; Producer: int mycount = 0; while (true) { produce item for (i = 1 to N) P(put[mycount]); deposit item in b[mycount] for (i = 1 to N) V(fetch[mycount]) mycount = (mycount + 1) % N; } Consumers: int mycount = 0; while (true) { } P(fetch[mycount]); get item from b[mycount]; V(put[mycount]); mycount = (mycount + 1) % N consume item

10 SOLUTIONS (Spring 2004) 9 8 Applications 2 (CSc 525: Principles of Computer Networking) The dominating end-to-end protocol in the Internet, TCP, uses a sliding window protocol. One important use of the sliding window protocol is to prevent congestion. 1. Draw a graph that shows the relationship between (sending) window size and throughput for a representative TCP connection. Let the X axis be window size, and the Y axis be throughput (bits/s). The curve will have three components. Describe what happens in the network in each of the three components. 2. Explain what point in the graph classic TCP congestion control detects. Outline how classic TCP congestion control would move along the curve in the diagram. 3. Explain which point in the graph TCP Vegas congestion control detects. Outline how TCP Vegas would move along the curve in the diagram. 1. The first component starts at (0,0) and increases linearly to the point (delay x bandwidth, bandwidth), where delay is the round-trip time for the TCP connection, and bandwidth is the bandwidth available to the TCP connection. Any increase in window size will increase throughput correspondingly as more of the available bandwidth is being used. This goes on until the window has size equal to the delay x bandwidth product, at which point the throughput is maximal. The second component is constant throughput with increasing window size. Increased window size increases buffering in the network, but there is no increase in throughput. This goes on until buffering becomes large enough that some packets are dropped due to router buffer overflow. The third component is decreasing throughput with increasing window size. This happens when increasing congestion results in increasing network packet drops and retransmissions. 2. Classic TCP congestion control detects the transition between components two and three. It initially increases the window size quickly (exponentially over time) until congestion occurs (i.e., until the end of the second component), after which the window size is halved. The window size then increases linearly over time until congestion occurs again, the window is halved, and the process repeats. Classic TCP will often substantially overshoot and increase the window size far into component three during the initial quick increase. Recovery from the resulting losses can initially slow down data transfer substantially. 3. TCP Vegas detects the transition point between components one and two. As long as no drops are provoked by other competing TCPs, TCP Vegas will keep the window size 2-3 packet sizes more than the delay x bandwidth product, i.e., a little bit to the right of the transition between components one and two. Vegas will typically reach this point without provoking any packet losses, i.e., will not overshoot into component three.

11 SOLUTIONS (Spring 2004) 10 9 Applications 3 (CSc 533: Computer Graphics) Discuss pro and cons of radiosity methods, compared to ray tracing, as methods for rendering a single image, from a single viewpoint, once the BRDF function and illumination conditions are given for a 3D scene. Would your answer be different if many viewpoints are used (e.g., when making animation of the viewer moving inside the scene.)? In the presence of extremely shiny surfaces, finding the paths of light might require very large depth of the path tracing tree. This might be very costly to compute. This problem does not occur when using radiosity methods. However, using radiosity methods requires much more information, so in general the cost of this process is significant. However, once the radiosity from each patch of the surfaces has been computed, computing many pictures is much easier, so this computational effort might pay off.

12 SOLUTIONS (Spring 2004) Applications 4 (CSc 560: Database Systems) Answer the following questions about optimizing a sample SQL query below. SELECT Name, Title, Sal, Dname FROM Emp, Dept, Job WHERE Emp.Dno = Dept.Dno AND Emp.Job = Job.Job Table Dept has <Dno, Dname, Loc> attributes, table Emp has <Name, Dno, Job, Sal> attributes, and table Job has <Job, Title> attributes. 1. What are the interesting orders in the sample query? In the first pass, the System R Optimizer examines the cheapest single-relation access paths. Which access paths will be examined by the System R Optimizer for the Emp table? 2. A multi-way join query is generally processed as a series of two-way joins. Therefore, there may be quite a few plans with different join orders that should be considered for the query. List all the distinct join orders to be considered by the System R Optimizer. Note that join operations are commutative and associative but the cost of A B may be different from that of B A, and the cost of (A B) C may be different from that of A (B C). 1. The interesting orders are Dno and Job attributes. Since both the attributes are part of the Emp table, the System R Optimizer examines three access paths, namely (1) one that will produce Emp tuples in sorted order by the Dno attribute values, (2) one that will produce Emp tuples in sorted order by the Job attribute values, and (3) one that scans the Emp table in no particular order. 2. The System R Optimizer considers only left-deep join plans: (Dept Emp) Job (Emp Dept) Job (Job Emp) Dept (Emp Job) Dept

University of Waterloo Midterm Examination Sample Solution

University of Waterloo Midterm Examination Sample Solution 1. (4 total marks) University of Waterloo Midterm Examination Sample Solution Winter, 2012 Suppose that a relational database contains the following large relation: Track(ReleaseID, TrackNum, Title, Length,

More information

Masters Exam. Fall 2004 Department of Computer Science University of Arizona

Masters Exam. Fall 2004 Department of Computer Science University of Arizona 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,

More information

Concurrent & Distributed Systems Supervision Exercises

Concurrent & 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 information

CS 556 Advanced Computer Networks Spring Solutions to Midterm Test March 10, YOUR NAME: Abraham MATTA

CS 556 Advanced Computer Networks Spring Solutions to Midterm Test March 10, YOUR NAME: Abraham MATTA CS 556 Advanced Computer Networks Spring 2011 Solutions to Midterm Test March 10, 2011 YOUR NAME: Abraham MATTA This test is closed books. You are only allowed to have one sheet of notes (8.5 11 ). Please

More information

Theorem 2.9: nearest addition algorithm

Theorem 2.9: nearest addition algorithm There are severe limits on our ability to compute near-optimal tours It is NP-complete to decide whether a given undirected =(,)has a Hamiltonian cycle An approximation algorithm for the TSP can be used

More information

Hash-Based Indexing 165

Hash-Based Indexing 165 Hash-Based Indexing 165 h 1 h 0 h 1 h 0 Next = 0 000 00 64 32 8 16 000 00 64 32 8 16 A 001 01 9 25 41 73 001 01 9 25 41 73 B 010 10 10 18 34 66 010 10 10 18 34 66 C Next = 3 011 11 11 19 D 011 11 11 19

More information

Spring 2014 CSE Qualifying Exam Core Subjects

Spring 2014 CSE Qualifying Exam Core Subjects Spring 2014 CSE Qualifying Exam Core Subjects February 22, 2014 Architecture 1. ROB trace - single issue Assume the following: Ten ROB slots. 1 integer Execution unit, 1 reservation stations, one cycle

More information

Draw a diagram of an empty circular queue and describe it to the reader.

Draw a diagram of an empty circular queue and describe it to the reader. 1020_1030_testquestions.text Wed Sep 10 10:40:46 2014 1 1983/84 COSC1020/30 Tests >>> The following was given to students. >>> Students can have a good idea of test questions by examining and trying the

More information

6.001 Notes: Section 4.1

6.001 Notes: Section 4.1 6.001 Notes: Section 4.1 Slide 4.1.1 In this lecture, we are going to take a careful look at the kinds of procedures we can build. We will first go back to look very carefully at the substitution model,

More information

Operating Systems Comprehensive Exam. Spring Student ID # 2/17/2011

Operating Systems Comprehensive Exam. Spring Student ID # 2/17/2011 Operating Systems Comprehensive Exam Spring 2011 Student ID # 2/17/2011 You must complete all of Section I You must complete two of the problems in Section II If you need more space to answer a question,

More information

CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007

CS 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 information

CSc33200: Operating Systems, CS-CCNY, Fall 2003 Jinzhong Niu December 10, Review

CSc33200: Operating Systems, CS-CCNY, Fall 2003 Jinzhong Niu December 10, Review CSc33200: Operating Systems, CS-CCNY, Fall 2003 Jinzhong Niu December 10, 2003 Review 1 Overview 1.1 The definition, objectives and evolution of operating system An operating system exploits and manages

More information

FINALTERM EXAMINATION Fall 2009 CS301- Data Structures Question No: 1 ( Marks: 1 ) - Please choose one The data of the problem is of 2GB and the hard

FINALTERM EXAMINATION Fall 2009 CS301- Data Structures Question No: 1 ( Marks: 1 ) - Please choose one The data of the problem is of 2GB and the hard FINALTERM EXAMINATION Fall 2009 CS301- Data Structures Question No: 1 The data of the problem is of 2GB and the hard disk is of 1GB capacity, to solve this problem we should Use better data structures

More information

Department of Computer Science and Engineering. Final Examination. Instructor: N. Vlajic Date: April 15, 2011

Department of Computer Science and Engineering. Final Examination. Instructor: N. Vlajic Date: April 15, 2011 Department of Computer Science and Engineering CSE 3214: Computer Network Protocols and Applications Final Examination Instructor: N. Vlajic Date: April 15, 2011 Instructions: Examination time: 180 min.

More information

Spring 2011 CSE Qualifying Exam Core Subjects. February 26, 2011

Spring 2011 CSE Qualifying Exam Core Subjects. February 26, 2011 Spring 2011 CSE Qualifying Exam Core Subjects February 26, 2011 1 Architecture 1. Consider a memory system that has the following characteristics: bandwidth to lower level memory type line size miss rate

More information

CSE Qualifying Exam, Spring February 2, 2008

CSE Qualifying Exam, Spring February 2, 2008 CSE Qualifying Exam, Spring 2008 February 2, 2008 Architecture 1. You are building a system around a processor with in-order execution that runs at 1.1 GHz and has a CPI of 0.7 excluding memory accesses.

More information

Student Name: University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Science

Student Name: University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Science University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Science CS 162 Spring 2011 I. Stoica FINAL EXAM Friday, May 13, 2011 INSTRUCTIONS READ THEM

More information

Congestion Control in TCP

Congestion Control in TCP Congestion Control in TCP Antonio Carzaniga Faculty of Informatics University of Lugano May 6, 2005 Outline Intro to congestion control Input rate vs. output throughput Congestion window Congestion avoidance

More information

CS-301 Data Structure. Tariq Hanif

CS-301 Data Structure. Tariq Hanif 1. The tree data structure is a Linear data structure Non-linear data structure Graphical data structure Data structure like queue FINALTERM EXAMINATION Spring 2012 CS301- Data Structure 25-07-2012 2.

More information

FORTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLIGY- OCTOBER, 2012 DATA STRUCTURE

FORTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLIGY- OCTOBER, 2012 DATA STRUCTURE TED (10)-3071 Reg. No.. (REVISION-2010) Signature. FORTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLIGY- OCTOBER, 2012 DATA STRUCTURE (Common to CT and IF) [Time: 3 hours (Maximum marks: 100)

More information

Question Score Points Out Of 25

Question 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 information

Graphs. The ultimate data structure. graphs 1

Graphs. The ultimate data structure. graphs 1 Graphs The ultimate data structure graphs 1 Definition of graph Non-linear data structure consisting of nodes & links between them (like trees in this sense) Unlike trees, graph nodes may be completely

More information

Databases IIB: DBMS-Implementation Exercise Sheet 13

Databases IIB: DBMS-Implementation Exercise Sheet 13 Prof. Dr. Stefan Brass January 27, 2017 Institut für Informatik MLU Halle-Wittenberg Databases IIB: DBMS-Implementation Exercise Sheet 13 As requested by the students, the repetition questions a) will

More information

Computer Science E-22 Practice Final Exam

Computer Science E-22 Practice Final Exam name Computer Science E-22 This exam consists of three parts. Part I has 10 multiple-choice questions that you must complete. Part II consists of 4 multi-part problems, of which you must complete 3, and

More information

University of California, Berkeley. CS 186 Introduction to Databases, Spring 2014, Prof. Dan Olteanu MIDTERM

University of California, Berkeley. CS 186 Introduction to Databases, Spring 2014, Prof. Dan Olteanu MIDTERM University of California, Berkeley CS 186 Introduction to Databases, Spring 2014, Prof. Dan Olteanu MIDTERM This is a closed book examination sided). but you are allowed one 8.5 x 11 sheet of notes (double

More information

CSCI Compiler Design

CSCI Compiler Design CSCI 565 - Compiler Design Spring 2010 Final Exam - Solution May 07, 2010 at 1.30 PM in Room RTH 115 Duration: 2h 30 min. Please label all pages you turn in with your name and student number. Name: Number:

More information

Congestion Control. Principles of Congestion Control. Network-assisted Congestion Control: ATM. Congestion Control. Computer Networks 10/21/2009

Congestion Control. Principles of Congestion Control. Network-assisted Congestion Control: ATM. Congestion Control. Computer Networks 10/21/2009 Congestion Control Kai Shen Principles of Congestion Control Congestion: informally: too many sources sending too much data too fast for the network to handle results of congestion: long delays (e.g. queueing

More information

NOTE: Answer ANY FOUR of the following 6 sections:

NOTE: Answer ANY FOUR of the following 6 sections: A-PDF MERGER DEMO Philadelphia University Lecturer: Dr. Nadia Y. Yousif Coordinator: Dr. Nadia Y. Yousif Internal Examiner: Dr. Raad Fadhel Examination Paper... Programming Languages Paradigms (750321)

More information

CS321: Computer Networks Congestion Control in TCP

CS321: Computer Networks Congestion Control in TCP CS321: Computer Networks Congestion Control in TCP Dr. Manas Khatua Assistant Professor Dept. of CSE IIT Jodhpur E-mail: manaskhatua@iitj.ac.in Causes and Cost of Congestion Scenario-1: Two Senders, a

More information

Mathematics Masters Examination

Mathematics Masters Examination Mathematics Masters Examination OPTION 4 March 30, 2004 COMPUTER SCIENCE 2 5 PM NOTE: Any student whose answers require clarification may be required to submit to an oral examination. Each of the fourteen

More information

CSCI Compiler Design

CSCI Compiler Design CSCI 565 - Compiler Design Spring 2015 Midterm Exam March 04, 2015 at 8:00 AM in class (RTH 217) Duration: 2h 30 min. Please label all pages you turn in with your name and student number. Name: Number:

More information

Introduction to Programming in C Department of Computer Science and Engineering. Lecture No. #16 Loops: Matrix Using Nested for Loop

Introduction to Programming in C Department of Computer Science and Engineering. Lecture No. #16 Loops: Matrix Using Nested for Loop Introduction to Programming in C Department of Computer Science and Engineering Lecture No. #16 Loops: Matrix Using Nested for Loop In this section, we will use the, for loop to code of the matrix problem.

More information

TDDB68 Processprogrammering och operativsystem / Concurrent programming and operating systems

TDDB68 Processprogrammering och operativsystem / Concurrent programming and operating systems TENTAMEN / EXAM TDDB68 Processprogrammering och operativsystem / Concurrent programming and operating systems 2017-06-05 Examiner: Mikael Asplund (0700895827) Hjälpmedel / Admitted material: Engelsk ordbok

More information

Exam 3 Practice Problems

Exam 3 Practice Problems Exam 3 Practice Problems HONOR CODE: You are allowed to work in groups on these problems, and also to talk to the TAs (the TAs have not seen these problems before and they do not know the solutions but

More information

Congestion Control in TCP

Congestion Control in TCP Congestion Control in TCP Antonio Carzaniga Faculty of Informatics University of Lugano November 11, 2014 Outline Intro to congestion control Input rate vs. output throughput Congestion window Congestion

More information

ETSN01 Exam Solutions

ETSN01 Exam Solutions ETSN01 Exam Solutions March 014 Question 1 (a) See p17 of the cellular systems slides for a diagram and the full procedure. The main points here were that the HLR needs to be queried to determine the location

More information

CSE 332 Winter 2018 Final Exam (closed book, closed notes, no calculators)

CSE 332 Winter 2018 Final Exam (closed book, closed notes, no calculators) Name: Sample Solution Email address (UWNetID): CSE 332 Winter 2018 Final Exam (closed book, closed notes, no calculators) Instructions: Read the directions for each question carefully before answering.

More information

Algorithms Assignment 3 Solutions

Algorithms Assignment 3 Solutions Algorithms Assignment 3 Solutions 1. There is a row of n items, numbered from 1 to n. Each item has an integer value: item i has value A[i], where A[1..n] is an array. You wish to pick some of the items

More information

MODELS OF DISTRIBUTED SYSTEMS

MODELS 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 information

Compiler Design Prof. Y. N. Srikant Department of Computer Science and Automation Indian Institute of Science, Bangalore

Compiler Design Prof. Y. N. Srikant Department of Computer Science and Automation Indian Institute of Science, Bangalore Compiler Design Prof. Y. N. Srikant Department of Computer Science and Automation Indian Institute of Science, Bangalore Module No. # 10 Lecture No. # 16 Machine-Independent Optimizations Welcome to the

More information

Computer Science 136 Spring 2004 Professor Bruce. Final Examination May 19, 2004

Computer Science 136 Spring 2004 Professor Bruce. Final Examination May 19, 2004 Computer Science 136 Spring 2004 Professor Bruce Final Examination May 19, 2004 Question Points Score 1 10 2 8 3 15 4 12 5 12 6 8 7 10 TOTAL 65 Your name (Please print) I have neither given nor received

More information

University of Waterloo Midterm Examination Model Solution CS350 Operating Systems

University of Waterloo Midterm Examination Model Solution CS350 Operating Systems University of Waterloo Midterm Examination Model Solution CS350 Operating Systems Fall, 2003 1. (10 total marks) Suppose that two processes, a and b, are running in a uniprocessor system. a has three threads.

More information

Practice Problems for the Final

Practice Problems for the Final ECE-250 Algorithms and Data Structures (Winter 2012) Practice Problems for the Final Disclaimer: Please do keep in mind that this problem set does not reflect the exact topics or the fractions of each

More information

Do not start the test until instructed to do so!

Do not start the test until instructed to do so! CS 3204 Operating Systems Midterm (Abrams) Spring 2004 VIRG INIA POLYTECHNIC INSTITUTE AND STATE U T PRO SI M UNI VERSI TY Instructions: Do not start the test until instructed to do so! Print your name

More information

FORTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLIGY- MARCH, 2012 DATA STRUCTURE (Common to CT and IF) [Time: 3 hours

FORTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLIGY- MARCH, 2012 DATA STRUCTURE (Common to CT and IF) [Time: 3 hours TED (10)-3071 Reg. No.. (REVISION-2010) (Maximum marks: 100) Signature. FORTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLIGY- MARCH, 2012 DATA STRUCTURE (Common to CT and IF) [Time: 3 hours PART

More information

Something to think about. Problems. Purpose. Vocabulary. Query Evaluation Techniques for large DB. Part 1. Fact:

Something to think about. Problems. Purpose. Vocabulary. Query Evaluation Techniques for large DB. Part 1. Fact: Query Evaluation Techniques for large DB Part 1 Fact: While data base management systems are standard tools in business data processing they are slowly being introduced to all the other emerging data base

More information

Midterm Exam Amy Murphy 19 March 2003

Midterm Exam Amy Murphy 19 March 2003 University of Rochester Midterm Exam Amy Murphy 19 March 2003 Computer Systems (CSC2/456) Read before beginning: Please write clearly. Illegible answers cannot be graded. Be sure to identify all of your

More information

Congestion Control. Principles of Congestion Control. Network assisted congestion. Asynchronous Transfer Mode. Computer Networks 10/23/2013

Congestion Control. Principles of Congestion Control. Network assisted congestion. Asynchronous Transfer Mode. Computer Networks 10/23/2013 Congestion Control Kai Shen Principles of Congestion Control Congestion: Informally: too many sources sending too much data too fast for the network to handle Results of congestion: long delays (e.g. queueing

More information

Mach band effect. The Mach band effect increases the visual unpleasant representation of curved surface using flat shading.

Mach band effect. The Mach band effect increases the visual unpleasant representation of curved surface using flat shading. Mach band effect The Mach band effect increases the visual unpleasant representation of curved surface using flat shading. A B 320322: Graphics and Visualization 456 Mach band effect The Mach band effect

More information

COMPUTER SCIENCE TRIPOS

COMPUTER SCIENCE TRIPOS CST.2004.5.1 COMPUTER SCIENCE TRIPOS Part IB Wednesday 2 June 2004 1.30 to 4.30 Paper 5 Answer five questions. No more than two questions from any one section are to be answered. Submit the answers in

More information

ECE469 - Operating Systems Engineering Exam # March 25

ECE469 - Operating Systems Engineering Exam # March 25 ECE469 - Operating Systems Engineering Exam #1 2004 March 25 A computer lets you make more mistakes faster than any invention in human history with the possible exceptions of handguns and tequila. Mitch

More information

System R Optimization (contd.)

System R Optimization (contd.) System R Optimization (contd.) Instructor: Sharma Chakravarthy sharma@cse.uta.edu The University of Texas @ Arlington Database Management Systems, S. Chakravarthy 1 Optimization Criteria number of page

More information

During the first 2 weeks of class, all students in the course will take an in-lab programming exam. This is the Exam in Programming Proficiency.

During the first 2 weeks of class, all students in the course will take an in-lab programming exam. This is the Exam in Programming Proficiency. Description of CPSC 301: This is a 2-unit credit/no credit course. It is a course taught entirely in lab, and has two required 2-hour 50-minute lab sessions per week. It will review, reinforce, and expand

More information

CSE 120 PRACTICE FINAL EXAM, WINTER 2013

CSE 120 PRACTICE FINAL EXAM, WINTER 2013 CSE 120 PRACTICE FINAL EXAM, WINTER 2013 For each question, select the best choice. In the space provided below each question, justify your choice by providing a succinct (one sentence) explanation. 1.

More information

Exercises TCP/IP Networking With Solutions

Exercises TCP/IP Networking With Solutions Exercises TCP/IP Networking With Solutions Jean-Yves Le Boudec Fall 2009 3 Module 3: Congestion Control Exercise 3.2 1. Assume that a TCP sender, called S, does not implement fast retransmit, but does

More information

University of Illinois at Urbana-Champaign Department of Computer Science. Final Examination

University of Illinois at Urbana-Champaign Department of Computer Science. Final Examination University of Illinois at Urbana-Champaign Department of Computer Science Final Examination CS 225 Data Structures and Software Principles Spring 2010 7-10p, Wednesday, May 12 Name: NetID: Lab Section

More information

MC 302 GRAPH THEORY 10/1/13 Solutions to HW #2 50 points + 6 XC points

MC 302 GRAPH THEORY 10/1/13 Solutions to HW #2 50 points + 6 XC points MC 0 GRAPH THEORY 0// Solutions to HW # 0 points + XC points ) [CH] p.,..7. This problem introduces an important class of graphs called the hypercubes or k-cubes, Q, Q, Q, etc. I suggest that before you

More information

CMPSCI 453 Instructor V. Arun Fall Midterm 11/07/2007

CMPSCI 453 Instructor V. Arun Fall Midterm 11/07/2007 CMPSCI 453 Instructor V. Arun Fall 2007 - Midterm 11/07/2007 Read before starting: 1. Put down you name on the first page NOW. 2. Put down you initials on the top right corner of each page 3. This answer

More information

System R and the Relational Model

System R and the Relational Model IC-65 Advances in Database Management Systems Roadmap System R and the Relational Model Intro Codd s paper System R - design Anastasia Ailamaki www.cs.cmu.edu/~natassa 2 The Roots The Roots Codd (CACM

More information

CSE 410 Final Exam 6/09/09. Suppose we have a memory and a direct-mapped cache with the following characteristics.

CSE 410 Final Exam 6/09/09. Suppose we have a memory and a direct-mapped cache with the following characteristics. Question 1. (10 points) (Caches) Suppose we have a memory and a direct-mapped cache with the following characteristics. Memory is byte addressable Memory addresses are 16 bits (i.e., the total memory size

More information

Limitations of Algorithmic Solvability In this Chapter we investigate the power of algorithms to solve problems Some can be solved algorithmically and

Limitations of Algorithmic Solvability In this Chapter we investigate the power of algorithms to solve problems Some can be solved algorithmically and Computer Language Theory Chapter 4: Decidability 1 Limitations of Algorithmic Solvability In this Chapter we investigate the power of algorithms to solve problems Some can be solved algorithmically and

More information

Computer Networks. Routing

Computer Networks. Routing Computer Networks Routing Topics Link State Routing (Continued) Hierarchical Routing Broadcast Routing Sending distinct packets Flooding Multi-destination routing Using spanning tree Reverse path forwarding

More information

Theory of Computations Spring 2016 Practice Final Exam Solutions

Theory of Computations Spring 2016 Practice Final Exam Solutions 1 of 8 Theory of Computations Spring 2016 Practice Final Exam Solutions Name: Directions: Answer the questions as well as you can. Partial credit will be given, so show your work where appropriate. Try

More information

Final Examination CSE 100 UCSD (Practice)

Final Examination CSE 100 UCSD (Practice) Final Examination UCSD (Practice) RULES: 1. Don t start the exam until the instructor says to. 2. This is a closed-book, closed-notes, no-calculator exam. Don t refer to any materials other than the exam

More information

PS2 out today. Lab 2 out today. Lab 1 due today - how was it?

PS2 out today. Lab 2 out today. Lab 1 due today - how was it? 6.830 Lecture 7 9/25/2017 PS2 out today. Lab 2 out today. Lab 1 due today - how was it? Project Teams Due Wednesday Those of you who don't have groups -- send us email, or hand in a sheet with just your

More information

CS 167 Final Exam Solutions

CS 167 Final Exam Solutions CS 167 Final Exam Solutions Spring 2018 Do all questions. 1. [20%] This question concerns a system employing a single (single-core) processor running a Unix-like operating system, in which interrupts are

More information

TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica

TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Examination Architecture of Distributed Systems (2IMN10 / 2II45), on Monday November 2, 2015, from 13.30 to 16.30 hours. Indicate on

More information

Midterm Exam Solutions Amy Murphy 28 February 2001

Midterm Exam Solutions Amy Murphy 28 February 2001 University of Rochester Midterm Exam Solutions Amy Murphy 8 February 00 Computer Systems (CSC/56) Read before beginning: Please write clearly. Illegible answers cannot be graded. Be sure to identify all

More information

Computer Graphics 1. Chapter 7 (June 17th, 2010, 2-4pm): Shading and rendering. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2010

Computer Graphics 1. Chapter 7 (June 17th, 2010, 2-4pm): Shading and rendering. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2010 Computer Graphics 1 Chapter 7 (June 17th, 2010, 2-4pm): Shading and rendering 1 The 3D rendering pipeline (our version for this class) 3D models in model coordinates 3D models in world coordinates 2D Polygons

More information

CS244a: An Introduction to Computer Networks

CS244a: An Introduction to Computer Networks Do not write in this box MCQ 13: /10 14: /10 15: /0 16: /0 17: /10 18: /10 19: /0 0: /10 Total: Name: Student ID #: Campus/SITN-Local/SITN-Remote? CS44a Winter 004 Professor McKeown CS44a: An Introduction

More information

Sankalchand Patel College of Engineering - Visnagar Department of Computer Engineering and Information Technology. Assignment

Sankalchand Patel College of Engineering - Visnagar Department of Computer Engineering and Information Technology. Assignment Class: V - CE Sankalchand Patel College of Engineering - Visnagar Department of Computer Engineering and Information Technology Sub: Design and Analysis of Algorithms Analysis of Algorithm: Assignment

More information

A Secondary storage Algorithms and Data Structures Supplementary Questions and Exercises

A Secondary storage Algorithms and Data Structures Supplementary Questions and Exercises 308-420A Secondary storage Algorithms and Data Structures Supplementary Questions and Exercises Section 1.2 4, Logarithmic Files Logarithmic Files 1. A B-tree of height 6 contains 170,000 nodes with an

More information

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 22.1 Introduction We spent the last two lectures proving that for certain problems, we can

More information

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe CHAPTER 19 Query Optimization Introduction Query optimization Conducted by a query optimizer in a DBMS Goal: select best available strategy for executing query Based on information available Most RDBMSs

More information

6.033 Spring 2015 Lecture #11: Transport Layer Congestion Control Hari Balakrishnan Scribed by Qian Long

6.033 Spring 2015 Lecture #11: Transport Layer Congestion Control Hari Balakrishnan Scribed by Qian Long 6.033 Spring 2015 Lecture #11: Transport Layer Congestion Control Hari Balakrishnan Scribed by Qian Long Please read Chapter 19 of the 6.02 book for background, especially on acknowledgments (ACKs), timers,

More information

UNIVERSITY OF OSLO. Faculty of mathematics and natural sciences. INF3190/INF4190 Data Communications. All printed and written material, calculator

UNIVERSITY OF OSLO. Faculty of mathematics and natural sciences. INF3190/INF4190 Data Communications. All printed and written material, calculator UNIVERSITY OF OSLO Faculty of mathematics and natural sciences Examination in Day of examination: 2nd June, 2004 Examination hours: 9.00 12.00 This problem set consists of 6 pages. Appendices: Permitted

More information

(b) External fragmentation can happen in a virtual memory paging system.

(b) External fragmentation can happen in a virtual memory paging system. Alexandria University Faculty of Engineering Electrical Engineering - Communications Spring 2015 Final Exam CS333: Operating Systems Wednesday, June 17, 2015 Allowed Time: 3 Hours Maximum: 75 points Note:

More information

Kathleen Durant PhD Northeastern University CS Indexes

Kathleen Durant PhD Northeastern University CS Indexes Kathleen Durant PhD Northeastern University CS 3200 Indexes Outline for the day Index definition Types of indexes B+ trees ISAM Hash index Choosing indexed fields Indexes in InnoDB 2 Indexes A typical

More information

2.993: Principles of Internet Computing Quiz 1. Network

2.993: Principles of Internet Computing Quiz 1. Network 2.993: Principles of Internet Computing Quiz 1 2 3:30 pm, March 18 Spring 1999 Host A Host B Network 1. TCP Flow Control Hosts A, at MIT, and B, at Stanford are communicating to each other via links connected

More information

CSCI 1680 Computer Networks Fonseca. Exam - Midterm. Due: 11:50am, 15 Mar Closed Book. Maximum points: 100

CSCI 1680 Computer Networks Fonseca. Exam - Midterm. Due: 11:50am, 15 Mar Closed Book. Maximum points: 100 CSCI 1680 Computer Networks Fonseca Exam - Midterm Due: 11:50am, 15 Mar 2011 Closed Book. Maximum points: 100 NAME: 1. Sending Data - [12 pts] a. If TCP provides reliable, in-order delivery of bytes end-to-end,

More information

Hash Table and Hashing

Hash Table and Hashing Hash Table and Hashing The tree structures discussed so far assume that we can only work with the input keys by comparing them. No other operation is considered. In practice, it is often true that an input

More information

Hi everyone. Starting this week I'm going to make a couple tweaks to how section is run. The first thing is that I'm going to go over all the slides

Hi everyone. Starting this week I'm going to make a couple tweaks to how section is run. The first thing is that I'm going to go over all the slides Hi everyone. Starting this week I'm going to make a couple tweaks to how section is run. The first thing is that I'm going to go over all the slides for both problems first, and let you guys code them

More information

CMPSCI 377: Operating Systems Exam 1: Processes, Threads, CPU Scheduling and Synchronization. October 9, 2002

CMPSCI 377: Operating Systems Exam 1: Processes, Threads, CPU Scheduling and Synchronization. October 9, 2002 Name: Student Id: General instructions: CMPSCI 377: Operating Systems Exam 1: Processes, Threads, CPU Scheduling and Synchronization October 9, 2002 This examination booklet has 10 pages. Do not forget

More information

CS/ECE 438: Communication Networks Spring Problem Set 7. Title: Congestion control and Performance Analysis

CS/ECE 438: Communication Networks Spring Problem Set 7. Title: Congestion control and Performance Analysis Problem Set 7 Title: Congestion control and Performance Analysis Due: start of class, Wednesday, May 2 nd Recommended Reading: Section 6. All problems carry equal weight. To receive full credit, show all

More information

Operating Systems Design Fall 2010 Exam 1 Review. Paul Krzyzanowski

Operating Systems Design Fall 2010 Exam 1 Review. Paul Krzyzanowski Operating Systems Design Fall 2010 Exam 1 Review Paul Krzyzanowski pxk@cs.rutgers.edu 1 Question 1 To a programmer, a system call looks just like a function call. Explain the difference in the underlying

More information

University of Massachusetts Amherst Department of Computer Science Prof. Yanlei Diao

University of Massachusetts Amherst Department of Computer Science Prof. Yanlei Diao University of Massachusetts Amherst Department of Computer Science Prof. Yanlei Diao CMPSCI 445 Midterm Practice Questions NAME: LOGIN: Write all of your answers directly on this paper. Be sure to clearly

More information

COSC 2007 Data Structures II Final Exam. Part 1: multiple choice (1 mark each, total 30 marks, circle the correct answer)

COSC 2007 Data Structures II Final Exam. Part 1: multiple choice (1 mark each, total 30 marks, circle the correct answer) COSC 2007 Data Structures II Final Exam Thursday, April 13 th, 2006 This is a closed book and closed notes exam. There are total 3 parts. Please answer the questions in the provided space and use back

More information

Greedy Algorithms CHAPTER 16

Greedy Algorithms CHAPTER 16 CHAPTER 16 Greedy Algorithms In dynamic programming, the optimal solution is described in a recursive manner, and then is computed ``bottom up''. Dynamic programming is a powerful technique, but it often

More information

Department of Computer Science Faculty of Engineering, Built Environment & IT University of Pretoria. COS122: Operating Systems

Department of Computer Science Faculty of Engineering, Built Environment & IT University of Pretoria. COS122: Operating Systems Department of Computer Science Faculty of Engineering, Built Environment & IT University of Pretoria COS122: Operating Systems Exam Opportunity 1 25 August 2018 Initials and Surname: Student Number: Degree:

More information

McGill University Department of Electrical and Computer Engineering. Course ECSE-322A -- Computer Engineering. MidTerm Test Version 1 Solutions

McGill University Department of Electrical and Computer Engineering. Course ECSE-322A -- Computer Engineering. MidTerm Test Version 1 Solutions Signature: I.D. Number: Printed Name: McGill University Department of Electrical and Computer Engineering Course ECSE-322A -- Computer Engineering PLEASE NOTE CAREFULLY: MidTerm Test Version 1 Solutions

More information

UNIVERSITY of OSLO. Faculty of Mathematics and Natural Sciences. INF 4130/9135: Algoritmer: Design og effektivitet Date of exam: 14th December 2012

UNIVERSITY of OSLO. Faculty of Mathematics and Natural Sciences. INF 4130/9135: Algoritmer: Design og effektivitet Date of exam: 14th December 2012 UNIVERSITY of OSLO Faculty of Mathematics and Natural Sciences Exam in: INF 40/9: Algoritmer: Design og effektivitet Date of exam: 4th December 202 Exam hours: 09:00 :00 (4 hours) Exam paper consists of:

More information

Hashing for searching

Hashing for searching Hashing for searching Consider searching a database of records on a given key. There are three standard techniques: Searching sequentially start at the first record and look at each record in turn until

More information

Physical Disk Structure. Physical Data Organization and Indexing. Pages and Blocks. Access Path. I/O Time to Access a Page. Disks.

Physical Disk Structure. Physical Data Organization and Indexing. Pages and Blocks. Access Path. I/O Time to Access a Page. Disks. Physical Disk Structure Physical Data Organization and Indexing Chapter 11 1 4 Access Path Refers to the algorithm + data structure (e.g., an index) used for retrieving and storing data in a table The

More information

ECE4110, Internetwork Programming, QUIZ 2 - PRACTICE Spring 2006

ECE4110, Internetwork Programming, QUIZ 2 - PRACTICE Spring 2006 Email Address ECE4110, Internetwork Programming, QUIZ 2 - PRACTICE Spring 2006 Name (Print) Prof. John A. Copeland Practice for April 11, 2006 Tel.: 404-894-5177 E-Mail: copeland@ece.gatech.edu RULES.

More information

Midterm Exam Amy Murphy 6 March 2002

Midterm Exam Amy Murphy 6 March 2002 University of Rochester Midterm Exam Amy Murphy 6 March 2002 Computer Systems (CSC2/456) Read before beginning: Please write clearly. Illegible answers cannot be graded. Be sure to identify all of your

More information

B.H.GARDI COLLEGE OF MASTER OF COMPUTER APPLICATION. Ch. 1 :- Introduction Database Management System - 1

B.H.GARDI COLLEGE OF MASTER OF COMPUTER APPLICATION. Ch. 1 :- Introduction Database Management System - 1 Basic Concepts :- 1. What is Data? Data is a collection of facts from which conclusion may be drawn. In computer science, data is anything in a form suitable for use with a computer. Data is often distinguished

More information

CS 137 Part 8. Merge Sort, Quick Sort, Binary Search. November 20th, 2017

CS 137 Part 8. Merge Sort, Quick Sort, Binary Search. November 20th, 2017 CS 137 Part 8 Merge Sort, Quick Sort, Binary Search November 20th, 2017 This Week We re going to see two more complicated sorting algorithms that will be our first introduction to O(n log n) sorting algorithms.

More information

Symbol Tables. ASU Textbook Chapter 7.6, 6.5 and 6.3. Tsan-sheng Hsu.

Symbol Tables. ASU Textbook Chapter 7.6, 6.5 and 6.3. Tsan-sheng Hsu. Symbol Tables ASU Textbook Chapter 7.6, 6.5 and 6.3 Tsan-sheng Hsu tshsu@iis.sinica.edu.tw http://www.iis.sinica.edu.tw/~tshsu 1 Definitions Symbol table: A data structure used by a compiler to keep track

More information

1995 Paper 10 Question 7

1995 Paper 10 Question 7 995 Paper 0 Question 7 Why are multiple buffers often used between producing and consuming processes? Describe the operation of a semaphore. What is the difference between a counting semaphore and a binary

More information

EECS 122: Introduction to Communication Networks Final Exam Solutions

EECS 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 information