Unix source code- finding my way around [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 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.

Related

How to compile OPENSSL (RSA,DSA,HMAC) in Windows Kernel Driver? [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 want to compile openssl mostly RSA, DSA and HMAC in windows kernel driver. Basically i want to extract the given algorithm and compile only them. Has it been done? or are there any alternates?
Please explain what you mean by "mostly RSA, ..." and "in windows kernel driver".
OpenSSL is cryptographic software. The algorithms within are fragile, in that minor mistakes in how they are used can have catastrophic results. So, unless you really know what you are doing (and in that case you wouldn't be asking here, now would you?) to keep your fingers firmly seated in your pockets.
Perhaps NaCL is nearer to what you need? Or some other cryptographic library?
I'm doing exactly what you're saying: extracting the algorithms I need from OpenSSl to a small and compact library. It can be done and it's, according to my experience, a very painful process. You'll end up being forced to include more modules than you expected. Due to lack of documentation, you also need to go through the source code to understand module functionality most of the time. My suggestion is: don't do this unless you have no alternative.

Face Detection(Haar) without opencv [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 am currently working on a face detection program using haar classifiers(I am using the sample program that comes with opencv installation).What i need to do is to extract this code out of opencv and make the code work without opencv libraries i.e. without opencv installed on both windows and linux desktops.I have been trying to do this for a while but with no success.Any suggestions on how to do this?
Thanks in advance
OpenCV is a very sophisticated imaging library. The sample program will use the library(!), you cannot simply run the code without the library.
You won't get any performance benefits running "copy-pasted" OpenCV code on BeagleBoard's DSP.
C64x is a fixed point DSP, floating point support is done in software. So you will need to convert OpenCV code to fixed point, to use full power of DSP
Main bottleneck of cvHaarDetectObjects() is not calculations, but uncached memory access during feature calculation, so you won't get any benefits in running it on DSP as-is.
What you can try is to port functions like cvIntegral() - they might be accelerated on DSP.
Check this:
http://elinux.org/BeagleBoard/GSoC/2010_Projects/OpenCV
http://code.google.com/p/opencv-dsp-acceleration/
http://www.computer-vision-software.com/blog/2009/04/fixing-opencv/
http://pramodpoudel.blogspot.com/
And this - running Viola-Jones on ARM7
http://cmucam.org/wiki/viola-jones (especially CC3 Face Detector document)
http://cmucam.org/browser/trunk/projects/viola-jones

Compiler Design Help [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 12 years ago.
Are there any lexical, syntactic, semantic analyzers and optimizers available for download with the source code, preferably in C/C++...???
Do you want a C compiler? Yes there are so many available. You might wanna start with gcc.
I would take a look at the LLVM project. If you're looking to build a compiler of your own, targetting this architecture is quite a good idea. LLVM itself has it's own intermediate representation for assembly syntax, for which many languages, including C and D already have frontends.
You might also want to take a look at this thread from a mailing list I am part of which discusses a number of "language backends" including Parrot etc; basically a set of processors that bring languages like C, C++, Python etc down to a common level.
I am not nearly expert enough in this area as I'd like to be, but these technologies appear to be getting the experts excited. I am seriously considering getting up to speed on them.
Your question is very poorly formed. You should have googled for this.
Assuming you're writing your compiler in C (based on the tag), there's flex, quex and ragel.
To help you write your parser, there's bison.
You can Check out the Java Compiler source code:
http://openjdk.java.net/groups/compiler/

C Linux open source projects [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 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.

Modifying an open source 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 10 years ago.
I would consider myself a fairly competent programmer with experience in Java and VB.net. My latest swim around the programming lake is having me modify a program written in C. (The program is Wireshark, an open source network analyzing tool.) I followed the instructions here http://www.wireshark.org/docs/wsdg_html_chunked/ChSetupWin32.html and simply don't know where to go from there. I'd like to use Visual Studio 2008 to work with the code if possible, but will do whatever is necessary. (I'm a total noob at using command prompt to do anything though.)
If you followed those steps, then you've built it. I'll copy Section 2.2.10 here.
2.2.10. Build Wireshark
Now it's time to build Wireshark ...
If you've closed cmd.exe in the meantime, prepare cmd.exe again
nmake -f Makefile.nmake all to build Wireshark
wait for Wireshark to compile - this may take a while!
run C:\wireshark\wireshark-gtk2\wireshark.exe and check if it starts
Just make changes in the code, do these steps over again, and presto! you've modified the program. You may want to bone up on C debuggers if you're doing anything very complicated.

Resources