Monday, January 16, 2012

Features of Android

As android is open source and freely available to manufacturers for customization, there are no fixed hardware and software configurations. however, android itself supports the following features:
  • Storage -uses SQLite, a lightweight relational database, for data storage. 
  • Connectivity - supports GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth (includes A2DP and AVRCP), WiFi, LTE, and WiMAX.
  • Messaging - supports both SMS and MMS.
  • Web browser - based on the open-source Webkit, together with Chrome's V8 JavaScrpit engine
  • Media support - including support for the following media:H.263, H,264 (in 3GP or MP4 container), MPEG-4 SP, AMR, AMR-WB(in 3GP cotainer), AAC, HE-AAC (in MP4 or 3GP container), MP#, MIDI, ogg Vorbis, WAV, JPEG, PNG, GIF, and BMP
  • Hardware support - Accelerometer sensor, camera, digital compass, proximitry sensor, and GPS
  • Multi-touch - supports multi-touch screens
  • Multi-tasking - supports multi-tasking applications
  • Flash support - Android 2.3 supports Flash 10.1
  • Tethering - supports sharing of internet connections as a wired/wireless hotspot

Thursday, January 5, 2012

Linux wallpaper

10 Experimental programming Language

  1. Go
  2. F#
  3. Chapel
  4. dart
  5. zimbu
  6. x10
  7. haxe
  8. opa
  9. fantom
  10. ceylon
These are then 10 cutting-edge programming languages, each of which approaches the art of software development from a fresh perspective, tackling a specific problem or a unique shortcoming of today's more popular languages. Some are mature projects, while others are in the early stages of development. Some are likely to remain obscure, but any one of them could become the breakthrough tool that changes programming for years to come -- at least, until the next batch of new languages arrives.

Sunday, January 1, 2012

How USB work in virtualbox (linux)


VirtualBox 4 seems to have the same permission problems described for Linux. If I connect an USB drive, it appears as “unavailable” in VBoxManage or grayed-out in then guest-GUI dropdown mene, no matter what filter I define in the host settings. How can I solve it?
It is a permission problem. For a quick test, start VirtualBox as root. If your USB device is not longer grayed-out, you may have the same problem. Problem could be fixed by adding group permissions to vboxusers in your Linux.
First of all you will need VirtualBox, not VirtualBox Open Source Edition (OSE). The latter version doesn’t support USB devices. And download VirtualBox 4 Oracle VM VirtualBox Extension Pack, its support for USB 2.0 devices, VirtualBox RDP and PXE boot for Intel cards.

For Ubuntu
After installing VirtualBox 4 do the following in Ubuntu:
# Go to System -> Administration.
# Scroll down to “Users and Groups”.
# Open Users and Groups
# Click “Manage Groups”.
# When the group settings menu pops up, scroll down to vboxusers. Highlight it. Click “Properties”.
# Check the box beside your user name below the part which says group members. Press OK.
# Reboot.
# Load Virtualbox, and USB should be enabled (when you added on usb device filter, now all devices are now ‘tickable’).
For Fedora
After installing VirtualBox 4 do the following in Fedora:
# Go to System Preferences.
# Scroll down to “Users and Groups”.
# Open Users and Groups
# Click “Groups”
# Click “Add Group”
# When the new group settings pops up, type “vboxusers”. Highlight it. Click “Properties”.
# Check the box beside your user name below the part which says group users. Press OK. (Now you will see that the group members is your user name)
# Reboot.
# Load Virtualbox, and USB should be enabled (when you added on usb device filter, now all devices are now ‘tickable’).

Package Management


Debian based systems (including Ubuntu) uses apt-* commands for managing packages from the command line. Let us review how to use apt-* commands to view, install, remove, or upgrade packages.
APT is acronym for Advanced Package Tool. It supports installing packages over internet (ftp or http). You can also upgrade all packages in single operations, which makes it even more attractive.
Dpkg is Debian packaging tool which can be use to install, query, uninstall packages.

