进程的创建与回收学习笔记

目录

一、进程内容:

二、进程常用命令 

三、创建子进程 

 四、子进程进阶

 五、进程的退出

 六、进程的回收


一、进程内容:

程序:

        存放在磁盘上的指令和数据的有序集合(文件)

        静态的

进程:

        执行一个程序所分配的资源的总称

        进程是程序的一次执行过程

        动态的,包括创建、调度、执行和消亡

进程是在内存中运行,即RAM

flash是ROM,即磁盘,可以存放程序

 

 

交互进程就是运行可执行文件,比如./testdemo

批处理进程,就是按顺序执行脚本语言

守护进程不能用ctrl-c关闭,无法通过shell命令控制

只有运行态在消耗CPU。

二、进程常用命令 

 

ps:查看当前终端下的进程

ps -e:查看linux中所有的进程

ps -elf:查看所有进程的详细信息

top -p PID:查看某个进程信息

 

 ctrl+z:把运行的前台进程转为后台并停止

./test & 把test程序后台运行

三、创建子进程 

 在linux下,除了0号进程外的任何进程都是别人创建的,都是子进程

 

运行结果:

 一个是父进程打印的,一个是子进程打印的。

 通过判断pid来确定父子进程执行的内容:

 运行结果:

父子进程仅仅复制关系,执行顺序没有规律,需要操作系统来进行调度。 

修改代码如下:

运行结果如下: 

 

 父子进程执行顺序是随机的


若父进程先结束

 此时子进程继续运行,不过变为后台进程,不能被ctrl-c杀掉,只能用kill杀掉。


若子进程先结束 

 此时子进程变成僵尸进程。

 四、子进程进阶

一个父进程创建出5个子进程 

代码如下:

 五、进程的退出

 

 

 

exit结束进程刷新缓冲流,会打印上一行,_exit结束进程不刷新缓冲流,不会打印上一行
“\n”和return就是刷新缓冲流。 

 六、进程的回收

 通过wait函数回收僵尸进程

代码运行结果:

 此时效果和使用wait函数一样。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/346186.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

增广路算法 DFS求解 最大网络流问题

最大网络流问题 最大网络流问题是这样的,有一个有向图,假定有一个源点,有一个汇点,源点有流量出来,汇点有流量进入,有向图上的边的权重为该条边可通过的最大流量(方向为边的方向),问从源点到汇…

Linux系统SSH远程管理服务

目录 一、SSH协议是什么? 1、SSH协议的定义: 2、SSH协议的优点 3、SSH的客户端与服务端 4、SSH的原理 4.1公钥首次连接原理 4.2ssh远程登录 4.3使用简单的SSH远程登录 二、OpenSSH服务器 1、OpenSSH简介 2、配置Openssh服务端 3、SSH服务的最…

每日一题——LeetCode1128.等价多米诺骨牌对的数量

先尝试暴力解法&#xff1a; var numEquivDominoPairs function(dominoes) {var count0for(let i0;i<dominoes.length-1;i){for(let ji1;j<dominoes.length;j){if((dominoes[i][0]dominoes[j][0] && dominoes[i][1]dominoes[j][1]) || (dominoes[i][0]dominoes…

数据库系统概念 第七版 中文答案 第2章 关系模型介绍

第2章 关系模型介绍 2.1 考虑图 2.17 中的员工数据库。这些关系上适当的主码是什么&#xff1f; Answer: 相应的主键如下所示: 2.2 考虑从 instructor 的 dept_name 属性到 department 关系的外键约束。请给出对这些关系的插入和删除的示例&#xff0c;使得它们破坏该外码约…

Java接入Apache Spark(入门环境搭建、常见问题)

Java接入Apache Spark&#xff08;环境搭建、常见问题&#xff09; 背景介绍 Apache Spark 是一个快速的&#xff0c;通用的集群计算系统。它对 Java&#xff0c;Scala&#xff0c;Python 和 R 提供了的高层 API&#xff0c;并有一个经优化的支持通用执行图计算的引擎。它还支…

Docker容器进入的4种方式(推荐最后一种)

在使用Docker创建了容器之后&#xff0c;大家比较关心的就是如何进入该容器了&#xff0c;其实进入Docker容器有好几多种方式&#xff0c;这里我们就讲一下常用的几种进入Docker容器的方法。 进入Docker容器比较常见的几种做法如下&#xff1a; 使用docker attach使用SSH使用…

RK3568驱动指南|第十二篇 GPIO子系统-第134章 三级节点操作函数实验

瑞芯微RK3568芯片是一款定位中高端的通用型SOC&#xff0c;采用22nm制程工艺&#xff0c;搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码&#xff0c;支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU&#xff0c;可用于轻量级人工…

CSS 下载进度条

<template><view class=btn>下载中</view></template><script></script><style>/* 设置整个页面的样式 */body {width: 100vw; /* 页面宽度为视口宽度 */background: #000000; /* 背景颜色为白色 */display: flex; /* 使用 flex…

python|切片

切片的语法格式 object[start_index:end_index:step] &#xff08;1&#xff09;step步长&#xff1a;有正负&#xff0c;正表示正着走&#xff0c;负表示负着走&#xff0c;步长的绝对值代表一步走的距离。 &#xff08;其中&#xff0c;在深度学习中卷积也有步长的说法&…

【博士每天一篇论文-理论分析】Dynamical systems, attractors, and neural circuits

阅读时间&#xff1a;2023-11-19 1 介绍 年份&#xff1a;2016 作者&#xff1a;Paul Miller 马萨诸塞州沃尔瑟姆市布兰代斯大学Volen国家复杂系统中心 期刊&#xff1a; F1000Research 引用量&#xff1a;63 这篇论文主要关注神经回路中的动力系统和吸引子。作者指出神经回路…

PLM系统功能、彩虹PLM系统功能、产品数据管理系统

彩虹PLM系统的功能 产品数据管理 产品数据管理是 PLM 系统的核心功能之一&#xff0c;它主要包括以下几个方面&#xff1a; &#xff08;1&#xff09;数据存储&#xff1a;将产品的设计数据&#xff08;如 CAD 模型、图纸、BOM 等&#xff09;存储在统一的数据库中&#xf…

[足式机器人]Part2 Dr. CAN学习笔记-Advanced控制理论 Ch04-7 LQR控制器 Linear Quadratic Regulator

本文仅供学习使用 本文参考&#xff1a; B站&#xff1a;DR_CAN Dr. CAN学习笔记-Advanced控制理论 Ch04-7 LQR控制器 Linear Quadratic Regulator 线性控制器设计-轨迹跟踪&#xff08;Fellow a Desired Path&#xff09;