Linux进程管理(-)

一、进程的类型

可以将运行在Linux系统中的进程分为三种不同的类型:

交互进程:由一个Shell启动的进程。交互进程既可以在前台运行,也可以在后台   运行。

批处理进程:不与特定的终端相关联,提交到等待队列中顺序执行的进程。 守护进程:在Linux在启动时初始化,需要时运行于后台的进程。

二、进程的启动方式

手工启动

前台启动:是手工启动一个进程的最常用的方式。一般地,用户键入一个命令“ls  -l”,这就已经启动了一个进程,而且是一个前台的进程。

后台启动:直接从后台手工启动一个进程用得比较少一些,除非是该进程甚为耗时, 且用户也不急着需要结果的时候。

ls –R / >list &

调度启动

调度启动方式是事先进行设置,根据用户要求让系统自行启动

三、查看系统中的进程

1、ps命令

功能:ps命令是用来显示系统瞬间的进程信息,它可以显示出在用户输入ps命令时系统的进程及进程的相关信息。

格式:ps [选项]

[[email protected]]$ ps          显示本账号的进程

[[email protected]]$ ps –aux   查看系统和每位用户全部进程

由于ps –aux会列出系统中正在运行的所有进程,因此不易找到特定的进程。若搭 配grep命令,则可事半功倍:[[email protected] pp]$ ps –aux|grep pp  查找pp的进程

Ps命令使用说明:

常用参数:

a:显示所有进程

u:显示较详细的信息

x:显示所有包含其它使用者的进程。

使用范例:

ps

ps –au

ps -aux

ps –aux | more

ps –aux | grephttpd

ps –aux >/tmp/ps.log

2、Top命令监视系统资源使用情况

每5秒钟刷新一次,动态显示

按下U键:输入用户名   查看用户进程

按下K键:输入PID    删除进程

四、控制系统中的进程

1、kill命令和killall命令

kill命令不但能杀死进程,同时也会杀死该进程的所有子进程。

kill命令的格式是:kill –signalPID

为什么要杀死进程

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

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

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

产生了过多到屏幕或磁盘文件的输出

无法正常退出

用户也可以用killall命令来杀死进程,在killall命令后面指定的是要杀死的进程的     命令名称,而不是PID

范例:kill –9927    参数-9:强制杀死

2、nice命令

nice

指定程序的运行优先级

格式:nice –n command

[[email protected]]# nice - -5 myprogram&

在后台以-5的优先级运行myprogram

其中n是为进程运行指定的优先级,n的数值越大,进程的优先级越低.n可以取负  值让运行级提高。

3、renice命令

renice

改变一个正在运行的进程的优先级

格式:renice –n pid   是被指定的进程

[[email protected]]# renice - -5  777

将正在运行的PID为777的进程优先级改为-5

4、在后台运行程序的&、bg命令

[[email protected] root]# cp –r /usr/* test&

将/usr目录下的所有子目录及文件复制到/root/test目录下的工作放到后台运行

[[email protected] root]# fg    放到前台并显示执行过程

按下Ctrl+z键挂起该运行程序

[[email protected] root]# bg   再将执行过程放到后台

[[email protected] root]# jobs       查看被挂起的进程

5、进程的挂起和恢复

进程的中止(挂起)和终止

挂起(Ctrl+Z)

终止(Ctrl+C)

进程的恢复

恢复到前台继续运行(fg)

恢复到后台继续运行(bg)

查看被挂起的进程(jobs)

6、自动安排进程任务

自动启动进程的几个命令

at 安排作业在某一时刻执行一次

batch    安排作业在系统负载不重时执行一次

系统负载大于1.5不运行。

cron      安排周期性运行的作业

7、at和batch

at命令用来指定在某一时刻执行命令,at命令的格式是:at  [选项]  时间

at的配置文件

作用:限制哪些用户可以使用at命令

/etc/at.allow

/etc/at.deny

batch命令的用法和at类似,只是用户可以不必指定时间,batch会在系统负载小   于1.5的时候运行命令。

8、应用程序cron

