In this assignment, you are to implement the Resources module of OSP2. The project files are available from http://www.cs.sunysb.edu/~cse306/Resources/ and extensive documentation on the Resources module can be found in Chapter 8 off the OSP manual. In particular, you are to implement the Banker's algorithm for deadlock avoidance, but you are to heed the warning that appears in Chapter 8 of the OSP manual regarding resouce allocation and request matrix representations. See Chapter 6 of the course textbook by Stallings for a description of the Banker's algorithm, and attend the corresponding clas lectures.
The statistics of interest to the Resources module are ResourceAcquireCount and ResourceReleaseCount. You should track these statistic during simulation and make sure that they appear reasonable. Run the demo version of OSP distributed with this assignment to get an idea of what "reasonable" means. Your simulation should run to completion without warnings or errors, and resources should be granted to threads whenever the Banker's algorithm says they should.
Your code is expected to be commented in a professional-looking manner and you are also expected to follow good programming practices. For example, you should use the try and catch exception-handling constructs of Java wherever appropriate.
To enable us to check your CVS logs, you must allow us to log into your account using Secure Shell, or ssh. We do not need to know your password, but you must place certain files in your account and add some other files as explained in the general information web page. This will allow us to access your account, check logs, and run your project in a secure way. This does not expose your account to anybody else.
GOOD LUCK!