Linux进程——创建进程fork

一、fork

主要概念:

父进程与子进程

​ 创建新进程的那个进程称为父进程,新进程称为子进程。使用 fork() 函数创建子进程。

fork() 函数能创建一个与调用进程几乎完全相同的子进程,包括代码、数据段、堆栈以及当前工作目录、用户ID和组ID等环境变量

相关函数:

#include <sys/types.h>
#include <unistd.h>
pid_t fork(void)		//创建进程
pid_t getpid(void)		//获取进程ID
pid_t getppid(void)		//获取父进程ID

返回值(返回两次)

  • 在父进程中,fork()调用返回新创建的子进程的进程ID(一个正整数)。
  • 在子进程中,fork()调用返回0。
  • 如果fork()失败,例如由于系统资源不足,它将返回-1,并设置errno。

 

实验

1.fork函数直接调用

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

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

相关文章

UneMeta与日本顶级IP熊本熊合作,首个NFT玩法揭秘

UneMeta 生态是一个备受加密市场以及动漫 IP 市场关注的老牌 Web3 数字资产平台&#xff0c;旨在架起现实艺术 IP 和 NFT 艺术社区之间的桥梁&#xff0c;以促进 Web3 社区的包容性和多样性。并期望基于生态一流的产品体验和平台属性&#xff0c;打造一个包容交汇的元宇宙社区。…

Linux中本地yum仓库的搭建

搭建本地yum仓库 本地文件方式FTP传输方式HTTP传输方式 本地文件方式 创建文件夹 mkdir /iso /repo将系统镜像上传到服务器&#xff0c;之后将镜像挂在到本地目录 mount -o ro /iso/CentOS-7-x86_64-DVD-2009_2.iso /repo/之后我们配置repo文件 cd /etc/yum.repos.d cat &g…

MDK安装

MDK安装 1 MDK的差异2 切换MDK3 安装芯片支持包注意点 1 MDK的差异 不同版本MDK有略微的差别&#xff0c;比如&#xff1a;MDK536.EXE&#xff0c;支持版本5的交叉编译链。如下图所示&#xff1a; 而MDK539.EXE不支持版本5的交叉编译链&#xff0c;所以工作的时候&#xff0c…

anaconda的安装和使用

anaconda的安装和使用 Anaconda 是一个用于科学计算和数据分析的开源发行版&#xff0c;包含了Python和R的众多包和管理工具。以下是Anaconda的安装和使用指南&#xff1a; 1. 安装Anaconda 1.1 下载Anaconda 访问 Anaconda官网 下载适用于你操作系统的Anaconda安装包。 1.2 安…

嵌入式学习(Day:27 线程2)

线程控制&#xff1a;互斥与同步 &#xff08;排他性访问&#xff0c;只能一个访问&#xff09; 1. 互斥 概念&#xff1a; 互斥 》在多线程中对临界资源的排他性访问。 &#xff08;临界资源如&#xff1a;全局变量a&#xff09; 互斥机制 》互斥锁 》保证临界资…

【C语言】自定义类型:联合体和枚举

1. 联合体 1.1 联合体的特点 像结构体⼀样&#xff0c;联合体也是由⼀个或者多个成员构成&#xff0c;这些成员可以不同的类型。 但是编译器只为最⼤的成员分配⾜够的内存空间。联合体的特点是所有成员共⽤同⼀块内存空间所以联合体也叫&#xff1a;共⽤体。 union Un {char…

K8s的CRI机制是什么?

1. 概述 进入 K8s 的世界&#xff0c;会发现有很多方便扩展的 Interface&#xff0c;包括 CRI, CSI, CNI 等&#xff0c;将这些接口抽象出来&#xff0c;是为了更好的提供开放、扩展、规范等能力。 K8s CRI(Container Runtime Interface) 是 K8s 定义的一组与容器运行时进行交…

入门Kotlin的学习之路经验总结

书籍的话就推荐三本书&#xff0c;分别是【Kotlin实战】&#xff0c;【Kotlin核心编程】、【Kotlin编程实践】。这三本书个人认为理解和学习的难易程度由低到高。如果你是入门Kotlin&#xff08;首先掌握基础&#xff09;&#xff0c;强烈推荐【Kotlin实战】这本书&#xff0c;…

八种单例模式

文章目录 1.单例模式基本介绍1.介绍2.单例模式八种方式 2.饿汉式&#xff08;静态常量&#xff0c;推荐&#xff09;1.基本步骤1.构造器私有化&#xff08;防止new&#xff09;2.类的内部创建对象3.向外暴露一个静态的公共方法 2.代码实现3.优缺点分析 3.饿汉式&#xff08;静态…

