Monday, November 16, 2009

I got 2GB Sansa Mp3 player, as a complementary accessaries with Nikon CoolPix L20.
My Mp3 Player freezes, when I am charging it and accedentally unplug it, witout ejecting it. Some time it hungs while plying Song.

After couple of try I found few solutions that can reboot Sansa MP3 Player, and it works with my Sansa MP3 player.

1. Turn ON the Hold switch. (move hold button to Hold Position)
2. Press and hold Menu and Rec buttons at the same time until the Sansa MP3 player reboots.

This tutorial will explain you, how to Install and use ClamAv Antivirus on Ubuntu. ClamAv antivirus is a free antivirus, available in ubuntu repository.

To install ClamAv antivirus and GUI to manage it on ubuntu 9.10, use Ubuntu Software Center to install "KlamAV". KlamAV is an anti-virus manager for the KDE desktop. It allows virus scanning, software/update databases, etc.

I am using "KlamAV" as a GUI tool to manage and use ClamAV antivirus. You can also use "clamtk" as a GUI to use CLAMAV in Gnome or KDE.
Use following command to install "clamtk"sudo apt-get install clamtk

Once it is installed on your machine, then install anti-virus updater, so that you can get latest update of ClamAV from Internet.

sudo apt-get install clamav-freshclam

Use command "sudo freshclam" to updateClamAV database.

To check the version of ClamAV use following Command:clamdscan -V

To do command line scanning:1. To scan specific folder:sudo clamscan -r /home/directoryname/subdirectory Above command will display the name of files in subdirectory on the screen. You can use -i parameter to display only infected files. 2. To scan all files on your computersudo clamscan -r --bell -i / Above command will display only infected files and will bell the ring when virus found.
3. To remove infected file from your computer
sudo clamscan -r -remove /

Now, take next variable from function body, which is f. f is a function that take g as argument and return value of any type, say return type is a. So far, there is no restriction of return value of f. assume type of f is t1-> a. That is, (f = t1 -> a).

Now, take next variable, which is g. g is a function that takes return value of function f as a argument (a), and returns value of any type, say return type is b. So far there is no restriction of type of value return by g. But we already assume g is of type t1. Now, we found that g is function so, t1 is a - > b.
That is, (g = g = t1 = a -> b).

Now replace t1 in f with (a -> b). So f becomes f = (a -> b ) -> a

we have done with function body. Now look at function declaration syntax. It takes two arguments f and g, and f is first argument, g is second argument, and return value is of same type of return value of g.

So type of function \f g -> g (f g) is as follows:

((a -> b) -> a) -> ( a -> b) -> b

4] \ x f g -> f g (x g)

Above function accepts three arguments x, f and g. Assume g is of type a. that is,(g = a). Now, x takes g as a argument and returns any type of value. So far there is no restriction on type of value returned by x, say return type of value is b. Therefore, x = a -> b

Now, f takes two argument g and return type of x. Return type of f has no restriction, so say it is of type c. Therefore, f = a -> b -> c

(Note: For simplicity as assume g as a variable. And is of type a. However, you can consider it g as a function then you have to unify a = d->e and replace all occurrences of a with d->e)

Return type of f is the return type of this function.

Now look at function definition and arrange its type accordingly.

\ x f g -> f g (x g) type is as follows:

(a -> b) ->(a -> b -> c)-> a - > c

5] \ f g x -> f ( g x)

Above function takes three arguments, namely, f , g ,and x.

Assume x is of type a., That is ( x = a)

Now g takes x as argument and returns a value. Assume return type of g is b.
Therefore, (g = a -> b)

Wednesday, November 4, 2009

Extension and plugins often confused people. And Mostly people believe both are same.
However, there is subtle difference between Extension and Plugin. Extensions are mostly written in JavaScript and/or XUL and relies on XPCOM APIs to access resources. Whereas, plugins are binary applications and they make use of operating system and can do interaction with operating system or access events from OS.

Securing plugins is more complex than extension. Extension are individual identity so one extension needs one set of privileges, whereas plugins are more complicated and needs to identify privileges for each application runs plugins rather than a whole plugin.