Same image twice

I want to draw the same image that i have in my screen in a small portion of the screen at the same time. (i guess i can use glViewport). Wich is the best way to do that, do i have to write the code again?? I dont think so because that way the calculus are made twice.

well you could use glCopyTexSubImage2d, look it up in the redbook, to make a texture out of the window, then just draw a small quad with that texture