2 Answers

Gen I: Will only thaw via Ice Heal or getting hit with a Fire-Type move. If none of these happen, it will never thaw out, even after 9,001 turns.
Gen II and on: 20% chance to thaw every turn, so it can remain frozen indefinately.

Damaging Fire-type moves used on a frozen Pokémon will remove the freeze status. From Generation II onward, freeze has a random, 20% chance to be cured on its own on the frozen Pokémon's turn. Consequently, the frozen Pokémon may thaw out on the turn of freezing; however, in Generation I, a frozen Pokémon never thaws without external aid. Pokémon cannot be frozen in sunny weather; contrary to popular belief, sunny weather does not cause a quicker thawing.
Source: http://bulbapedia.bulbagarden.net/wiki/Status_ailment#Freeze

Sleeping

Sleep lasts for a randomly chosen duration of 1 to 3 turns in Pokémon Black and White and Pokémon Stadium.[1] In all other games, except the Japanese versions of Pokémon Diamond and Pearl, sleep lasts 1 to 5 turns. In the Japanese version of Diamond and Pearl, the minimum and maximum sleep count is 1 turn higher, lasting 2 to 6
Source: http://bulbapedia.bulbagarden.net/wiki/Status_ailment#Sleep

Unless you have Early Bird which causes your Pokemon to wake up faster.