You can also try GUI based or high level interface to the Debian GNU/Linux package system. Such as:
1) aptitude: It is a text-based interface to the Debian GNU/Linux package system.
2) synaptic: GUI front end for APT
Rpm based Linux package names generally end in .rpm similarly Debian package names end in .deb, for example: apache_2.2.14_i386.deb
Install software using apt
$ apt-get install {package-name}
$ apt-get install php
Remove software using apt
$ apt-get remove {package-name}
$ apt-get remove php
Remove/erase package and configuration file
$ apt-get –purge remove {package-name}
$ apt-get –purge remove php
Updating the list of packages in your sources.list
$ apt-get update
Update software using apt
$ apt-get -u upgrade
$ apt-get upgrade php
To change the list of apt mirrors
$ apt-setup
Search for package
$ apt-cache search package
show all installed and removed packages
$ dpkg -l
show install status of package
$ dpkg -l apache
Verify if package sudo is install or not
$ dpkg -l | grep -i ‘apache’
List packages related to the apache:
$ dpkg -l ‘*apache*

List files owned by the installed package

# dpkg -L apache
What package owns the file
$ dpkg -S {/path/to/file}
$ dpkg -S /bin/netstat
show status of package
$ dpkg -s {package-name}
$ dpkg -s php
show details of package
$ dpkg -p php
list relevant packages
$ apt-cache search “network security”
Find out all denyhosts packages
$ apt-cache search denyhosts
install package from a deb file
$ dpkg -i {filename}.deb
purge package
$ dpkg -P php
re-run the configure for a package
$ dpkg-reconfigure php
get the source
$ apt-get source php
config build-deps for source and install as needed
$ apt-get build-dep
install package from specific release
$ apt-get -t {release} install php
prevent name from running at bootup
$ update-rc.d -f {name} remove
upgrade the distribution
$ apt-get –u dist-upgrade
How to know what packages may be upgraded
apt-show-versions is a program that shows what packages in the system may be updated and several useful information.

Saturday, December 31, 2011

Something about 'chkconfig'


chkconfig provides a simple command-line tool for maintaining the /etc/rc.d directory hierarchy by relieving system administrators of the task of directly manipulating the numerous symbolic links in those directories. Normally chkconfig will be found on Redhat Linux, Fedora and CentOS.
Chkconfig has five distinct functions which is adding new services for management, removing services from management, listing the current startup information for services, changing the startup information for services, and checking the startup state of a particular service.

Below are those examples explains how to use the chkconfig command:
1. View Current Status of Startup Services
The –list option displays all the services with the current startup configuration status.
# chkconfig --list (this will list down all services)
# chkconfig --list | grep network (this will list a service, in above example which is network service only)
2. Add a new Service to the Startup
Use –add option to add a specific service to the list of services that will be started during system reboot.

The following example shows how to add a new service.
# chkconfig --add iptables
# chkconfig --list | grep iptables (to view the new added service)
iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off (output)
3. Remove a Service From Startup List
The following example shows that ip6tables services is configured for startup.
To remove it from the startup list, use the –del option as shown below.
# chkconfig --del ip6tables
# chkconfig --list | grep ip6tables (to check removed service)
4. Turn-on or Turn-off a Service
The following example will turn off ip6tables service
# chkconfig ip6tables off
# chkconfig –level 35 ip6tables off (turn off ip6tables for both level 3 and 5)
       
        chkconfig -t|--terse [names]
       chkconfig -s|--set [name state]
       chkconfig -e|--edit [names]
       chkconfig -c|--check name [state]
       chkconfig -l|--list [--deps] [names]
       chkconfig -A|--allservices
       chkconfig -a|--add [names]
       chkconfig -d|--del [names]

Sunday, December 18, 2011

Go programming language


Do we really need another programming language? There is certainly no shortage of choices already. Between imperative languages, functional languages, object-oriented languages, dynamic languages, compiled languages, interpreted languages, and scripting languages, no developer could ever learn all of the options available today.
And yet, new languages emerge with surprising frequency. Some are designed by students or hobbyists as personal projects. Others are the products of large IT vendors. Even small and midsize companies are getting in on the action, creating languages to serve the needs of their industries. Why do people keep reinventing the wheel?
The answer is that, as powerful and versatile as the current crop of languages may be, no single syntax is ideally suited for every purpose. What's more, programming itself is constantly evolving. The rise of multicore CPUs, cloud computing, mobility, and distributed architectures have created new challenges for developers. Adding support for the latest features, paradigms, and patterns to existing languages can be difficult. Sometimes the best answer is to start from scratch.

Google has announced the launch of a new -open source- programming language which is built on C programming language and other more languages like Python.

This new language combines the speed of development from Python and the performance and security in C and C++. It has been mentioned that Go is a powerful programming language and it is suitable for systems with multiple processors due to its quick implementation of the instructions and its compatibility with PCs and servers at the same time as well as its simplicity. The official site mentioned that Go concurrency mechanisms "make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction."

