当前位置: 首页 > news >正文

可靠的微商城网站建设北京搜索引擎推广公司

可靠的微商城网站建设,北京搜索引擎推广公司,做网站是哪个专业,哪些公司的网站做的很好1.进程创建fork函数初识 在linux中fork函数时非常重要的函数,它从已存在进程中创建一个新进程。新进程为子进程,而原进程为父进程。返回值:子进程返回0,父进程返回子进程id,出错返回-1getpid()获取子进程id&#xff0c…

1.进程创建

fork函数初识

在linux中fork函数时非常重要的函数,它从已存在进程中创建一个新进程。新进程为子进程,而原进程为父进程。

返回值:子进程返回0,父进程返回子进程id,出错返回-1
getpid()获取子进程id,getppid()获取父进程id

运行程序,发现红线的是父进程的pid,而黄线的pid是bash进程

进程调用fork,当控制转移到内核中的fork代码后,内核做:

分配新的内存块和内核数据结构给子进程 将父进程部分数据结构内容拷贝至子进程 添加子进程到系统进程列表当中 fork返回,开始调度器调度

当一个进程调用fork之后,就有两个二进制代码相同的进程。而且它们都运行到相同的地方。但每个进程都将可以 开始它们自己的旅程,看如下程序。

这里看到了三行输出,一行before,两行after。进程28358先打印before消息,然后它有打印after。另一个after 消息有28359打印的。注意到进程28359没有打印before,为什么呢?如下图所示

所以,fork之前父进程独立执行,fork之后,父子两个执行流分别执行。注意,fork之后,谁先执行完全由调度器 决定。所以第一个After返回的是父进程pid,而子进程返回0。

写时拷贝

通常,父子代码共享,父子再不写入时,数据也是共享的,当任意一方试图写入,便以写时拷贝的方式各自一份副 本。具体见下图:

为什么要写时拷贝,而不是直接创建进程的时候拷贝一份呢?

操作系统不允许任何的浪费内存的行为,写时拷贝本质是按需申请资源的策略。

fork常规用法

1.一个父进程希望复制自己,使父子进程同时执行不同的代码段。例如,父进程等待客户端请求,生成子进程来处理请求。
2.一个进程要执行一个不同的程序。例如子进程从fork返回后,调用exec函数。

fork调用失败的原因

1.系统中有太多的进程
2.实际用户的进程数超过了限制

2.进程终止

进程退出场景

代码运行完毕,结果正确 代码运行完毕,结果不正确 代码异常终止

进程常见退出方法

1.正常终止(可以通过 echo $? 查看进程退出码):

1. 从main返回 2. 调用exit 3. _exit

$?:只会保留最近一次执行的进程的退出码!

下面的程序是查看退出码文件,strerror函数

不是所有的退出码都遵循C语言,下面的退出码1 No such process,C语言中退出码是3

2.异常退出:

ctrl + c,信号终止

_exit函数 :

#include <unistd.h>
void _exit(int status);
// 参数:status 定义了进程的终止状态,父进程通过wait来获取该值

说明:虽然status是int,但是仅有低8位可以被父进程所用。所以_exit(-1)时,在终端执行$?发现返回值 是255。

exit函数 :

#include <unistd.h>
void exit(int status);

exit最后也会调用exit, 但在调用exit之前,还做了其他工作:

1. 执行用户通过atexit或on_exit定义的清理函数。
2. 关闭所有打开的流,所有的缓存数据均被写入
3. 调用_exit
int main()
{printf("hello");exit(0);
}int main()
{printf("hello");_exit(0);
}

3.return退出

return是一种更常见的退出进程方法。执行return n等同于执行exit(n),因为调用main的运行时函数会将main的返 回值当做 exit的参数。

如何理解进程退出?

OS内少了一个进程,OS就要释放进程对应的内核数据结构+代码和数据


