The nonce is the expected thing to tweak, but given current difficulty, it's pretty likely that trying all the nonces will fail. The timestamp can also be tweaked, and the transaction list changed. But miners usually change the "coinbase" transaction (which is the transaction that grants bitcoins to the miners) by putting an extra nonce in there, since there's extra room and the transaction can be modified without messing anything up. This is important in mining pool so miners can do a lot of hashes without constantly contacting the server to request a new block. See my blog post on mining for details of how the coinbase transaction is built by concatenation: http://www.righto.com/2014/02/bitcoin-mining-hard-way-algori...