Learn Android.... free resources... on net

Android popularity has been increased and as a result, there are now many great resources for learning android developing available for free. I list some of them....

1-    Android Bootcamp Training Course ( 5 days), now free online:http://marakana.com/techtv/android_bootcamp_screencast_series.html
2-    Developing Android Applications ( from Oreilly) 3 workshops :http://training.oreilly.com/androidapps/
3-    Learn Android from Xtensivearts , 11 Episodes:http://www.xtensivearts.com/topics/tutorials/

Tuesday, December 6, 2011

web application framework

1. Django 
2. Cakephp
3. Ruby on Rails (RoR)
4. Drupal (CMS)
                Drupal is an open source Content Management System(CMS) written in PHP. It is open source social publishing software that empowers individuals, teams, and communities to easily publish, manage and organize a wide variety of content on a website. It is used as a "back end" system for many different types of websites, ranging from small personal blogs to large corporate and political sites.

Monday, December 5, 2011

Intel Core i3 vs Core i5 vs Core i7 Comparison- The Difference

This post explains the difference between the Intel Core i3, Core i5 and the Core i7 processors.

Intel Core i3
Codenamed: Clarkdale (Westmere)
Fabrication: 32 nm
Instruction set: X86, X86-64, MMX, SSE 4.2
Socket: LGA 1156
Bus: Direct Media Interface
RAM: DDR3
Chipset Support: P55, H55, H57, Q57
Intel Core i5
Codenamed: Lynnfield (Nehalem), Clarkdale (Westmere)
Fabrication: 45 nm, 32 nm
Instruction set: X86, X86-64, MMX, SSE 4.2
Socket: LGA 1156
Bus: Direct Media Interface
RAM: DDR3
Chipset Support: P55, H55, H57, Q57
Intel Core i7
Codenamed: Bloomfield (Nehalem)
Fabrication: 45 nm
Instruction set: X86, X86-64, MMX, SSE 4.2
Socket: LGA 1366
Bus: Quick Path Interconnect
RAM: DDR3
Chipset Support: X58

Intel has classified the Core processor range into Core i3, Core i5 and Core i7. Both the cost and the performance goes on increasing as you move from Core i3 to Core i7.
Intel Core i3
The Core i3 processors are dual core processors based on the Clarkdale (Westmere) architecture. They have a 32 nm fabrication and work with LGA 1156 socket motherboards. Direct Media Interface (DMI) replaces FSB in the Core i3 processors, unlike the faster Quick Path Interconnect in the Core i7 processors. They have clock speeds ranging from 2.93 to 3.06 GHz. They have 2×256 KB L2 cache and 4 MB L3 cache. They are compatible with these chipsets – P55, H55, H57, Q57. They don’t support Turbo Boost (dynamic overclocking) unlike the Core i5 and Core i7. They also have an Integrated graphics processor. They also have Hyperthreading support.
Intel Core i5
There are two types in Core i5 – Dual core and Quad Core. The dualcore Intel Core i5 processors are similar to the Core i3s while the quadcore Core i5s are much closer to the Core i7 in terms of features.
DualCore Core i5 Processors – They are based on the Clarkdale (Westmere) architecture like the Core i3. They also have a 32 nm fabrication and work with LGA 1156 socket motherboards. Direct Media Interface (DMI) replaces FSB in the Core i5 dualcore processors. They have clock speeds ranging from 3.2 to 3.6 GHz. They have 2×256 KB L2 cache and 4 MB L3 cache. They are compatible with these chipsets – P55, H55, H57, Q57. They support Turbo Boost (dynamic overclocking). They also have an Integrated graphics processor and also include Turbo Boost (dynamic overclocking). They also have Hyperthreading support.
QuadCore Core i5 Processors – They are based on the Lynnfield (Nehalem) architecture similar to the Core i7. They have a 45 nm fabrication and work with LGA 1156 socket motherboards. Direct Media Interface (DMI) replaces FSB in the Core i5 quadcore processors. There are 2 processors with clock speeds of 2.4 and 2.66 GHz. They have 4×256 KB L2 cache and 8 MB L3 cache. They are compatible with these chipsets – P55, H55, H57, Q57. They do support Turbo Boost (dynamic overclocking). However they don’t support Hyperthreading and don’t have a Integrated Graphics Processor.
Intel Core i7
They are the most powerful of the lot. They are based on the Bloomfield (Nehalem) architecture. They have a 45 nm fabrication and work with LGA 1366 socket motherboards. They have Quick Path Interconnect (QPI) which is faster than both DMI in Core i3/i5 and FSB. They are native quad cores which offer the best performance. They have 4×256 KB L2 cache and 8 MB L3 cache. They are compatible with the X58 chipset. They support Turbo Boost (dynamic overclocking) and Hyperthreading (8 virtual cores). However they don’t have an Integrated Graphics Processor.

