- linux mini projects for college
- Posted by avadhoot on November 24th, 2003
Hello guys and gals
I am a student , studying computer science engineering in
India. We have a project to do in the next 3 months. I have decided to
make a project in which linux is an integral part. To give you an idea
, as to what kind of projects are normally done, I have given some
examples.
1.Recognising Hand Written statements.
2.Sending files from one pc to another using a protocol.
Normally the source code for a program is about 5000 lines or higher.
I ask , can some of you suggest any idea or a topic , on which I can
make a project based on linux. Also, any other ideas will be most
welcome. Thank you.
- Posted by Mattias Honrendgard on November 24th, 2003
avadhootak@rediffmail.com (avadhoot) wrote in message news:<2d074094.0311240307.7d0591e6@posting.google. com>...
Something quick and small. Hm. I'd probably start by thinking about
which little utility you would find useful. Then ask the non-techie
people around you for ideas - they normally come up with some good
ideas, and a lot of programs are written simply to make things easier
for the non-tex of the world 
- Posted by joseph philip on November 25th, 2003
On Mon, 24 Nov 2003 03:07:53 -0800, avadhoot wrote:
How about writing a file manager?
1. Tree view that keeps in sync with the directory list view. Say you
click or open a folder. The tree view should position to that folder,
expand it and display a list of sub folders.
2. Tree view with lines following the hierarchy. Something like konqueror,
but god forbid, not K'd memory foot print.
3. You should be able to fork off independantly running jobs ( say copy
from folder a to b, move from /mnt/remote/backups/ to /mnt/forburn/. May
be you could give it the ablility to queue these jobs, like with "cp
/mnt/f1/*.tgz /mnt/forburn/ && cp /mnt/f2/*.tgz /mnt/forburn && ..."
4. File associations based on extensions and the magic number, so you can
click on a "#!/bin/bash" script and have it run, as well as invoke say
"mplayer" for the avi's...
5. Get it working on a linux machine with a 4GB hard disk, 64MB memory and
a 4MB video card.
I suppose you could call it an exercise in Human Interface Design...
How about a GUI tool to handle traffic control and firewall configuration
under linux? Why both? well, it is a common practice to use iptables
rules to mark packets and then tc rules that do something based on that
firewall mark. Also, things can get pretty annoying when you have to look
at multiple layers and specify match rules in tc.
Or how about this:
An nntp client that runs as a daemon 24/7, which you control and interact
with via a java app. Use sockets.The java app looks like an ordinary nntp
client.
1. In the gui, you select articles to be downloaded and tell the daemon to
enqueue them.
2. Daemon will, at some specified time (when network load is low perhaps?)
go online and get them for you.
3. Daemon should be able to decode binary posts in quite a few well known
formats.
4. You should be able to extend this decoding capability without
re-compiling the whole thing.
5. Daemon should be able to open up one job queue for each nntp server it
should fetch articles from
5. Daemon should be able to open more than one connection to the same
server and do multiple downloads. This should be configurable on a
per-server basis.
6. Some nntp servers react badly to multiple connections, expecialy at
high load times. The daemon should back off and try again after a
configurable interval of time has passed.
7. Multipart articles that are incomplete on one server may be complete on
another configured server. Daemon may, if configured to do so, pull fills
from the server with the missing pieces.
8) Take into consideration what the real memory of the system you are on.
For example, if you have 64MB, and about 30MB is already commited, try not
to exceed 20MB and run into the swap. This means you will have to dump to
disk quite often.Make your IO efficient.
Component suggestions:
1. Daemon (obviously)
2. java app (of ocourse)
3. worker factor: this creates workers that carry out the jobs the daemon
dispatches to them. More servers or parallel downloads=more workers 3.
4) workers:
a) nntp workers: these talk to remote nntp servers and dl/ul articles.
b) decoders/encoders: These decode or encode the articles to be posted
by nntp workers.
c) Article processors: Do something with the decoded articles like run
tar xvf or look for patterns or pipe the text to a waiting java client.
This might give you something to chew on.
Remember, this is a student project, so don't over-dose on the "cool"
crap.
- Posted by avadhoot on November 25th, 2003
I thank joseph phillip for coming up with so many ideas. I thought
that giving my level of expertise will also help u guys and gals to
come up with ideas.
I have studied OOP's,C,8086 assembly language.I can say that I have a
good command over it.I have been working on linux for the last 1 year.
I am not perfect in Linux, but do have a working knowledge . Also I
have studied design of algorithms,logic design and the protocols
involved in networking. I have also done a text editor using GTK.
Some of my own ideas are
1. Can I create a kind of C compiler which only checks whether a given
program is correct or not.
I hope to receive more ideas from you guys and gals.Thank you
- Posted by spike1@freenet.co.uk on November 27th, 2003
avadhoot <avadhootak@rediffmail.com> wrote:
Course you could...
You're talking about writing a parser/lexical analyser without doing any
compilation.