第三十一讲 进程
2021/10/13 7:14:06
本文主要是介绍第三十一讲 进程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
第三十一讲 进程
文章目录
- 第三十一讲 进程
- 一、进程
- 二,创建一个进程
- 1、函数介绍
- 2、fork 函数特性
- 三、fork 实验
- 1、实验代码
- 2、实验结果
操作系统是通过进程来实现对应用程序的协调运行
一、进程
在单片机开发中,是没有进程的概念的。因为单片机内就运行了一个程序。但是在 Windows 或者 Linux 里面可以运行多个程序,这些程序需要进行统一的管理。操作系统通过对进程的管理来对不同程序进行管理。
获取进程之间的关系:pstree
操作系统通过 pid 来区分不同的进程。通过命令 ps -ef
可以查看进程的pid。
二,创建一个进程
1、函数介绍
函数 | 说明 | 返回值 | 头文件 |
---|---|---|---|
pid_t fork(void); | 创建进程 | 成功: 0或者其他正整数 失败: -1 | unistd.h |
2、fork 函数特性
-
执行 fork 函数之后, fork 函数会返回两次不同的值
执行 fork 函数后会创建一个新的进程,他会复制旧的进程里面几乎所有的内容。也就是生成两个几乎一摸一样的进程。而这两个进程都是从 fork 函数返回,所以会有两个返回值。如果从旧的返回,返回值为0或者-1,在新进程返回时,返回新进程的pid
-
在执行 fork 函数之前,操作系统只有一个进程,fork 函数之前的代码只会被执行一次。fork 函数执行之后的代码会被执行 2 次。
三、fork 实验
1、实验代码
#include <unistd.h> #include <stdio.h> int main(char *argc, char **argv) { pid_t lPid; printf("Before fork!\r\n"); lPid = fork(); printf("After fork pid is %d\r\n", lPid); return 0; }
2、实验结果
执行编译完成的可执行程序
Before fork! After fork pid is 3177 After fork pid is 0
这篇关于第三十一讲 进程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)