OSM in Google Earth
From OpenStreetMap
You can transform an OpenStreetMap .osm file into a KML file for Google Earth using Osmlib [1].
Install the gems osmlib-base and osmlib-export (see below). The latter includes an executable osmexport. Using the included example rule file, kml-complex.oxr, you can generate a kml file using a command line like
osmexport /path/to/kml-complex.oxr data.osm data.kml
Important legal note: Do not use use data from Google Earth to add or change anything in Open Street Map, ie. don't look at a satellite image from Google and add or change streets of other things. Somebody has a copyright on the data shown in Google Earth and using any data from it will compromise the OSM database. See the Legal FAQ for more information.
Installing osmlib
You need to have ruby and RubyGems installed (executables ruby and gem). Then installing a functional osmexport should be as simple as
gem install libxml-ruby builder GeoRuby gem install osmlib-base osmlib-export
Display OSM tiles in Google Earth
If you only want to display the OSM map tiles in Google Earth, just include the KMZ file OpenStreetMapLayer.kmz - and to not forget the important legal note mentioned above!
Query to map
Look at Query-to-map to select small parts or single objects of OSM and show them as KML also in Google Earth.

