Don't have a clear answer for you, but I think the best solution will depend on what desktop environment & window manager you are using.
I think some Desktop Environments also have options to restart applications that were open at the time of the last shutdown.
For the terminal emulator windows you could put a section into your autostart script the opens the windows. I have never used it, but there seem to be a couple of useful options, which again might also depend on what terminal emulator you are using.
E.g.
this looks like something that might help you.