Linux系列(15)之进程管理
详细情况查看:https://www.cnblogs.com/dengyungao/p/8523628.html
1.查看进程
有两个命令可以查看进程,分别是ps与top(推荐使用),那他们有什么区别
top:动态查看当前进程,显示的信息更多,并且会实时会显示各个进程对cpu利用率的变化。
1.ps指令用法

这个指令的选项太复杂,记下常用的两个就行了,如下
1.查阅自己bash的进程
ps -l //查阅自己bash的进程

如上图, 我们现在通过命令ps -l查到了关于自己bash的进程的信息,但是这些字段是什么意思呢?


2.查阅系统运行的所有进程
ps aux //查阅所有进程

上图中各个字段的意义如下:

2.top指令的用法
top指令是动态观察程序的变化,即可以持续侦测程序的运行状态。

上图中的各个字段的意义如下:

2.查看进程之间的关系
pstree指令是以树结构显示各个进程之间的关系

3.程序的管理
程序之间是可以相互控制的!举例来说,你可以关闭、重新启动服务器软件,服务器软件本身就是个程序,你既然可以让它关闭或启动,当然就是可以控制该程序啦!那么程序是如何相互管理的呢?其实是通过给予该程序一个讯号(signal),去告知该程序你想让它干嘛!因此这个讯号就很重要了。

1.kill指令
该指令只适合杀死某个单一的进程。
指令: kill -signal 进程号 //通过kill指令给进程传讯号
通过kill指令的格式可以发现,如果想要使用kill指令杀死一个进程,那么必须知道进程号。
2.killall指令
该指令适合杀死一个服务,因为该指令可以将系统当中所有以某个指令名称启动的所有进程全部杀死。
killall -signal 命令名 //给指定名

下面举两个实例:

1.关闭进程
先通过top查看当前有哪些进程在运行,之后通过kill指令或killall指令关闭进程。
格式:
kill -9 PID //根据PID进程号关闭进程
killall -9 command //根据command关闭进程,以及关闭该进程产生的所有子进程
其中command就是产生这个进程的指令或二进制文件。
2.启动进程
如何启动进程呢?由于计算机只认识二进制文件,因此开启进程通常都是执行二进制文件。也许你会说执行shell脚本也可以开启进程,其实shell脚本还是去通过执行二进制文件(指令)来启动进程的。
可执行文件分类:脚本文件(shell脚本)、二进制可执行文件。
注意:上述两种类型文件执行的前提是已经获得可执行权限X。
那如何执行二进制文件呢?这里就需要先了解环境变量PATH了。可行性文件的位置必须通过环境变量PATH可以找到才能执行,而PATH中都包含“当前目录(.表示当前目录)”,因此当你没有特地设置环境变量时,先跳转到想要执行的“可执行文件”所在目录作为当前目录,之后输入“./command”或者“./shell脚本”启动进程。因为PATH中包含当前目录,因此可以通过环境变量PATH找到你想要执行的“可执行文件”了。
启动进程格式:
./command //command是启动进程的可执行二进制文件,前提:当未设置环境变量时,当前目录必须为command所在目录。
./脚本文件名 //运行脚本文件,前提:当未设置环境变量时,当前目录必须为脚本文件所在目录。
脚本文件名 //直接在终端上输入脚本文件名就可以执行,前提:该脚本文件所在目录被设置到PATH环境变量中去了
实例:
1.第一格式的启动:根据command(未设置环境变量)
启动火狐浏览器,已知启动火狐浏览器的command是firefox-bin。
思路:通过find指令找到firefox-bin的具体位置,跳转到firefox-bin所在目录,执行“./firefox-bin”指令启动火狐浏览器。过程如下所示:

2.第二格式的启动:根据脚本文件名(未设置环境变量)
通过在custom_shell目录下创建自定义的shell脚本firefox.sh(要获得权限X),启动火狐浏览器。
firefox.sh脚本内容如下:

执行firefox.sh脚本指令如下:

3.第三格式的启动:根据脚本文件名(已设置环境变量)
在/etc/profile文件中对环境变量PATH添加了关于tomcat可执行文件所在的目录,并且在使用source /etc/profile指令重新加载文件/etc/profile是使修改过的PATH生效,最后直接调用脚本文件startup.sh启动tomcat。

