首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >性能测试之进程调用

性能测试之进程调用

作者头像
无涯WuYa
发布2020-09-27 20:05:42
发布2020-09-27 20:05:42
8570
举报

进程主要是执行用户级别程序的环境,进程可以让内核多任务的处理,这样在一个操作系统上可以执行上千个进程。每个进程都有自己独立的进程PID,并且是唯一的。进程的创建是通过系统调用fork()来创建的,fork()用自己的进程号创建自身进程的一个复制,然后调用系统调用exec()才能开始执行不同的程序。如下显示了shell中执行命令的进程创建过程,如下图所示:

依据如上图,我们可以得到系统调用fork()可以达到Copy-On-Write,也就是COW的策略来提高性能,这样添加原有地址空间的引用而非所有内容复制,但是一旦任何的进程要被修改,那么此时就会针对修改建立一个独立的副本。如下显示了进程的完整生命周期,具体为:

on-proc指的是进程运行在CPU上,而ready-to-run指的是进程可以运行,但是还在CPU的运行队列里等待CPU分配资源。I/O阻塞,让进程进入sleep状态直到I/O完成进程被唤醒。zombie状态发生在进程终止,此时子进程状态等待自己的父进程读取,或者直到被内核清除。这样的一个调度过程可以简化为如下的一个过程,具体如下:

感谢您的阅读和关注,您也可关注如下的系列文章:

API测试指南

PostMan服务端测试实战

AIOHTTP的实战(一)

性能测试之常用术语

漫谈服务端测试

再谈API测试

业务监控与质量

Python接口测试之Requests

服务端测试之集群验证(一)

Pytest之命令行执行

Pytest之Allure测试报告(十五)

Pytest之并发执行(十四)

Pytest插件之selenium(十三)

Pytest常用插件之HTML报告(十二)

Pytest测试实战之token处理(十一)

Pytest测试实战(十)

Pytest测试实战(九)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-09-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python自动化测试 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档