Cron进程搜索crontab文件并载入内存 ( crontab文件即/etc/crontab文件和 /var/spool/cron/目录下以用户名命名的文件)

cron进程启动以后,它将首先检查是否有用户设置了crontab文件,如果没有就转  入“休眠”状态,释放系统资源

cron进程每分钟醒来一次,查看crontab文件决定当前是否有需要执行的命令。命  令执行结束后,任何输出都将作为邮件发送给crontab的所有者

crontab命令的作用及格式

作用:用于生成cron进程所需要的crontab文件

crontab的命令格式

crontab[-u user] file

crontab[-u user] {-l|-r|-e}

-l 该选项将使在标准输出上显示当前的crontab

-r 删除当前的crontab

-e 使用编辑器编辑当前的crontab文件。

当结束编辑离开时,编辑后的文件将自动安装

Crontab文件格式:

Minute  Hour Day  Month  DayofWeek Command

               字段                 所代表的意义          可用范围

Minute             每小时的第几分钟运行该程序         0 ~ 59

Hour               每一天的第几小时运行该程序      0 ~23

Day               每个月的第几天运行该程序        1 ~ 31

Month             每一年的第几个月运行该程序          1 ~  12

Dayof Week            每一周的第几天运行该程序            0~ 6

Command              指定要运行的程序           输入要执行的命令及参数

范例:

20 4 * * * program

               指定每天的4点20分执行program命令

50 3 9 * * program

指定每月的9日3点50分执行program命令

1 0 8 9 * program 或

1 0 8 sep * program

指定每年的9月8日0点1分执行program命令

9、计划任务创建方法

如果需要在每周2、4、6凌晨3点使系统进入维护状态,重新启动系统,设该文件 名为/root/reboot.cron:

1.创建一个crontab

# echo “00 03 * * 2,4,6 shutdown –r +10”>/root/reboot.cron

2.使用crontab命令安装/root/reboot.cron文件

#crontab/root/reboot.cron        安装

[[email protected]]# corntab –e

创建root用户的corn文件

5514 * * * ls /root        corn内容   

[[email protected]]$ crontab –e 创建pp用户的corn文件 

3018 * * * ll /home/pp                    corn内容

[[email protected]]# crontab –r    删除root的cron

时间: 2024-10-15 13:40:56

Linux进程管理(-)的相关文章

Linux进程管理与调度-之-目录导航【转】

转自:http://blog.csdn.net/gatieme/article/details/51456569 版权声明:本文为博主原创文章 && 转载请著名出处 @ http://blog.csdn.net/gatieme 目录(?)[-] 项目链接 进程的描述 进程的创建 进程的加载与运行 进程的退出 进程的调度 调度普通进程-完全公平调度器CFS 日期 内核版本 架构 作者 GitHub CSDN 2016-07-21 Linux-4.6 X86 & arm gatieme

Linux进程管理简谈

Linux系统进程管理简谈 进程是什么? 简单来说进程是一个正在执行的程序的一个副本,存在生命周期,有段指令和代码在不断运行. linux内核存储信息的固定格式:task struct 进程的相关信息存储在链表中 多个任务的task struct组件的链表:task list 进程的创建:父进程创建子进程(内核创建init进程,剩余一切进程有init及其子进程进程创建) 父进程创建子进程时向内核调用fork()来创建子进程并且通过调用clone()复制父进程的信息给子进程 Linux进程的优先级

linux进程管理(5)---进程消亡

一.目的 本文将讲述进程是如何消亡的.一个进程既有父进程又有子进程,因此进程消亡时,既要通知父进程,也要安排好子进程. 当前进程消亡时主要做了三件大事:释放当前进程占用的资源:为当前进程的子进程重新寻找"养父":通知当前进程的父进程,释放当前进程剩下的资源. 当前进程释放掉大多数进程资源后,只保留内核栈.structtask_struct数据结构:剩下的资源由父进程负责释放. linux调用sys_exit().sys_wait4()实现进程的消亡,代码可以在kernel/exit.c

Linux性能及调优指南(翻译)之Linux进程管理

