小编Emi*_*ito的帖子

终端如何运行程序并显示其输出?

我正在慢慢地创建一个关于 linux 工作原理的心智模型,并且我已经尽量简化了我的 linux 工作模型。让我们假设内核启动并初始化它将运行的唯一软件:终端。让我们假设这个终端具有出现在屏幕上并呈现一些文本的能力,当然还有从键盘获取输入的能力。我们还假设我输入了一个可执行文件的名称,它知道它在内存中的位置。现在,终端如何运行这个程序?在我的心智模型中,我认为:

终端是一个程序,这意味着它可以进行系统调用。所以它使用 fork() 系统调用并在内核中创建一个新进程。然后,它以某种方式使这个进程运行我的程序代码。现在, printf() 如何在程序运行时在我的终端上实时显示文本?

linux command-line shell kernel

5
推荐指数
1
解决办法
857
查看次数

标签 统计

command-line ×1

kernel ×1

linux ×1

shell ×1