【操作系统】linux创建子进程--fork()方法
2023-09-27 14:29:31 时间
我们需要理解的是,调用一次fork()方法,该方法会返回两次。一次是在调用进程(也就是派生出的子进程的父进程)中返回一次,返回值是新派生的进程的进程ID。一次是在子进程中返回,返回值是0,代表当前进程为子进程。如果返回值为-1的话,则代表在派生新进程的过程中出错。
那么在程序中,我们就可以根据此返回值来判断当前进程是父进程还是子进程,来实现一些具体的操作。例如:
父进程中在调用fork()派生新进程,实际上相当于创建了进程的一个拷贝;即在fork()之前的进程拥有的资源会被复制到新的进程中去。网络服务器在处理并发请求时,也可以采取这种派生新进程的方式: 父进程调用accept()后调用fork()来处理每一个连接。那么,所接受的已连接的套接口随后就在父子进程中共享。通常来说,子进程会在这连接套接口中读和写操作,父进程则关闭这个已连的套接口(可以参考:http://blog.csdn.net/moxiaomomo/article/details/6791763)
(3)fork()的用法
fork()有两个典型用法:(1)一个进程进行自身的复制,这样每个副本可以独立的完成具体的操作,在多核处理器中可以并行处理数据。这也是网络服务器的其中一个典型用途,多进程处理多连接请求。 (2)一个进程想执行另一个程序。比如一个软件包含了两个程序,主程序想调起另一个程序的话,它就可以先调用fork来创建一个自身的拷贝,然后通过exec函数来替换成将要运行的新程序。
【看表情包学Linux】了解操作系统 | 目录内容的显示 | 目录跳转 | 基本创建与删除操作(二) 本章将浅谈一下 操作系统是什么 的问题,随后通过讲解一些 Linux 下的基本指令,显示目录内容、跳转操作和文件的创建与删除。在讲解的同时我会穿插一些知识点,比如 Linux 隐藏文件、路径等基础知识。
【看表情包学Linux】了解操作系统 | 目录内容的显示 | 目录跳转 | 基本创建与删除操作(一) 本章将浅谈一下 操作系统是什么 的问题,随后通过讲解一些 Linux 下的基本指令,显示目录内容、跳转操作和文件的创建与删除。在讲解的同时我会穿插一些知识点,比如 Linux 隐藏文件、路径等基础知识。
Linux系统下VMware虚拟机安装Win7 ISO操作系统 继上一篇linux系统下安装VMware虚拟机的文章后,有遗留问题,那就是将移植的虚拟机操作系统放在本机上无法直接打开的。问题反正也没有解决,但注意前后移植机器上的虚拟机版本是否一致,还有是否少拷贝了文件。 我这里没能解决,也就不多哔哔。这里是就认怂重新来过吧——也就是直接在虚拟机上新建安装操作系统。
Linux操作系统下开启wifi热点的方法 在很多场合下,网络使用是非常重要的,如果有一个Linux可以发出wifi热点,那么很多时候可以对于开发者来说是非常方便的。
相关文章
- Linux常用命令1
- Linux线程退出、资源回收、资源清理的方法
- Linux下查看压缩文件内容的10种方法
- 在 Linux 上查找可用磁盘空间的最简单的方法是使用 df 命令
- Linux centos 运行telnet命令command not found的解决方法
- 以oommf为例,写写linux上编译软件的一般性方法
- Python:os.path.join()产生的斜杠在Windows和Linux下的不同表现和解决方法
- Linux系统中运行.sh文件的几种方法
- Linux CentOS7.x 升级内核的方法
- linux 【CPU性能】怎么理解linux的负载均衡?
- 在Linux终端中生成随机强密码的5种方法
- TeamViewer 9发布-在Linux下安装运行
- SUSE Linux – Zypper 命令示例
- linux下安装7z命令及7z命令的使用
- 在Linux下打包tar文件时添加密码的方法
- Linux下使用ps命令查看某个进程文件的启动位置
- Linux下用Mytop监控MySQL资源
- PYTLP模型安装及使用(linux+python3)
- Linux 查看进程运行的完整路径方法
- Linux int型转换为char*型几种方法总结
- 创建守护进程步骤与setsid() -- linux deamon进程
- centos不联网Linux添加gcc,CentOS下离线安装gcc环境,图文详细,方法全面
- linux ioctl 方法
- Linux中ifconfig和addr查看不到ip的解决方法
- 转 【TTS】AIX平台数据库迁移到Linux--基于RMAN(真实环境)
- linux之在当前目录下按照文件大小进行排序的三种方法
- Linux查看和关闭后台运行程序的方法
- 查询红帽linux/Oracle Linux的发行版本的方法
- Linux 之 Ubuntu 上 Vim 的安装、配置、常用命令的简单整理
- windows及linux环境下永久修改pip镜像源的方法
- Linux 忘记密码怎么办,CentOS和Ubuntu重置密码方法