User Tools

Site Tools


faq

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
faq [2021/03/17 14:26] jxufaq [2021/04/03 20:30] jxu
Line 12: Line 12:
 If any member of any assignment group wishes to receive any credit for any assignment, that assignment group would need to hand in the assignment on or before the assignment due date. If any member of any assignment group wishes to receive any credit for any assignment, that assignment group would need to hand in the assignment on or before the assignment due date.
  
 +Also see the option in the Answer to Question 23.
  
 **Question 2:**  **Question 2:** 
Line 23: Line 24:
 (even if in the whole group there is only one member who is (even if in the whole group there is only one member who is
 willing to work to complete the assignment). willing to work to complete the assignment).
 +
 +Also see the option in the Answer to Question 23.
  
 **Question 3:**  **Question 3:** 
Line 198: Line 201:
 Then try to write code which computes the Average Waiting Times and Average Turnaround Times for any set of user input parameters above. Then try to write code which computes the Average Waiting Times and Average Turnaround Times for any set of user input parameters above.
  
-**Once you have got the code for the very basic and simple Java program described above working, then try to gradually add additional features, in order of difficulty**, to the code. For example:+//**Once you have got the code for the very basic and simple Java program described above working, then try to gradually add additional features, in order of difficulty, to the code**//. For example:
   - First try to allow processes to have //**different CPU Computation Times**//.   - First try to allow processes to have //**different CPU Computation Times**//.
   - Then try using //**C2. Nonpreemptive Shortest-Job-First (SJF) Scheduling**//. (The only difference in this case, is that, whenever the CPU becomes available, the Nonpremptive SJF CPU Scheduler always removes from the ready queue the process which has the smallest CPU Computation Time among all processes in the ready queue, and allows that process to start executing on the CPU.   - Then try using //**C2. Nonpreemptive Shortest-Job-First (SJF) Scheduling**//. (The only difference in this case, is that, whenever the CPU becomes available, the Nonpremptive SJF CPU Scheduler always removes from the ready queue the process which has the smallest CPU Computation Time among all processes in the ready queue, and allows that process to start executing on the CPU.
Line 204: Line 207:
   - Then try using some of the //**Preemptive**// CPU Scheduling Algorithms C3, C5, C6. (In this case, whenever a process which is currently executing on the CPU is preempted by a process with higher priority, that preempted process which has lower priority is put back into the ready queue.)   - Then try using some of the //**Preemptive**// CPU Scheduling Algorithms C3, C5, C6. (In this case, whenever a process which is currently executing on the CPU is preempted by a process with higher priority, that preempted process which has lower priority is put back into the ready queue.)
   - Then try to allow each process to make //**one single request to perform I/O**// for some I/O Time on one single I/O device after completing its first CPU Computation Time, while for CPU Scheduling only use one of the //**Nonpremptive CPU Scheduling Algorithms**// C1, C2 or C4. (In this case, an I/O queue is used, and processes are entered at the end of the I/O queue whenever they request I/O. Whenever the I/O device is available, the Nonpremptive FCFS I/O Scheduler always removes from the I/O queue the process which is at the front of the I/O queue, and allows that process to start performing I/O on the I/O device for the full duration of its I/O Time before that process makes the next request to execute on the CPU - after completing I/O the process will be entered into the ready queue.)   - Then try to allow each process to make //**one single request to perform I/O**// for some I/O Time on one single I/O device after completing its first CPU Computation Time, while for CPU Scheduling only use one of the //**Nonpremptive CPU Scheduling Algorithms**// C1, C2 or C4. (In this case, an I/O queue is used, and processes are entered at the end of the I/O queue whenever they request I/O. Whenever the I/O device is available, the Nonpremptive FCFS I/O Scheduler always removes from the I/O queue the process which is at the front of the I/O queue, and allows that process to start performing I/O on the I/O device for the full duration of its I/O Time before that process makes the next request to execute on the CPU - after completing I/O the process will be entered into the ready queue.)
-  - Then try to allow each process to make //**one single request to perform I/O**// for some I/O Time on one single I/O device after completing its first CPU Computation Time, while for CPU Scheduling only use one of the //**Preemptive CPU Scheduling Algorithms**// C3, C5, C6.+  - Then try to allow each process to make //**one single request to perform I/O**// for some I/O Time on one single I/O device after completing its first CPU Computation Time, while for CPU Scheduling use some of the //**Preemptive CPU Scheduling Algorithms**// C3, C5, C6.
   -  …    -  … 
  
Line 217: Line 220:
 When adding each additional feature, write code which computes the Average Waiting Times and Average Turnaround Times for When adding each additional feature, write code which computes the Average Waiting Times and Average Turnaround Times for
 any set of user input parameters above.    any set of user input parameters above.   
 +
 +**Question 21**: For assignment 2, do we implement all the different schedulers mentioned in section C of the assignment document? Or do we pick just one of them to implement?
 +
 +**Answer to Question 21**: Assignment 2 requires implementing ALL the different schedulers mentioned in section C of the assignment document. 
 +
 +**Question 22**: Does every group member have to submit the assignment 2 or can one person do it?
 +
 +**Answer to Question 22**: Assignment 2 can be submitted by one member of each group.
 +
 +**Question 23**: I believe that my entire group’s work on Assignment 2 and /or my own individual contribution to Assignment 2 has been severely and negatively impacted by one or more abnormal circumstances / factors / situations beyond our / my control. Can accommodation be provided in such cases?
 +
 +**Answer to Question 23**: If you believe that your entire group’s work on Assignment 2 and /or your own individual contribution to Assignment 2 has been severely and negatively impacted by one or more abnormal circumstances / factors / situations beyond your control, you may fill out a Request for Special Consideration form, and submit it to eClass on or before one week (7 days) from the Assignment 2 due date, and the weight of your Assignment 2 will be transferred to the weight of your 2011N W21 final exam.
 +
 +**Question 24**:  For designing two systems for searching, inserting, and deleting key-value pair entries, what kind of data are we managing? 
 +
 +**Answer to Question 24**: Your question has already been answered by the Assignment 3 specification:
 +
 +“…
 +Section 1.1. System Characteristics, Requirements, and Constraints for both of the two High Performance, Robust Embedded Automotive Information Systems with significantly different designs:
 +
 +(a) Each entry in the system consists of a key-value pair (k, v), where k is the key and v is the value. 
 +
 +(b) The key for each entry is unique, that is, two different entries will not have a same key. The key for each entry is a character string. No advance knowledge can be assumed about other characteristics of the keys. 
 +
 +
 +(c) The number of entries in the system can be very large, but the system can still fit into main memory.
 +
 + 
 +(d) Search, insertion and deletion operations on the entries in the system are equally likely.
 +
 +(e) The primary system performance criteria is speed, that is, under normal circumstances the search, insertion, and deletion operations should be as fast as possible. However, since this is an embedded automotive information system, the system is also expected to be robust in the sense that one should still be able to guarantee good, predictable, and verifiable performance of the system even under worst-case scenarios, possibly even including when under malicious attacks. 
 +…”
 +
 +**Question 25**:  For Assignment 3, are we making an interface of some kind of IVIS?
 +
 +**Answer to Question 25**: No, there is no need to make an interface of some kind of specialized IVIS. The interface only needs to be able to input data that is of the type that is specified in Section 1.1 (a) – (e) of the Assignment 2 specification.
 +
 +**Question 26**:  Will we be getting an example for Assignment 3?
 +
 +**Answer to Question 26**: No. There is no need for an example for Assignment 3.
 +
 +
 +
faq.txt · Last modified: 2021/04/26 22:20 by jxu