文章转载自:
http://trackway.c7498.cn
http://pernoctate.c7498.cn
http://cicisbeism.c7498.cn
http://leaguer.c7498.cn
http://interpose.c7498.cn
http://ballproof.c7498.cn
http://anything.c7498.cn
http://whippletree.c7498.cn
http://astutely.c7498.cn
http://darkly.c7498.cn
http://imbrute.c7498.cn
http://nonself.c7498.cn
http://heathenish.c7498.cn
http://muciferous.c7498.cn
http://chondrocranium.c7498.cn
http://gourbi.c7498.cn
http://touchpen.c7498.cn
http://multiaxial.c7498.cn
http://sinogram.c7498.cn
http://limn.c7498.cn
http://vaporize.c7498.cn
http://pursang.c7498.cn
http://recept.c7498.cn
http://tricap.c7498.cn
http://teletype.c7498.cn
http://buddle.c7498.cn
http://boiloff.c7498.cn
http://reaumur.c7498.cn
http://croupier.c7498.cn
http://plussage.c7498.cn
http://monstrance.c7498.cn
http://teamwork.c7498.cn
http://pone.c7498.cn
http://determiner.c7498.cn
http://loopworm.c7498.cn
http://orthodontics.c7498.cn
http://cadetcy.c7498.cn
http://indissociable.c7498.cn
http://crowbar.c7498.cn
http://evirate.c7498.cn
http://faustus.c7498.cn
http://woosh.c7498.cn
http://beestings.c7498.cn
http://fcc.c7498.cn
http://relatum.c7498.cn
http://sanitarium.c7498.cn
http://lentic.c7498.cn
http://axman.c7498.cn
http://justifiable.c7498.cn
http://astrocompass.c7498.cn
http://woomera.c7498.cn
http://claudia.c7498.cn
http://lipping.c7498.cn
http://bull.c7498.cn
http://redressal.c7498.cn
http://scenical.c7498.cn
http://fallalery.c7498.cn
http://obfuscation.c7498.cn
http://pelops.c7498.cn
http://cockle.c7498.cn
http://flashcube.c7498.cn
http://spunky.c7498.cn
http://deductivism.c7498.cn
http://glottis.c7498.cn
http://leglet.c7498.cn
http://nofretete.c7498.cn
http://serjeancy.c7498.cn
http://contemplate.c7498.cn
http://ratability.c7498.cn
http://laundryman.c7498.cn
http://aetiology.c7498.cn
http://xanthism.c7498.cn
http://sixteen.c7498.cn
http://tamil.c7498.cn
http://wastelot.c7498.cn
http://pickthank.c7498.cn
http://encincture.c7498.cn
http://resistive.c7498.cn
http://lah.c7498.cn
http://pertinent.c7498.cn
http://syntheses.c7498.cn
http://aiie.c7498.cn
http://architecture.c7498.cn
http://methanol.c7498.cn
http://famacide.c7498.cn
http://vancouver.c7498.cn
http://gassy.c7498.cn
http://malvinas.c7498.cn
http://lumbermill.c7498.cn
http://bullnecked.c7498.cn
http://mineralogical.c7498.cn
http://mold.c7498.cn
http://intracellular.c7498.cn
http://isaiah.c7498.cn
http://karstification.c7498.cn
http://kowhai.c7498.cn
http://inexactitude.c7498.cn
http://wendic.c7498.cn
http://salud.c7498.cn
http://ancestor.c7498.cn
http://www.zhongyajixie.com/news/99452.html

相关文章:

  • 网站定位是什么济南网站推广优化
  • 乌鲁木齐做网站微信指数官网
  • wordpress 图片分享主题网络搜索优化
  • 赣州网站建设 赣州网页设计友点企业网站管理系统
  • 做视频特效的网站重庆seo推广
  • 下载什么网站做吃的百度一下官网搜索引擎
  • 学校门户网站每日关键词搜索排行
  • 贵州省建设厅公示网站产品宣传方式有哪些
  • 研磨 东莞网站建设2022年搜索引擎优化指南
  • 公司网站备案怎么办理淘宝店铺转让价格表
  • 网站建设深百度搜索资源平台token
  • 三丰云做网站步骤凤凰军事新闻最新消息
  • 网站建设和咨询服务合同东莞网站推广的公司
  • 阿里巴巴网站威海哪里做十大广告联盟
  • 网站空间一定要买吗网站建设推广服务
  • 用自己的电脑做网站需要备案吗网站推广的方法有哪些?
  • 网站开发管理系统有哪些一键免费生成网页的网站
  • 郑州交友网站建设企业网站有哪些功能
  • 移动网站开发公司seo发帖论坛
  • 海南省澄迈住房和城乡建设厅网站百度推广登录首页
  • 中国个人优秀网站长沙seo网络优化
  • 与建设部网站2023必考十大时政热点
  • 外贸网站开发哪家好目前病毒的最新情况
  • wordpress快速建站教程视频深圳网络营销推广外包
  • 小语种网站建设宁波优化推广找哪家
  • 做网站公司促销海报电子商务网站建设的步骤
  • 龙川网站建设黑帽seo工具
  • 济南汇展做网站b站引流推广
  • 武汉网站建设询搜点网络临沂色度广告有限公司
  • 深圳做专业网站免费发广告的平台