Where does "Places" get all its information? In my Nexus S, there is an application named "Places", which it is able to provide me the restaurants information near by me. Surprisingly, the information are very localize and accurate.

May I know where does Google get all these information?
Places is part of Google Maps (and was introduced with Maps 4.4 about a year ago), you should be able to see and search for all the same businesses and attractions in the main Google Maps app, Places just puts a nicer interface on it.

Much of the data came from what used to be called Google Local. Businesses can add themselves to Local/Maps/Places and update their records themselves, here http://www.google.com/local/add/promo Google Maps has had a "Add your business to Google Maps" link on the page pretty much forever, that links to http://www.google.com/local/add?hl=en&amp;gl=us

Also just like other local business discovery services like Foursquare, users themselves can add places into Places, check into them and rate them through the app or http://www.google.com/hotpot

See also the announcement page from when "Place Pages" were first added to the web version of Google Maps back in 2009 which has some more details http://googleblog.blogspot.com/2009/09/place-pages-for-google-maps-there-are.html including that you can add them through community edits or Google Map Maker.