zoukankan      html  css  js  c++  java
  • 架构师养成记--27.程序和进程的概念

    程序是静态概念,本身作为一种软件资源长期保存;而进程是程序执行的过程,它是动态的,是有一定什么周期的,是动态产生和消亡的。一个程序可以有多个进程共用,一个进程在活动中也可顺序执行若干个程序。他们没有认识关系。

    在linux系统中,分为前台进程和后台进程,前台进程意思就是当一个命令执行的过程中,不允许其他的命令执行,我们之前所学习的常用命令基本上都是前台进程。

    比如我们查找一个文件:find / -name init 在这个命令执行中其他命令是不可以执行的。

    而后台进程则运行多个进程一起同步执行:只需要在最后加上“&”,即表示为后台进程(注意后台进程是不能交互执行的,比如ping命令等)

    进程管理命令

    命令:w(who)

    描述:查看用户信息

    TTY:表示以什么方式登录这台计算机(pts/0 远程登录)

    FROM:表示从什么位置登录的。

    LOGIN@:表示登录时间、

    IDLE:表示用户闲置的时间。

    JCPU:表示当前这个用户执行所有进程耗时总和

    PCPU:表示执行程序耗费的时间

    load avegage : 表示系统的负载值,分别显示过去的1、5、15分钟系统的负载程度,如果是想知道系统的平均负载,三者之和除以3即可,最终结果在0.8以下表示正常,如果达到几十或上百,那么系统负载非常高,可能无法响应任何命令

    WHAT : 表示当前执行的什么任务。

    命令:ps(process status)

    -a:显示所有用户的进程

    -l:长格式显示

    STAT:当前状态 S休眠; D不可中断的休眠状态;R运行状态; Z僵死状态; R停止

    UID : 表示当前启动进程的用户

    PID : 进程号

    PPID:父进程号

    TTY:进程启动的终端

    IN:进程的优选级

    TIME:进程启动以来占用的实际时间

    CMD:进程的命令

    其他选项

      -u:显示用户名和启动时间

      -x:显示没有控制终端的进程

      -e:显示所有进程,包括没有控制终端的进程

      -w:宽宏显示,可以使用多个w进行价款显示

    杀死进程

    该进程占用了过多的CPU时间

    该进程锁住了一个终端,使其他前台进程无法运行

    运行时间过长,没有预期效果

    成为了系统负载主要负担

    无法正常退出

    。。。。

    命令:kill [进程号] 关闭进程 kill 1234

      kill -9 [进程号] 强制关闭进程

      kill -1 [进程号] 重庆进程

      xkill 关闭图形程序

      killall 结束所有进程

      查找服务进程号:pgrep [服务名称]

      关闭进程:pkill [进程名]

    命令:nohup

    语法:nohup program &

    描述:是进程在用户退出登录后仍旧继续执行

    终止一个程序的运行 : ctrl + c

    挂起一个程序的运行:ctrl + z

    命令:jobs

    语法:jobs

    把任务恢复到前台执行 fg [任务编号]

    把任务恢复到后台执行 bg 【任务编号】

    命令:top

    -  d:指定刷新时间间隔

    -  c:显示整个命令行的详细信息

    -  u:可查看指定用户的进程

    -  k:终止正在执行的进程

    描述:进程状态显示和进程控制,每5秒自动刷新一次(动态显示)

  • 相关阅读:
    BlockingQueue 原理 分析
    java引用 强引用,软引用,弱引用
    actomic cas无锁操作。
    MongoDB库设计原则及实践
    spring事物传播机制 事物隔离级别
    Hive UDAF介绍与开发
    [技术学习]js接口继承
    [技术学习]js继承
    [技术学习]正则表达式分析
    [技术学习]js正则表达式汇总
  • 原文地址:https://www.cnblogs.com/sigm/p/6437145.html
Copyright © 2011-2022 走看看