呵呵,您问的问题很有深度。咱们先拿windows说,再说dos。
windows规定一切应用程序的优先级是3,windows自己是0,0最高,3最低。因此,windows不允许应用程序直接访问硬件。可是比如您想要对磁盘进行读写,该怎么办?呵呵,windows就说了,我给你一个API,你去调用它就行了。这是系统级的API,您必须通过API这个“代理”来访问硬件资源,否则,呵呵,您经常会看到“xxxx非法操作”,然后应用程序就被kill了。在说一些应用上的API,我假设您会C语言,C语言里面没有链表,因此,当您想使用链表的时候,就要自己写。对于此类情况,操作系统会提供一些比较实用的功能给您,让您专心研究程序逻辑,其他一些简单的代码,就让操作系统提供。所以C++和C#您就不用自己写链表了,这些语言提供了API。
看到这里,您应该知道API的主要2个作用。
1:应用及API,替您写好一些函数,来方便您写程序。当然,您也可以自己实现APIg所提供的功能。但很麻烦。
2:系统及API,您没的可选,您想和硬件打交道,就得使用。操作系统不让您直接和硬件打交道。
对于DOS来说,呵呵,API就是interrupt 21h。DOS和您写的应用程序优先级都是0级,呵呵,您可以为所欲为。比如说引导行病毒....
联系客服