1

我正在为我的大学做一个项目。其中一点是我们不允许使用非静态库。当我处理中断时,我想使用 dos.h 来避免使用汇编(setvect() 而不是一堆流水线代码)使事情复杂化。

考虑使用库的部分的粗略翻译是:“......它只允许使用独立于平台(硬件和操作系统)的标准(静态)C/C++库。不允许使用特定库系统主机或动态库 (DLL)"

有人可以告诉我 dos.h 是什么类型的库吗?

4

1 回答 1

6

头文件*.h不是库,它只是一组定义和声明。

如果任务确实要求您使用硬件中断独立于操作系统,那么它是不一致的,因为不同的操作系统定义了不同的硬件中断处理方式。

我怀疑你误解了作业,应该问你的老师澄清。

添加以回应评论

是的,编写一个微型操作系统确实主要解释了这种不一致。如上所述,kernel32.dll 可能提供了一些setvect()您想要使用的服务(例如 )。如果没有操作系统,那么就没有可依赖的操作系统服务,您将不得不自己编写(我想这是作业目的的一部分)。

于 2012-12-10T13:13:07.803 回答