Linux——进程与任务管理

Linux的进程与任务管理是一个复杂但至关重要的系统操作方面,它涵盖了进程的创建、监控、调度、终止以及任务的安排与执行等多个方面。以下是对Linux进程与任务管理的详细概述:

进程的基本概念

  1. 进程(Process):进程是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单元。它是操作系统结构的基础,是线程与一个或多个线程的集合。
  2. 线程(Thread):线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的独立运行的单位。线程共享进程的全部资源,但每个线程都有自己的执行流。

进程管理相关命令

  1. ps命令:用于查看当前运行进程的信息。常用选项包括:

    • -a:显示所有用户的进程。
    • -u:显示进程的详细信息。
    • -x:显示不与终端关联的进程。
    • ps aux:查看系统中所有的进程及其详细信息。
    • ps -elf:以长格式显示进程信息。
  2. top命令 :用于实时监控系统的进程和系统资源使用情况。top命令会按照CPU使用率或者内存使用率排序,可以通过按键进行排序或者过滤。按q键可以退出。

  3. kill命令 :用于终止一个进程。需要提供进程的PID(进程号)作为参数。当kill命令无法杀死进程时,可以使用kill -9来强制杀死进程。

  4. killall命令:用于终止指定名称的所有进程。

  5. pkill命令:根据特定条件终止相应的进程,如根据进程名或用户名等。

  6. renice命令:用于修改进程的优先级。可以使用进程ID或者进程名来指定要修改优先级的进程。

  7. nice命令:用于启动一个进程,并指定它的优先级。

  8. nohup命令:用于在后台运行一个进程,并忽略SIGHUP信号。

  9. jobs命令:用于查看当前shell会话中的后台任务。

  10. bg命令:将一个被暂停的前台任务放到后台运行。

  11. fg命令:将一个后台任务放到前台运行。

进程的前后台调度

  • 前台进程:用户当前正在与之交互的进程,如运行一个应用程序或编辑文档时,相关的进程将被认为是前台进程。
  • 后台进程:在后台运行的进程,不会直接与用户交互,它们通常在后台执行任务,而不会干扰用户的当前工作。

进程的前后台调度可以通过Ctrl+Zjobsfgbg等命令来实现。

计划任务管理

  1. 一次性计划任务 :使用at命令设置的任务只在指定时间点执行一次。
    • 语法:at [HH:MM] [yyyy-mm-dd]
    • 在at交互环境中输入多条命令,最后按Ctrl+D组合键提交。
  2. 周期性计划任务 :使用crontab命令按照预先设置的时间(分钟、小时、天、月、周)周期性地执行用户指定的命令操作。
    • 编辑crontab文件:crontab -e
    • 在文件中使用特定的时间格式添加任务,如0 1 * * * command表示每天的凌晨1点执行command命令。
相关推荐
YYRAN_ZZU6 分钟前
Petalinux新建自动脚本启动
linux
charlie11451419122 分钟前
嵌入式Linux驱动开发pinctrl篇(1)——从寄存器到子系统:驱动演进之路
linux·运维·驱动开发
Agent手记29 分钟前
异常考勤智能预警与处理与流程优化方案 | 基于企业级Agent的超自动化实战教程
运维·人工智能·ai·自动化
于小猿Sup41 分钟前
VMware在Ubuntu22.04驱动Livox Mid360s
linux·c++·嵌入式硬件·自动驾驶
cen__y1 小时前
Linux12(Git01)
linux·运维·服务器·c语言·开发语言·git
不仙5202 小时前
VMware Workstation 26.0.0 在 Ubuntu 24.04 (内核 6.17.0) 上的安装与内核模块编译问题
linux·ubuntu·elasticsearch
189228048613 小时前
NY352固态MT29F32T08GWLBHD6-24QJ:B
大数据·服务器·人工智能·科技·缓存
AI视觉网奇3 小时前
linux 检索库 判断库是否支持
java·linux·服务器
dapeng-大鹏3 小时前
KVM+LVM 零停机在线扩容 Ubuntu 根分区:从磁盘添加到逻辑卷扩展完整
linux·运维·ubuntu·磁盘空间扩展
乐维_lwops3 小时前
案例解读|运维监控助力某大型卷烟厂构建高效运维监控体系
运维·运维案例