译文如下:1.1 Linux进程管理 进程管理是操作系统的最重要的功能之一.有效率的进程管理能保证一个程序平稳而高效地运行. Linux的进程管理与UNIX的进程管理相似.它包括进程调度.中断处理.信号.进程优先级.上下文切换.进程状态.进度内存等. 在本节中,我们将描述Linux进程管理的基本原理的实现.它将更好地帮助你理解Linux内核如何处理进程及其对系统性能的影响. 1.1.1 什么是进程?一个进程是一个运行在处理器的程序的一个实例.该进程使用Linux内核能够处理的任何资源来完成它的任

Linux进程管理知识整理

Linux进程管理知识整理 1.进程有哪些状态?什么是进程的可中断等待状态?进程退出后为什么要等待调度器删除其task_struct结构?进程的退出状态有哪些? TASK_RUNNING(可运行状态) TASK_INTERRUPTIBLE(可中断等待状态) TASK_UNINTERRUPTIBLE(不可中断等待状态) TASK_STOPPED(进程被其它进程设置为暂停状态) TASK_TRACED(进程被调试器设置为暂停状态) TASK_DEAD(退出状态) 进程由于所需资源得不到满足,从而进入

linux进程管理(四)

[教程主题]:进程管理 [1]进程介绍 程序和进程 程序是为了完成某种任务而设计的软件,比如OpenOffice是程序.什么是进程呢?进程就是运行中的程序. 一个运行着的程序,可能有多个进程. 比如自学it网所用的WWW服务器是apache服务器,当管理员启动服务后,可能会有好多人来访问,也就是说许多用户来同时请求httpd服务,apache服务器将会创建有多个httpd进程来对其进行服务. 进程分类: 进程一般分为交互进程.批处理进程和守护进程三类. 值得一提的是守护进程总是活跃的,一般是后台

Linux进程管理(3):总结

7. exit与_exit的差异    为了理解这两个系统调用的差异,先来讨论文件内存缓存区的问题. 在linux中,标准输入输出(I/O)函数都是作为文件来处理.对应于打开的每个文件,在内存中都有对应的缓存,每次读取文件时,会多读一些记录到缓存中,这样在下次读文件时,就在缓存中读取:同样,在写文件时也是写在文件对应的缓存中,并不是直接写入硬盘的文件中,等满足了一定条件(如达到一定数量,遇到换行符\n或文件结束标志EOF)才将数据真正的写入文件.这样做的好处就是加快了文件读写的速度.但这样也带来

linux进程管理命令总结

linux进程管理的相关命令: 1.pstree  --以树状形式显示当前系统进程,和命令tree相似. 2.ps命令 命令格式:ps [options] 常用组合:aux: u:以用户为中心组织的进程状态信息显示 a:与终端相关的进程 x:与终端无关的进程 #ps aux USER : 用户名 PID : 进程号 %CPU :占用的cpu百分比 %MEM  :内存的使用率 VSZ :  virtual memory size ,虚拟内存集 RSS : resident size ,常驻内存集

mschedule 简单linux进程管理(树莓派)

树莓派是神奇的机器,CPU和内存都少的可怜,但体积小功耗低,在上面搞些动搞些西其实也挺有意思,挺好玩的.装的是pidara,基本服务没有精简多少,先cat一下CPU和RAM. [[email protected] ~]$ cat /proc/cpuinfo Processor : ARMv6-compatible processor rev 7 (v6l) BogoMIPS : 464.48 Features : swp half thumb fastmult vfp edsp java tls

12个Linux进程管理命令介绍

12个Linux进程管理命令介绍 当程序可以执行文件存放在存储中,并且运行的时候,每个进程会被动态得分配系统资源.内存.安全属性和与之相关的状态.可以有多个进程关联到同一个程序,并同时执行不会互相干扰.Linux提供了许多命令来让用户来高效掌控上述的操作. 执行中的程序称作进程.当程序可以执行文件存放在存储中,并且运行的时候,每个进程会被动态得分配系统资源.内存.安全属性和与之相关的状态.可以有多个进程关联到同一个程序,并同时执行不会互相干扰.操作系统会有效地管理和追踪所有运行着的进程. 为了管