How long has he lived in Karachi? What tense is this?

A ) Present indefinite

B ) Present perfect ✅

C ) Present continuous

D ) Present perfect continuous