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 ...
随机推荐
- DP的优化
参考资料: 李煜东<算法竞赛进阶指南> 斜率优化 形如: \(f[i] = min\{f[j]+val(i,j)\}\)的dp,多项式\(val(i,j)\)包含\(i,j\)的乘积项 引 ...
- Selenium结合BeautifulSoup4编写简单爬虫
在学会了抓包,接口请求(如requests库)和Selenium的一些操作方法后,基本上就可以编写爬虫,爬取绝大多数网站的内容. 在爬虫领域,Selenium永远是最后一道防线.从本质上来说,访问网页 ...
- xml详解
https://www.cnblogs.com/zhao1949/p/5652167.html https://www.cnblogs.com/cb0327/p/4967782.html
- Fiddler 安装使用
Fiddler是一个蛮好用的抓包工具,可以将网络传输发送与接受的数据包进行截获.重发.编辑.转存等操作.也可以用来检测网络安全.反正好处多多,举之不尽呀!当年学习的时候也蛮费劲,一些蛮实用隐藏的小功能 ...
- IISPUT 批量脚本的编写
import requests import re import sys header = { "Accept":"text/javascript, applicatio ...
- nginx安装第三方模块echo-nginx-module
cd ~ wget -S https://github.com/agentzh/echo-nginx-module/archive/master.zip mv master echo-nginx-mo ...
- k8s Ipvs 内部网络自动分配和内部网络一致ip地址,导致ip冲突
[链接]Linux负载均衡--LVS(IPVS)https://www.jianshu.com/p/36880b085265 [链接]kube-proxyipvsmodecreateunnecessa ...
- java安全学习-环境准备/基础知识
补java的坑,开始! 1.Intellij一些快捷键 intell常用快捷键: ctrl+n 快速查找定位类的位置 ctrl+q 快速查看某个类的文档信息 shift + F6 快速类.变量重命名 ...
- 阶段5 3.微服务项目【学成在线】_day05 消息中间件RabbitMQ_2.RabbitMQ研究-RabbitMQ介绍
开发中消息队列通常有如下应用场景: 1.任务异步处理. 将不需要同步处理的并且耗时长的操作由消息队列通知消息接收方进行异步处理.提高了应用程序的响应时间. 2.应用程序解耦合 MQ相当于一个中介,生产 ...
- Python操作memecache
memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载,故常用来做数据库缓存.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态 ...