C Linux open source projects [closed] - c

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 12 years ago.
Sorry if this has been asked elsewhere. I am a C,Win32 developer and want to learn similar stuff in the linux world. What are the best and easy opensource projects for learning similar stuff on Linux.
Like in C,Win32 world i want to start off with User space and onto advance stuff like internals,device drivers etc. I am interested in Non UI stuff. As i have a day job and work extensively on Windows i would like to see short little projects and contribute to them in free time.

The GNU coreutils are probably as low-level and as "Linux-ey" (that's not really a word, is it?) as it gets in user space. Not always easy-to-read code, but most of those sections are bugfixes of one kind or another. So, you'll learn about some pitfalls of modern unix-like systems on the way. That, and most of the basic unix programming principles.
As most utilities are very small, just trying to rewrite some only with the spec from the manpage should give you insights into Linux (or unix for that matter) no tutorial can offer.

The book Linux Device Drivers is freely available. You can get a good overview of what's going on "under the hood" reading through that book. It also has several examples of "virtual" device drivers that don't interact with actual hardware. Follow the sample code and you can create things like a driver for /dev/null, /dev/random, etc without having to worry about hardware interfaces.

The best advice would be to pick one and stick with it no matter how overwhelming it is, once you get your feet wet in it, enjoy... this is a $64,000 question -
What specific areas of C/Win32 did you enjoy most?
Was it hardware based?
Writing drivers?
No one can answer that nor expect to pick the answer for you, except yourself....
What was it that gave you a "high" in the Win32 C world...
Once you have that answer, then look for that alternative, somewhere, in the Open Source world....and relax, participate in IRC channels, forums, and engage.
You may have to re-learn using make/gcc toolchains and autotools in order to get your feet grounded...if you're comfortable with that... excellent... :)
Some will have their coding style and standards set down in stone... so pick the easy project that you feel you'll get a kick out of, and above all, ENJOY! :D

what are you interested in ?
The nice thing about linux is that the source for almost everything is available.

Related

GUI for Text Steganography C program [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 9 years ago.
How to develop a GUI for my program.I have made a c program to encrypt and decrypt any secret text message. I am hiding the message in the spaces between the words.
There are some GUI frameworks for C.
GTK is one of the most used when porting Linux applications
IUP is very lightweight
other listed on Google
However, my preferred solution to to add a rich GUI to C programs in a quick way, is to use Tcl/Tk. You can separate completely your application from the interface, test the C code at your leisure using the command line and concentrate on the GUI as a separate effort.
There are two possible approaches for mixing Tcl/Tk and C:
Create an executable and call it from the Tcl/Tk GUI with [exec ... ]
Create a DLL and call the functions as tcl commands
The first approach is extremely easy but might be unsatisfactory from an esthetic point of view.
The second approach is a little bit more complex and has two variants: create a real tcl module or use [ffidl][4] to call the dll directly. This time, the second is simpler than the former.
Finally, if you need to have a single, self-contained executable you can rely on tclkit which will embed everything you need in a single executable.
P.S. I see from one of you comments that your on Windows. You can create Windows GUI directly in C (here is an old tutorial) but I can ensure you it's a real pain! If you want something more modern you have to switch to C++
To develop your GUI, you could use GTK: https://developer.gnome.org/gtk-tutorial/2.90/ .

Unix source code- finding my way around [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 11 years ago.
I'm quite interested in getting "stuck in" to some Unix source code, say Fedora or Ubuntu.
In practical terms, how would one "re-write" some part of the Unix OS. I presume you would need two machines, a dev machine and a tester? Would you need to re-install the OS on each modification of a .c file? How could I edit the file and re-compile it etc?
What resources are there for knowing which parts of a Unix OS/Kernel relate to which C files (I presume there is no C++) and how to find them?
Thanks in advance for help
ps my motivations for doing this are to eventually be able to learn more about the lower-level fundamentals of the Unix OS, so that I could try and get into programming high freq trading systems.
I think it would probably be a good idea to have some kind of virtual machine to experiment with, that way you could do a snapshot apply your changes but still be able to go back without much effort. Also it allows you to simulate communication between PCs in a simple fashion.
First you need to know what you're looking for. You want to download and look at the: linux kernel. Which is the same for Fedora and Ubuntu (and all other GNU Linux distributions). Second, you might want to start with something easy, like downloading the kernel, configuring and compiling it and booting it. Once you do that you can move up from there.

Best Platform For Facebook Game [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 9 years ago.
I realize the question seems very broad and subjective, but I'm mostly looking for suggestions on a platform choice so that I don't paint myself into a corner later on (I'm more familiar with client-side programming, so excuse the lack of proper server jargon).
First: I am building a game. It will be multiplayer, with some real time interaction between players. Obviously, I'm not talking FPS, or even at the scale of a RTS, but something similar to what the Google Channel API does in terms of messaging.
I'm looking for the best Server/Client pairing.
Now, I've come to the realization as a result of my day job, that C# has become by far my best language. I'm also getting very familiar with WPF, so Silverlight seems like a natural extension of that understanding.
From what I can find search-wise, Silverlight is not a popular Facebook app platform. Is there a reason for this?
What's the "standard" client-server pairing? Is it Flash for the front end, what's the back end?
Does anyone have a favorite pairing? Easy to prototype/dev test?
Is there a good clientside platform choice that has an open source game engine, and can also reach a majority of browsers (i.e. the iPad as well as desktops)?
Edit: I have also stumbled upon the Windows Azure Social Toolkit. Anybody have an opinion on using that as a starting place?
http://watgames.codeplex.com/
Most social games use Flash for the front end because of its market saturation, roughly 98% right now. If you use anything else, you will lose potential users for two reasons: 1) some users cannot install the platform you want to use (e.g. a work computer with no administrator access) and 2) some users can, but they don't want to install the platform you want to use.
As for the back-end, there is no "standard" and is more a matter of taste and preference. Use what you're most comfortable with and prefer to code in.
Just make sure whatever back-end architecture you choose allows you to add more application servers and database servers without having to bring the game down. The easiest solution is probably distributed key-value databases (e.g. Cassandra) for this.

Useful Source Code Examples of C? [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 11 years ago.
I'm currently delving into learning C and whilst I'm not far into the process, I'd like some examples of fully-functioning windows applications complete with source code that aren't too complicated to study - things like calculator/notepad?
Anybody got any links to where I might find a good few examples beyond the 'converting kgs to stones' or calculating speed from time and distance?
Would certainly help my inspiration. :D
Thanks.
Did not answer exactly what you asked,but ...
Tring to solve some Euler problems is a good way to familiar with the language features.
http://projecteuler.net/
If you want examples of existing C projects, browse github/sourceforge.
I wonder though - why do you want to learn C? Seeing as you're new to C, I'm assuming you might actually mean C++.
What background are you coming from and what do you want to achieve? If you want to try some algorithms, pierr's answer is a good one to get used to any language. Also, if you're interested in learning the language detail/algorithms, avoid shiny UI temptation and stick with the command line.
If you're starting programming for the first time, glenn's answer is a good start.
If you're just interested in Windows application development, this MS tutorial looks like a good start.
If you are moving from another language, look for a specific guide (e.g. Java to C++) to fill you in on the details quickly.
There are multiple websites with numerous tutorials:
C programming
C tutor
Also, be sure to look into pointers:
something on pointers
Hope this helps

Using game of life or other virtual environment for artificial (intelligence) life simulation? [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 13 years ago.
One of my interests in AI focuses not so much on data but more on biologic computing. This includes neural networks, mapping the brain, cellular-automata, virtual life and environments.
Described below is an exciting project that includes develop a virtual environment for bots to evolve in.
"Polyworld is a cross-platform (Linux, Mac OS X) program written by Larry Yaeger to evolve Artificial Intelligence through natural selection and evolutionary algorithms."
http://en.wikipedia.org/wiki/Polyworld "
Polyworld is a promising project for studying virtual life but it still is far from creating an "intelligent autonomous" agent.
Here is my question, in theory, what parameters would you use create an AI environment? Possibly a brain environment? Possibly multiple self contained life organisms that have their own "brain" or life structures.
I would like a create a spin on the game of life simulation. What if you have a 64x64 game of life grid. But instead of one grid, you might have N number of grids. The N number of grids are your "life force" If all of the game of life entities die in a particular grid then that entire grid dies. A group of "grids" makes up a life form.
I don't have an immediate goal. First, I want to simulate an environment and visualize what is going on in the environment with OpenGL and see if there are any interesting properties to the environment. I then want to add "scarce resources" and see if the AI environment can manage resources adequately.
Since you said "in theory", that implies you are interested in reading a lot of academic papers on the subject, because I think there's plenty of theoretical work out there, usually supported by proof-of-concept experiments.
I took a class on this 3 years ago, so my knowledge is both introductory and out-of-date, but try searching for something like "neural network language evolution" on Google Scholar*. The simulations in those papers should give you some ideas of what other researchers have tried. Then, a good place to start is to replicate one of the experiments that you find interesting.
Disclaimer: I had to do just that for the class, and it sucked. I decided that I preferred working programs to theoretical experiments. But you said "in theory" so this might be the kind of thing you really like.
*Sorry, I can't remember the exact papers we read.

Resources