Linux环境下编程(一)——进程fork()的使用

本文介绍了Linux环境下进程的概念,强调进程是资源分配和调度的基本单位。讲解了进程的逻辑控制流和私有地址空间,并通过具体程序演示了如何获取进程ID和父进程ID。文章还探讨了fork()函数的工作原理,包括子进程如何复制父进程的内容但不执行fork(),以及子进程被托管给init进程的现象。最后提出了一个问题:调用3次fork()为何会产生7个子进程。
摘要由CSDN通过智能技术生成

先简单介绍一下进程的概念

定义: 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。

经典定义: 进程是一个执行中的程序的实例。系统中的每个程序都是运行在某个进程上下文(context)中的。

注:上下文可能让人看不懂,简单地理解,将文本文档里的‘e’字母翻译成ASCII码是101,,在这个环境(上下文)中101代表字母e;当用二进制101转换成int型后,101就是数值5。 在不同的环境中,二进制101所代表的意义不同,这个不同的环境就是上下文。


作用:有了进程的概念之后,程序在运行的过程中才会产生这种假象,好像自己是系统当前运行的唯一的程序,独占地使用CPU、独占地使用存储器。

进程所拥有的:1、独立的逻辑控制流。  (即 某时刻利用cpu来执行指令)

                         2、私有的地址空间。     (即存储器的一段地址空间)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值