views:

186

answers:

4

I am looking for a project idea in distributed processing on Unix based systems. I wish to use only the C programming language. I have to finish the project in 4 months and it's a part of my course work. Can someone help me with an idea?

A: 

Yeah.

Why not write a distributed compiler. You may then present an interface for people to compile things on the fly, and it will be passed to your distribute compilenet. Java is probably well-suited, and you'll get to do fun things, like be very mindful of security and so on.

Noon Silk
Java isn't all that much like C and the question does say 'only C'... :D
Jonathan Leffler
Weird; I missed that :) Same rules apply though; except it's just a lot harder.
Noon Silk
+1  A: 

It is hard to answer without knowing anything about performance, the scale of the project, what you are trying to accomplish, etc. For example, is it one task or multiple tasks? Is the project just totally open? 4 months is pretty short, but maybe some kind of physics problem or math problem. Sorting or some kind of database work might be dull but beneficial. Check out mapreduce for ideas! I was really motivated by this work, personally. We used distributed processing here at work, but it's such a broad field..

Hayato
+2  A: 
  1. Cryptography problems
  2. Distributed Ray Tracer
  3. Chess AI (really, AI for any game)
  4. Large Prime Number Search
  5. Web crawler or other search mechanism
  6. Generic Problem Solver (push out problem definition on the fly, followed by problem data).

Note on the last one:

An example would be if you have a gaming website with lots of board games that you were coming out with all the time. You don't want to have to install new clients on all your servers every time you write a new AI for a board game, so you have a program which you can send new AIs to and then after that you can just send the game data and the pushed AI will be used to solve the problem. This is best used for problems which can be broken into smaller chunks.

tster
A: 

The BOINC project is always looking for help and is very interesting:

Shane