9.3 系统调用和高级编程语言的移植性

操作系统的硬件控制功能通过小函数集合体提供,这些函数及调用行为称系统调用,即应用对操作系统功能的调用,如time()及printf()等函数内部使用了系统调用,但提供对应功能的系统调用函数名并非time()和printf()。
C语言等高级编程语言不依存于特定操作系统,希望在不同系统(如Windows和Linux)上能用几乎相同源代码。其机制是使用独自函数名,编译时转换成相应操作系统的系统调用(可能是多个系统调用的组合),编译后应用转换为利用系统调用的本地代码。
存在可直接调用系统调用的高级编程语言,但用这种方式制作的应用移植性差,例如直接调用Windows系统调用的应用在Linux上无法运行。

posted @ 2025-02-14 18:38  叽里呱啦哇里呱唧  阅读(18)  评论(0)    收藏  举报