That is some innocent questions with rather large answers. There are many different types of implementations that have slightly different characteristics. I will use gross simplifications when explaining, if you want to know more specific I suggest you spend some time (think 100's of hours) with a searchengine or ask a very specific question here, there will probably be more than me that can answer, or you could message me to get my attention again.
Generally, dual core means that the cores are sharing more resources (memory bandwidth, access to northbridge/chipset) but have faster communications between the cores than dual socket/processor systems.
Dual socket/processor systems often share their connection/bus to the northbridge/chipset which means that they share all off-chip resources between themselves, this is limiting the performance as they will have to wait should the other processor already be occupying the bus when it wants to access it (this is the most common Intel implementation).
For example, AMD low end dual core systems (athlon 64 x2, opteron model 165 and higher, but only the 1xx series) have two channels to the memory (one for each core I think) but they share the connection to the chipset, however the chipset connection is quite fast and probably not very limiting for performance.
Intel low end dual core (xeons, P4, yonah) have the memory controller on the northbridge/chipset/MCH and thus share their connection to the fast memory so that whenever (think always
) one core is accessing the memory, the other will have to wait (there are techniques that helps somewhat with this problem, the core will for example just start working on a different instruction stream that is
readily available in the onchip cache). This is severely limiting to performance and higher end 3rd party implementations, bigger than dual socket system solutions, use chipset tricks to (generally) pair off two processors on one bus and have several such buses on the chipset(or chipsets!) to service more cores without incurring such a large penalty - Think Serverworks and IBM (and HP?). Of course, if you were to use dual core systems in such implementations they would be very limited indeed and have a very low performance increase, this is the main point of why AMD is gaining marketshare in the server market imo. - They are simply not nearly as limited because of their ondie memory controllers and core->core (processor->processor) interconnects (HyperTransport, formerly known as lightning data transport, LDT).
So for current Intel systems there is little difference between a two socket (separate cpus) and a dual core system. They do have better (slightly improved) solutions coming up but nothing on their public roadmap is as elegant as AMDs current solution. I think this gives a rough idea of the state of x86 implementations (not counting VIA, which seems to have a solution similar to that of Intel) so I'll give some quick and dirty answers to your questions.
What, if any, are the differences between a machine with a dual processor core and one with two separate CPUs?
Cost of implementation (devellopment, more expensive circuitry for dual socket), faster process/thread switching (core->core datasharing) on dual core, memory limitations (AMD has dedicated bandwidth to each core, can use tricks to even further that advantage - look up NUMA), scaling (ability to build larger systems effectively).
What are the advantages and disadvantages?
Largely answered previously but dual core: cheaper and faster in small systems. dual socket: more expensive, more scalable. dual socket AND dual core: more expensive, more effective use of resources, more scalable.
Will Windows scheduler treat them alike (does Windows "see" them as the same thing?)
Yes. Even Intels HyperThreading is treated as any other core (often stupid though). It may be that highend versions of windows, datacentre etc. are better optimized/(and or) can be patched to be more aware of the topology/properties of the hardware - once again look up NUMA, but I do not know of any specific implementation such as that (still a student!!
) but it is entirely possible.
EDIT: I forswear any obvious brainfart and such, I didn't get much sleep tonight. Also, checkout the links!
http://www.sandpile.org/
http://endian.net/roadmap.asp
http://www.chip-architect.com/ Rarely updated these days
http://arstechnica.com/index.ars Particulary the forum, not trying to recruit people though!
http://www.digit-life.com/
http://www.mdronline.com/mpf/ ANY freebies that you can get
http://www.mdronline.com In-Stat, same as above just not specifically targeting MPF
http://www.lostcircuits.com/cpu/
There are of course others but I keep my links on an older computer and these are from the top of my head.