Hi List,

New Year greetings to all!

I am working on a small project and want to learn about implementing 
simple plugins in C. I have already done some research on plugins. They 
are generally implemented using dynamic libraries ( dlfcn.h? ).

My project involves taking a simple user command and process it using 
different algorithms ( based on user's choice ). Each algorithm is 
implemented as a plugin. The program should launch the plugin in a 
separate process/thread and wait until it completes the processing. The 
advantage of this model is that, if required, the program can use 
several algorithms simultaneously to process the same command.

So I need to learn how to program:

1. Processes
2. Threads
3. Plugins

I know one comprehensive resource is not available to learn all of the 
above. Any inputs are appreciated. I like to learn by example. If 
anyone has links / e-books / tutorials which teaches the above using 
examples then please post them here.

Also, I am a bit confused about how exactly plugins are implemented. In 
my case, all algorithms perform the same task but internally the 
processing differs. So do i implement a common API which my main 
program ( can I call it a server? ) will use to communicate with that 
plugin? Once the API standardized, can people simply add new algorithms 
by implementing the same API?

One more dilemma I face is whether to use processes or threads? With the 
newer multicore ( and the older HT ) architecture processors, what 
would be better to use? Processes or Threads?

Ofcourse it goes without saying I'm using Linux, gcc :P

P.S.: Anybody know a good resource for debugging using gcc, gdb?

-- 
Regards,
Dinesh A. Joshi

-- 
http://mm.glug-bom.org/mailman/listinfo/linuxers

Reply via email to