1

I am upgrading a client's 2003 Terminal Server soon and they still need to run a 16 bit DOS app. I know R2 won't support this, but would prefer to use it anyway if there was a way around it via virtualization.

Would it be possible to install a 32bit guest OS to run the 16 bit app, and have the remote desktop sessions run the app using Remote App? I've not used Hyper-V before, so am unsure about this whole area. What are the licensing requirements?

Will probably be going with a dual-proc quad-core machine, I would presume this should be more than enough to handle around 10 remote desktop sessions making use of this 32bit OS?

david
  • 11
  • 1
  • 2

3 Answers3

3

I'm not sure if I'm reading what you're describing correctly; if you virtualize the system, you'd be running an older version of Windows within the terminal server and having them connect to that older version in order to run the app from within.

I'm not even sure it's recommended that you run virtualization within a terminal server for multiple users. Things like Hyper-V are meant to create a dedicated virtualization server (i.e., a hyper-V server running a mail server, DNS server, etc., not a terminal server virtualizing sub-sessions. That's what the Win32 sub-system is basically for).

If you're going to get the server, hyper-v it, then run a terminal server within it as a guest with an older version of Windows, I'm not sure what you're standing to gain in doing that unless you're migrating other servers or consolidating on the same hyper-v server. You'd be taking a performance hit that needs to be offset by the advantages of adding other servers to the same hyper-V server.

What you might be able to do is install virtualbox and see if you can run a version of DOS (like FreeDOS) within their session, if the application will run in it. Or an older version of DOS. You would have to test it to see if that is compatible with multiple sessions, though, as you may need to tweak access to hardware settings to make sure Windows doesn't crash or the Virtualbox session doesn't crash.

I might just be confused though. It's early in the morning right now...but depending on what you're going to be adding to the hyper-v server additionally, I'd first test Virtualbox for individual sessions.

Bart Silverstrim
  • 31,172
  • 9
  • 67
  • 87
  • +1; Install Hyper-V Server; two guests (the 2008 R2 TS, and a 2003 R2 TS for the 16-bit Remote App). The 2008 R2 license will cover both installs; you may have to call MS to get the 2003 install to activate. Hyper-V Server doesn't need an additional license. – Chris S Sep 07 '10 at 12:44
  • Just to get this straight, in this situation all my remote clients would connect to the R2 TS, and from within that session a RemoteApp session for my 16-bit app would be accessed via the 2003 TS. What about the TS CALs? The 2008 R2 RDS CALS are not compatible with the old 2003 TS CALs. – david Sep 07 '10 at 13:33
  • @David-You're saying you want to set up a hyper-v server and within that virtualize an older Windows that will in turn serve the application alone as a remote app to a second virtualized, updated terminal server for your users? – Bart Silverstrim Sep 07 '10 at 16:39
  • All that redirection you might want to just let them run it locally :-) – Bart Silverstrim Sep 07 '10 at 16:40
  • Surely there's only one virtualized server, the 2003 one, the main terminal server is the host OS, no? – david Sep 07 '10 at 18:28
  • In Hyper-V I believed you have a dedicated server for virtualizing machines. It may be set up so you can do both, but in good practice, I'd avoid it. You're adding complication otherwise. You're also adding to the chances of accidentally breaking your server or virtualized server by running an "active host" with a guest; if the machine dies you lose two servers, not one, and it only takes one bad update to do that. Others may disagree or have more experience in this than I do but in the server room I prefer bare-metal hypervisors. – Bart Silverstrim Sep 07 '10 at 19:16
  • I'd also be REALLY wary of trying to deploy terminal services on a host machine running a guest in a hypervisor. I've had enough "weird behavior" that was terminal server specific, couple that with stuff running virtualized? In my book that's living dangerously if you want a stable server. Troubleshooting weird behavior on that could become a nightmare. – Bart Silverstrim Sep 07 '10 at 19:19
  • ok thanks... looks like Server 2008 is probably my best bet then (freeware emulators wouldn't inspire me with a huge amount of confidence, fine for running some old games, but wouldn't want to run a business off them). – david Sep 07 '10 at 23:19
  • @David: I don't know...I've done quiet a bit with Linux and it's free :-) – Bart Silverstrim Sep 08 '10 at 11:52
3

If this is a short-term thing until they ditch the 16-bit app, you could take a look at DosBox - it's really designed for running old games but AFAIK it's a 32-bit application so could be hosted on the Server 2008 R2 machine. You'd want to check how it handles mapped drives and printing though.

Alan B
  • 503
  • 5
  • 15
0

If you want to you can run a 16-bit application on a Windows 2008 R1 Terminal Server (32-bit OS). You can use 2008 RDS CALS on for this terminal server so that you can re-use them as RDS CALS in the future. You just have to figure out the restrictions of your 16-bit application. For instance, if the instance of the working directory of the application needs it's own space for each connection. I made a simple batch file that takes the connection name, takes off the first 4 characters for unique 8 character 16-bit folder naming restriction, create a working directory based on the unique name and copy the working directory to it and run the application from it. You can use RemoteApp publish a batch file that will run the routine and kick off the application in it's own working directory. I also put a check to see if it has been created already before copying the files.