Subscribe for email updates

Get all updates to your inbox to stay tune.

Curve tracing programs - Draw sin(x) curve using Graphics programming in C

Learn how to draw curve tracing graphics programs in c language

Graphics programming in C

Learn how to write basic and advanced graphics programming in c language

Curve tracing programs - Draw Cos(x) curve using Graphics programming in C

Learn how to draw curve tracing graphics programs in c language

Make file tutorial

A step by step guide to learn how to write make file in Linux with examples

Monday, January 30, 2012

Power of Proc-7: process exe file path

Another intresting entry in proc file system is "/proc/[pid]/exe"
this file shows to a binary file which the process or command
is associated with.

Lets see an example:
1. Chose crond process. Process id is 1379
cooltips# ps -eaf | grep cron

root  1379     1  0  2011 ? 0:00:07 crond

Here ps is showing only process name in the above output,
to look at the exact command which is being used to run
the process can be seen in step 2.

Sunday, January 29, 2012

Power of Proc-6: open File descriptors information of a process

This post  talks about one of the interesting information proc provides, that is about the open file descriptors information of a process. Looking at this info one can tell , how many file descriptors that a process own, how many of them are files, sockets , pipes and interesting entity called inotify. I will not be covering what is inotify in this post as inotify itself will be covered as a new post in future.

Lets take an example and try to see the files that a process opened.
1. Again chose same  crond process and look at the file information.

cooltips# ps -eaf | grep crond
root      1379     1  0  2011 ?        00:00:07 crond
2. See the files in the directory "/proc/[pid]/fd"
cooltips# ls -l /proc/1379/fd
total 0
lrwx------. 1 root root 64 Jan 29 21:34 0 -> /dev/null
lrwx------. 1 root root 64 Jan 29 21:34 1 -> /dev/null
lrwx------. 1 root root 64 Jan 29 21:34 2 -> /dev/null
lrwx------. 1 root root 64 Jan 29 21:34 3 -> /var/run/
lrwx------. 1 root root 64 Jan 29 21:34 4 -> socket:[9759032]
lr-x------. 1 root root 64 Jan 29 21:34 5 -> inotify
Lets go through one by one...
 the directory "fd" contains all links to files.

Friday, January 27, 2012

Power of Proc-5: Linux process environment details

Using proc file system in Linux , it is possible to get the environment details of a running process. It indicates the environment setting when the process was executed.

/proc/[pid]/"environ" file contains all the environment variable information about the chosen process.

For example:
1. Chose a process , lets chose crond
2. Identify process ID of crond

proctest# ps -eaf | grep cron
root      1379     1  0  2011 ?        00:00:07 crond
process ID is 1379

3.  Get the process environment details, by looking at content of "/proc/[pid]/environ" file

walking towards office - Beautiful scenes near wallmart,Renton

The very first experience in snow fall @renton

Still Snowing... @Renton and Seattle, WA. 
felt lack of DSLR :-(

  • Snowfall @ Renton,WA

Monday, January 23, 2012


No internet
No protocol
That is Rajinet

Hatsup to desimatrini!!

Friday, January 20, 2012


This is really cool. on Jimdaniel comment on my previous post pointing to this site. at sillywebcam site you take snaps of your wish(of course listed ones) with your webcam without installing any software. However not sure whether it serves the earlier stated purpose and also it requires internet. I feel you can have some fun with taking funny pics.

Few examples like, photo in frame, Fake magazine covers,  silly scenes, Hair styles and many many more.
Give it a try and have fun online :-)

Issue with Sudo Command without tty [Terminal].

Issue with Sudo Command without tty [Terminal].
[sudo: sorry, you must have a tty to run sudo]

/etc/sudoers file comes with requiretty option by default.
Just by disabling this option [Use visudo command] you can avoid the the following error.
[sudo: sorry, you must have a tty to run sudo]

# Disable "ssh hostname sudo <cmd>", because it will show the password in clear.
#         You have to run "ssh -t hostname sudo <cmd>".
Defaults    requiretty  <++++++++++disable this. (comment this line using #)

~Praveen Bodke.

Wednesday, January 18, 2012

Amazing - Snowfall @ Renton(Seattle,WA)

మంచు కురిసే వేళలో ....

camdesk software - a webcam widget on desktop

Sample Screen shot

Friends, Camdesk is a cool software which shows live webcam as a desktop widget. This is most useful software while giving demos sharing desktop - showing your presence also. Also useful while recording a tutorial using onscreen capture. Give it a try.

You can find more info and down load at Camdesk

Have fun :-)

Tuesday, January 17, 2012

Schedule commands in Linux - at command

'at' command is used to schedule commands to execute on specified time.

1. to schedule:
at -f     [commandfile]  [time] list scheduled jobs:
at -l

3. to cancel scheduled jobs: Use job id listed in atq
atrm [jobid]

All the above commands interacts with the daemon process named 'atd'. atd will manage and executes all jobs scheduled. By default all users are allowed to use 'at'. But it can be restricted by configuring the /etc/at.allow and /etc/at.deny files. Add username per line to restrict/allow usage.

Before using the above command make sure that the atd service is running.

To start atd service
#service atd start

Have fun :-)

Sunday, January 15, 2012

Zoom in windows desktop - cool tool

it may be required several times to zoon your screen to show few things on the screen bigger while delivering a presentation or demos. Here is a tool which will allow use to zoom in windows desktop by a key press.

click here to Zoomit

 hope you enjoy using this tools during presentations. Get rid of tweaking font size in putty..etc.


Tuesday, January 10, 2012

Drawing charts in Linux using gnuplot tool

The following article explains gnuplot tool , how to plot a graph,chart using set of user provided data.
Drawing charts in Linux using gnuplot tool

This tool can generate graph output in different file formats. for more details visit

Ptrace - useful information

Nice articles about ptrace.
1.Playing with Ptrace-1
2.Playing with ptrace-2

Very useful information how ptrace can be used, how to implement debug tools , inserting break points, modifying process code dynamically .. etc.