How to extrude and leave the original in place? How can I extrude a part of a surface, while leaving that part in place? That would mean the extrude function makes a copy.

For example, when I subdivide a face of a cube in 9 squares and extrude (E) the middle square, I get a little cube on top of the initial cube. However, when I hide the top face of the little cube it's clear that the little cube has no bottom. How can I extrude while leaving the bottom in place?
The most practical procedure on ANY mesh would perhaps be select the Face, Shift+D (duplicate), cancel (Esc), extrude (E)