news 2026/4/23 16:29:36

23、UNIX 系统中的进程处理与控制

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
23、UNIX 系统中的进程处理与控制

UNIX 系统中的进程处理与控制

1. UNIX 系统的多任务特性

UNIX 操作系统以一些简单却强大的概念闻名,如标准输入输出、管道、文本过滤工具、树形文件系统等。它还是首个让用户能控制多个进程的小型计算机操作系统,这种能力被称为用户控制的多任务处理。

很多人可能觉得在命令行末尾加&让进程在后台运行很常见,也了解子 shell 的概念。接下来,我们将介绍 bash 中与多任务和进程处理相关的大部分特性,不过有些特性只有底层系统程序员才会感兴趣。

我们会先介绍识别和控制进程的基本方法,然后探讨进程间的通信方式,还会深入研究之前提到的管道和子 shell 等概念。这里不会涉及过多 UNIX 的底层技术细节,只提供必要的信息,若想了解更多,可以参考 UNIX 编程手册或相关书籍。强烈建议大家尝试文中的示例,涉及多进程的代码在纸上理解起来并不容易。

2. 进程 ID 和作业编号

在 UNIX 系统中,每个进程创建时都会被赋予一个编号,即进程 ID(Process ID)。当在命令末尾添加&让命令在后台运行时,shell 会给出类似如下的响应:

$ alice &[1] 93

在这个例子中,93alice进程的进程 ID,[1]是 shell 分配的作业编号(并非操作系统分配)。作业编号指的是当前在 shell 下运行的后台进程,而进程 ID 则涵盖了系统中所有用户的所有运行进程。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 9:47:20

33、Bash编程:内置变量、操作符与选项全解析

Bash编程:内置变量、操作符与选项全解析 在Bash编程中,内置变量、测试操作符以及各种设置选项是非常重要的概念,它们能极大地提升脚本的功能和效率。下面将详细介绍这些内容。 内置Shell变量 Bash 3.0中有一系列丰富的环境变量,这些变量在脚本编写中起着关键作用。在变量…

作者头像 李华
网站建设 2026/4/23 10:45:50

22、开源办公软件的数学计算与多媒体应用指南

开源办公软件的数学计算与多媒体应用指南 在日常的学习和工作中,处理数学公式和享受多媒体娱乐是常见的需求。OpenOffice.org Math 为我们提供了强大的数学公式编辑功能,而 Linux 系统在多媒体方面也有丰富的应用。下面将详细介绍 OpenOffice.org Math 的使用以及 Linux 系统…

作者头像 李华
网站建设 2026/4/23 12:34:12

25、Linux 文件系统操作与软件添加全攻略

Linux 文件系统操作与软件添加全攻略 在 Linux 系统的使用过程中,我们常常会遇到文件挂载、跨系统文件共享以及软件添加等操作。下面将详细为大家介绍这些操作的具体方法。 挂载 NFS 文件系统 若要在 Linux 系统中挂载 NFS 文件系统,可按以下步骤进行: 1. 在 /etc/fsta…

作者头像 李华
网站建设 2026/4/23 11:13:34

JeecgBoot低代码平台终极指南:从零到精通的完整教程

JeecgBoot是一款革命性的Java低代码快速开发平台,专为企业级Web应用量身打造。通过智能代码生成器和可视化配置,它能显著提升开发效率70%以上,实现真正的低代码开发体验。 【免费下载链接】jeecg-boot 项目地址: https://gitcode.com/gh_m…

作者头像 李华
网站建设 2026/4/22 13:12:23

Hazelcast分布式数据网格终极指南:构建企业级实时应用架构

Hazelcast分布式数据网格终极指南:构建企业级实时应用架构 【免费下载链接】hazelcast hazelcast - 这是一个分布式数据存储和计算平台,用于构建高性能、可扩展的应用程序。适用于实时数据处理、缓存、分布式计算等场景。特点包括高性能、可扩展 项目地…

作者头像 李华