我正在使用Turbo C 3.0和Turbo c 2.0进行编程。除此之外,我使用的是Windows XP。在使用Windows 98时,上述程序确实运行良好。但是在安装XP之后,这些程序真的让我的系统变慢了。那些即使在空闲时也真的使用高CPU功率(空闲是指“程序和用户之间没有交互”)。
以前有人能解决这个问题,请点击此处。
另外,我想知道造成这些减速的原因!
答案 0 :(得分:2)
那些是16位DOS程序,它们可能不会在XP上运行。它们可能在NT虚拟DOS机器上运行。使用任务管理器,或者更好的是,Process Explorer来检查这一点。您可能看不到您的程序正在运行;寻找ntvdm.exe的实例。
我注意到几个防病毒程序(Checkpoint,Proventia Desktop)似乎与ntvdm有问题。当ntvdm实例运行时,好像他们吃掉了相当多的cpu。
另外,Turbo C对其扩展内存设置不是很挑剔吗?如果您仍然拥有Win98系统中的Autoexec.bat和Config.sys文件,则可以尝试更改XP的设置以进行匹配。与这些文件等效的XP是autoexec.nt和config.nt;它们位于Windows \ System32目录中。
答案 1 :(得分:1)
我怀疑阿德里安的评论是正确的答案:旧的DOS程序没有考虑多任务处理,因此在“闲置”时往往会把自己置于紧密的循环中。回到白天,它并不重要,因为没有其他东西同时运行,操作系统会中断正在运行的程序来处理硬件,中断。
我强烈建议在现代硬件上避免使用这些工具,因为生成的程序同样不是多任务友好的。它们也将针对古代处理器进行优化,并且内存寻址有限。如果你有一些旧的硬件,并想与它一起玩,那么就把自己搞得一团糟。但是有很多免费的现代编译器(无论是Visual C ++ Express是为了让你着迷,还是开源)。
答案 2 :(得分:0)
这可以通过设置进程优先级来部分避免。 启动应用程序,例如。 Turbo C ++ 3.0 最小化并转到任务管理器 找到ntvdm.exe 右键单击>设置优先级>低>>是
然后它以不那么恼人的速度运行。