分时意味着通过多程序和多任务在许多用户(进程)之间共享计算资源。通过允许大量用户并发交互,分时显着降低了提供计算功能的成本。
包括Windows , Linux和其他许多操作系统在内的许多操作系统都为不同进程提供了分时共享机制。
在这里,我们的任务是证明Linux使用简单的程序提供了分时机制。
方法:在这里,使用fork()系统调用创建了两个进程(父进程和子进程),并使循环中有一些print语句。在输出中,我们将看到这两个进程的print语句将交替执行,显示两个进程之间的分时机制。
// C program to demonstrate that Linux is
// time-sharing
#include
#include
// Child process
void child()
{
int i;
for (i = 0; i < 50; i++)
printf("I am child %d\n", i);
}
// Parent process
void parent()
{
int i;
for (i = 0; i < 50; i++)
printf("I am Parent %d\n", i);
}
// Driver code
int main()
{
pid_t pid = fork();
// fork() error
if (pid < 0)
printf("Fork Failed");
// child
else if (pid == 0)
child();
// parent
else
parent();
return 0;
}
输出:
在下面的屏幕截图中,我们可以看到两个print语句是同时执行的,而不是另一个语句执行完之后的一个。