自定义编程语言〜如何与操作系统交互

时间:2014-02-07 19:08:08

标签: operating-system system-calls

我正在尝试创建自己的编程语言,但我已经在考虑一点了。 当然,当我编写一个小程序时,我当时没有一个Standart图书馆, 你必须自己创造一个。现在举个例子,我想添加一些功能来将字符串打印到屏幕上,我很确定我必须对操作系统进行一些系统调用才能显示它。

所以说到:与操作系统交互的最佳方式是什么?

我想出了自己的可能性: - 生成对象文件并将其链接到(例如)C Standart Library - 使用包含系统调用的嵌入式汇编语言编写文件

我觉得有更好的可能性!

我希望你能帮助我,

基督教

编辑:这是我正在创建的编译语言!

2 个答案:

答案 0 :(得分:2)

你基本上有两种选择,比如你自己说的。您可以将标准库与标准C库链接,以便标准库中的I / O函数可以使用C函数。或者,您可以直接对操作系统进行系统调用。

第二种方法看起来会更加有效:每个操作系统上的系统调用都会有所不同,因此您需要投入大量精力来移植系统。系统调用可能没有很好的记录,导致许多挫折。

您可以从将标准库链接到C标准库开始,暂时担心您的语言的其他方面。稍后您可以查看使用系统调用替换您使用的C函数。

答案 1 :(得分:1)

Stdin和stdout几乎是最小的 - 如果您使用的是Unix环境,那么您可以访问它们的键盘,命令行以及管道文本输入和输出文件。

如果你正在写一种新语言 - 那么StdError也值得考虑!