C#基础语言

​​​​ 目录 一个c# 程序主要包括以下部分&#xff1a;​​​​​​​ 标识符 C# 关键字 C# 数据类型 值类型&#xff08;Value types&#xff09; 引用类型&#xff08;Reference types&#xff09; 对象&#xff08;Object&#xff09;类型 动态&#xff08;Dynam…

Python应用实战,用动画生成冒泡排序的过程

写在前言 hello&#xff0c;大家好&#xff0c;我是一点&#xff0c;专注于Python编程&#xff0c;如果你也对感Python感兴趣&#xff0c;欢迎关注交流。 希望可以持续更新一些有意思的文章&#xff0c;如果觉得还不错&#xff0c;欢迎点赞关注&#xff0c;有啥想说的&#x…

网络通信--demo--群聊

群聊实现的关键&#xff1a; 群聊的思想&#xff1a;客户端发送消息后&#xff0c;所有客户端都可以接收到 客户端---->服务端&#xff08;子&#xff09;---->客户端&#xff08;online&#xff09; online的客户端&#xff1a;需要一个集合存储 package Wechat;imp…

牛客NC222 插入区间【中等 数组,区间合并问题 Java/Go/PHP/C++】lintcode30 插入区间

题目 题目链接&#xff1a; https://www.nowcoder.com/practice/1d784b5472ab4dde88ea2331d16ee909 https://www.lintcode.com/problem/30/solution/56586 思路 Java代码 import java.util.*;/** public class Interval {* int start;* int end;* public Interval(int …

Julia编程08:控制流Control Flow

Julia provides a variety of control flow constructs: Compound Expressions: begin and ;. Conditional Evaluation: if-elseif-else and ?: (ternary operator). Short-Circuit Evaluation: logical operators && (“and”) and || (“or”), and also chained …

【代码随想录训练营】【Day 32】【回溯-6】【待二刷】| Leetcode 332, 51, 37

【代码随想录训练营】【Day 32】【回溯-6】【待二刷】| Leetcode 332, 51, 37 需强化知识点 滑动窗口&#xff0c;固定结束位置版本螺旋数组&#xff0c;建模为编程问题 题目 332. 重新安排行程 sort reverse的用法&#xff0c;以及result.append(airport)的理解 from co…

i2c总线介绍

1. 简介 1.1 I2C总线的历史背景 I2C&#xff08;Inter-Integrated Circuit&#xff09;总线最初由Philips Semiconductors&#xff08;现NXP Semiconductors&#xff09;在1980年代开发&#xff0c;旨在简化集成电路之间的通信。随着技术的发展&#xff0c;I2C已经成为一种广…

【数据结构】哈希表的原理及其实现

文章目录 哈希表的概念哈希函数的设计常见的哈希函数 哈希冲突1. 闭散列代码实现 2. 开散列拉链法的优点 针对开散列哈希的扩展基于开散列拉链法封装哈希表MyHash.h 基于哈希表实现unordered_map类Myunordered_map.h 基于哈希表实现unordered_set类Myunordered_map.h 哈希表的概…

匠心独运的掺Si量子势垒策略,显著提升了AlGaN基深紫外LED出光率

WHU团队凭借匠心独运的三明治式掺Si量子势垒策略&#xff0c;显著提升了AlGaN基深紫外光LED的效率&#xff0c;这一创新成果为中国武汉大学的研究团队所取得。他们巧妙地设计出一种三明治状Si掺杂&#xff08;未掺杂&#xff09;方案&#xff0c;应用于Al0.6Ga0.4N量子势垒中&a…

WSL安装CentOS系统

1.首选找一个linux系统&#xff0c;执行docker命令 docker run -it --rm centos:7 bash 2.开一个新窗口&#xff0c;将系统导出 docker export e0ee25406703 -o centos.tar 3.切换到wsl命令&#xff0c;导入tar包 wsl --import centos D:\wsl\centos D:\wsl\centos.tar cen…

llvm实践日志(1)---安装llvm

参考了官方教程&#xff1a;Getting Started with the LLVM System — LLVM 19.0.0git documentation 首先从github拷贝一份源码&#xff0c;使用了官方推荐的方法&#xff1a; git clone --depth 1 https://github.com/llvm/llvm-project.git 我的系统是ubuntu22&#xff0…