Linux系列(15)之进程管理的更多相关文章
- Linux学习笔记(六) 进程管理
1.进程基础 当输入一个命令时,shell 会同时启动一个进程,这种任务与进程分离的方式是 Linux 系统上重要的概念 每个执行的任务都称为进程,在每个进程启动时,系统都会给它指定一个唯一的 ID, ...
- Linux 源码阅读 进程管理
Linux 源码阅读 进程管理 版本:2.6.24 1.准备知识 1.1 Linux系统中,进程是最小的调度单位: 1.2 PCB数据结构:task_struct (Location:linux-2. ...
- linux 的服务与进程管理(二)
2.linux 的服务与进程管理 [2.1]系统启动流程 简单的介绍下linux的系统启动流程,方便我们深入了解linux操作系统,对排除linux系统故障进行帮助.启动流程虽然简单但背后还有着更加复 ...
- linux周期性计划任务 进程管理
周期性计划任务crontab命令系统服务:/etc/init.d/crond(crond必须启动才会生效)用户计划:/var/spool/cron/用户名默认的计划任务全局配置:/etc/cronta ...
- Linux第九讲随笔 -进程管理 、ps aux 、
Linux第九讲1,进程管理 Linux在执行每一个程序时,就会在内存中为这个程序建立一个进程,以便让内核可以管理这个运行中的进程,进程是系统分配各种资源,进程调度的基本单位. 怎么查看进程 一.ps ...
- Linux快速入门教程-进程管理ipcs命令学习
使用Linux系统必备的技能之一就是Linux进程管理,系统运行的过程正是无数进程在运行的过程.这些进程的运行需要占用系统的内存等资源,做好系统进程的管理,对于我们合理分配.使用系统资源有非常大的意义 ...
- 『学了就忘』Linux系统管理 — 81、进程管理介绍
目录 1.进程与线程的概念 2.什么是进程管理 3.进程管理的作用 4.Linux进程的几种状态 5.进程与线程的关系 (1)线程与进程的关系 (2)总结 1.进程与线程的概念 来源百度百科: 进程( ...
- Linux零起点之进程管理----c语言编程
进程 (Process)是指操作系统中被加载到内存中的.正在运行的应用程序实例.进程是系统资源分配的基本单元,在其生命周期内会使用系统中的各种资源.进程主要由程序.数据以及进程控制快(PCB)3个部分 ...
- 【Linux 应用编程】进程管理 - 进程、线程和程序
基本概念 程序和进程的区别 程序是平台相关的二进制文件,只占用磁盘空间.编写完程序代码后,编译为可执行的二进制文件即可. 进程是运行中的程序,占用 CPU.内存等系统资源. 通过 Shell 命令,可 ...
- linux 学习15 16 启动管理,备份和恢复
第十五讲 启动管理 . CentOS .x 启动管理 //此处指6.3 系统运行级别 .运行级别 运行级别 含 义 关机 单用户模式,可以想象为windows的安全模式,主要用于系统修复 //linu ...
随机推荐
- SIGCHLD函数
SIGCHLD的产生条件 子进程终止时 子进程接收到SIGSTOP信号停止时 子进程处在停止态,接受到SIGCONT后唤醒时 借助SIGCHLD信号回收子进程 子进程结束运行,其父进程会收到SIGCH ...
- JavaWeb_(Mybatis框架)输入和输出参数_五
系列博文: JavaWeb_(Mybatis框架)JDBC操作数据库和Mybatis框架操作数据库区别_一 传送门 JavaWeb_(Mybatis框架)使用Mybatis对表进行增.删.改.查操作_ ...
- JavaScript作用域与闭包总结
1.全局作用域 所有浏览器都支持 window 对象,它表示浏览器窗口,JavaScript 全局对象.函数以及变量均自动成为 window 对象的成员.所以,全局变量是 window 对象的属性,全 ...
- IO注意事项
read()方法返回值为什么是int? 因为字节输入流可以操作任意类型的文件,比如图片音频等,这些文件底层都是以二进制形式的存储的,如果每次读取都返回byte,有可能在读到中间的时候遇到1111111 ...
- hTTP的URL编码
使用jdk提供的类完成URL的编解码 public class UrlDemo { public static void main(String[] args) throws Exception { ...
- linux---学习3
1.free命令可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区. //-m:以MB为单位显示内存使用情况: free -m 2.vmstat命令的含义为显示虚拟内存状态, ...
- mac配置maven项目的方法(含导入selenium包)
1.配置了java的环境变量 文件位置: /Users/lucax/.bash_profile JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1 ...
- ffprobe读取音视频元数据信息,json格式输出
命令格式: ffprobe -v quiet -show_format -show_streams -print_format json F:\temp\test1566606924822.wav 输 ...
- Spring Security(01)——初体验
(注:本文是基于Spring Security3.1.6所写) (注:原创文章,转载请注明出处.原文地址:http://elim.iteye.com/blog/2154299) (注:本文是基于Spr ...
- Docker使用Portainer搭建可视化界面
Portainer介绍 Portainer是Docker的图形化管理工具,提供状态显示面板.应用模板快速部署.容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作).事件日志显示.容器控制台 ...