Well, essentially what you will end up doing is going into your /etc/X11/xorg.conf file and defining two things for each of the sections, "Device", "Monitor" and "Screen" customizing the values for your video card, the monitor it is hooked up to, and the screen resolution size of each monitor (respectively). Then, at the bottom of the xorg.conf, in the "ServerLayout" section, you will tell X how you want the screens laid out.. Something like this ...
Identifier "Simple Layout"
Screen "Screen 1"
Screen "Screen 2" Rightof "Screen 1"
InputDevice "Mouse1" "CorePointer"
InputDevice "Keyboard1" "CoreKeyboard"
If there is only one Server Layout value, then all you need to do is a "startx". If you want to define multiple layouts, then you need to start the one you want with
$startx -- -layout LayoutName
The only problem that I've found with this technique is that DRI is disabled on my laptop when I've "hooked" the LCD screen and an external monitor together. So, movie playback is rather poor. What you might also want to consider doing, if you don't mind keeping the monitors completely separate from each other is to start 2 X windows sessions, with each binding to a separate video card/monitor. So, instead of doing one "Server Layout" session for both monitors, you'd do one for each. And then when you started X, you would specifiy which session belongs to which monitor.