2.1 linux C 进程与多线程入门--(1)进程和程序的区别

进程和程序的区别:

j进程是活动的程序,而程序是一个代码的集合。进程是加载到内存中的程序,而程序没有加载到内存中,只是在磁盘上存储着。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include<sys/types.h>
#include<unistd.h>
#include<stdio.h>
int main()
{
pid_t pid ;
char * message;
printf("fork process staring \n");
pid = fork();
switch(pid)
{
case -1:
perrro("fork failed \n");
exit(1);
case 0:
mesage = "this is the child\n";
n = 5;
break;
default :
message = "this is the parent \n";
n = 3;
break;
}
for(; n>0 ;n-=1
{
puts(message);
sleep(1);
}
exit(0);
}

(1)pid_t 是进程号,是唯一表示进程的id。

(2)pid_t fork(void)函数 包含的头文件:#include<unistd.h>

#include<sys/types.h>

调用fork可以创建一个全新的进程,这个系统调用对当前进程进行复制。在进程表里创建一个新的项目,新项目的许多属性与当前进程是相同的。新进程河源进程几乎一样样的。执行的也是相同的代码,但新进程有自己的数据空间自己的环境等。

(3)程序调用了fork函数的时候被分成了两个进程,。在父进程里,fork函数返回新进程的pid 进程号,新进程则返回0,这个可以作为区分父子进程的一句。

父进程和子进程的执行的代码都和fork.c里的代码一致。但是,fork根据不同进程返回不同的pid,那么父子进程的实际有效代码部分是不同的,下面我只写实际有效的代码:



 

也就是说,进程会根据pid的不同,有选择的执行各自的代码。这个程序将产生两个进程,新进程(子进程)会输出5此,而父进程3此。父进程会在子进程打印完他的全部信息之前推出。

提醒大家一下:源文件虽然只有一个,但是运行的进程是两个,而不是1个。fork()函数在父进程里创建了新的进程,两个进程执行的是相同的代码,即代码是一样的。

转载于:https://www.cnblogs.com/yjds/p/8597454.html

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

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

相关文章

计算机一级表格样式在哪儿,word表格样式在哪 word表格样式在哪里

word2007中设置好正文样式怎样设置表格样式1. 打开word(以2007为例)【开始】--> 【样式】&#xff0c;打开样式右下角的小箭头&#xff0c;或者alt shift ctrl S&#xff0c;打开全部式样 2. 在全部式样里&#xff0c;选择你要改的类型&#xff0c;点击该类型右边的下拉箭…

计算机辅助设计b实验目的,上海电力学院电路计算机辅助设计1--含有受控源电路辅助分析...

上海电力学院电路计算机辅助设计1--含有受控源电路辅助分析实验三&#xff1a;含有受控源电路辅助分析一、实验目的1. 用回路电流法和节点电压法求解电路中的电流和电压。 2. 掌握线性电路参数的测量的方法。3. 了解四种受控源元件(电流控制的电压源、电流控制的电流源、电压控…

计算机基本运行方式,我今天才知道的电脑运行方式,你知道吗?

计算机首先你必须是系统软件和应用软件的相互的结合&#xff0c;才能更好的开发出你电脑的应用平台&#xff0c;那么其实没有了软件系统&#xff0c;光有这些硬件&#xff0c;他能不能工作&#xff0c;其实是不能工作的电脑也就是废物一台。那么软件这些&#xff0c;就是合理的…

计算机修复画笔结果分析,Photoshop

Photoshop基础:使用修复画笔工具修复画笔工具和修补工具&#xff0c;其实都是基于我们前面所说的图章工具的派生工具&#xff0c;并弥补了图章工具的一些不足。那么图章工具有什么不足之处呢&#xff1f;通过前面的学习我们知道了图章工具对图案的复制是原样照搬的&#xff0c;…

服务器的虚拟化配置,怎么配置服务器的虚拟化环境

服务器虚拟化是科技发展的产物&#xff0c;使得在一台服务器上同时执行多个操作系统、提供服务成为可能&#xff0c;优化了企业内部资源&#xff0c;节省成本。服务器虚拟化是IT基础架构得以资源共享的做法&#xff0c;也是未来机房的重要元素之一&#xff0c;那我们怎么配置这…

qq游戏坦大战服务器维护中,高手教你如何解决QQ游戏问题

许多玩QQ游戏的朋友&#xff0c;可能会发现忽然有一天自己的QQ游戏进不去了&#xff0c;无法打开QQ游戏了&#xff0c;就算重装游戏也不行&#xff0c;出现“加载DLL失败”的提示。现将各种情况的DLL文件加载失败解决办法收集起来&#xff0c;希望能对大家有所帮助。1.加载cnsm…

华硕笔记本没有无线服务器,华硕笔记本连不上无线网络怎么解决

可能还有些网友不太清楚关于华硕笔记本连不上无线网络的问题&#xff0c;下面就由学习啦小编给你们介绍华硕笔记本连不上无线网络的解决方法吧&#xff0c;希望能帮到大家哦!华硕笔记本连不上无线网络的解决方法一&#xff1a;1、首先我们来检测是否是无线路由器的问题。为了确…

Maven知识点整理

Maven不仅是依赖管理工具&#xff0c;准确来说是一个项目管理工具&#xff0c;贯穿了整个项目生命周期&#xff0c;编译&#xff0c;测试&#xff0c;打包&#xff0c;发布...依赖是使用Maven坐标来定位的&#xff0c;而Maven坐标 主要 由GAV&#xff08;groupId, artifactId, …

企业案例(二):增量恢复案例

1、环境准备 条件: 1.具备全量备份&#xff08;mysqldump&#xff09;。 2.除全量备份以外&#xff0c;还有全量备份之后产生的的所有binlog增量日志。 1.1、建立数据库和表 CREATE DATABASE dadong; USE dadong; CREATE TABLE test (id int(4) NOT NULL AUTO_INCREMENT,name c…

gdc服务器维修公司,gdc服务器阵列架坏了

gdc服务器阵列架坏了 内容精选换一换本章节指导用户批量创建4块云硬盘&#xff0c;并挂载至云服务器。进入云硬盘页面。关于创建云硬盘的详细操作&#xff0c;请参见“云硬盘用户指南”。本示例为批量创建4块云硬盘&#xff0c;具体参数如图1所示。云硬盘规格支持任意用户(root…

手机文件传云服务器,手机云服务器传文件

手机云服务器传文件 内容精选换一换华为云帮助中心&#xff0c;为用户提供产品简介、价格说明、购买指南、用户指南、API参考、最佳实践、常见问题、视频帮助等技术文档&#xff0c;帮助您快速上手使用华为云服务。如果私钥文件丢失了&#xff0c;可以为服务器替换新的密钥对&a…

Experimental-work1

软件测试第一次实验报告 3015207191 软件工程3班 林家乐 一、安装Junit&#xff0c;Hamcrest和Eclemma: 1.安装Junit 下载junit.jar&#xff0c;在项目里添加junit.jar并build一下即可。使用时&#xff0c;在项目内包含Junit4的库&#xff0c;其中包含junit.jar即…

c 开发服务器的性能,高性能网络编程(三):下一个10年,是时候考虑C10M并发问题了...

1、前言在本系列文章的上篇中我们回顾了过云的10年里&#xff0c;高性能网络编程领域著名的C10K问题及其成功的解决方案(上篇请见&#xff1a;《高性能网络编程(二)&#xff1a;上一个10年&#xff0c;著名的C10K并发连接问题》)。本文将讨论单机服务器实现C10M(即单机千万并发…

无盘服务器磁盘缓存,云更新无盘服务器磁盘缓存器

云更新无盘服务器磁盘缓存器 内容精选换一换Linux操作系统下&#xff0c;用户由于误操作卸载弹性云服务器上的Tools&#xff0c;会对非PVOPS系统的磁盘和网卡产生影响&#xff0c;导致系统无法发现数据盘。此时&#xff0c;用户可通过新建一个弹性云服务器&#xff0c;将原数据…

云财经服务器维护,云财经服务器维护

云财经服务器维护 内容精选换一换云耀云服务器适用于对CPU、内存、硬盘空间和带宽无特殊要求&#xff0c;服务一般只需要部署在一台或少量的服务器上&#xff0c;一次投入成本少&#xff0c;后期维护成本低的场景。例如网站开发&#xff0c;Web应用。推荐使用云耀云服务器&…

服务器lsass系统错误,Win7系统提示Lsass.exe系统错误的原因及解决

最近很多使用Win7系统用户反馈说开机提示lsass.exe系统错误&#xff0c;也不知道怎么回事?lsass.exe是什么进程&#xff0c;可能是病毒吗?带着这些疑问&#xff0c;下面小编告诉大家Win7系统提示Lsass.exe系统错误的原因及解决方法&#xff0c;希望本教程内容可以帮助到大家。…

相对路径 web

http://www.jb51.net/web/21806.html 相对路径-以引用文件之网页所在位置为参考基础&#xff0c;而建立出的目录路径。因此&#xff0c;当保存于不同目录的网页引用同一个文件时&#xff0c;所使用的路径将不相同&#xff0c;故称之为相对。   绝对路径-以Web站点根目录为参考…

NFS服务端安装与配置

一、NFS介绍 NFS数据传输基于PRC协议&#xff0c;用于在网络上共享存储。 二、服务端配置NFS 1、服务端安装包 nfs-utils和rpcbind,使用yum安装nfs-utils时会一起安装rpcbind. yum install -y nfs-utils 2、创建配置文件 vim /etc/exports&#xff0c;写入以下内容&#xff1a…

【前端统计图】echarts实现单条折线图

五分钟上手&#xff1a;图片.png<!DOCTYPE html> <html><head><meta charset"utf-8"><title>五分钟上手之折线图</title><!-- 引入 echarts.js --><script src"js/echarts.min.js"></script><sc…

JAVA高并发的三种实现

提到锁&#xff0c;大家肯定想到的是sychronized关键字。是用它可以解决一切并发问题&#xff0c;但是&#xff0c;对于系统吞吐量要求更高的话&#xff0c;我们这提供几个小技巧。帮助大家减小锁颗粒度&#xff0c;提高并发能力。 初级技巧-乐观锁 乐观锁使用的场景是&#…