Dynamic resource allocation for OFDM-based cognitive radio systems