Originally Posted by C-bro
1) Are you trying to figure out the math or the coding?
2) Do you have to write the code based on that API description, or are you just trying to figure out how to use those existing methods to make your own program?
3) What is this for?
1) Which functions doing what and how the program cycle is working. I am not so fimiliar with Java.
2) I have the code, I just need to understand what's going on, and how to compile it.
3) Forced to do an assignment on Java, and this language I won't be using it as I do pretty much everything in PHP.
Originally Posted by Pasha
This seems more of a logic problem then a problem with the code itself. What can't you figure out?
It is a bit too difficult for me
When you enter a modulus (which is a multiple of two prime numbers say 17*19 = 323 <= modulus) then it converts that input into string. Then we calculate the number of bits. That result is divided into two halves, and then we check how many clients are connected, and dispatches the job to them. The server waits until any of its clients finds the result, the client sends the result to the server and then server terminates all of its clients and find those two prime numbers and then prints it on the screen. The server also prints the starting and ending time of the task.
If one client is disconnected then the server sends unfinished job to the available client (fault tolerance). Client sends their status after every 2^16 bit calculation. This is in the word document. Proceed to the java stuff. RSA theory is not important
As far as I checked following classes do the following job:
1. Divider.java divides the input modulus (variable numerator of string type). I don't know how BigInteger manipulation works. Say if variable numerator = 33 then what will be the resultant number of bits and what does integer.pow((count/2)+1)).toString(); line does. I have no idea how it interacts with server and client
2. Ranges.java: If I am correct, it divides ranges among clients. How it does, I have no idea.
3. Calculator.java: I don't know what it does
4. WrongOutputException.java...I don't know what it does but it does something
5. Client folder has client program modules. I don't know what they do. I need to know what these classes are doing
6. Components folder got something. I don't know what is inside I need to know what these classes are doing
7. Server part got server modules. What they do? Only God knows.....I need to know what these classes are doing
The executables in the folders are not important I assume. They are probably garbage but I am still keeping them in .rar file
1. The question that was asked by my superior:
"What I would be interested too is how you subdivide and distribute the tasks to the different clients, and how you plan to recover partially completed tasks from unavailable clients. Do you have any thought about this already?
2. Also, when you will start the program then you will see START RANGE and END RANGE in server application. How these number come? How PROCESSED number come?
3. I would like to know how to run and compile those .java files. Do I need Borland JBuilder 2007? Is any modification to interface needed?
1. Source Files (http://muamshai.com/project/source.rar
2. Short Description (http://muamshai.com/project/Shortdescription.doc
3. Compiled Client (http://muamshai.com/project/Client.EXE
) and Server (http://muamshai.com/project/server.EXE
4. Setup video:
Here is the setup video (hxxp://www.muamshai.com/project/Video0.wmv
replace hxxp with http so that you can download the video file. This site starts to play wmv videos on the browser
The server module needs to be started first...
Hope that this won't disturb your daily routines, and if you think that this is way beyond "a bit of help" then let me know Edited by Oombongo - 6/10/08 at 10:54pm