1

这是关于编程语言和操作系统的计算机科学问题。

我的问题是,编程语言和操作系统之间的基本交互是什么?我确实对操作系统的 IFE 周期有所了解,但不确定编程语言如何适应。

我已经阅读了这篇文章,但它没有任何帮助

关于编译程序如何与操作系统交互的问题

编辑:

通过编程语言,我的意思是包括他们各自的编译器/VM

4

2 回答 2

3

在机器代码级别,程序必须进行系统调用。

不同的处理器有不同的方法可用于进行系统调用。每个操作系统都必须为给定的处理器架构选择系统调用约定。例如,对于 x86 处理器,Linux 曾经使用软件中断指令INT 0x80来执行其系统调用——但是(根据下面的评论)它现在使用了一条SYSENTER指令,该指令专门为此目的引入了体系结构。

系统调用约定并不是真正特定于编程语言本身,但它们必须写入给定语言和操作系统的最基本的标准库中。

于 2013-04-04T23:38:40.053 回答
-1

编程语言不与操作系统交互,因为它是一种语言,一种抽象概念,它不是任何类型的(交互)参与者。它只是一个系统,可以用来表达程序和算法,使用它的词汇元素,符合它的语法和规则等等。

可以与操作系统交互的是程序。作为程序的编程语言的解释器和编译器与操作系统交互。编译后的程序与操作系统交互。语言没有。它们不是程序。

于 2013-04-04T21:28:57.150 回答