Tuesday, November 15, 2011

Intel Core i7 vs Intel Core 2 Duo Comparison- The Difference


With the launch of the new Core i7 (Nehalem) processors by Intel, there are many doubts regarding the Difference between Intel Core i7 and Intel Core 2 Duo and Core 2 Quad processors. In this post, I will try to list all the differences and also reasons why the new Core i7 architecture is much better than the Core 2 architecture.
Intel Core i7
Codenamed: Bloomfield – Nehalem
Fabrication: 45 nm
Instruction set: X86, X86-64, MMX, SSE 4.2
Socket: LGA 1366
Bus: Quick Path Interconnect
RAM: DDR3
Chipset Support: X58

Intel Core 2 Duo
Codenamed: Conroe, Allendale, Wolfdale – Core 2
Fabrication: 65 nm / 45 nm
Instruction set: X86, X86-64, MMX, SSE 4.1
Socket: LGA 775
Bus: 1333 MHz FSB
RAM: DDR2                                                                            
Chipset Support: 965, P3x, G3x, P45, X48

-
The Core i7 is a completely new architecture which is much faster and more efficient than the Core 2 Duo. Currently only the Core i7 920, 945 and 965 XE versions are available. Of that the Core i7 920 is available at just $284 which makes it a great buy. It offers better performance than almost all Core 2 Duo processors.

Native Quad Core, More Cache and Hyper Threading:
All the Core i7 processors are Native Quad cores (4 cores), which means that they actually have 4 cores on a single die, while the older Core 2 Duo processors like the Q6600 (2×2 = 4 cores) had two cores on a single die, and two such dies merged together. This increases the processing speed greatly. They also have 256 KB L2 cacheper core and a shared 8 MB L3 cache which has proven to be much better than any cache configuration in Core 2 Duo.
It also has HyperThreading support which means that each of the 4 cores can process 2 threads simultaneously, so you get 8 virtual cores. This helps in running many applications parallely and also in gaming.
Quick Path Interconnect (QPI) and On Die Memory Controller:
The Core i7 processors sport the new Quick Path Interconnect technology which replaces the FSB (Front Side Bus) to connect the various components in a computer. QPI is much faster than FSB and hence improves the overall performance. It is even faster than AMD’s similar HyperTransport 3.0 standard.
The Core i7 have an On Die Memory Controller which means that it can access memory much faster than the Core 2 Duo processors which had an external memory controller. Intel has borrowed this feature from AMD. All the four cores, memory controller, cache are on the same die which improves the speed and performance greatly.
Intel X58 Chipset and DDR3 RAM:
The new Core i7 processors work with Intel’s newest X58 chipset motherboards – these are the best currently available and have superb features like PCI Express 2.0, Support for both AMD’s Crossfire and Nvidia’s SLI to use two graphic cards simultaneously. The combo of Intel X58 and Core i7 also runs much cooler and consumes much less power than the older Core 2 Duo processors. Also the new Core i7 and X58 combo supports only the super fast DDR3 RAM which is becoming cheaper day by day.
These are the main differences between the Intel Core 2 Duo and the Core i7 processors. AMD doesn’t seem to have a decent processor coming up which could compete with Intel’s new Core i7 – the new king. The new Core i7 processors beat every other processor when it comes to performance and are also much more power efficient. They are better for gaming and other tasks. They also overclock better than any Intel or AMD processor.
So if you are planning to buy a new PC, I would suggest you to get a Core i7 based one.Core i7 920 + Intel X58 based motherboard + 1-2 GB DDR3 RAM should cost you about Rs.20000.



Intel Core i3 vs Core i5 vs Core i7 – The Difference
Intel Core i7 vs Intel Core 2 Duo – The Difference
Intel Core i5 vs Intel Core 2 Duo – The Difference
Intel Core i3 vs Intel Core 2 Duo – The Difference