zoukankan      html  css  js  c++  java
  • 进程和计划任务任务管理

     进程和计划任务任务管理

     

    1、程序和进程的关系
    (1)程序

    • 保存在硬盘、光盘等介质中的可执行代码和数据
    • 静态保存的代码

    (2)进程

    • 在 CPU 及内存中运行的程序代码
    • 动态执行的代码
    • 父、子进程:每一个进程可以创建一个或多个进程

     2、静态查看进程信息

    [root@localhost ~]# ps aux
    USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
    root 1 0.1 0.3 56640 6672 ? Ss 00:22 0:01 /usr/lib/systemd/systemd --switched-root --system --deserialize 24
    root 2 0.0 0.0 0 0 ? S 00:22 0:00 [kthreadd]
    root 3 0.0 0.0 0 0 ? S 00:22 0:00 [ksoftirqd/0]
    root 5 0.0 0.0 0 0 ? S< 00:22 0:00 [kworker/0:0H]
    root 7 0.0 0.0 0 0 ? S 00:22 0:00 [migration/0].

    (1)

    • USER:启动该进程的用户账号的名称。
    • PID:该进程在系统中的PID号,在当前系统中是唯一的。
    • %CPU: CPU占用的百分比。
    • %MEM:内存占用的百分比。
    • VSZ:占用虚拟内存swap空间的大小。
    • RSS:占用常驻内存物理内存的大小。
    • TTY:表明该进程在哪个终端上运行。“?”表示未知或不需要终端。
    • STAT:显示了进程当前的状态:D:不可中断睡眠、S:可中断的睡眠、R:就绪或运行状态、T:中止状态、Z: 僵死状态、<:高优先级进程、N:低优先级进程、+:前台进程组中的进程、|:多线程的进程、s:会话进程的首进程
    • START:启动该进程的时间。
    • TIME:该进程占用的CPU时间。
    • COMMAND:启动该进程的命令的名称。

    (2)stat状态

    • S:不可中断睡眠
    • R:可中断睡眠
    • Z:就绪或运行状态
    • <:高级有限进程
    • N:低级优先进程
    • +:前台进程组中的进程
    • T:中止状态
    • Z:僵死状态

    3、动态查看进程

    top - 00:51:38 up 28 min, 1 user, load average: 0.00, 0.01, 0.03
    Tasks: 399 total, 2 running, 397 sleeping, 0 stopped, 0 zombie
    %Cpu(s): 0.0 us, 0.3 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
    KiB Mem : 2035356 total, 1760020 free, 134140 used, 141196 buff/cache
    KiB Swap: 2097148 total, 2097148 free, 0 used. 1751724 avail Mem

    PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
    722 root 20 0 0 0 0 S 0.3 0.0 0:00.10 xfsaild/dm-0
    1 root 20 0 56640 6672 3888 S 0.0 0.3 0:01.31 systemd
    2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
    3 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/0

    • top - 16:58:24 【当前系统时间】
    • 1:54 【系统已经运行 1 小时 54 分钟】
    • 2 users 【当前登录 2 个用户】
    • load average:0.00,0.00,0.00 【系统平均负载:1 分钟的,5 分钟的,15 分钟的】
    • Tasks:108 total 【任务:108 个总进程】
    • 1 running 【1 个进程正在运行】
    • 107 sleeping 【107 个进程睡眠】
    • 0 stoppd 【0 个进程停止】
    • 0 zombie 【0 个僵尸进程(冻结进程)】
    • Cpu(s): 0.0%us 【用户控件占用 CPU 百分比】
    • 0.0%sy 【内核空间占用 CPU 百分比】
    • 0.0%ni 【用户进程控件内改变过优先级的进程占用 CPU 百分比】
    • 100.0% 【空闲 CPU 百分比】
    • 0.0%wa 【等待输入输出的 CPU 时间百分比】
    • 0.0% hi 【】
    • 0.0%si 【】
    • Men: 1012352k total 【物理内存总量 1012352k】
    • 465816k used 【使用了 465816k 的物理内存】
    • 546536k free 【空闲 546536k 的物理内存】
    • 61064k buffe 【61064k 用作内核缓存】
    • Swap: 2031608k total 【交换分区总量 2031608k】
    • 0k used 【没有使用交换分区】
    • 2031608k free 【空闲的交换分区总量 2031608k】
    • 267580k cache 【缓冲的交换分区总量 267580k】
    • PID:进程号
    • USER:进程所有者的用户名
    • PR:优先级
    • NI:nice 值。负值表示高优先级,正值表示低优先级
    • VIRT:进程使用的虚拟内存总量,单位 kb
    • RES:进程使用的、未被换出的物理内存大小,单位 kb
    • SHR:共享内存大小,单位 kb
    • S:进程状态
    • %CPU:上次更新到现在的 CPU 时间占用百分比
    • %MEM:进程使用的物理内存百分比
    • TIME+:进程使用的 CPU 时间总计,单位 1/100 秒
    • COMMAND:命令

    4、进程的启动方式

    (1)手工启动:

    • 前台启动:用户输入命令,直接执行程序
    • 后台启动:在命令行尾加入“&”符号

    (2)进程的前后台调度

    • Ctrl+Z 将当前进程挂起,即调入后台并停止执行
    • jobs 命令 查看处于后台的任务列表,加-l 同时显示 PID 号
    • fg 命令 将后台进程恢复到前台运行,可指定任务程序号
    • bg 命令 将后台暂停的进程调至后台运行

    (4)终止进程的运行

    • Ctrl+C 中断正在执行的命令
    • kill、killall 命令
    • kill 用于终止指定 PID 号的进程
    • killall 用于终止指定名称的所有进程
    • -9 选项用于强制终止

    5、调度启动

    (1)使用 at 命令,设置一次性任务计划

    • 服务脚本:/etc/init.d/atd
    • 设置格式:at [HH:MM] [yyyy-mm-dd] 设置当天的任务计划可不加日期
    • 基本操作:
      • Ctrl+D 保存退出
      • atq 查询现有的一次性任务计划
      • atrm [任务序号] 删除第几项任务

    (2)使用 crontab 命令,设置周期性计划任务

      • 脚本名称:/etc/init.d/crond
      • 主要配置文件:
    • 全局配置文件:/etc/crontab
    • 管理 cron 计划任务
      • 编辑:crontab -e [-u 用户名]
      • 查看:crontab -l [-u 用户名]
      • 删除:crontab -r [-u 用户名]
    • 时间数值的特殊表示方法
      • * 表示该范围内的任意时间
      • , 表示间隔的多个不连续时间点
      • - 表示一个连续的时间范围
      • / 指定间隔的时间频率
  • 相关阅读:
    小白们应该知道,在Eclipse当中怎样在编译页面当中显示行号.
    严重:Parse error in application web.xml file at jndi:/localhost/day_29/WEB-INF/web.xml解决办法
    linux 系统下,忘记密码的快捷解决方法。
    eclipse 当中,修改文本编辑框的字体大小
    如何在linux当中,大量的添加用户
    04文件操作1
    03python面向对象编程之多态和枚举6
    03python面向对象编程5
    03python面向对象编程4
    03python面向对象编程2
  • 原文地址:https://www.cnblogs.com/wzy01/p/11324952.html
Copyright © 2011-2022 走看看